Précédent   Forum des professionnels en informatique > PHP > Langage > Syntaxe
Syntaxe Forum d'entraide sur la syntaxe de PHP et la POO. Avant de poster -> FAQ syntaxe, Cours d'initiation et cours de POO
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 22/06/2011, 11h10   #1
Membre du Club
 
hugues dupont
Pompier
Inscription : janvier 2010
Messages : 170
Détails du profil
Informations personnelles :
Nom : hugues dupont
Localisation : France

Informations professionnelles :
Activité : Pompier

Informations forums :
Inscription : janvier 2010
Messages : 170
Points : 44
Points : 44
Par défaut Tableau ou sous formulaire

bonjour,
j'ai une requete qui me renvoi plusieurs lignes avec plusieurs champs.

pour avoir une belle présentation, j'utilise la fonction <TABLE>.
Ceci m'oblige a remettre la requete pour chaque <TD>

<table><td> requete1 champ 1</td>.......<td>requete1 champ 5</td></table>

car si je fais la requete en php
recupération des variable et après <table>...<TD> echo variable..</table>; ça ne marche pas.

Pouvez vous me dire si je procède de la bonne façon, ou s'il y a un moyen beaucoup plus rapide.
hugodu28 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/06/2011, 11h37   #2
Membre confirmé
 
Avatar de Retrokiller069
 
Homme Bertrand
Étudiant
Inscription : octobre 2010
Messages : 216
Détails du profil
Informations personnelles :
Nom : Homme Bertrand
Localisation : France

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : octobre 2010
Messages : 216
Points : 268
Points : 268
Bonjour,

je pense que c'est un oublie de ta part mais il faut un TR avant les td

par contre ce que je peux te conseiller c'est ceci:

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
<?php execution de ta requete dont tu récupères le contenu dans une variable ($resultat) ?>
<table>
<?php
   foreach( $resultat as $lignes)
   {
         ?>
          <tr>
               <td><?php print_r($lignes);?></td>
          </tr>
          <?php
    }
?>
</table>
En gros il vaudrait mieux faire dans ce genre si tu veux faire apparaître chaque lignes de ton tableau.

Remarque: chaque $lignes contient un tableau qui constitue les colonnes de ta bases, aussi si tu veux différencier chaque colonne tu devras faire $lignes[0] par exemple.

En espérant que cela t'aide
Retrokiller069 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/06/2011, 15h06   #3
Membre du Club
 
hugues dupont
Pompier
Inscription : janvier 2010
Messages : 170
Détails du profil
Informations personnelles :
Nom : hugues dupont
Localisation : France

Informations professionnelles :
Activité : Pompier

Informations forums :
Inscription : janvier 2010
Messages : 170
Points : 44
Points : 44
j'ai testé ta solution et j'ai les résultats sous forme de lignes avec 1 champs par ligne et chaque champs est répété 2 fois.

sinon voici mon code:
le résultat , j'ai la première ligne ok
sur la deuxième ligne, 1ère colonne OK et je n'est pas les autres.

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
<p>
<form name="form1" method="post" action="teste.php">
  <select id="Liste_Personel" name="Liste_Personel" onchange="ListerCourses(this.value)">
    <option value="" selected="selected">Selectionner un nom</option>
    <?php
//connection au serveur:
  	function connectMaBase(){
	$base = mysql_connect ('', 'root', '');
        mysql_select_db ('taxi', $base) ;
}
        //On se connecte
        connectMabase();
//ligne12
// requete liste des personnels
 
$Req1 = "SELECT NC,nom,prenom FROM RH";
$Rst1 = mysql_query($Req1);
while ($row = mysql_fetch_array($Rst1)) {
 echo '<option value="'.$row['NC'].'" >'.$row['nom'].' '.$row['prenom'].'</option>';
}
?>
  </select>
</p>
<input name="OK" type="submit" value="Ok"></input>
<p>&nbsp;</p>
<?php
if (isset($_POST['Liste_Personel'])) {
$NC=$_POST['Liste_Personel'];
 
 $sqlN2 =  "SELECT *  FROM RH WHERE  NC='".$NC."'";
//echo $sqlN2;
	//exécution de la requête:
	mysql_query ($sqlN2) or die ('Erreur SQL !'.$sqlN2.'<br />'.mysql_error());
        // on affiche les résultats 
         $requeteN=mysql_query($sqlN2);
  	$resultN = ($A = mysql_fetch_array($requeteN));
 
	    $pc=$resultN['nom'];
	    $N=$resultN['prenom'];
echo ("".$pc." ".$N."");
 
$Req3 = "SELECT * FROM courses Where cond='".$_POST['Liste_Personel']."'";
$Rst3 = mysql_query($Req3);
?>
 
<table border="1" bordercolor="#333333"><tr><td> commune départ </td><td> heure ramassage </td><td> commune arrivée</td><td> heure d'arrivée</td><td>indisponible à</td><td>disponible à</td></tr>
<tr><td><p>
<?php
while ($row = ($data= mysql_fetch_array($Rst3))) {
$a=$row['commune1'];
?>
<p>
<?php
echo $a;
} ?></p></td>
<td><p>
<?php 
while ($row = ($data= mysql_fetch_array($Rst3))) {
$b=$row['tpc'];
?>
<p>
<?php
echo $b;
} ?></p></td>
<td><p><?php 
while ($row = ($data= mysql_fetch_array($Rst3))) {
$c=$row['commune2'];
?>
<p>
<?php
echo $c;
} ?></p></td>
<td><p><?php
while ($row = ($data= mysql_fetch_array($Rst3))) {
$d=$row['tcl'];
?>
<p>
<?php
 echo $d;
 } ?></p></td>
<td><p><?php
while ($row = ($data= mysql_fetch_array($Rst3))) {
$e=$row['indispo'];
?>
<p>
<?php
 echo $e;
 } ?></p></td>
<td><p><?php
while ($row = ($data= mysql_fetch_array($Rst3))) {
$f=$row['dispo'];
?>
<p>
<?php
 echo $f;
 } ?></p></td></tr></table>
 </p>
<?php
}
?>
</form>
????
hugodu28 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/06/2011, 15h21   #4
Membre du Club
 
hugues dupont
Pompier
Inscription : janvier 2010
Messages : 170
Détails du profil
Informations personnelles :
Nom : hugues dupont
Localisation : France

Informations professionnelles :
Activité : Pompier

Informations forums :
Inscription : janvier 2010
Messages : 170
Points : 44
Points : 44
Avec ce code j'ai un tableau pour chaque enregistrement.
j'aimerai un tableau unique.

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
while ($row = ($data= mysql_fetch_array($Rst3))) {
	$a=$row['commune1'];
	$b=$row['tpc'];
	$c=$row['commune2'];
	$d=$row['tcl'];
	 $e=$row['indispo'];
	 $f=$row['dispo'];
?>
 
<table border="1" bordercolor="#333333"><tr><td> commune départ </td><td> heure ramassage </td><td> commune arrivée</td><td> heure d'arrivée</td><td>indisponible à</td><td>disponible à</td></tr>
<tr><td><p><?php echo $a; ?></p></td>
<td><p><?php echo $b; ?></p></td>
<td><p><?php echo $c; ?></p></td>
<td><p><?php echo $d; ?></p></td>
<td><p><?php echo $e; ?></p></td>
<td><p><?php echo $f; ?></p></td></tr></table>
hugodu28 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/06/2011, 16h53   #5
Membre confirmé
 
Avatar de Retrokiller069
 
Homme Bertrand
Étudiant
Inscription : octobre 2010
Messages : 216
Détails du profil
Informations personnelles :
Nom : Homme Bertrand
Localisation : France

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : octobre 2010
Messages : 216
Points : 268
Points : 268
OK dac je comprends pourquoi ma solution ne marche pas...

je n'ai pas testé mais essaye ceci pour ta solution:

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
 
<table border="1" bordercolor="#333333">
  <tr>
     <td> commune départ </td>
     <td> heure ramassage </td>
     <td> commune arrivée</td>
     <td> heure d arriv&eacute;e</td>
     <td>indisponible à</td>
     <td>disponible à</td>
  </tr>
<?php
while ($row = ($data= mysql_fetch_array($Rst3))) {
	$a=$row['commune1'];
	$b=$row['tpc'];
	$c=$row['commune2'];
	$d=$row['tcl'];
	 $e=$row['indispo'];
	 $f=$row['dispo'];
?>
 <tr>
     <td><p><?php echo $a; ?></p></td>
     <td><p><?php echo $b; ?></p></td>
     <td><p><?php echo $c; ?></p></td>
     <td><p><?php echo $d; ?></p></td>
     <td><p><?php echo $e; ?></p></td>
     <td><p><?php echo $f; ?></p></td>
</tr>
 
<?php
}
?>
 
</table>
Cette disposition devrait t'aider à obtenir ce que tu veux.

Je te conseille quand même de regarder ceci PDO cela permet de mieux gérer les connexions avec les BDD et du coup ma première solution devrait marcher ^^.

Essaye aussi à l'avenir d'adapter ton code avec une structure un peu comme je viens de faire pour les tr et td c'est plus lisible

En espérant t'avoir aidé
Retrokiller069 est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 22/06/2011, 18h09   #6
Membre du Club
 
hugues dupont
Pompier
Inscription : janvier 2010
Messages : 170
Détails du profil
Informations personnelles :
Nom : hugues dupont
Localisation : France

Informations professionnelles :
Activité : Pompier

Informations forums :
Inscription : janvier 2010
Messages : 170
Points : 44
Points : 44
t'es un chef!

merci
hugodu28 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 +2. Il est actuellement 23h07.


 
 
 
 
Partenaires

Hébergement Web