{MySQL} php/mysql

Résolu/Fermé
sara - 22 juil. 2009 à 10:48
jeangilles Messages postés 816 Date d'inscription samedi 21 juin 2008 Statut Membre Dernière intervention 17 juillet 2012 - 22 juil. 2009 à 16:20
bonjour,

j'ai besoin d'aide, j'ai un problème avec mon script, on me donne un message d'erreur le voilà:
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\Program Files\EasyPHP 3.0\www\verifi.php on line 18

et voilà mon script:
<?php
mysql_connect("localhost", "root", "mysql"); //connexion à Mysql
mysql_select_db("site"); //connexion à la base site

if( isset($_POST['nom']) AND isset($_POST['prenom']) AND isset($_POST['age']) AND isset($_POST['date']))
{ //verifier s'il ya bien eu une saisie
if($_POST['nom'] != NULL AND $_POST['prenom'] != NULL AND $_POST['age'] !=NULL AND $_POST['date'] != NULL ) { //verifier si les champ sont pas nul

$nom = mysql_real_escape_string(htmlspecialchars($_POST['nom']));
$prenom = mysql_real_escape_string(htmlspecialchars($_POST['prenom']));
$age = mysql_real_escape_string(htmlspecialchars($_POST['age']));
$date= mysql_real_escape_string(htmlspecialchars($_POST['date']));

mysql_query("INSERT INTO visiteur (nom, prenom, age, date) VALUES('$nom', '$prenom', '$age', '$date')");//on insere
} }
$reponse = mysql_query("SELECT nom, prenom , age , date, FROM visiteur order by ID date");
while ($donnees = mysql_fetch_array($reponse) )
{
echo $donnees['nom'];
echo $donnees['prenom'];
echo $donnees['age'];
echo $donnees['date'];
}
mysql_close(); // Déconnexion de MySQL
?>


merci pour votre aide

4 réponses

Zep3k!GnO Messages postés 2025 Date d'inscription jeudi 22 septembre 2005 Statut Membre Dernière intervention 18 novembre 2015 200
22 juil. 2009 à 12:57
Salut, bin ça veut simplement dire que ta requête sucks...
La base de chez base ( best pratices ) :

--> $reponse = mysql_query("SELECT nom, prenom , age , date, FROM visiteur order by ID date") or die("Erreur MySQL : ".mysql_error() );

Déja avec ça t'as un message si ta requete plante, ca évite les plantages dans le script après.

Et puis si tu vois toujours pas, ouvres phpMyAdmin, tu vas dans l'onglet SQL, tu colles ta requete et t'a un message d'erreur assez explicite...
0
jeangilles Messages postés 816 Date d'inscription samedi 21 juin 2008 Statut Membre Dernière intervention 17 juillet 2012 186
22 juil. 2009 à 13:28
Oui je suis d'accord avec le message d'au dessus, il faut rajouter les die(mysql_error()) ^^
mais là l'erreur parait évidente :
$reponse = mysql_query("SELECT nom, prenom , age , date, FROM visiteur order by ID date ");

c'est soit ID, soit date, soit les 2 mais alors y'a une virgule entre les 2 dans ce cas ^^
0
ah ouii, c'est vrai, je n y ai pas fait attention.
merci pour votre aide, c'est gentil:)
0
jeangilles Messages postés 816 Date d'inscription samedi 21 juin 2008 Statut Membre Dernière intervention 17 juillet 2012 186
22 juil. 2009 à 16:20
De rien :)
0