Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 16/03/2016, à 22:03

squeek

[résolu]PDO et connexion à une base de données mySQL

Bonsoir,
j'essaie vainement de me connecter grâce à me connecter à une base de données MySQL en php via pdo.
Je suis en local sur mon pc, j'ai créé une base de données "jeuxvideo" avec un mot de passe.
J'ai crée dc un fichier html dans lequel j'ai inséré ce script :

<h1>Mon nouveau code</h1>
<?php
try
{
$pdo = new PDO('mysql:host=localhost;dbname='jeuxvideo',
 'root', 'mdp');
}
catch(Exception $e)
{
        die('Erreur : '.$e->getMessage());
}
?>

Et ma page reste désespérément vide, rien ne s'affiche...
Au début, j'ai pensé à un problème d'accès à la base de données, dc j'ai lançé un terminal et là j'ai réussi à me connecter et de voir les bases de données créées :

squeek@squeek-All-Series:~$ mysql -u root -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 54
Server version: 5.5.47-0ubuntu0.14.04.1 (Ubuntu)

Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> SHOW DATABASES ;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| jeuxvideo          |
| mysql              |
| performance_schema |
| phpmyadmin         |
| test               |
+--------------------+
6 rows in set (0.02 sec)

mysql> exit

Je me suis ensuite assuré que PDO était bien installé, et là idem, il est bien présent :

PDO
PDO support => enabled
PDO drivers => mysql
PDO Driver for MySQL => enabled

J'ai enfin vérifié que dans mon php.ini, il était bien lancé et là idem, il parait activé :

PDO support	enabled
PDO drivers 	mysql 

Mais maintenant, je sèche...
Qui aurait une idée ?

Dernière modification par squeek (Le 19/03/2016, à 18:46)


Mon blog perso http://www.polyclic.fr

Hors ligne

#2 Le 17/03/2016, à 00:01

Rufus T. Firefly

Re : [résolu]PDO et connexion à une base de données mySQL

Salut,

Ton script essaye de créer une connexion. Si ça marche (c'est ce que tu souhaites, j'imagine) il ne se passe rien, puisqu'il n'y a rien d'autre dans ton script. Et si ça ne fonctionne pas, il affiche un message d'erreur.
Cela dit, il devrait au moins afficher ça : <h1>Mon nouveau code</h1>

Entre nous, si tu débutes, il vaudrait mieux que tu utilises ceci : http://fr.php.net/manual/fr/book.mysqli.php
C'est un peu moins abstrait que PDO... qui est en fait une surcouche.

A tout hasard, active l'affichage de toutes les erreurs dans php.ini. C'est souvent bien utile.
Dans /etc/php5/apache2/php.ini :

error_reporting = E_ALL 

et quelques lignes plus loin :

display_errors = On

Dernière modification par Rufus T. Firefly (Le 17/03/2016, à 00:12)


La provocation est une façon de remettre la réalité sur ses pieds. (Bertolt Brecht)
Il n'y a pas de route royale pour la science et ceux-là seulement ont chance d'arriver à ses sommets lumineux qui ne craignent pas de se fatiguer à gravir ses sentiers escarpés. (Karl Marx)
Il est devenu plus facile de penser la fin du monde que la fin du capitalisme

Hors ligne

#3 Le 18/03/2016, à 11:42

pires57

Re : [résolu]PDO et connexion à une base de données mySQL

Le code PDO semble correct, tu passe donc avec succès dans le try mais ne vas pas dans le catch, ici tu te connectes à la base et c'est tout, essayes donc d'afficher un message après ta connection (dans le try) ,si il s'affiche c'est que c'est bon.


Utilisateur d'Archlinux, Ubuntu et Kali Linux
Administrateur système et réseau spécialisé Linux.
LinkedIn

Hors ligne

#4 Le 19/03/2016, à 18:07

squeek

Re : [résolu]PDO et connexion à une base de données mySQL

Bonjour et bien non, la page reste vierge...
Je m'en doutais un peu, vu que même mon h3 ne s'affichait pas...
j'arrive pas à comprendre pourquoi...
Effectivement, je débute en php, et j'utilise le livre de Matthieu Nebra pour me former , et je suis bloqué, je vais essayer par l'extension mysqlI pour voir ce que ça donne.
voici le code que j'ai rajouté avec une boucle while pour lister les donnés de ma base de données :

<body>
    <h3>connexion à une base de donnée</h3>
<?php
try
{
$pdo = new PDO('mysql:host=localhost;dbname='jeuxvideo',
 'root', 'ren99ant');
}
catch(Exception $e)
{
        die('Erreur : '.$e->getMessage());
}
$reponse = $bdd ->query('SELECT * FROM jeuxvideo');
while ($donnees = $reponse->fetch()) {
	<p>Jeu : <?php echo $donnees['nom'];  ?> </p>
}

?>
</body>

Mon blog perso http://www.polyclic.fr

Hors ligne

#5 Le 19/03/2016, à 18:25

squeek

Re : [résolu]PDO et connexion à une base de données mySQL

Re, je viens de tester en myslqi avec ce tutoriel et même phénomène...


Mon blog perso http://www.polyclic.fr

Hors ligne

#6 Le 19/03/2016, à 18:46

squeek

Re : [résolu]PDO et connexion à une base de données mySQL

Et bien, je viens de trouver, je me suis basé sur les données en erreur qu'on retrouve via apache : /var/log/apache2/error.log et là, les erreurs sont toutes indiqués avec le numéro de ligne qui fait défaut, , tout ça tout ça....
Je connaissais pas la démarche, et voilà tous est ok....


Mon blog perso http://www.polyclic.fr

Hors ligne

#7 Le 19/03/2016, à 18:47

pires57

Re : [résolu]PDO et connexion à une base de données mySQL

Ton deuxième code est faux. Si ton premier code  commence par un <h1> il n'est pas correct non plus dans la forme.


Utilisateur d'Archlinux, Ubuntu et Kali Linux
Administrateur système et réseau spécialisé Linux.
LinkedIn

Hors ligne