Probleme de mysql_fetch_object

Bonjour a tous.Je suis en train de prog un code en php avec des variables recuperees de html.

Voila mon code:

<HTML><HEAD>
<TITLE>Connexion à MySQL</TITLE>
<LINK REL=stylesheet HREF="films.css" TYPE="text/css">
</HEAD>
<BODY>

<H1><font color="red"> STATISTIQUES</font></H1>

<?php
$connection=mysql_pconnect("localhost","root");

if (!$connection)
{
echo "Désolé,connexion au serveur impossible\n";
exit;
}

if (!mysql_select_db("s_c_l_s",$connection))
{
echo "Désolé,accès à la base impossible\n";
exit;
}

include("config.inc");
$nbphonecall_tot1=$_GET['nbphonecall_tot1'];

$dateday1=$_GET['dateday1'];

$requete1="select count(Phone_Call)
from company_rafik,company_adam,company_rob,company_christian,company_fabrice
where Date = '$dateday1'";

if ($nbphonecall_tot1){
$resultat1=mysql_query($requete1,$connection);

$phonecall1=mysql_fetch_object($resultat1);

echo "The $dateday1,total number of calls(phone) was of $phonecall1 ->count <br/><br/>";
}

mysql_close();
?>
</BODY>

</html>

Et le message d erreur est le suivant:

STATISTIQUES

Warning: mysql_fetch_object(): supplied argument is not a valid MySQL result resource in c:\program files\easyphp1-82\www\nbc.php on line 60
The 2005-06-15,total number of calls(phone) was of ->count

Si vous avez une quelconque idee de comment resoudrte ce probleme,merci de me repondre quand vous pouvez

Merci d avance

11 réponses

  1. essaye ta requete directement dans phpmyadmin, mais je pense que ca vient du fait que tu veu compter un champ sans preciser de quelle table il vient, vu que tu a tout plein de table, et elles n'ont aucune relation apparente ?
    0
    1. ya ps une histoire de "MYSQL_NUM" avec mysql_fecth_object??
      0
  2. cette erreur est due a une mauvaise requete SQL, j'en suis sur, ca ne vient pas de php
    0
    1. merci pour votre reponse.
      Jai pas tres bien compris ton truc de MYSQL_NUM
      A part ca,dans la requete toutes les tables ont le champ Phone_Call c pour cela que j ai les ai mises ensemble.
      Maintenant peut etre que je me trompe...
      Essaie de me repondre quand vous pouvez
      0
      1. le warning ke tu as je l'ai eu aussi et il ma trop pris la tete
        et pi en regardant un code sur le net yavé MYSQL_NUM g essayé et depuis jai jamais re eu cette erreur!!!

         $row=mysql_fetch_array($resultat, MYSQL_NUM);


        je sais pas trop ce que ca fait mais moi ca ma supprimée mon erreur
        0
        1. bip ! tu te trompes. j'ai deja essayé de faire ca, ca n'a pas marché. Il faut que tu compte tous les champs un par un. tu peu faire :
          $sql = "SELECT count(table1.champ) as c1,count(table2.champ) as 
          c2,count(table3.champ) as c3, c1+c2+c3 as total FROM 
          table1,table2,table3" ;
          
          


          si le coup du total ne marche pas, tu peu le calculer apres avec ta variable result
          0
          1. Merci pour ta reponse Timon mais le where qui est dans ma requete qu es ce que j en fais?
            Repond moi quand tu peux
            Merci beaucoup
            0
            1. tu ne vas pas rire, mais je viens de faire des petits tests, et je pense qu'il vaut mieux faire 3requetes differentes. pas a cause du where que tu peux rajouter, mais a cause du count. si tu met plusierus tables dans le from, mysql fait d jointures a la con... par exemple moi dans mes test :
              select count(page1.livecontent5) from page1
              

              me retourne 37
              mais
              select count(page1.livecontent5) from page1,links
              


              me retourne 0...
              0
              1. Je crois que tu as tout a fait raison
                C hyper chiant (comme d hab!) mais c la vie...
                Je vais esseyer et je te recontacte
                Merci
                0
                1. Re
                  Voila j ai esseye un petit code pour voir ce qu il y avait dans la requete:

                  $requete5="select count(Phone_Call)
                  from company_rafik
                  where Date LIKE '$dateday3'";

                  $resultat5=mysql_query($requete5,$connection);

                  $phonecall3=mysql_fetch_object($resultat5);

                  echo "The $dateday3,total number of calls(phone) of Rafik was of $phonecall3->count <br/><br/>";

                  Tout fonctionne mais le resultat est le suivant:

                  STATISTIQUES
                  The 2005-06-15,total number of calls(phone) OF Rafik was of

                  Jai esseye avec cette date sur mon formulaire mais il ne me met pas le nbre d appels alors que j en ai enregistre 1
                  Que faire? ...
                  0
                  1. essaye ca :
                    $phonecall3=mysql_fetch_array($resultat5); 
                    $nbcall = $phonecall3["count(Phone_Call)"] ; 
                    // mais la je te conseille de mettre un " as count" dans ton sql, pour ne mettre que ["count"]
                    echo " le $date, $nbcall appels." ;
                    
                    0
                    1. Merci beaucoup j ai fait mysql_num_rows et j ai divise les requetes pour chaque table et ca marche tres bien c long mais ca marche c l essentiel
                      Merci beaucoup
                      @+
                      0