Probleme php isset et empty

Résolu
Math31 -  
dreamfeeder Messages postés 253 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
J'ai un probleme avec mon script php.

Que je m'explique : le script est sensé m'ouvrir un tableau avec 3 informations. Pour cela je diverses requetes SQL pour mon affichage.

Apres, pour une modification je recupere l'id de l'enregistrement (l'id est un champ numeric auto incremente)

Le probleme, est que lorsque je supprime un enregistrement, et que je réouvre les informations, au lieu de m'afficher 'Pas de contact ' il m'affiche une erreur sur la ligne 54 qui est la suivante:

$resultat = mysql_result($req9,0) or die("erreur result 2".mysql_error());

Cette ligne est lié a celle ci : $req9 = mysql_query($sql8) or die("erreur SQL 9".mysql_error());

Voila ma condition d'affichage

if(empty($req9))
{
echo 'Pas de Contact';
}
elseif(isset($req9))
{
$resultat = mysql_result($req9,0) or die("erreur result 2".mysql_error());
}


Et voila le message d'erreur

Warning: mysql_result() [function.mysql-result]: Unable to jump to row 0 on MySQL result index 6 in C:\Program Files\EasyPHP 3.0\www\Nouveau site banquestage\contact_entreprise.php on line 54 erreur result 2

Je ne comprend pas pourquoi il ne m'affiche pas l'echo dans la condition comme il devrait le faire

Merci
A voir également:

14 réponses

dreamfeeder Messages postés 253 Date d'inscription   Statut Membre Dernière intervention   54
 
Si je ne m'abuse, or die stoppe l'execution du script du coup la suite du code n'est pas effectué.
0
Math31
 
En effet sauf que maintenant il m'affiche le message d'erreur en haut de page et le tableau vide (ce qui est normal pour le tableau )

Comment reussir a enlever ce mesage d'erreur?
0
Math31
 
En fait non rien de normal il est sensé m'afficher juste
'Pas de contact'
0
dreamfeeder Messages postés 253 Date d'inscription   Statut Membre Dernière intervention   54
 
Donc maintenant tu as "$req9=mysql_query($sql8);", c'est ca?

le truc c que mysql_query() retourne une ressource en cas de réussite et false en cas d'echec, donc $req9 ne sera pas vide, remplace "if(empty($req9))" par "if(!$req9)" ca devrait marcher
0

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

Posez votre question
Math31
 
Il n'y à hélas aucun changement, toujours l'affichage du message d'erreur.
0
dreamfeeder Messages postés 253 Date d'inscription   Statut Membre Dernière intervention   54
 
fais un echo "$req9" pour voir ce qui est retourné
0
Math31
 
Voila l'echo $req9;

Resource id #6
0
dreamfeeder Messages postés 253 Date d'inscription   Statut Membre Dernière intervention   54
 
donc ta requete $sql8 retourne bien quelquechose et n'est donc pas vide d'ou le passage a la deuxieme condition.
0
Math31
 
Seulement dans la table plus aucun enregistrement ne correspond.

Quand l'enregistrement existé et que je faisait un echo je voyait l'id du contact
En appuyant sur supprimer je supprime l'enregistrement entier. Plus rien ne devrais exister.

Apparement ce n'est pas le cas, pourtant la table est bien vide.
0
dreamfeeder Messages postés 253 Date d'inscription   Statut Membre Dernière intervention   54
 
en fait ta requete etant valide, mysql_query te retourne une ressource meme si aucun enregistrement correspondant n'a été trouvé je pense. essaye plutot de baser ta condition sur le nombre d'enregistrement retourné
0
Math31
 
si tu parle du $req9 = mysql_num_rows($sql8) or die("erreur SQL 9".mysql_error());

il m'affiche : Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in C:\Program Files\EasyPHP 3.0\www\Nouveau site banquestage\contact_entreprise.php on line 46
erreur SQL 9
0
dreamfeeder Messages postés 253 Date d'inscription   Statut Membre Dernière intervention   54
 
mysql_num_rows() ne fonctionne pas sur la requete mais sur le resultat obtenu avec mysql_query( la ressource) donc c'est mysql_num_rows($req9) que tu peux mettre dans ta condition genre if (mysql_num_rows($req9)==0)
0
Math31
 
C'est parfait tu est un as sa marche.

Merci beaucoup et bonne fin de journée
0
dreamfeeder Messages postés 253 Date d'inscription   Statut Membre Dernière intervention   54
 
De rien, bonne fin de journée a toi aussi pense a mettre le sujet en résolu.


edit: pardon ct deja fait lol.
0