Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD > PHP & MySQL
PHP & MySQL Forum d'entraide sur les fonctions MySQL avec PHP. Avant de poster -> FAQ MySQL, Cours MySQL et Sources MySQL. Pour les questions concernant le moteur MySQL plutôt que les fonctions PHP, merci d'utiliser le forum MySQL.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
Vieux 25/01/2010, 20h32   #1
Membre du Club
 
Homme Stéphane A.
Inscription : décembre 2008
Messages : 286
Détails du profil
Informations personnelles :
Nom : Homme Stéphane A.
Localisation : France, Essonne (Île de France)

Informations professionnelles :
Secteur : Distribution

Informations forums :
Inscription : décembre 2008
Messages : 286
Points : 67
Points : 67
Par défaut Recherche dans une table - petit bug affichage multiple pour certaine recherche

Bonjour,

J'ai créé un module de recherche dans une table au vu de mon projet.
Mais voila pour certaine recherche j'ai un affichage multiple la je ne sais pas trop d'ou cela peux provenir.

Mon module de recherche est en fonction du numero du client :
J'ai un formulaire de saisie dans lequel je saisie le numéro du client lors de la validation j'ai un tableau récapitulatif des factures.

La recherche est fait que sur une table (facture)

Ci-dessous mon code (code un peux lourd mais il fonctionne a part ce bug)


Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
 
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
<head>
<?php
if (!empty($titre)) //Si le titre est indiqué, on l'affiche entre les balises <title>
{
    echo '<title> '.$titre.' </title>';
}
else //Sinon, on écrit forum par défaut
{
    echo '<title> Fiche societe </title>';
}
?>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<link rel="stylesheet" media="screen" type="text/css" title="Design" href="#" />
</head>
 
<body>
 
<h3><center> Recherche des dûs d'un client</center></h3>
 
<form method="POST" action="#" name="formulaire">
 
Numéro du client : <input type ="text" name= "numero" size="10">
   <input type="submit" name="submit" value="Envoyer" />
   <input type="reset" name="Effacer" value="Effacer" />
   </form>
<br><br>
 
<h3><center>Détail des factures dues par le client</center></h3><br>
 
<?php
include('inc_conexion.php');
 
if(!empty($_POST['numero']))
{
$id_numero=$_POST['numero'];
 
$requete= "SELECT * FROM facture WHERE id_numero LIKE '".$id_numero."'";
 
$result= mysql_query($requete) or die(mysql_error());
 
while($ligne=mysql_fetch_array($result)){
 
//*******************************************************************************************//
//  Récupération de la liste des facture du client (via une requête sur ma table facture     //
//*******************************************************************************************//
 
$ligne = "<table BORDER=1 BORDERCOLOR=#CCCCCC BGCOLOR=#fffccc CELLSPACING=0 CELLPADDING=1 WIDTH=98% ALIGN=left font-family:Verdana size=10px>
			<td bgcolor='#669999'><b><u>Numero</u></b></td>
			<td bgcolor='#669999'><b><u>Facture</u></b></td>
			<td bgcolor='#669999'><b><u>Libelle</u></b></td>		
			<td bgcolor='#669999'><b><u>Montant</u></b></td>
			<td bgcolor='#669999'><b><u>Date facture</u></b></td>
			<td bgcolor='#669999'><b><u>Date echeance</u></b></td>
			<td bgcolor='#669999'><b><u>Relance</u></b></td>
			<td bgcolor='#669999'><b><u>L 01</u></b></td>
			<td bgcolor='#669999'><b><u>L 02</u></b></td>
			<td bgcolor='#669999'><b><u>L 03</u></b></td>
			<td bgcolor='#669999'><b><u>L 04</u></b></td>
			<td bgcolor='#669999' colspan='2'><b><u>Annee</u></b></td>";
 
$requete = "SELECT * FROM facture WHERE id_numero = '$id_numero'";
 
$resultat = mysql_query($requete) or die ('Erreur '.$requete.' '.mysql_error());
 
$total = 0;	
$mont = 0;
 
 
	while($dus = mysql_fetch_array($resultat)){
 
		$id = $dus['id_numero'];
 
		$facture = $dus['facture'];
		$intitule = $dus['intitule'];
		$montant = $dus['montant'];
		$date_fact = $dus['date_fact'];
		$date_echeance = $dus['date_echeance'];
		$relance = $dus['relance'];
		$l_01 = $dus['l_01'];
		$l_02 = $dus['l_02'];
		$l_03 = $dus['l_03'];
		$l_04 = $dus['l_04'];				
		$annee = $dus['annee'];
 
 
				$mont = addslashes($dus['montant']);
 
					$total += $mont;
 
 
 
			$ligne .= "<tr>
						<td><a href='../dus/fiche_pdv.php?numero=$id' tarPOST='_self'>".$id."</a></td>
						<td>".$facture."</td>
						<td>".$intitule."</td>
						<td align='right'>".$montant."</td>
						<td align='center'>".$date_fact."</td>
						<td align='center'>".$date_echeance."</td>
						<td align='center'>".$relance."</td>
						<td align='center'>".$l_01."</td>
						<td align='center'>".$l_02."</td>
						<td align='center'>".$l_03."</td>
						<td align='center'>".$l_04."</td>						
						<td align='center'>".$annee."</td></tr>"; 
 
	}
$ligne .= "<tr><td colspan='3'>Total des dus du client N° $id_numero </td><td align='right'>".$total."</td></tr>";		
 
echo $ligne;
 
 mysql_free_result($resultat);
 }
}
else
{
 
echo "Merci de saissir un numero";
 
}
?>
</body>
</html>
Merci de l'aide que vous pourriez m'apporter

Runcafre91

Dsl, je pense a voir résolu mon problème en modifiant mon code et en retirant un while que faisait doublon

Runcafre91

Dernière modification par runcafre91 ; 25/01/2010 à 20h50.
runcafre91 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/01/2010, 09h44   #2
Membre confirmé
 
Avatar de BenoitDenis
 
Inscription : avril 2005
Messages : 538
Détails du profil
Informations personnelles :
Âge : 26
Localisation : France, Sarthe (Pays de la Loire)

Informations forums :
Inscription : avril 2005
Messages : 538
Points : 219
Points : 219
Envoyer un message via MSN à BenoitDenis
Merci de cliquer sur le bouton résolu dans ce cas...
__________________
Le contenu est roi, optimisé il est empereur...

Comme la Hongrie, le monde informatique a une langue qui lui est propre. Mais il y a une différence. Si vous restez assez longtemps avec des Hongrois, vous finirez bien par comprendre de quoi ils parlent.

http://www.tethis-interactive.com
BenoitDenis est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +1. Il est actuellement 14h49.


 
 
 
 
Partenaires

Hébergement Web