Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD
PHP & SGBD Forum d'entraide sur les SGBD avec PHP. Avant de poster : FAQ BDD, toutes les FAQ PHP, cours BDD et sources BDD
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 08/09/2011, 19h46   #1
Invité de passage
 
Homme john
Étudiant
Inscription : août 2011
Messages : 5
Détails du profil
Informations personnelles :
Nom : Homme john
Localisation : France

Informations professionnelles :
Activité : Étudiant
Secteur : Tourisme - Loisirs

Informations forums :
Inscription : août 2011
Messages : 5
Points : 0
Points : 0
Par défaut pb tableau php sql

Bonjour a tous,

Voilà une dizaine d'heures que j'essaye de créer un tableau php dans une page html à partir d'une requête SQL .

La requête marche, il y affichage...

Simplement, l'affichage de ma requête se fait avec " résultat -1 " .
Je m'explique : si je lance ma requete pour afficher un utilisateur ayant l'identifiant "aa" , mon code ne m'affiche que le deuxieme enregistrement avec identifiant "aa" , le premier ne s'affiche pas...
Ce qui est très embétant puisque, à terme , je n'aurai qu'un utilisateur "aa" qui ne s'affichera pas puisque la premiere ligne de ma requête saute à l'affichage des résultats en tableaux.

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
<?php
 
include('config.php');
$db = 'mabase';
$link = mysql_connect ($serveur,$login,$mdp) or die ('Erreur : '.mysql_error() );
mysql_select_db($db) or die ('Erreur :'.mysql_error());
 
// requête SQL qui compte le nombre total d'enregistrements dans la table et qui
//récupère tous les enregistrements
$select = "SELECT id,identifiant FROM ma_table WHERE identifiant='".$Ridentifiant."'";
$result = mysql_query($select,$link) or die ('Erreur : '.mysql_error() );
$total = mysql_num_rows($result);
 
$data = mysql_fetch_array($result); // On met dans un tableau la requete $sql
 
 
 
// si on a récupéré un résultat on l'affiche.
if($total) {
    // début du tableau
$a = true;
 
//echo '<table bgcolor="#E0CDA9">'."\n";
echo "<table border='1' bordercolor='#F5F5DC'><tr>";
 
        // première ligne on affiche les titres prénom et surnom dans 5 colonnes
        echo '<tr>';
        echo '<td bgcolor="#3A9D23"><b>id :</b></td>';
        echo '<td bgcolor="#3A9D23"><b>nom :</b></td>';
		echo '<td bgcolor="#3A9D23"><b>prenom :</b></td>';
		echo '<td bgcolor="#3A9D23"><b>Ville  : </b></td>';
        echo '</tr>'."\n";
    // lecture et affichage des résultats sur 5 colonnes, 1 résultat par ligne.    
    while($row = mysql_fetch_array($result)) {
	    if ($a){
        $col = '#E0CDA9';
        $a = false;
    }
    else{
        $col = '#F8F8FF';
        $a = true;
    }
echo '<tr style="background-color:'.$col.';">';
        echo '<tr>';
        echo '<td bgcolor="'.$col.'">'.$row['id'].'</td>';
		echo '<td bgcolor="'.$col.'">'.$row['nom'].'</td>';
        echo '<td bgcolor="'.$col.'">'.$row['prenom'].'</td>';
		echo '<td bgcolor="'.$col.'">'.$row['ville'].'</td>';
		echo '</tr>'."\n";
    }
    echo '</table>'."\n";
} 
    // fin du tableau.
 
 
else echo 'Pas d\'enregistrements trouvés...';
 
// on libère le résultat
mysql_free_result($result);
 
?>
Voici mon code :
machalachux est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/09/2011, 19h46   #2
Invité de passage
 
Homme john
Étudiant
Inscription : août 2011
Messages : 5
Détails du profil
Informations personnelles :
Nom : Homme john
Localisation : France

Informations professionnelles :
Activité : Étudiant
Secteur : Tourisme - Loisirs

Informations forums :
Inscription : août 2011
Messages : 5
Points : 0
Points : 0
Merci à ceux qui se pencheront sur mon pb qui me fait ragé...
( je pense avoir fait le plus dur ?? non?? )
machalachux est déconnecté   Envoyer un message privé Réponse avec citation 01
Vieux 08/09/2011, 19h49   #3
Modérateur
 
Inscription : septembre 2010
Messages : 7 131
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 131
Points : 8 491
Points : 8 491
supprime la ligne 14 ...
__________________
http://blog.stealth35.com/
stealth35 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/09/2011, 21h06   #4
Invité de passage
 
Homme john
Étudiant
Inscription : août 2011
Messages : 5
Détails du profil
Informations personnelles :
Nom : Homme john
Localisation : France

Informations professionnelles :
Activité : Étudiant
Secteur : Tourisme - Loisirs

Informations forums :
Inscription : août 2011
Messages : 5
Points : 0
Points : 0
Par défaut merci

Merci Beaucoup pour ta réponse .

Effectivement, c'était bien la ligne 14...

Mais pourquoi la création du tableau à partir de la requête SQL ne prennait que la première ligne...?

On est le bouton résolu ??

Merci encore.
machalachux est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/09/2011, 21h13   #5
Membre chevronné
 
Avatar de Marc3001
 
Homme
Ingénieur développement logiciels
Inscription : février 2008
Messages : 430
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 28
Localisation : France, Ille et Vilaine (Bretagne)

Informations professionnelles :
Activité : Ingénieur développement logiciels

Informations forums :
Inscription : février 2008
Messages : 430
Points : 682
Points : 682
mysql_fetch_array renvoie un tableau contenant les données de l'enregistrement courant (pas tous les résultats) du résultat de la requête et positionne un pointeur sur le prochain enregistrement.

A chaque fois que tu appelles cette fonction, il te renvoie sous forme de tableau l'enegistrement suivant.

Du coup à la ligne 14, tu faisais déjà avancer ton pointeur sur le 2e enregistrement.
__________________
Le logiciel, c'est comme le sexe, c'est meilleur quand c'est libre.

Linus Torvalds
Marc3001 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/09/2011, 21h18   #6
Invité de passage
 
Homme john
Étudiant
Inscription : août 2011
Messages : 5
Détails du profil
Informations personnelles :
Nom : Homme john
Localisation : France

Informations professionnelles :
Activité : Étudiant
Secteur : Tourisme - Loisirs

Informations forums :
Inscription : août 2011
Messages : 5
Points : 0
Points : 0
merci pour ta réponse .

Je comprend mieux maintenant...

Je clique sur "résolu" , encore merci a vous..

Bonne soirée.
machalachux 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 20h07.


 
 
 
 
Partenaires

Hébergement Web