• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Versuche Fragen über HTML zu erstellen

Dany Sahne

Neues Mitglied
Moin Moin,

ich benötige mal eure Hilfe.

Zur Zeit versuche ich, Fragen zu programmieren, die folgendes können sollen:
- Vergeben von Punkte für ausgewählte Antwort
- Automatisches Aktualisieren einer Rangliste
- Jede Frage darf nur einmal beantwortet werden
- es wäre schön, wenn nach der Antwort die gegebene Antwort und die richtige nebeneinander erscheint.

Gerne würde ich auch eine kostenlose Komponente für Joomla 2.5 verwenden, die genau das kann.

Mein bishergen Quellcode sende ich euch mit.

HTML:
<h1 style="text-align: center;">Frage 1</h1> <form style="text-align: center;" action="index.php?auswerten" method="POST"> <p><span style="font-size: small;"><span style="font-family: helvetica;">In der 88. Spielminute prallte der Ball im Seitenaus gegen die Werbebande und springt ins Feld zurück. Entscheidung?</span></span></p> <p> </p> <table border="0" align="center"> <tbody> <tr> <td style="width: 200px;" align="left" valign="top"> <h4><span style="font-family: helvetica;"><span style="font-size: small;">Spielfortsetzung</span></span></h4> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="spielstrafe" type="radio" value="-" /> weiterspielen</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="spielstrafe" type="radio" value="-" /> Abstoß</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="spielstrafe" type="radio" value="-" /> Anstoß</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="spielstrafe" type="radio" value="-" /> Eckstoß</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="spielstrafe" type="radio" value="5" /> Einwurf</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="spielstrafe" type="radio" value="-" /> direkter Freistoß</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="spielstrafe" type="radio" value="-" /> indirekter Freistoß</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="spielstrafe" type="radio" value="-" /> Schiedsrichterball</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="spielstrafe" type="radio" value="-" /> Strafstoß</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="spielstrafe" type="radio" value="-" /> Wiederholung</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="spielstrafe" type="radio" value="-" /> Halbzeit</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="spielstrafe" type="radio" value="-" /> Spielende</span></span></p> </td> <td style="width: 200px;" align="left" valign="top"> <h4><span style="font-family: helvetica;"><span style="font-size: small;">Ort der Spielfortsetzung</span></span></h4> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="ort" type="radio" value="-" /> weiterspielen</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="ort" type="radio" value="-" /> Mittelpunkt</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="ort" type="radio" value="-" /> Torraum</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="ort" type="radio" value="-" /> Torraumlinie</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="ort" type="radio" value="-" /> Strafraumlinie</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="ort" type="radio" value="-" /> Eckstoßteilkreis</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="ort" type="radio" value="3" /> Seitenlinie</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="ort" type="radio" value="-" /> 11-Meter Punkt</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="ort" type="radio" value="-" /> Höhe 11-Meter Punkt</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="ort" type="radio" value="-" /> Gleicher Ort</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="ort" type="radio" value="-" /> (Tat-) Ort des Vergehen</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="ort" type="radio" value="-" /> Wo Werfer stand</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="ort" type="radio" value="-" /> wo getroffen wurde / werden sollte</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="ort" type="radio" value="-" /> Wo Ball bei Pfiff</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="ort" type="radio" value="-" /> Spielende</span></span></p> </td> <td style="width: 200px;" align="left" valign="top"> <h4><span style="font-family: helvetica;"><span style="font-size: small;">Persönliche Strafe</span></span></h4> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="persoenlicheStrafe" type="radio" value="1" /> keine persönliche Strafe</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="persoenlicheStrafe" type="radio" value="-" /> Gelb</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="persoenlicheStrafe" type="radio" value="-" /> Gelb/Rot</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="persoenlicheStrafe" type="radio" value="-" /> Gelb und Gelb/Rot</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="persoenlicheStrafe" type="radio" value="-" /> Rot</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="persoenlicheStrafe" type="radio" value="-" /> Nur Meldung möglich</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="persoenlicheStrafe" type="radio" value="-" /> Spielabbruch</span></span></p> </td> </tr> </tbody> </table> <input type="submit" value=" Absenden " /> <input type="reset" value=" Zurücksetzen" /> <p> </p> </form>

Hierbei handelt es sich um einen Code, der 3 Spalten generiert, aus der jeweils eine Antwort angeklickt werden muss, um das Formular abzusenden. Für die richtige Antwort der 1. Spalte soll es 5 Punkte geben, in der 2. Spalte 3 Punkte und in der 3. Spalte 1 Punkt.

Aus irgendeinem Grund funktioniert das aber noch nicht.

Nach dem Senden soll er halt die oben genannten Schritte vollziehen. Da ich als Admin die Daten auch gerne haben möchte, setze ich noch einen php-formmailer als action vor den Code. Nun soll er aber das ganze nicht nur absenden, sondern auch auswerten wie oben beschrieben.

Wäre für eure Hilfe sehr dankbar.

Eine ähnliche Umsetzung findet ihr unter www.fussball-regelfragen.de .

LG

Dany Sahne

P.S. Bei Home - Joomla! Extensions Directory habe ich mir schon alles durchgeguckt, da ist nicht das wahre für mich dabei...
 
HTML kann keine Daten aus Formularen verarbeiten, egal in welcher Art. HTML ist lediglich eine Auszeichnungssprache über die Inhalte in Webseiten ausgegeben werden können. Daher hast Du für deine Frage das falsche Forum erwischt.

Du sagst selbst, dass Du die Daten per Formmailer bereits an dich selbst schickst. Handelt es sich dabei um eine Joomla-Komponente oder etwas selbstgeschriebenes? Wenn letzteres, wie sieht der Quellcode dazu aus? Wenn ersteres solltest Du dich eher an eine Joomla-Community wenden die dir dabei eher helfen kann.
 
Moin,

der Formmailer ist von selfhtml.org. Hier der Code.

PHP:
<?php

/**
 * Konfiguration 
 *
 * Bitte passen Sie die folgenden Werte an, bevor Sie das Script benutzen!
 * 
 * Das Skript bitte in UTF-8 abspeichern (ohne BOM).
 */
 
// An welche Adresse sollen die Mails gesendet werden?
$zieladresse = 'EMail';

// Welche Adresse soll als Absender angegeben werden?
// (Manche Hoster lassen diese Angabe vor dem Versenden der Mail ueberschreiben)
$absenderadresse = 'EMail';

// Welcher Absendername soll verwendet werden?
$absendername = 'Name';

// Welchen Betreff sollen die Mails erhalten?
$betreff = 'Betreff';

// Zu welcher Seite soll als "Danke-Seite" weitergeleitet werden?
// Wichtig: Sie muessen hier eine gueltige HTTP-Adresse angeben!
$urlDankeSeite = 'Seite';

// Welche(s) Zeichen soll(en) zwischen dem Feldnamen und dem angegebenen Wert stehen?
$trenner = ":\t"; // Doppelpunkt + Tabulator

/**
 * Ende Konfiguration
 */

if ($_SERVER['REQUEST_METHOD'] === "POST") {

    $header = array();
    $header[] = "From: ".mb_encode_mimeheader($absendername, "utf-8", "Q")." <".$absenderadresse.">";
    $header[] = "MIME-Version: 1.0";
    $header[] = "Content-type: text/plain; charset=utf-8";
    $header[] = "Content-transfer-encoding: 8bit";
    
    $mailtext = "";

    foreach ($_POST as $name => $wert) {
        if (is_array($wert)) {
            foreach ($wert as $einzelwert) {
                $mailtext .= $name.$trenner.$einzelwert."\n";
            }
        } else {
            $mailtext .= $name.$trenner.$wert."\n";
        }
    }

    mail(
        $zieladresse, 
        mb_encode_mimeheader($betreff, "utf-8", "Q"), 
        $mailtext,
        implode("\n", $header)
    ) or die("Die Mail konnte nicht versendet werden.");
    header("Location: $urlDankeSeite");
    exit;
}

header("Content-type: text/html; charset=utf-8");

?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de">
    <head>
        <title>Einfacher PHP-Formmailer</title>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    </head>
    <body>
        <h1>Beispielformular</h1>
        <form action="" method="post">
           
