Erreur PHP Aidez-moi SVP
$sql2="SELECT * FROM news";
$ok=$_GET['ok'];
$req2 = mysql_query($sql2) or die('Erreur SQL !<br />'.$sql2.'<br />'.mysql_error());
if ($ok == 0) {
echo "<div class=\"addcom\">";
echo "<form action=\"addcom.php\" method=\"post\">";
echo "<br />Pseudo : <input type=\"text\" name=\"pseudo\"/><br />";
echo "Mail : <input type=\"text\" name=\"mail\"/><br />";
echo "Mon site : <input type=\"text\" name=\"url\" value=\"[http://]\"/><br />";
echo "Comentaire : <br /><textarea name=\"contenu\" style=\"width:500px;height:150px\"></textarea><br />";
echo "<input type=\"submit\" value=\"Commenté\"/>";
echo "<input type=\"hidden\" name=\"news_id\" value=\"<?php echo $data[id]; ?>\">";
echo "</form>";
echo "</div>";
};
?>
La table news colonne ok = INT, Value 1
même si ok == 1 ou ok == 0 il m'affiche le formulaire
Merci, a bientôt
32 réponses
Le problème porte sur un script PHP qui lit le paramètre ok via $_GET pour afficher un formulaire, mais l’indice ok peut être indéfini et déclencher une notice 'Undefined index: ok'. Des réponses suggèrent d’éviter $_GET pour la logique d’affichage, ou d’utiliser isset($_GET['ok']) et une valeur par défaut afin que le formulaire ne s’affiche que lorsque ok vaut 1. D’autres conseils promeuvent même de supprimer la ligne qui affecte $ok et le test if, car l’affichage peut être géré différemment sans dépendre de ce paramètre. En attendant une solution, la discussion mentionne aussi de vérifier les usages de ok dans la base de données et d’éviter l’exécution d’instructions SQL potentielles lorsqu’un paramètre n’est pas fourni.
-
Ca doit dépendre du temps qu'il a, j'ai vu qu'il cherchait de l'aide car il avait un surplus de boulot donc c'est clair qu'en ce moment il va pas spécialement avoir le temps de te répondre. Mais moi l'année dernière il avait répondu pas mal de fois
-
Nan; il ne répond pas toujour
-
Tu as dit que tu as pris le code sur grafikart, demande au mec ce que t'aimerais rajouté au code, il répond toujours ;-)
-
Je l'ai enlever, et ce script commence vraiment a me casser les bonbons !
-
Pourquoi tu le mets alors si tu le sais qu'il ne fait pas ce que tu veux ?
Donc ton $_get['ok'] tu peux l'enlever ;-)
Si tu veux récupéré des infos en table, regarde des tuto sur la PDO ;-)
-
Oui, ce c'est, mais je ne sait pas quel code il faut utiliser pour ça ^^'
-
C'est pas avec $_GET que tu récupères des infos en base de données tu le sais ca ?
-
En faite, dans ma base, il y a un table News avec id,titre,contenu,date,ok .
Et je voudrais avoir un script pour que php detecte si la colonne ok dans la table news soit 0, et si c 0, alor ça ne l'affiche pas. -
Comment tu fais pour que ok soit égale à 1 ou 0 ?
-
Merci; mais même quand ok=0 ou ok=1 sa ne me l'affiche pas.
-
J'essaye et je te recontacte :)
-
Essaye :
<?php
$sql2="SELECT * FROM news";
$req2 = mysql_query($sql2) or die('Erreur SQL !<br />'.$sql2.'<br />'.mysql_error());
if (isset($_GET['ok'])) {
if($_GET['ok'] == 0){
echo "<div class=\"addcom\">";
echo "<form action=\"addcom.php\" method=\"post\">";
echo "<br />Pseudo : <input type=\"text\" name=\"pseudo\"/><br />";
echo "Mail : <input type=\"text\" name=\"mail\"/><br />";
echo "Mon site : <input type=\"text\" name=\"url\" value=\"[http://]\"/><br />";
echo "Comentaire : <br /><textarea name=\"contenu\" style=\"width:500px;height:150px\"></textarea><br />";
echo "<input type=\"submit\" value=\"Commenté\"/>";
echo "<input type=\"hidden\" name=\"news_id\" value=\"<?php echo $data[id]; ?>\">";
echo "</form>";
echo "</div>";
}
}
?>
-
Heu... S'il vous plais , vous pouvez m'aider d'urgence !
-
J'ai essayer, sa marche pas
-
Enlève ton $ok=$_GET['ok']
et le if en dessus, tu verras bien ;-)
-
nan, sa me retourne http://127.0.0.1:8888/news/voir.php?id=%3C?php%20echo%206;%20?%3E
-
Bah regarde dans ton URL quand tu lance ta page.
Si derrière ya ?ok=1 ou non ;-)
-
Chui désoler, chui vraiment pas doué en php :s
Est ce que tu peut me le faire ou m'aider s'il te plais ? -
Concrètement, $_GET['ok'] veut dire que dans ton url tu as ca : monsite.php?ok=1
Ca ne veut pas dire que ta base de données est ok
-
Je comprend pas trop, en réalité, moi j'ai juste utiliser le css et modifier l'espace administration ce qui na pas été si difficile que ça, mais après, pour afficher un formulaire si dans la base ok==1 sa je c'est pas du tout faire ... J'ap pris se "cms" sur grafikart.fr
Désoler :s
- 1
- 2