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 :

PHP/MySQL afficher proprement le contenu d'une base de données [PDO]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre régulier
    Homme Profil pro
    Lycéen
    Inscrit en
    Avril 2019
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Avril 2019
    Messages : 7
    Par défaut PHP/MySQL afficher proprement le contenu d'une base de données
    J'aimerais pouvoir afficher le contenu d'une base de données. Mais j'arrive pas à afficher le contenu.

    Ma base de données se structure comme ça :
    nom de la table : register
    et y'a une colonne : Nom

    et mon code sur mon site web ressemble à ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    <?php
    $connexion = new PDO("mysql:host-$serveur", $login, $pass);
    $register = $connexion -> prepare("SELECT Nom from register ORDER BY Nom");
    $register -> execute();
    while ($data = $register->fetch()){
    	echo $data;
    }
    ?>
    voilà à quoi ressemble mon code mais il m'affiche rien

    Merci d'avance pour votre aide

  2. #2
    Expert confirmé Avatar de CosmoKnacki
    Homme Profil pro
    Justicier interdimensionnel
    Inscrit en
    Mars 2009
    Messages
    2 986
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Justicier interdimensionnel

    Informations forums :
    Inscription : Mars 2009
    Messages : 2 986
    Par défaut
    Partons du principe que la connexion c'est bien passée.
    En l'absence de paramètre (voir le manuel php) PDOStatement::fetch() retourne les enregistrements avec l'option PDO::FETCH_BOTH donc sous forme d'un tableau dont les clefs sont l'index de la colonne (de 0 à n, donc 0 dans ce cas) et le nom de la colonne ('Nom' dans ton exemple). C'est prévu pour fonctionner avec plusieurs colonnes. Donc essaie de remplacer echo $data; par echo $data['Nom']; ou echo $data[0];.

  3. #3
    Membre régulier
    Homme Profil pro
    Lycéen
    Inscrit en
    Avril 2019
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Avril 2019
    Messages : 7
    Par défaut
    Je viens de faire ce que vous m'avez conseillé de faire mais cela ne change rien
    Je voudrais aussi préciser qu'avec une autre méthode de connexion ( celle avec mysql_connect() ) la page internet ne s'ouvre même pas ...

  4. #4
    Membre régulier
    Homme Profil pro
    Lycéen
    Inscrit en
    Avril 2019
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Avril 2019
    Messages : 7
    Par défaut
    J'ai changé un peu mon code maintenant ça donne ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    	try{
    			$connexion = new PDO("mysql:host-$serveur;dbname=register", $login, $pass);
    			$connexion -> setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    			$req = $connexion -> prepare("SELECT Nom from register ORDER BY Nom");
    			$req -> execute();
    			$resultat = $req -> fetchall();
    			echo "<li><a>";
    			print_r($resultat);
    			echo "</a></li>";
    		}
    		catch (PDOException $e){
    			print "Erreur : ".$e->getMessage();	
    		}
    Et maintenant ça m'affiche ce message d'erreur :
    Erreur : SQLSTATE[3D000]: Invalid catalog name: 1046 No database selected
    Voilà j'espère que cela vous aidera ...

  5. #5
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Par défaut
    Bonjour,
    host= mais pas host-, et n'oublie pas le nom de la dase
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $connexion = new PDO("mysql:host=$serveur;dbname=nomDeLaBase;", $login, $pass);
    A+.

  6. #6
    Membre régulier
    Homme Profil pro
    Lycéen
    Inscrit en
    Avril 2019
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Avril 2019
    Messages : 7
    Par défaut
    Merci infiniment ça marche déjà beaucoup mieux !
    Dans ma base de données la table register a une colonne Nom et dedans j'ai mis deux noms : Pierre et Jean
    En revanche ça m'affiche ça : Array ( [0] => Array ( [Nom] => Pierre [0] => Pierre ) [1] => Array ( [Nom] => Jean [0] => Jean ) )
    Comment je fais maintenant pour afficher seulement les noms en gras ?

    Merci de votre compréhension

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

Discussions similaires

  1. [MySQL] Récupérer et afficher le poids occupé par une base de données MySQL
    Par raffa dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 26/10/2008, 16h24
  2. Afficher le contenue d'une base de données dans une liste
    Par fdoncev dans le forum SharePoint
    Réponses: 3
    Dernier message: 16/07/2008, 18h00
  3. Réponses: 1
    Dernier message: 01/04/2008, 14h22
  4. Réponses: 9
    Dernier message: 06/07/2006, 18h41
  5. [MySQL] Afficher le contenu d'une base de données
    Par rastatom dans le forum PHP & Base de données
    Réponses: 20
    Dernier message: 17/05/2006, 16h46

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