Le nombre de champs.. ? a laide !

Eléphant du PHP | 69 Messages

18 déc. 2008, 01:27

Bonjour, j'ai ce code si-dessous qui Donne ce tableau
Image
$reponse = mysql_query("SELECT COUNT(*) AS nbre_entrees from ticket "); 
$donnees = mysql_fetch_array($reponse); 

$utilisateur = 'SELECT * FROM ticket WHERE login="'.$_SESSION['login'].'" order by id desc'; 
$resultat = mysql_query($utilisateur); 

$a = 1;
echo " <table border=\"0\" width=\"75%\" > ";
do {
$rows = mysql_fetch_array($resultat); 
if (!isset($rows['jeux'])) {
break;
}
$jeux = $rows['jeux'];
$fini = $rows['fini'];
if (preg_match("/$jeux/", $var_jeux) == 0) { //ont vérifie si le jeux est dans la liste.
if ($a == 1) {
$var_jeux = $jeux; //ont sais que var_jeux existe pas, ont l'a crée

$reponse = mysql_query('SELECT COUNT(*) AS nbre_entrees from ticket Where login="'.$_SESSION['login'].'"'); 
$donnees = mysql_fetch_array($reponse) or die(mysql_error());;
		
$nbticket= $donnees['nbre_entrees'];



echo"<font color=\"#FFFFFF\"> Mes tirages en cours </font>"; 

	echo "<tr>
		<td width=\"190\" bgcolor=\"#FFCC66\">
		<p align=\"center\"><b><u>Vos Tirage(s)</b></u></td>
		<td bgcolor=\"#FFCC66\">
		<p align=\"center\"><b><u>Nombre de tickets</b></u></td>
		<td bgcolor=\"#FFCC66\">
		<p align=\"center\"><b><u>Prend fin le</b></u></td>

	</tr>";
}
echo "
	<tr>
		<td width=\"150\" bgcolor=\"#FFFFFF\">
		<p align=\"center\">$jeux</td>
	<td width=\"220\" bgcolor=\"#FFFFFF\">
		<p align=\"center\">$nbticket</td>
		<td width=\"170\" bgcolor=\"#FFFFFF\">
		<p align=\"center\">$fini</td>
	</tr>
	
 ";
  if ($a != 1) { //ont s'assure que c'est pas le premier while.
  $var_jeux .= ",$jeux"; //ont insert le jeux dans la liste des jeux inscrits sur le tableau
  }
   $a = 2; //ont insert 2 pour pas refaire le tableau n#1
 }
} while(true);
Je voudrais que le nombre de tickets ne soit que seulement pour le jeux correspondant et non pour tout les jeux qui sont à ce membre... Dans ma Table il y a Cela :
Image
Alors je voudrais que Dans la colonne Nombre de ticket sur la ligne du jeux TomRaider il n'y ait que 4 comme valeur ... Merci ! Jespere que je ne suis pas trop compliquer a comprendre :oops:

Mammouth du PHP | 1339 Messages

18 déc. 2008, 02:11

SELECT COUNT(*) AS nbre_entrees from ticket Where jeux = '".$jeux ."'

Je pense a ca non ?
Bon sinon tu me fais un message privé et on se fait un TeamViewer

Eléphant du PHP | 69 Messages

18 déc. 2008, 02:27

Quand je tante de faire ça mes valeur tombe a 0 :S

Mammouth du PHP | 1339 Messages

18 déc. 2008, 02:41

Tu codes vraiment comme un pied au passage :)
Je te conseille de revoir tes bases sur PHPDebutant.org
<table width="75%">
 <tr>
  <td colspan="3"><font color="#fff">Mes tirages en cours </font></td>
 </tr>
 <tr>
  <td width="190" bgcolor="#fc6" align="center"><b><u>Vos Tirage(s)</b></u></td>
  <td bgcolor="#fc6" align="center"><b><u>Nombre de tickets</b></u></td>
  <td bgcolor="#fc6" align="center"><b><u>Prend fin le</b></u></td>
 </tr>

<?php

	$sql = "SELECT DISTINCT jeux FROM `ticket` WHERE login = '".$_SESSION['login']."' ORDER BY id DESC"; // Avec DISTINCT il n'affichera que une fois le jeu
	$req = mysql_query($sql) or die('Erreur MySQL<br />'.$sql.'<br />'.mysql_error());
	while($row = mysql_fetch_array($req)) {
		
	// On fait une boucle pour chaque jeu	
	$sql_jeux = "SELECT fini FROM `ticket` WHERE login = '".$_SESSION['login']."' AND jeux = '".$row['jeux']."'";
	$req_jeux = mysql_query($sql_jeux) or die('Erreur MySQL<br />'.$sql_jeux.'<br />'.mysql_error());
	$num = mysql_num_rows($req_jeux); // On regarde le nombre d'entrée donc le nombre de ticket
	
		while($jeux = mysql_fetch_array($req_jeux)) {
			
			echo ' <tr>
			  <td bgcolor="#fff" align="center">'.$row['jeux'].'</td>
			  <td bgcolor="#fff" align="center">'.$num.'</td>
			  <td bgcolor="#fff" align="center">'.$jeux['fini'].'</td>
			 </tr>';
			 
		}
 
	}

?>
</table>
Bon sinon tu me fais un message privé et on se fait un TeamViewer

Eléphant du PHP | 69 Messages

18 déc. 2008, 02:51

Tu as Tester ton code ? Il Ne donne pas dutout ce que je recherche .. il sort toute les tickets du membre .... Je ne veux que 1 fois le jeux .. Sinon le Nombre de tickets est bon ..

Exemple que je veux que ça donne :
| Vos tirages | Nombre de tickets | Date de la fin |
----------------------------------------------------------
|TomRaider | 6 | 12 sept 08 |
----------------------------------------------------------
|Robocop | 2 | 345345 08 |
----------------------------------------------------------

Juste les 2 jeux avec le Nombre de ticket qu'il a pris .. Pas toute les tickets au complet la ..
Regarde ce que ça donne .. :
Image

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

18 déc. 2008, 10:02

Tu as Tester ton code ? Il Ne donne pas dutout ce que je recherche .. il sort toute les tickets du membre .... Je ne veux que 1 fois le jeux .. Sinon le Nombre de tickets est bon ..
Non mais ne rêve pas non plus :evil:

On te donne des pistes et TU fais.
Je trouve que Elie est déjà bien assez gentil de corriger ton code, tu pourrais au moins faire l'effort restant plutôt que de te plaindre que ça ne fait pas exactement ce que tu demandes. :?
Connaître son ignorance est la meilleure part de la connaissance
Pour un code lisible : n'hésitez pas à sauter des lignes et indenter

twitter - site perso - Github - Zend Certified Engineer

Mammouth du PHP | 1339 Messages

18 déc. 2008, 13:39

J'ai pas testé mon code parce que je n'ai pas ta table sur mon serveur...

Mais normalement il est bon ...

DISTINCT jeux fait 2 boucles Tomb Raider et Robocop
Et le reste affiche les infos pour ces 2 jeux.
Bon sinon tu me fais un message privé et on se fait un TeamViewer

Eléphant du PHP | 69 Messages

18 déc. 2008, 20:58

tu pourrais au moins faire l'effort restant plutôt que de te plaindre que ça ne fait pas exactement ce que tu demandes. :?
s'il ne m'avait pas insulté je ne m'aurais pas plaint ..

Mammouth du PHP | 1339 Messages

18 déc. 2008, 21:03

Moué ...

Mine de rien le post est [Résolu]
Bon sinon tu me fais un message privé et on se fait un TeamViewer