Hallo,
ich bin leider etwas verzweifelt, ich kenne mich mit Variablendeklarationen ob nun Global oder Superglobal etc. leider nicht so richtig aus, ich scheine das noch nicht richtig zu begreifen... Mein Problem ist folgendes:
Ich habe ein Formular in das die Benutzer ihren Namen, ihr Alter und den Statdbezirk aus dem sie kommen eintragen sollen. (Formular ist vorhanden)
Die Eingabe eines Namens ist dabei zwingend sonst wird man erst gar nicht zu dem Quiz weitergeleitet. (funktioniert)
Die Informationen werden mit einem $_GET an die URL übergeben und erscheinen dort auch alle vollständig.
Mein Problem
Ich möchte nach dem beenden des Quiz alles wieder auslesen können Name Alter und Stadtbezirk. Bisher habe ich es nur zuwege gebracht den Namen auszulesen, natürlich auch das Ergbnis des Quiz das war unproblematisch.
Ich verstehe nicht was ich machen muß damit in den beiden Formularfeldern für das Alter und den Stadbezirk die jeweilige Variable an die nächste PHP Seite so übergeben wird das man diese dann in ein Textdokument zur Auswertung ohne Probleme schreiben kann.
Hier mal meine beiden php Seiten um die es sich handelt:
diese nennt sich fragantw.php
Hier nun die 2te PHP Seite:
auswert.php
Falls sich jemand dies hier antut und mir ein wenig helfen könnte wäre ich sehr dankbar.
Lg
Fly
Mod-Edit:
ich bin leider etwas verzweifelt, ich kenne mich mit Variablendeklarationen ob nun Global oder Superglobal etc. leider nicht so richtig aus, ich scheine das noch nicht richtig zu begreifen... Mein Problem ist folgendes:
Ich habe ein Formular in das die Benutzer ihren Namen, ihr Alter und den Statdbezirk aus dem sie kommen eintragen sollen. (Formular ist vorhanden)
Die Eingabe eines Namens ist dabei zwingend sonst wird man erst gar nicht zu dem Quiz weitergeleitet. (funktioniert)
Die Informationen werden mit einem $_GET an die URL übergeben und erscheinen dort auch alle vollständig.
Mein Problem
Ich möchte nach dem beenden des Quiz alles wieder auslesen können Name Alter und Stadtbezirk. Bisher habe ich es nur zuwege gebracht den Namen auszulesen, natürlich auch das Ergbnis des Quiz das war unproblematisch.
Ich verstehe nicht was ich machen muß damit in den beiden Formularfeldern für das Alter und den Stadbezirk die jeweilige Variable an die nächste PHP Seite so übergeben wird das man diese dann in ein Textdokument zur Auswertung ohne Probleme schreiben kann.
Hier mal meine beiden php Seiten um die es sich handelt:
diese nennt sich fragantw.php
PHP:
<html>
<head>
<title>Quiz Fragen</title>
</head>
<body>
<?php
if(!isset($_GET['name'])):
$alter = "alter";
$stadt = "stadtbezirk";
?>
<font size="6">Willkommen beim München Quiz <br></b></font>
<p>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>"method="get">
<br><br><b><label><legend align="center"><font size="4">Gib bitte
deinen Vornamen <br> und Nachnamen an:<br></legend></b></font>
<br>
<p>
<input type="text" name="name" size=25></label><br>
<br><br><b><label><legend align="center"><font size="4">Gib bitte dein
Alter an:<br></legend></b></font>
<br>
<input type="text" name="alter" size=2></label><br>
<br><br><b><label><legend align="center"><font size="4">Gib bitte
deinen Stadtbezirk an wo du wohnst:<br></legend></b></font>
<br>
<p>
<input type="text" name="stadtbezirk" size=15></label><br>
<input type="submit" value="zum Quiz"><br></b></font>
</form>
<link rel="stylesheet" type="text/css" href="main.css">
<style type="text/css">
<?php else:?>
<h1>Münchenquiz</h1>
<?php
// Datei mit den bisherigen Zugriffszahlen lesen
$nfile = fopen ("counter.txt", "r");
$besucher = fgets ($nfile, 10);
fclose ($nfile);
// Wert um 1 erhöhen
$besucher++;
// Ausgabe
echo("<b>Ihre Teilnehmernummer lautet: $besucher <br>!! Bitte
merken falls Doppelnamen vorkommen !!</b>");
// Neuen Wert in der Textdatei speichern
$nfile = fopen ("counter.txt", "w");
// Eine Sperre erwerben, um die Datei zu blockieren
flock ($nfile, 2);
// Den neuen Wert schreiben
fputs ($nfile, $besucher);
// Die Sperre aufheben
flock ($nfile, 3);
fclose ($nfile);
?>
<form action="auswert.php?name=<?php echo
urlencode($_GET['name']);?>" method="post">
<form action="auswert.php?name=<?php echo urlencode($_GET['alter']);?>"
method="post">
<ol>
<?php
// Datenbankparameter (bitte anpassen!)
$host = "xxx";
$user = "xxx";
$db = "xxx_db";
// Datenbankverbindung und -auswahl
$connID = mysql_connect ($host, $user);
mysql_select_db ($db) or die("Auswahl der Datenbank
fehlgeschlagen");
// Die Fragen und Antworten lesen und anzeigen
$result = mysql_query ("SELECT * FROM Fragen");
while ($row = mysql_fetch_array ($result)) {
$nr = $row['Nr'];
$frage = $row['frage'];
echo ("<li><b>$frage</b></li>\n");
echo ("<ol type=\"A\">\n");
for ($i = 1; $i <= 3; $i++) {
$antfeld = "antw$i";
$antw = $row[$antfeld];
echo ("<li><input type=\"radio\" name=\"f$nr\" value=\"a$i\"
/>$antw</li>\n");
}
echo ("</ol>\n");
}
?>
</ol>
<input type="submit" value="Auswerten" />
</form>
<link rel="stylesheet" type="text/css" href="main.css">
<style type="text/css">
<?php
$jetzt = time();
$datum = date ("d.m.Y", $jetzt);
$zeit = date ("h:i", $jetzt);
$fp=fopen("dauer.txt","a");
fwrite($fp, "\nBesucherNr:$besucher hat am $datum um $zeit das Quiz
aufgerufen \n");
fclose($fp);
?>
<?php endif;?>
</body>
</html>
Hier nun die 2te PHP Seite:
auswert.php
PHP:
<html>
<head>
<title>MuenchenQuiz - Auswertung</title>
</head>
<h1>Quiz-Auswertung</h1>
<br><br>
<?php
// Datenbankparameter (bitte anpassen!)
$host = "xxx";
$user = "xxx";
$db = "xxx_db";
// Datenbankverbindung und -auswahl
$connID = mysql_connect ($host, $user);
mysql_select_db ($db);
// Anzahl der Fragen lesen
$result = mysql_query ("SELECT COUNT(Nr) FROM Fragen");
$fraganzahl = mysql_fetch_row($result);
$fraganzahl = $fraganzahl[0]; // Wert statt Array.
// Antworten in ein Array packen
for ($i = 1; $i <= $fraganzahl; $i++) {
$varname = "f$i";
$antw[$i] = $_POST[$varname];
}
// Richtige Antworten aus der Datenbank holen
$result = mysql_query ("SELECT korrekt FROM Fragen");
// Annahme: Keine Antwort richtig.
$richtig = 0;
// In einer Schleife Werte vergleichen:
for ($i = 1; $i <= $fraganzahl; $i++) {
$row = mysql_fetch_row ($result);
$ra = $row[0];
if ($antw[$i] == "a$ra") {
$richtig++;
}
}
echo ("Du hast $richtig von $fraganzahl Fragen richtig beantwortet!\n");
?>
<link rel="stylesheet" type="text/css" href="main.css">
<style type="text/css">
<?php
if ($richtig=='15')
{
$fp=fopen("highscore.txt","a");
fwrite($fp, "\n$name $alter $stadt hat volle Punktezahl erreicht!!!\n");
fclose($fp);
}
else
{
$fp=fopen("highscore.txt","a");
fwrite($fp, "\n$name $alter $stadt hat $richtig von $fraganzahl Fragen richtig beantwortet!\n");
fclose($fp);
$jetzt = time();
$datum = date ("d.m.Y", $jetzt);
$zeit = date ("h:i", $jetzt);
$fp=fopen("besucher.txt","a");
fwrite($fp, "\n$name hat am $datum um $zeit das Quiz beendet \n");
fclose($fp);
}
?>
</body>
</html>
<noscript><plaintext><noscript></noscript>
</pre></xmp></noscript>
Falls sich jemand dies hier antut und mir ein wenig helfen könnte wäre ich sehr dankbar.
Lg
Fly
Mod-Edit:
PHP:
-Tags hinzugefügt [/b] ([url=http://www.html.de/member.php?u=2277]flapo[/url])
Zuletzt bearbeitet von einem Moderator: