Pb avec mysq_result

paloxicide Messages postés 225 Date d'inscription mardi 6 avril 2004 Statut Membre Dernière intervention 20 juin 2006 - 27 mars 2006 à 14:54
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 - 28 mars 2006 à 09:18
J'ai un problème avec ma requete, je veux savoir si une ligne dans ma base de données existe et si oui je la renvoie sinon je renvoie false
Voici ma fonction

function Verif_Exp($nom)
{
$query = mysql_query("select id from table where col1='$nom'") or die(mysql_error());
return mysql_result($query,0);
}

Le pb est que si il ne trouve pas de ligne alors mysql_result plante
> Warning: Unable to jump to row 0 on MySQL result
Comment faire pour récupérer ou gérer l'erreur

6 réponses

raven44 Messages postés 315 Date d'inscription mercredi 23 mars 2005 Statut Membre Dernière intervention 21 mars 2011 1
27 mars 2006 à 15:01
Pour tester si une ligne existe dans ma table, je fai jamais comme ca moi

Je fais :

$query = "Select champs From Table"
$result = mysql_query($query)

if(mysql_num_rows($result) == 0)
{
blablablalba
}
else
{
blablablabla
}
0
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
27 mars 2006 à 15:01
Hello,

function Verif_Exp($nom)
{
$query = mysql_query("select id from table where col1='$nom'") or die(mysql_error());
if (mysql_num_rows ($squery === 0)) {
return false
} else {
return mysql_fetch_row ($query);
}
}
0
gibozsec Messages postés 318 Date d'inscription mardi 27 mai 2003 Statut Membre Dernière intervention 11 mars 2010
27 mars 2006 à 15:05
Il vaut mieux en effet essayer de gèrer les erreur, c'est "plus propre".

Sinon il existe la possibiliter de désactiver l'affichage des Warning :

return @mysql_result($query,0);

Le @ permet de ne pas afficher les erreurs.

[B)][red]Grrrrrrrrrrr/red[B)]
0
paloxicide Messages postés 225 Date d'inscription mardi 6 avril 2004 Statut Membre Dernière intervention 20 juin 2006 1
27 mars 2006 à 18:16
merci pour ces bonnes infos encore une fois
0

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

Posez votre question
FhX Messages postés 2350 Date d'inscription mercredi 13 octobre 2004 Statut Membre Dernière intervention 18 avril 2015 3
27 mars 2006 à 23:39
Pas moi
SELECT COUNT(id) FROM table WHERE where col1='$nom'
tu fais un fetch_row et tu regardes !

<?php
$s = "SELECT COUNT(id) FROM table WHERE where col1='$nom'"
$q = mysql_query($s);
$data = mysql_fetch_row($q);
return ( (int) $data[0] === 1 ) ? TRUE : FALSE;

// Et voila :)
?>
0
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
28 mars 2006 à 09:18
Nan, il veut savoir si un id existe. S'il n'existe pas, il renvoie false, certes, mais s'il existe, il veut renvoyer l'id ;-)
0
Rejoignez-nous