<h1 style="text-align: center;">Frage 1</h1> <form style="text-align: center;" action="index.php?auswerten" method="POST"> <p><span style="font-size: small;"><span style="font-family: helvetica;">In der 88. Spielminute prallte der Ball im Seitenaus gegen die Werbebande und springt ins Feld zurück. Entscheidung?</span></span></p> <p> </p> <table border="0" align="center"> <tbody> <tr> <td style="width: 200px;" align="left" valign="top"> <h4><span style="font-family: helvetica;"><span style="font-size: small;">Spielfortsetzung</span></span></h4> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="spielstrafe" type="radio" value="-" /> weiterspielen</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="spielstrafe" type="radio" value="-" /> Abstoß</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="spielstrafe" type="radio" value="-" /> Anstoß</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="spielstrafe" type="radio" value="-" /> Eckstoß</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="spielstrafe" type="radio" value="5" /> Einwurf</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="spielstrafe" type="radio" value="-" /> direkter Freistoß</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="spielstrafe" type="radio" value="-" /> indirekter Freistoß</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="spielstrafe" type="radio" value="-" /> Schiedsrichterball</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="spielstrafe" type="radio" value="-" /> Strafstoß</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="spielstrafe" type="radio" value="-" /> Wiederholung</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="spielstrafe" type="radio" value="-" /> Halbzeit</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="spielstrafe" type="radio" value="-" /> Spielende</span></span></p> </td> <td style="width: 200px;" align="left" valign="top"> <h4><span style="font-family: helvetica;"><span style="font-size: small;">Ort der Spielfortsetzung</span></span></h4> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="ort" type="radio" value="-" /> weiterspielen</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="ort" type="radio" value="-" /> Mittelpunkt</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="ort" type="radio" value="-" /> Torraum</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="ort" type="radio" value="-" /> Torraumlinie</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="ort" type="radio" value="-" /> Strafraumlinie</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="ort" type="radio" value="-" /> Eckstoßteilkreis</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="ort" type="radio" value="3" /> Seitenlinie</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="ort" type="radio" value="-" /> 11-Meter Punkt</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="ort" type="radio" value="-" /> Höhe 11-Meter Punkt</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="ort" type="radio" value="-" /> Gleicher Ort</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="ort" type="radio" value="-" /> (Tat-) Ort des Vergehen</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="ort" type="radio" value="-" /> Wo Werfer stand</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="ort" type="radio" value="-" /> wo getroffen wurde / werden sollte</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="ort" type="radio" value="-" /> Wo Ball bei Pfiff</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="ort" type="radio" value="-" /> Spielende</span></span></p> </td> <td style="width: 200px;" align="left" valign="top"> <h4><span style="font-family: helvetica;"><span style="font-size: small;">Persönliche Strafe</span></span></h4> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="persoenlicheStrafe" type="radio" value="1" /> keine persönliche Strafe</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="persoenlicheStrafe" type="radio" value="-" /> Gelb</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="persoenlicheStrafe" type="radio" value="-" /> Gelb/Rot</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="persoenlicheStrafe" type="radio" value="-" /> Gelb und Gelb/Rot</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="persoenlicheStrafe" type="radio" value="-" /> Rot</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="persoenlicheStrafe" type="radio" value="-" /> Nur Meldung möglich</span></span></p> <p><span style="font-family: helvetica;"><span style="font-size: small;"><input name="persoenlicheStrafe" type="radio" value="-" /> Spielabbruch</span></span></p> </td> </tr> </tbody> </table> <input type="submit" value=" Absenden " /> <input type="reset" value=" Zurücksetzen" /> <p> </p> </form>

Muss jetzt der Code zum Überprüfen da mit rein, oder benötigt dieser eine extra php Datei? Und wie baut sich der Code genau auf? Mit if else oder wie? Über ein Beispiel wäre ich sehr dankbar.

LG

Dany Sahne
 
Zuletzt bearbeitet:
Du hast also PHP-Code den Du ergänzen möchtest um deine Wünsche zu realisieren. Wieso postest Du das dann im HTML-Bereich? Habe dein Thema verschoben - im PHP-Bereich kann dir eher geholfen werden.

Das was Du willst ist aber keineswegs eine einfache Ergänzung des bestehenden Codes, aber auch gleichzeitig nicht so umfangreich, dass es unmöglich wäre.

Da Du eine Rangliste haben willst und auch die Sicherstellung, dass eine Frage von einem Nutzer (?) nur einmal beantwortet werden kann, müsstest Du eine datenbasierte Speicherung der Antworten ergänzen. Dazu solltest Du dir php in Verbindung mit MySQL anschauen, z.B. hier: PHP fr dich - mySQL und phpMyAdmin

Nachdem einige Daten in der Datenbank stehen, könntest Du auch eine Ausgabe dieser Daten realisieren (die Rangliste).

Alternativ dazu kannst Du natürlich auch immernoch nach einer passenden Erweiterung für dein CMS suchen. Ob es so etwas gibt kann dir am besten die Joomla-Community beantworten.
Wenn Du jemanden mit der Programmierung beauftragen willst, wende dich an die Jobbörse.
 
Zurück
Oben