Notice Undefined index et Undefined variable
Bonjour,
J’ai réalisé un site sur l’apiculture et j’ai installé deux quizz qui fonctionnaient sans problème.
Visible à cette adresse : http://www.ruche-apiculture.org
Depuis peu des messages d’erreurs apparaissent comme ceci :
- Pour la même page :
Code:
1 2
|
Notice: Use of undefined constant PHP_SELF - assumed 'PHP_SELF' |
Code:
1 2
|
Undefined index: result |
- Pour une autre page :
Code:
1 2
|
Notice: Undefined variable: resultat in
.. line 16 |
J’ai corrigé la première ligne en ajoutant des guillemets ( ‘ et ‘ ) à PHP_SELF….
Voici le code de la première page… il semblerait qu’il y ai une faute au post (result) ?
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74
|
<?php
$page = basename($_SERVER['PHP_SELF']);
if (!$_POST[result])
{
print "<form action=\"$page\" method='post'>\n";
for ($i=0; $i<count($quizz); $i++) {
print '<blockquote><span>';
print "\t".$quizz[$i][0]."\n";
print '</span><br /><br />';
for ($j=1; $j<count($quizz[$i])-2; $j++) {
$quest=$quizz[$i][$j];
print "<input type='radio' name=\"$i\" value=\"$j\" /> $quest<br />\n ";
}
print "</blockquote><hr/>";
}
print "<input type='hidden' name='result' value='voir' /><br />\n<center>";
print "<input type='submit' style='background-color:#2A5C2A' onmouseover=\"this.style.color='#fff'\" onmouseout=\"this.style.color='#000'\" onmousedown=\"this.style.color='#f90'\" value='Valider vos réponses' /></center></form><br/>\n";}
else {
print '<h4 align="center">Résultats du quizz</h4><br />';
$points=0;
for($i=0; $i<count($quizz); $i++) {
$reponse = trim($_POST[$i]);
print '<blockquote><span>';
print "\t".$quizz[$i][0]."</span><br /><br />\n";
$numero_bonne=$quizz[$i][count($quizz[$i])-2]; // avant dernière valeur du tableau
$bonne=$quizz[$i][$numero_bonne]; // Bonne réponse
if ($reponse==$numero_bonne) {
print "Votre réponse <b><i>".$bonne."</i></b> est exacte.<br />";
$points++;
}
else {
print "La bonne réponse est <b>".$bonne."</b> mais vous ";
if ($reponse=="") {
print "n´avez rien répondu.<br />";
}
else {
print 'avez choisi la proposition" <b>'.$quizz[$i][$reponse].' "</b>.<br />';
}
}
$commentaire=$quizz[$i][count($quizz[$i])-1]; // dernière valeur du tableau
print "<br />".$commentaire."<br />\n";
print "</blockquote><hr />\n";
}
if($points==count($quizz)) {
print"<br /><h4 align='center'>Félicitations vous avez tout juste !</h4>\n";
}
else {
print "<br /><h4 align='center'>Vous avez $points bonne";
if ($points>1) print "s";
print " réponse";
if ($points>1) print "s";
print " sur ".count($quizz)." questions.</h4>\n";
print "<p align='center'><a href='questions_abeille.php'>Réinitialiser le quizz</a></p>\n";
//Ajout d'un enregistrement pour le cpt
$con = mysql_connect("SERVEUR", "LOGIN", "MTP");
$ip = $_SERVER['REMOTE_ADDR'];
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("BDD", $con);
mysql_query("INSERT INTO table (nb_click, ip) VALUES ('1', '$ip')");
mysql_close($con);
}
}
?> |
Je ne vois pas les erreurs !
Entre Notice Undefined index et Undefined variable
Merci beaucoup pour votre savoir faire.