Erreur MySQL

Résolu
DarkCid Messages postés 195 Date d'inscription mardi 22 février 2005 Statut Membre Dernière intervention 26 octobre 2009 - 5 sept. 2007 à 15:58
coockiesch Messages postés 2268 Date d'inscription mercredi 27 novembre 2002 Statut Membre Dernière intervention 13 septembre 2013 - 5 sept. 2007 à 17:28
Bonjour,

je voudrais savoir s'il est possible d'afficher les erreurs mysql au lieu de celles php

autrement dit, l'explication de l'erreur après une éxecution de requete par exemple selon MySQL (qui est beaucoup plus utile pour comprendre d'où sa vient) plutot que selon php (qui a par la ligne dans le code ne renseigne guère de ce qui s'est passé)

merci

9 réponses

Evangun Messages postés 1980 Date d'inscription dimanche 20 février 2005 Statut Membre Dernière intervention 24 septembre 2012 4
5 sept. 2007 à 16:22
tout simplement

$requete = "select * from matable";
$result = mysql_query($requete,$db);
$mavariable = mysql_result($result,0,"monchamp");

echo mysql_error( )

cf php.net, c'est là-bas que ça se passe pour ce genre de questions.
à+
3
Evangun Messages postés 1980 Date d'inscription dimanche 20 février 2005 Statut Membre Dernière intervention 24 septembre 2012 4
5 sept. 2007 à 16:41
C'est normal, mysql_result revient à supposer que le résultat existe, tandis que mysql_error( ) concerne l'existence même d'un résultat.
Passe par mysql_fetch_row et teste si $row[5] existe par exemple, c'est plus propre et plus rapide.
3
Evangun Messages postés 1980 Date d'inscription dimanche 20 février 2005 Statut Membre Dernière intervention 24 septembre 2012 4
5 sept. 2007 à 16:06
Hello,

mysql_error( );
0
DarkCid Messages postés 195 Date d'inscription mardi 22 février 2005 Statut Membre Dernière intervention 26 octobre 2009 1
5 sept. 2007 à 16:13
par exemple, j'ai ce code :

$requete = "select * from matable";
$result = mysql_query($requete,$db);
$mavariable = mysql_result($result,0,"monchamp");

je l'utilise comment avec ce code ?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Evangun Messages postés 1980 Date d'inscription dimanche 20 février 2005 Statut Membre Dernière intervention 24 septembre 2012 4
5 sept. 2007 à 16:23
Tu peux aussi faire

if(
mysql_errno() != 0){
    echo mysql_error();
}

pour afficher seulement quand il y a une erreur.
0
Evangun Messages postés 1980 Date d'inscription dimanche 20 février 2005 Statut Membre Dernière intervention 24 septembre 2012 4
5 sept. 2007 à 16:25
quoique jeviens de vérifier,
mysql_error() renvoie une chaine vide quand il n'y a pas d'erreur, dsl j'avais oublié ça. donc pas besoin de tester le numéro d'erreur.
0
DarkCid Messages postés 195 Date d'inscription mardi 22 février 2005 Statut Membre Dernière intervention 26 octobre 2009 1
5 sept. 2007 à 16:25
merci, mais c'est chiant sa marche pas pour le mysql_result, si sa fait une erreur sa revient à l'afifchage php
0
DarkCid Messages postés 195 Date d'inscription mardi 22 février 2005 Statut Membre Dernière intervention 26 octobre 2009 1
5 sept. 2007 à 16:42
ok merci bien
0
coockiesch Messages postés 2268 Date d'inscription mercredi 27 novembre 2002 Statut Membre Dernière intervention 13 septembre 2013 4
5 sept. 2007 à 17:28
Yop!
if( !( $ret = mysql_query( "SELECT ...") ) )
  die( mysql_error( ) );

while( $row = mysql_fetch_assoc( $ret ) )
{
  ...
}

@++

R@f

La boîte à bouts de codes
"On dit que seulement 10 personnes au monde comprenaient Einstein. Personne ne me comprends. Suis-je un génie???"
0
Rejoignez-nous