probleme de code requete sql

Eléphant du PHP | 69 Messages

09 nov. 2007, 23:14

bonjour ! j'ai un code pour me sortire ma liste de clients avec a coté le nombre de facture qu'ils possedent. le probleme de mon code c'est qu'il me donne seulement les clients qui possede une facture.. les autres ne sont pas afficher !! je voudrais les voir safficher ..
$query_membres = mysql_query("SELECT t1.*,count(t2.id) as total_facture FROM utilisateurs as t1,factures as t2 WHERE t1.login=t2.login GROUP BY t1.login");
$total_clients=mysql_num_rows($query_membres);
jespere que vous allez comprendre mon charabia :roll:
et javais oublié de vous dire que les infos des clients et les factures ne sont pas dans la meme table !

Administrateur PHPfrance
Administrateur PHPfrance | 3088 Messages

09 nov. 2007, 23:20

Il n'y a pas d'echo dans ton code, c'est pour ça.

Eléphant du PHP | 69 Messages

09 nov. 2007, 23:23

j'ai un Echo !!! jsuis pas stupide ! jtais juste donner la requete ! voici le code complet.. si sa peux t'aider. !!!
<? 
mysql_connect("localhost","****","****") or die ("impossible de connecter le serveur de données"); // Pour se connecter à la base de donnée
$db = mysql_select_db("design_facture") or die ("impossible de connecter la base de données. <br/>".mysql_errno()." : ".mysql_error().""); // Pour dire le nom de la base de donnée

$query_membres = mysql_query("SELECT t1.*,count(t2.id) as total_facture FROM utilisateurs as t1,factures as t2 WHERE t1.login=t2.login GROUP BY t1.login"); // résultat
$total_clients=mysql_num_rows($query_membres); // donne le nombre de resultas celui ci équivaut au nombre d'utilisateurs

echo"Total Clients:<b> $total_clients </b>"; 
echo " <table border=\"0\" width=\"90%\" align=\"center\">";
echo "<tr>
	<td bgcolor=\"#339933\">
	<p align=\"center\"><b><u>Clients</u></b></p></td>
	<td bgcolor=\"#339933\">
	<p align=\"center\"><b><u>Niveau</u></b></p></td>
	<td bgcolor=\"#339933\">
	<p align=\"center\"><b><u>Total Facture(s)</u></b></p></td>
	<td bgcolor=\"#339933\">
	<p align=\"center\"><b><u>Modifier une facture</u></b></p></td>
	<td bgcolor=\"#339933\">
	<p align=\"center\"><b><u>Delete</u></b></p></td>
	</tr>";
while($rows = mysql_fetch_array($query_membres)) { // boucle ( loop )
$result_login = $rows['login']; // résultat de la boucle pour la colonne pseudo:P
$result_id = $rows['id']; // résultat de la boucle pour la colonne id
$result_lvl = $rows['niveau'];
$result_totalfactures = $rows['total_facture']; // facture total de l'utilisateur
//Table pour montré les membres
	print "<tr>
		<td width=\"130\" bgcolor=\"#FFFFFF\">
		<p align=\"center\">$result_login</p></td>
		<td width=\"100\" bgcolor=\"#FFFFFF\">
		<p align=\"center\">$result_lvl</p></td>
		<td width=\"180\" bgcolor=\"#FFFFFF\">
		<p align=\"center\">$result_totalfactures</p></td>
		<td width=\"170\" bgcolor=\"#FFFFFF\">
		<p align=\"center\"><a href=\"clients_mod.php?facture=".$result_login."\">Modifier</a></td>
		<td bgcolor=\"#FFFFFF\"><p align=\"center\"><a href=\"clients.php?delete=".$result_id."\"> <img border=\"0\" src=\"x10x10.gif\" width=\"10\" height=\"10\"></a></p></td>
	</tr>";
} // fin de la boucle 
mysql_close();
?></table>

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

09 nov. 2007, 23:50

Parce que tu ne requêtes pas comme il faut !!!
Regarde ce mini tuto sur les jointures pour t'informer sur "LET JOIN" (et les autres) !!

J'en profite pour déplacer dans le bon forum !

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute