Message d'erreur

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Message d'erreur

par thehawk » 24 mai 2009, 22:18

met : $result = mysql_query($query) or die(mysql_error());

et avant un : echo $query;

edit : Zut Grilled

par zeus » 24 mai 2009, 22:17

Plusieurs fois, des éléments très importants ont été avancés :
Il faudrait que tu testes la requete dans PHPmydamin (en remplaçant les variables par leur valeur)
fait un echo $query; voir si tout est en ordre
Tu as un problème, disant que le retour de l'exécution de la requête est invalide. En clair, cela signifie qu'il y a eu une erreur lors de l'exécution de la requête. Le problème est donc d'ordre SQL.

Pour commencer, fait afficher la requête, pour être sûr et certain du SQL qui est exécuté.
Ensuite, si tu ne vois pas apparaitre l'erreur, exécute là dans phpMyAdmin et lit le message d'erreur SQL affiché.

Si ces 2 étapes te montrent une erreur, mais que tu ne comprend pas, colle nous ici ces 2 éléments (requête SQL et code d'erreur SQL)

NB : quand tu fais un code PHP qui exécute du code SQL, il est de bon ton de vérifier le retour de l'exécution
$str_requete = "SELECT id, nom FROM client";
$o_result = mysql_query($str_requete);

if($o_result === false)
{
    echo "Une erreur est survenue. Merci d'en informer l'administrateur";
    // Ce if ne fonctionne que si tu développes sur ton poste.
    // Il ne sera exécuté que pendant le développement. Très important pour ne pas montrer tes erreurs une fois le site en production
    if( $_SERVER['HTTP_HOST'] == '127.0.0.1' )
    {
         echo "Erreur MySQL : ". mysql_error();
    }
}
else
{
    // Traitement normal
    while($a_result = mysql_fetch_assoc($o_result))
    {
        // ...
    }
}
Et, quand tu développes, tu peux même utiliser mysql_error() pour voir quel est le message d'erreur retourné par un mysql_query() quand il a échoué

par mmomobis » 24 mai 2009, 22:02

Remplace ADMIN_TABLE par le nom en dure et dis ns quoi :?:
Toujours le même problème :shock: merci encore

par dunbar » 24 mai 2009, 21:50

Remplace ADMIN_TABLE par le nom en dure et dis ns quoi :?:

par mmomobis » 24 mai 2009, 21:38

:cry: :cry: toujours le même problème ligne 18, merci encore

par thehawk » 24 mai 2009, 21:11

Les variables sont corrects ?

essaye cette syntaxe :
	$query = 'SELECT * FROM '.ADMIN_TABLE.' WHERE email_adm="'.$email.'" AND pass_adm=MD5("'.$pass.'")';
    $result = mysql_query($query); // execute
Bye Hawk

fait un echo $query; voir si tout est en ordre

par mmomobis » 24 mai 2009, 21:06

Bête idée peut-être mais regarde si les short_open_tag sont activer :!:
et / ou es tu certain des noms des champs :?:
Je viens de vérifier et Short_open_tag est activé, pour ce qui est de la requête tout fonctionnait à merveille, et j'ai tout importé sans difficulté, le reste du script fonctionne à merveille, merci de votre aide, si qq un a une soluce je suis preneur !!

par dunbar » 24 mai 2009, 20:28

Bête idée peut-être mais regarde si les short_open_tag sont activer :!:
et / ou es tu certain des noms des champs :?:

par thehawk » 24 mai 2009, 20:27

Il faudrait que tu testes la requete dans PHPmydamin (en remplaçant les variables par leur valeur)

As tu testé si les variables sont corrects ? (correspondent bien a ta base de donnée)

Bye Hawk

par mmomobis » 24 mai 2009, 20:22

Pourrais tu montrer la requete stp :idea:
Salut,
Merci pour ta rapidité et ton aide, voici la requête :

Code : Tout sélectionner

// Requete qui verifie le bon mail et pass $query = 'SELECT * FROM '.ADMIN_TABLE.' WHERE email_adm=\''.$email.'\' AND pass_adm=MD5(\''.$pass.'\')'; $result = mysql_query($query); // execute

par dunbar » 24 mai 2009, 20:15

Pourrais tu montrer la requete stp :idea:

Message d'erreur

par mmomobis » 24 mai 2009, 20:13

Bonjour,
Je viens de migre de serveur en passeur d'un serveur OVH avec un php4.X.X sous redhat 7.2 vers un VDS sivit sous Debian et un php 5.X.X, j'ai depuis un problème qui se pose, une erreur sur un de mes scripts voyez par vous même :

Code : Tout sélectionner

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/web/perroquet.biz/ftp/www/annuaire/gestadmin/index.php on line 18
La ligne 18 correspond à ceci :

Code : Tout sélectionner

// Si les identifiants sont correctes if($row = mysql_fetch_array($result)) -------->Ligne 18 { // On ouvre une session session_start(); // On envoie les infos dedans $_SESSION['sess_email'] = $row['email_adm']; $_SESSION['sess_pass'] = $row['pass_adm']; // On fait une redirection vers la page profil header('location: ./espace.php?'.link_session()); } else { $error = 'E-mail et/ou mot de passe invalides'; } } else { $error = 'Identifiant non valides'; } }
j'ai mis la suite de la ligne 18 car je pense que la suite doit être impactée aussi, merci de bien vouloir m'aider à résoudre celà.

++