Récupération dans bdd

hugo -  
 toto -
Bonjour,
j'ai un code pour récupérer des info d'une bdd et les mettre dans un tableau.
Le haut du tableau s'affiche mais pas la récupération dans la bdd.
Pourquoi ????
Le code :

<?
// information pour la connection à le DB
$host = 'sql.olympe-network.com';
$user = 'testevici';
$pass = 'HG96sorento';
$db = 'testevici';

// connection à la DB
$link = mysql_connect ($host,$user,$pass) or die ('Erreur : '.mysql_error() );
mysql_select_db($db) or die ('Erreur :'.mysql_error());

// requête SQL qui compte le nombre total d'enregistrement dans la table et qui
//récupère tous les enregistrements
$select = 'SELECT * FROM facture';
$result = mysql_query($select,$link) or die ('Erreur : '.mysql_error() );
$total = mysql_num_rows($result);

//2
$client = $result["client"];
$select2 = "SELECT * FROM client where num = '$client'";
$result2 = mysql_query($select2,$link) or die ('Erreur : '.mysql_error() );
$total2 = mysql_num_rows($result2);


// si on a récupéré un résultat on l'affiche.
if($total) {
    // debut du tableau
    echo '<table border="1px">'."\n";
        // première ligne on affiche les titres prénom et surnom dans 2 colonnes
        echo '<tr>';
        echo '<td><b><center>CLIENT</center></b></td>';
        echo '<td><b><center>ARTICLE</center></b></td>';
      echo '<td><b><center>DATE FACTURE</center></b></td>';
        echo '<td><b><center>PRIX HT</center></b></td>';
      echo '<td><b><center>TVA</center></b></td>' ;
	  echo '<td><b><center>COMENTAIRE</center></b></td>' ;
	  echo '<td><b><center>ACOMPTE</center></b></td>' ;
      echo '</tr>'."\n";
    // lecture et affichage des résultats sur 2 colonnes, 1 résultat par ligne.    
    while($row = mysql_fetch_array($result))
	while($row2 = mysql_fetch_array($result2))
	{
        echo '<tr>';
        echo '<td><center>'.$row2["nom"].'</center></td>';
        echo '<td><center>'.$row["article"].'</center></td>';
      echo '<td><center>'.$row["date_fact"].'</center></td>';
        echo '<td><center>'.$row["prix_ht"].'</center></td>';
      echo '<td><center>'.$row["tva"].'</center></td>';
	  echo '<td><center>'.$row["coment"].'</center></td>';
	  echo '<td><center>'.$row["acompte"].'</center></td>';
      echo '</tr>'."\n";
    }
    echo '</table>'."\n";
    // fin du tableau.
}
else echo 'Pas d\'enregistrements dans cette table...';

// on libère le résultat
mysql_free_result($result);
?>

Merci

5 réponses

InAme19 Messages postés 573 Statut Membre 62
 
Tu devrais cacher ton mot de passe!!!!!
0
DarkRodWarrior Messages postés 1947 Statut Membre 91
 
Oh tu as écrit le mot de passe : / édite ton message et remplace par ******* stp :)
0
hugo
 
Je ne peux pas je suis pas inscrit
0
toto
 
change de mot de passe !

Ton problème vient de ton $client = $result["client"];
$result n'est pas un tableau, c'est une ressource. Donc $client est vide et ton select2 ne te rend rien.

Après ton premier select, il faut fair eun mysql_fetch_array (comme tu le fais pour le deuxième d'ailleurs) :

result = mysql_query($select,$link) or die ('Erreur : '.mysql_error() );
$total = mysql_num_rows($result);
$result1=mysql_fetch_array($result); // result1 est bien un tableau, lui

//2
$client = $result1["client"];


De plus, je pense qu'il te manque un while si tu veux boucler sur tous les clients. Là, tu ne vas traiter que le premier
0

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

Posez votre question
toto
 
pardon pour le while, je ne l'avais pas vu. Il y en a bien un pour ta première requête, mais j'ai l'impression qu'il n'est pas au bon endroit
0