bonjour
voilà j'ai plusieurs résultats d'une requête
je voudrais afficher le 1er résultat dans un tableau puis le 2eme dans un autre ect...
ça m'enerve je trouve pas
merci pour votre aide
bonjour
voilà j'ai plusieurs résultats d'une requête
je voudrais afficher le 1er résultat dans un tableau puis le 2eme dans un autre ect...
ça m'enerve je trouve pas
merci pour votre aide
Envoyé par oceane751
normalement une requete renvoit le résultat dans un seul tableau non ? !.
il faut que tu fasse un truc dans le genre
et la tu pourrais afficher tes resultat sous forme de tableaux mysql $val[0] premier champ de ta requete...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 $result: mysql_query(..) while ($val = mysql_fetch_array) { echo "<table>"; echo "<tr><td>".$val[0]." ".$val[1]."</td></tr>"; echo "</table>"; }
et dans un tableaux avec le table et le while
n'hesite pas à poser une question si tu y arrives pas
Tu peux faire un truc du genre :
C'est un tableau en php ou en html que tu souhaite ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 $i = 0; $val = array(); while ($Donnee = mysql_fetch_assoc($result)) { $val[$i] = $Donnee; $i++; }
j'ai dejà tous mes résultats sous forme de tableau
mais ce que je voudrais c'est si jai 6 résultats je veux 6 tableaux et non mes 6 résultats dans un seul tableau
oki cé cool
mais est ce que c'est possible d'avoir la meme chose pour un tableau en html?
merci beaucoup!
pas compris : la réponse de tipoun te crée bien un (ou six) tableau en html, non ?
array() , c'est pas du php??
et <table border = ...> du html?
Tu regarde alors la fonction de Stitchover !
sorry sorry j'ai été trop vite
ce n'est pas la soluce de tipoun, c'est celle de stitchover que je voulais indiquer
j'ai dejà ça :
et ce que je voudrais c'est un tableau pour un chaque client trouvé dans la base de données avec un tableau de reservation pour chaque client
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 $sql = "SELECT * FROM client "; $res = mysql_query($sql); echo "<form method=\"post\" action=\"{$_SERVER['PHP_SELF']}\">"; echo "<table border =\"1\" cellpadding=\"0\" cellspacing=\"1\" >"; echo "<tr>"; echo "<td><center>Id</center></td>"; echo "<td><center>Nom</center></td>"; echo "<td><center>Prenom</center></td>"; echo "<td><center>Adresse</center></td>"; echo "<td><center>CP</center></td>"; echo "<td><center>Ville</center></td>"; echo "<td><center>Tel</center></td>"; echo "<td><center>Email</center></td>"; echo "</tr>"; while($data = mysql_fetch_assoc($res)) { echo "<tr>"; echo "<input type=\"hidden\" name=\"id\" value=\"".$data['id_client']."\" />"; echo "<td>".$data['id_client']."</td>"; echo "<td>".$data['nom']."</td>"; echo "<td>".$data['prenom']."</td>"; echo "<td>".$data['adresse']."</td>"; echo "<td>".$data['cp']."</td>"; echo "<td>".$data['ville']."</td>"; echo "<td>".$data['tel']."</td>"; echo "<td>".$data['email']."</td>"; echo "</tr>"; } $sql2 = "SELECT * FROM reservation"; $res2 = mysql_query($sql2); echo "<table border =\"1\" cellpadding=\"0\" cellspacing=\"1\" >"; echo "<tr>"; echo "<td><center>Num</center></td>"; echo "<td><center>Date reser</center></td>"; echo "<td><center>Date arri</center></td>"; echo "<td><center>Date dep</center></td>"; echo "<td><center>Nbre nuit</center></td>"; echo "<td><center>Prix tot</center></td>"; while ($data2 = mysql_fetch_assoc($res2)) { echo "<input type=\"hidden\" name=\"id\" value=\"".$data['num_reservation']."\" />"; echo "<td>".$data2['num_reservation']."</td>"; echo "<td>".$data2['date_reservation']."</td>"; echo "<td>".$data2['date_arrivee']."</td>"; echo "<td>".$data2['date_depart']."</td>"; echo "<td>".$data2['nbre_nuit']."</td>"; echo "<td>".$data2['prix_total']."</td>"; echo "</tr>"; echo "</form>"; echo "</table>"; }
En gros tu veux joindre les deux tables ?
je ne vais pas lire tout ton code, mais j'ai quelques remarques :
- dans l'ordre, tu ouvres : un form, un table (client), un table (reservation) et ensuite tu fermes ton form et un table. cela me gêne : pour moi, si tu ouvres un form avant un table, tu dois fermer ce table avant de fermer le form. de plus, il manque la fermeture d'un table
- ta requete $sql2 ne fait pas référence à un client. donc tu auras les reservations de tous les clients (peut-être est-ce voulu). je me serais attendu à un WHERE champclient = idclient
- si tu respectes ce que propose stitchover, tu dois ouvrir un table dans ta première boucle while. et a priori, tu rajoutes la série des echo pour afficher l'entête dans cette boucle (bon, si j'ai bien compris ce que tu désires faire)
en faite je voudrais avoir un tableau pour un client puis le tableau correspondant à sa réservation.
pour les requêtes je verrais ça après.
pour l'instant, je voudrais 1 tableau pour chaque client.
on va juste garder ça :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 $sql = "SELECT * FROM client "; $res = mysql_query($sql); echo "<form method=\"post\" action=\"{$_SERVER['PHP_SELF']}\">"; echo "<table border =\"1\" cellpadding=\"0\" cellspacing=\"1\" >"; echo "<tr>"; echo "<td><center>Id</center></td>"; echo "<td><center>Nom</center></td>"; echo "<td><center>Prenom</center></td>"; echo "<td><center>Adresse</center></td>"; echo "<td><center>CP</center></td>"; echo "<td><center>Ville</center></td>"; echo "<td><center>Tel</center></td>"; echo "<td><center>Email</center></td>"; echo "</tr>"; while($data = mysql_fetch_assoc($res)) { echo "<tr>"; echo "<input type=\"hidden\" name=\"id\" value=\"".$data['id_client']."\" />"; echo "<td>".$data['id_client']."</td>"; echo "<td>".$data['nom']."</td>"; echo "<td>".$data['prenom']."</td>"; echo "<td>".$data['adresse']."</td>"; echo "<td>".$data['cp']."</td>"; echo "<td>".$data['ville']."</td>"; echo "<td>".$data['tel']."</td>"; echo "<td>".$data['email']."</td>"; echo "</tr>"; }
pour le form, je l'ai mis n'importe ou parce que je ne sais pas ce qu'il est censé faire
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 $sql = "SELECT * FROM client "; $res = mysql_query($sql); while($data = mysql_fetch_assoc($res)) { echo "<table border =\"1\" cellpadding=\"0\" cellspacing=\"1\" >"; echo "<form method=\"post\" action=\"{$_SERVER['PHP_SELF']}\">"; echo "<tr>"; echo "<td><center>Id</center></td>"; echo "<td><center>Nom</center></td>"; echo "<td><center>Prenom</center></td>"; echo "<td><center>Adresse</center></td>"; echo "<td><center>CP</center></td>"; echo "<td><center>Ville</center></td>"; echo "<td><center>Tel</center></td>"; echo "<td><center>Email</center></td>"; echo "</tr>"; echo "<tr>"; echo "<input type=\"hidden\" name=\"id\" value=\"".$data['id_client']."\" />"; echo "<td>".$data['id_client']."</td>"; echo "<td>".$data['nom']."</td>"; echo "<td>".$data['prenom']."</td>"; echo "<td>".$data['adresse']."</td>"; echo "<td>".$data['cp']."</td>"; echo "<td>".$data['ville']."</td>"; echo "<td>".$data['tel']."</td>"; echo "<td>".$data['email']."</td>"; echo "</tr>"; echo '</form>'; echo '</table>'; }
Bonsoir,
Si tu désires mettre dans un tableau les données d'un client ainsi que ses réservations, tu dois introduire ta deuxième requête dans la boucle de la première :
Je n'ai pas le courage de reprendre tes données.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 $res=mysql_query("select * from client"); while ($ligne=mysql_fetch_assoc($res)) { echo '<table>'; echo '<tr><td>nom</td><td>prenom</td>....</tr>'; echo '<tr><td>'.$ligne['nom'].'</td><td>'.$ligne['prenom'].'</td>....</tr>'; $res2=mysql_query("select * from reservation where id_client="'.$ligne[id'].'"'); echo '<tr><td>date arrivee</td><td>date depart</td>...</tr>'; while ($ligne2=mysql_fetch_assoc($res2)) { echo '<tr><td>'.$ligne2['date_arrivee'].'</td><td>'.$ligne2['date_depart'].'</td>...</tr>'; } echo '</table>'; }
Aux erreurs de syntaxe près ceci devrait donner le résultat (que je pense) que tu recherches
oauis aouis c'est corrigé :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 <div style="text-align: left;">$sql = "SELECT * FROM client "; $res = mysql_query($sql); while($data = mysql_fetch_assoc($res)) { echo "<table border =\"1\" cellpadding=\"0\" cellspacing=\"1\" >"; echo "<tr>"; echo "<td><center>Id</center></td>"; echo "<td><center>Nom</center></td>"; echo "<td><center>Prenom</center></td>"; echo "<td><center>Adresse</center></td>"; echo "<td><center>CP</center></td>"; echo "<td><center>Ville</center></td>"; echo "<td><center>Tel</center></td>"; echo "<td><center>Email</center></td>"; echo "</tr>"; echo "<tr>"; echo "<input type=\"hidden\" name=\"id\" value=\"".$data['id_client']."\" />"; echo "<td>".$data['id_client']."</td>"; echo "<td>".$data['nom']."</td>"; echo "<td>".$data['prenom']."</td>"; echo "<td>".$data['adresse']."</td>"; echo "<td>".$data['cp']."</td>"; echo "<td>".$data['ville']."</td>"; echo "<td>".$data['tel']."</td>"; echo "<td>".$data['email']."</td>"; echo "</tr>"; echo '</table>'; } </div>
ok merci ça va me servir, je vais testerEnvoyé par papyphp
mais c'est pas ce que je voulais dès le départ..
En fait je pense qu'on n'a pas très bien comprit ce que tu voulais !
Donc essayes de réexpliquer ton prob plus clairement
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager