Problème if/else...
Résolu/Fermé
globalslyced
Messages postés
54
Date d'inscription
lundi 7 janvier 2008
Statut
Membre
Dernière intervention
23 mars 2010
-
27 mai 2008 à 13:59
globalslyced Messages postés 54 Date d'inscription lundi 7 janvier 2008 Statut Membre Dernière intervention 23 mars 2010 - 27 mai 2008 à 15:07
globalslyced Messages postés 54 Date d'inscription lundi 7 janvier 2008 Statut Membre Dernière intervention 23 mars 2010 - 27 mai 2008 à 15:07
4 réponses
Mimiste
Messages postés
1149
Date d'inscription
samedi 17 mai 2008
Statut
Membre
Dernière intervention
6 mars 2016
206
27 mai 2008 à 14:15
27 mai 2008 à 14:15
il faudrai que tu compte le nombre de ligne que te retourne cette requete, si tu a 0 lignes c'est qu'il n'y a pas de commentaire
globalslyced
Messages postés
54
Date d'inscription
lundi 7 janvier 2008
Statut
Membre
Dernière intervention
23 mars 2010
3
27 mai 2008 à 14:18
27 mai 2008 à 14:18
Ok mais comment fait-on pour compter des lignes ... ?
Mimiste
Messages postés
1149
Date d'inscription
samedi 17 mai 2008
Statut
Membre
Dernière intervention
6 mars 2016
206
27 mai 2008 à 14:20
27 mai 2008 à 14:20
$NbLignes = mysql_num_rows($infos);
Barracuda8
Messages postés
108
Date d'inscription
vendredi 4 mai 2007
Statut
Membre
Dernière intervention
19 décembre 2011
65
27 mai 2008 à 14:31
27 mai 2008 à 14:31
Salut,
Qu'est ce qu'il taffiche? Là, à mon avis, il va afficher toutes les lignes où un commentaire existe et ne jamais dire quand il n'y a pas de commentaire.
Reprenons:
$infos = mysql_query('SELECT * FROM commentaires WHERE idnews='.$_GET['idnews'].' ORDER BY id DESC');
while ($donnees = mysql_fetch_array($infos))
{
$pseudo = stripslashes($donnees['pseudo']);
$message = stripslashes($donnees['message']);
$variable = 1; //est à 1 si commentaire 0 sinon?
//Ca ne sert à rien vu que ta requête renvoie des valeurs quand elles existent et rien sinon
//C'est ca le coeur de ton probleme!
?>
Commentaire de <?php echo $pseudo ; ?> :
<br>
<?php
if($variable == 1 ) //donc effectivement si tu as un commentaire tu passeras bien ici
{
echo $message;
}
else //mais tu passeras jamais là vu que $variable ne change jamais de valeur et n'est jamais differente de 1
{
echo 'Pas de commentaires pour le moment';
}
?>
<br />
<br />
<?php
}
------------------------------------------------Tu peux essayer ca------------------------------------------------------------
$variable = 0; //Je transforme $variable en compteur de commentaires que j'initialise à 0, je le place avant le WHILE
$infos = mysql_query('SELECT * FROM commentaires WHERE idnews='.$_GET['idnews'].' ORDER BY id DESC');
while ($donnees = mysql_fetch_array($infos))
{
$pseudo = stripslashes($donnees['pseudo']);
$message = stripslashes($donnees['message']);
//On a un commentaire donc on peut incrementer notre compteur
$variable ++;
?>
//Tu peux essayer de concatener les chaines que tu veux afficher, c'est plus propre, là je laisse comme c'était.
Commentaire de <?php echo $pseudo ; ?> :
<br>
<?php
//tu affiches le commentaire qui existe forcement sinon on ne serait pas entré dans le WHILE donc pas de test à faire
echo $message;
}
}// fin du WHILE, tous les commentaires existant sont affichés
//Mais si on a pas de commentaire enregistré, on ne passe pas dans le WHILE et notre compteur reste à 0
//Donc on peut le tester
if( $variable == 0)
{
echo 'Pas de commentaires pour le moment';
}
?>
Voilà le principe, après j'ai pas testé le code transformé donc il y a pê des erreurs mais la logique de programmation est là.
Bonne journée!
Barracuda.
Qu'est ce qu'il taffiche? Là, à mon avis, il va afficher toutes les lignes où un commentaire existe et ne jamais dire quand il n'y a pas de commentaire.
Reprenons:
$infos = mysql_query('SELECT * FROM commentaires WHERE idnews='.$_GET['idnews'].' ORDER BY id DESC');
while ($donnees = mysql_fetch_array($infos))
{
$pseudo = stripslashes($donnees['pseudo']);
$message = stripslashes($donnees['message']);
$variable = 1; //est à 1 si commentaire 0 sinon?
//Ca ne sert à rien vu que ta requête renvoie des valeurs quand elles existent et rien sinon
//C'est ca le coeur de ton probleme!
?>
Commentaire de <?php echo $pseudo ; ?> :
<br>
<?php
if($variable == 1 ) //donc effectivement si tu as un commentaire tu passeras bien ici
{
echo $message;
}
else //mais tu passeras jamais là vu que $variable ne change jamais de valeur et n'est jamais differente de 1
{
echo 'Pas de commentaires pour le moment';
}
?>
<br />
<br />
<?php
}
------------------------------------------------Tu peux essayer ca------------------------------------------------------------
$variable = 0; //Je transforme $variable en compteur de commentaires que j'initialise à 0, je le place avant le WHILE
$infos = mysql_query('SELECT * FROM commentaires WHERE idnews='.$_GET['idnews'].' ORDER BY id DESC');
while ($donnees = mysql_fetch_array($infos))
{
$pseudo = stripslashes($donnees['pseudo']);
$message = stripslashes($donnees['message']);
//On a un commentaire donc on peut incrementer notre compteur
$variable ++;
?>
//Tu peux essayer de concatener les chaines que tu veux afficher, c'est plus propre, là je laisse comme c'était.
Commentaire de <?php echo $pseudo ; ?> :
<br>
<?php
//tu affiches le commentaire qui existe forcement sinon on ne serait pas entré dans le WHILE donc pas de test à faire
echo $message;
}
}// fin du WHILE, tous les commentaires existant sont affichés
//Mais si on a pas de commentaire enregistré, on ne passe pas dans le WHILE et notre compteur reste à 0
//Donc on peut le tester
if( $variable == 0)
{
echo 'Pas de commentaires pour le moment';
}
?>
Voilà le principe, après j'ai pas testé le code transformé donc il y a pê des erreurs mais la logique de programmation est là.
Bonne journée!
Barracuda.
globalslyced
Messages postés
54
Date d'inscription
lundi 7 janvier 2008
Statut
Membre
Dernière intervention
23 mars 2010
3
27 mai 2008 à 15:07
27 mai 2008 à 15:07
Je vous remercie tous pour vos conseils, maintenantmon script fonctionne parfaitement !
J'ai bien concaténer comme m'a dit Barracuda ! J'ai soigné un peu la présentation et paf sa fait des chocapics !! ^^
Merci encore
Un apperçu ici : http://coldfiction.free.fr/Manu
J'ai bien concaténer comme m'a dit Barracuda ! J'ai soigné un peu la présentation et paf sa fait des chocapics !! ^^
Merci encore
Un apperçu ici : http://coldfiction.free.fr/Manu