variable

Répondre
universdupc
le 11/01/2005 à 20:05
universdupc
Voilà je vient de créer un script permettant de comtabiliser et afficher les nouveau message pour cela j'ai cré une page nombre_de_news_mess.php :

  1. <?php
  2. session_start();
  3. include('includes/functions.inc.php');

  4. connecter();

  5. $query='SELECT * FROM messages where lu="0" AND id_destinataire="'.$_SESSION['id'].'"';
  6. $result=@mysql_query($query);
  7. $num=@mysql_num_rows($result);

  8. if($num <= 1){
  9. echo"Vous avez $num nouveau message";
  10. }
  11. else
  12. {

  13. echo"Vous avez $num nouveaux messages";
  14. }
  15. mysql_close();

  16. ?>


Et je voudrais savoir si c possible d'afficher la valeur stocker dans la variable $num sur un menu gauche d'un site par exemple si oui comment fait-on.

merci
LA GLOBULE
le 11/01/2005 à 20:08
LA GLOBULE
D'un autre site ?
Ou le site qui utilise la messagerie interne ?

(PS : n'utilises pas de @ sur un mysql_query, surtout en devel : le jour où ta requete foire, tu ne sauras pas ce qui foire. Un SELECT count(id) serait egalement plus rapide qu'un SELECT * suivi d'un mysql_num_rows)
LA GLOBULE
le 11/01/2005 à 20:16
LA GLOBULE
Ah...

Bah j'sais pas, chez moi ca fonctionne :/
(naturellement, il faut que $num existe avant de l'afficher hein smiley Tu ne peux pas afficher un truc que tu n'as pas encore calculé).
universdupc
le 11/01/2005 à 20:19
universdupc
Ben justement j'ai créé cette page affin de le calculer apres il faudrasi refaire appel à cette page pour afficher la variablze.
Donc moi je mettait dans mon menu ou autre par un iinclude de la page nombre_de_news_mess.php et ensuite j'utilise un echo dans la page avec la varialbe $num Non !!
LA GLOBULE
le 11/01/2005 à 20:22
LA GLOBULE
Ben si tu include le script qui calcule le nb de message, $num existe dans ta page (si tu ne l'as pas modifié ou effacé).

Faut naturellement faire l'include avant d'utiliser $num.

Mais cela fonctionne.
moogli
le 11/01/2005 à 20:39
moogli
en dehors de ton problème, au vue de ta requete, je te conceil de lire ceci afin de te faire changer ton beau select * :)

sachant que mysql sais aussi le faire avec count

par exemple

SELECT count (id) as nb_mess FROM messagerie WHERE id="12";
dans ton script tu utilise mysql_fetch_array et tu as le nombre !
=>
  1. <?php
  2. $sql= 'SELECT count (id) as nb_mess FROM messagerie WHERE id="12"';
  3. $req = mysql_query($sql) or die('Erreur SQL <br>'.$sql.'<br/>'.mysql_error());
  4. $data = mysql_fetch_array($req);
  5. $nombre_de_message = $data['nb_mess'];
  6. ?>

voila avec sa c'est un poil + optimisé :)

@+
Il en faut peu pour être heureux !!!!!
Répondre
LoadingChargement en cours