IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Récupération et affichage [MySQL]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau membre du Club
    Inscrit en
    Avril 2009
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 7
    Par défaut Récupération et affichage
    Bonjour à tous,

    je viens vers vous car j'ai un problème que je ne comprend pas.

    j'ai une table MySql contenant l'alphabet et construite avec 2 champs comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    ID INT(3) auto_increment clé_primaire
    lettre VARCHAR(1) latin1_swedish_ci
     
    id - lettre
    1 - A
    2 - B
    3 - C
    ....
    26 - Z

    je tente sur une page d'afficher les lettres contenue dans la colonne "lettre" de ma table,
    et je n'y arrive pas (je n'en suis pourtant pas à ma première récupération/affichage d'info depuis une base MySql).

    voici mon code pour l'affichage :
    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
     
    <?php
    require("requirements/vars.php");
    //connexion à la base
    $mysql_link = mysql_connect("$hote","$sqluser","$pass") or die('Erreur de connexion '.mysql_error());
    //sélection des données  dans la base
    $req = "SELECT * FROM $table_lettre"; //variable définie dans le fichier vars.php ( $table_lettre="alphabet"; )
    //affichage de la requete dans une variable "execution"
    $letters = mysql_db_query($base, $req) or die('Erreur SQL !'.$req.'<br>'.mysql_error());
     
    //mise en forme des données
    ?>
    	<table align="center" cellspacing="5">
    	<tr>
    <?php
    echo $table_alphabet; //juste présent pour des tests d'affichage
    echo '<br />'.$requete; //juste présent pour des tests d'affichage
    echo '<br />'.$execution; //juste présent pour des tests d'affichage
     
    while($ligne = mysql_fetch_row($letters)) //ici j'ai testé avec row, array et assoc
    	{
    		echo '<td class="txtbody"><a href="liens_frame.php" target="iframe"><h2>'.$ligne->lettre.'</h2></a></td>'; //test affichage 1
    		echo '<td class="txtbody"><a href="liens_frame.php" target="iframe"><h2>'.$ligne[lettre].'</h2></a></td>';//test affichage 2
    		echo '<td class="txtbody"><a href="liens_frame.php" target="iframe"><h2>'.$ligne['lettre'].'</h2></a></td>';//test affichage 3
    	};
    ?>
    	</tr>
    	</table>
    Si une âme charitable pouvait m'aiguiller car là, je ne vois plus quoi faire pour que cela marche.

    Merci d'avance pour votre aide.

    ++
    Ludo.

  2. #2
    Modérateur
    Avatar de Vil'Coyote
    Homme Profil pro
    Développeur adélia & Web
    Inscrit en
    Février 2008
    Messages
    4 583
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur adélia & Web
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2008
    Messages : 4 583
    Par défaut
    heu ça t'affiche quoi? t'as un message d'erreur?

    le seul truc qui me fait tiquer c'est
    $mysql_link = mysql_connect("$hote","$sqluser","$pass")

    j'aurais mis ça
    $mysql_link = mysql_connect($hote,$sqluser,$pass)

    et aurais utilisé un mysql_fetch_assoc au lieu d'un mysql_fetch_row
    la vie n'est pas cirrhose des foies ...

    Avant de poster un message Rechercher n'est pas qu'une option.
    FAQ Web - Tuto Web

  3. #3
    Nouveau membre du Club
    Inscrit en
    Avril 2009
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 7
    Par défaut
    Citation Envoyé par Vil'Coyote Voir le message
    heu ça t'affiche quoi? t'as un message d'erreur?
    il m'affiche juste la construction des cellules du tableau, mais elles sont vides.
    Aucun message d'erreur.

    Citation Envoyé par Vil'Coyote Voir le message
    le seul truc qui me fait tiquer c'est
    $mysql_link = mysql_connect("$hote","$sqluser","$pass")

    j'aurais mis ça
    $mysql_link = mysql_connect($hote,$sqluser,$pass)
    Je vais tester et te redis ça dans la foulée.

    Citation Envoyé par Vil'Coyote Voir le message
    et aurais utilisé un mysql_fetch_assoc au lieu d'un mysql_fetch_row
    Je les ai tous essayé mais à chaque fois, j'ai le même résultat (c'est pour ça que je ne comprend pas).


    [EDIT]

    J'ai ajouté les modifs, mais j'ai le meme résultat (des cellules vides sans infos dedans).


    ++
    Ludo.

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 36
    Par défaut
    Salut,

    Alors dans un premier temps remplace ton echo $table_alphabet; par:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    echo "<pre>";
    print_r $table_alphabet;
    echo "</pre>
    Ainsi tu pourras vérifier le contenu de ton tableau.

    Ensuite tu as un ";" juste à la fermeture de ta boucle while. Je ne sais pas s'il pose un problème, mais en tout cas il est inutile.

  5. #5
    Nouveau membre du Club
    Inscrit en
    Avril 2009
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 7
    Par défaut
    Citation Envoyé par max235 Voir le message
    Salut,

    Alors dans un premier temps remplace ton echo $table_alphabet; par:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    echo "<pre>";
    print_r $table_alphabet;
    echo "</pre>
    Ainsi tu pourras vérifier le contenu de ton tableau.

    Ensuite tu as un ";" juste à la fermeture de ta boucle while. Je ne sais pas s'il pose un problème, mais en tout cas il est inutile.
    J'ai testé ces modifs :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    echo "<pre>";
    print_r $table_alphabet;
    echo "</pre>";
    et il me retourne cette erreur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Parse error: syntax error, unexpected T_VARIABLE in C:\wamp\www\site\includes\liens.inc.php on line 17
    ma ligne 17 est le print_r ajouté.


    dur dur ...

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 36
    Par défaut
    Désolé j'ai oublié les parenthèses:

    print_r ($table_alphabet);

  7. #7
    Nouveau membre du Club
    Inscrit en
    Avril 2009
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 7
    Par défaut
    il m'affiche le nom de ma table "aphabet"

  8. #8
    Membre confirmé
    Inscrit en
    Avril 2009
    Messages
    37
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 37
    Par défaut
    ben j'ai un peu de mal...

    Tu fais ta requete sur la table dont le nom est dans la variable $table_lettre.
    Et tu verifies la variable $table_alphabet.

    Tu ne t'es pas melangé les pinceaux qqpart?

    Genre c pas lettre_alphabet la colonne que tu dois recuperer mais a priori lettre tout court?

  9. #9
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 36
    Par défaut
    Essaie de remplacer cette ligne:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $letters = mysql_db_query($base, $req) or die('Erreur SQL !'.$req.'<br>'.mysql_error());
    par:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $letters = mysql_query($req);
    De plus, d'après php.net la fonction mysql_db_query est obsolète depuis PHP 4.0.6

  10. #10
    Nouveau membre du Club
    Inscrit en
    Avril 2009
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 7
    Par défaut
    Citation Envoyé par max235 Voir le message
    Essaie de remplacer cette ligne:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $letters = mysql_db_query($base, $req) or die('Erreur SQL !'.$req.'<br>'.mysql_error());
    par:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $letters = mysql_query($req);
    De plus, d'après php.net la fonction mysql_db_query est obsolète depuis PHP 4.0.6
    Hum..


    j'ai trouvé d'où provenait mon erreur grâce à ton print_r qui me retournait 26 fois le nom de ma table.

    En fait, j'avais une erreur de syntaxe dans mes lignes echo, du genre :

    aplhabet à la place de alphabet

    Faut que j'arrête de coder après 22h moi...


    Merci à tous pour votre aide.

    ++
    Ludo.

  11. #11
    Membre Expert
    Avatar de Seb33300
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2007
    Messages
    1 564
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Thaïlande

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 564
    Par défaut
    utilise mysql_fetch_array() au lieu de mysql_fetch_row()

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème de récupération et affichage des données
    Par franco9 dans le forum Struts 1
    Réponses: 0
    Dernier message: 17/08/2012, 13h32
  2. [AJAX] Récupération et affichage d'une image en Jquery
    Par guilopouloos dans le forum jQuery
    Réponses: 7
    Dernier message: 25/07/2012, 12h43
  3. Récupération et affichage de variables
    Par yann18 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 05/01/2009, 16h13
  4. Réponses: 7
    Dernier message: 15/10/2008, 11h21
  5. Récupération et Affichage d'une date dans un formulaire
    Par skeeler dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 17/02/2008, 16h43

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo