Erreur script php ??

[Résolu/Fermé]
Signaler
Messages postés
272
Date d'inscription
mardi 27 novembre 2007
Statut
Membre
Dernière intervention
14 janvier 2011
-
Messages postés
793
Date d'inscription
vendredi 20 octobre 2006
Statut
Contributeur
Dernière intervention
4 septembre 2011
-
Bonjour,
voila est ce que vous pouvez me dire ou et l'erreur la de dans

<?php
include ('info_bdd.php');
$Connect_db = mysql_connect($host,$user,$mdpbdd);
mysql_select_db($bdd,$Connect_db);
$requete = mysql_query("SELECT pseudo,sexe,id FROM softbb_membres ORDER BY id DESC LIMIT 0,5" ) ;
while($retour = mysql_fetch_array($requete))
$retour = mysql_query('SELECT type, idtopic, idmembre, titre, pseudode, pseudo
FROM '.$prefixtable.'notif
LEFT OUTER JOIN '.$prefixtable.'post ON '.$prefixtable.'notif.idtopic = '.$prefixtable.'post.id2
LEFT OUTER JOIN '.$prefixtable.'membres ON '.$prefixtable.'post.pseudode = '.$prefixtable.'membres.id
WHERE '.$prefixtable.'notif.idmembre = '.$idmembre.' AND (type = 1 OR type = 3)');
$num = mysql_num_rows($retour);

if(empty($num)) echo 'Vous n\'avez actuelement aucun sujet en favoris<br />
Pour en ajouter, cliquez sur le lien en bas du topic que vous voulez ajouter';
else{
echo'<div align="center">';
while($data = mysql_fetch_array($retour)){
if($data['type'] == 1 OR $data['type'] == 3){ echo '=>'.$data['type'].' <a href="forum/forum-sujet-'.$data['idtopic'].'-'.casse($data['titre']).'.html">'.stripslashes($data['titre']).'</a> par <a href="forum/membre-'.$data['pseudode'].'.html">'.stripslashes($data['pseudo']).'</a>"<br />';}
}
echo '</div>';
}
?>


parce moi s'affice ca

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /mnt/102/sda/1/7/msimsboutique/index.php on line 386

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /mnt/102/sda/1/7/msimsboutique/index.php on line 392
Vous n'avez actuelement aucun sujet en favoris
Pour en ajouter, cliquez sur le lien en bas du topic que vous voulez ajouter





Merci a vous

18 réponses

Messages postés
221
Date d'inscription
jeudi 6 novembre 2008
Statut
Membre
Dernière intervention
4 décembre 2011
24
while($retour = mysql_fetch_array($requete))
Tu dois pas mettre un { à la fin? Et quand tu compare deux variables, tu dois pas mettre un double égal (==)?

Sinon on peut avoir le contenu de "info_bdd.php"?
Messages postés
272
Date d'inscription
mardi 27 novembre 2007
Statut
Membre
Dernière intervention
14 janvier 2011
6
voici ce que contient le fichier info_bdd.php

<?php

$host = 'msimsboutique.sql.free.fr';
$bdd = 'msimsboutique';
$user = 'msimsboutique';
$mdpbdd = 'ET MON MDP';
$prefixtable = 'softbb_';

?>
Messages postés
221
Date d'inscription
jeudi 6 novembre 2008
Statut
Membre
Dernière intervention
4 décembre 2011
24
J'ai pas l'impression que tu déclares ta variable $retour avant d'effectuer ces linges:

$num = mysql_num_rows($retour);

while($data = mysql_fetch_array($retour)){

Si la variable $retour n'est pas déclarée, c'est normal qu'il y ait une erreur. Mais peut etre ai-je mal lu ton code.

--
"Software is like sex, it's better when it's free." - Linus Torvalds
Messages postés
272
Date d'inscription
mardi 27 novembre 2007
Statut
Membre
Dernière intervention
14 janvier 2011
6
j'ai pas tro compris ce que je doit faire??
Messages postés
221
Date d'inscription
jeudi 6 novembre 2008
Statut
Membre
Dernière intervention
4 décembre 2011
24
Elle est déclarée où la variable $retour?
Messages postés
272
Date d'inscription
mardi 27 novembre 2007
Statut
Membre
Dernière intervention
14 janvier 2011
6
je sais pas comment declare $retour
Messages postés
221
Date d'inscription
jeudi 6 novembre 2008
Statut
Membre
Dernière intervention
4 décembre 2011
24
Ben retour = mysql_fetch_array($requete) par exemple
Messages postés
272
Date d'inscription
mardi 27 novembre 2007
Statut
Membre
Dernière intervention
14 janvier 2011
6
voila en faite sait moi ca fait au pife mai a la basse le script sait ca

$retour = mysql_query('SELECT type, idtopic, idmembre, titre, pseudode, pseudo
FROM '.$prefixtable.'notif
LEFT OUTER JOIN '.$prefixtable.'post ON '.$prefixtable.'notif.idtopic = '.$prefixtable.'post.id2
LEFT OUTER JOIN '.$prefixtable.'membres ON '.$prefixtable.'post.pseudode = '.$prefixtable.'membres.id
WHERE '.$prefixtable.'notif.idmembre = '.$idmembre.' AND (type = 1 OR type = 3)');
$num = mysql_num_rows($retour);

if(empty($num)) echo 'Vous n\'avez actuelement aucun sujet en favoris<br />
Pour en ajouter, cliquez sur le lien en bas du topic que vous voulez ajouter';
else{
echo'<div align="center">';
while($data = mysql_fetch_array($retour)){
if($data['type'] == 1 OR $data['type'] == 3){ echo '=>'.$data['type'].' <a href="forum/forum-sujet-'.$data['idtopic'].'-'.casse($data['titre']).'.html">'.stripslashes($data['titre']).'</a> par <a href="forum/membre-'.$data['pseudode'].'.html">'.stripslashes($data['pseudo']).'</a>"<br />';}
}
echo '</div>';
}
Messages postés
793
Date d'inscription
vendredi 20 octobre 2006
Statut
Contributeur
Dernière intervention
4 septembre 2011
161
Salut,

En règle générale, ça veut dire que soit t'es pas connecté correctement, soit t'as pas fait de séléction de base, soit ta requête est invalide.

Vérifie les trois.

@Bientôt
Messages postés
221
Date d'inscription
jeudi 6 novembre 2008
Statut
Membre
Dernière intervention
4 décembre 2011
24
Et là il y a une erreur aussi? Ou bien c'est un script sans erreurs que tu as modifié?
Messages postés
272
Date d'inscription
mardi 27 novembre 2007
Statut
Membre
Dernière intervention
14 janvier 2011
6
je sais pas i a j'ai marche et kan je mai <?php les script ici ?> sa marche pas
Messages postés
272
Date d'inscription
mardi 27 novembre 2007
Statut
Membre
Dernière intervention
14 janvier 2011
6
il y a plus personne `_`
Messages postés
793
Date d'inscription
vendredi 20 octobre 2006
Statut
Contributeur
Dernière intervention
4 septembre 2011
161
Essaye de faire étape par étape : tu mets juste les balises <?php ?>, puis tu ajoute les includes, la première requête, ... et ainsi de suite, et tu nous dis exactement quand ça bloque.

ça doit être un problème avec la connection SQL, comme j'ai dis dans mon précédant message. Je n'ai pas vu de grosse faute dans le script, juste une incohérence, mais ça fonctionne quand même (on verra ça après, une fois que ça fonctionne).

PS : la nuit, je vais me coucher, je ne reste pas si tard ;D
Messages postés
272
Date d'inscription
mardi 27 novembre 2007
Statut
Membre
Dernière intervention
14 janvier 2011
6
re bonjour la jai mis <?php ?> et ca fait ça :


Fatal error: Call to undefined function: casse() in /mnt/102/sda/1/7/msimsboutique/index.php on line 395
Messages postés
793
Date d'inscription
vendredi 20 octobre 2006
Statut
Contributeur
Dernière intervention
4 septembre 2011
161
Il y a un problème quelque part ... t'as mis que "<?php ?>" sur toute la page et ça te dis ça ? ...
Messages postés
221
Date d'inscription
jeudi 6 novembre 2008
Statut
Membre
Dernière intervention
4 décembre 2011
24
Ben tu appelles une fonction casse() qui n'est pas définie. Tu l'appelles quand et pourquoi cette fonction?
Messages postés
272
Date d'inscription
mardi 27 novembre 2007
Statut
Membre
Dernière intervention
14 janvier 2011
6
merci a vous tous j'ai trouve le probleme

<?php
$retour = mysql_query('SELECT type, idtopic, idmembre, titre, pseudode, pseudo
FROM '.$prefixtable.'notif
LEFT OUTER JOIN '.$prefixtable.'post ON '.$prefixtable.'notif.idtopic = '.$prefixtable.'post.id2
LEFT OUTER JOIN '.$prefixtable.'membres ON '.$prefixtable.'post.pseudode = '.$prefixtable.'membres.id
WHERE '.$prefixtable.'notif.idmembre = '.$idmembre.' AND (type = 1 OR type = 3)');
$num = mysql_num_rows($retour);

if(empty($num)) echo 'Vous n\'avez actuelement aucun sujet en favoris<br />
Pour en ajouter, cliquez sur le lien en bas du topic que vous voulez ajouter';
else{
echo'<div align="center">';
while($data = mysql_fetch_array($retour)){
if($data['type'] == 1 OR $data['type'] == 3){ echo '=>'.$data['type'].' <a href="forum/forum-sujet-'.$data['idtopic'].'-'.casse($data['titre']).'.html">'.stripslashes($data['titre']).'</a> par <a href="forum/membre-'.$data['pseudode'].'.html">'.stripslashes($data['pseudo']).'</a>"<br />';}
}
echo '</div>';
}?>

sait cette ce qui y a en gras le probleme je l'ai efface et ca marche trait bien merci a vous
Messages postés
793
Date d'inscription
vendredi 20 octobre 2006
Statut
Contributeur
Dernière intervention
4 septembre 2011
161
Ben merci de nous avoir donnée des nouvelle ;D

Par contre, je ne comprends pas comment un simple ECHO à l'intérieur d'un bloc peut influer sur l'extérieur de ce bloc, et pire encore, avant celui-ci ...

Essaye de simplifier le plus possible le code tout en le laissant bogué, et envoye le à PHP.net, en leur expliquant qu'il doit y avoir un problème quant à la levée de l'erreur ...