Connexion MySQL en PDO

Petit nouveau ! | 3 Messages

19 juil. 2011, 11:36

Bonjour à tous,

Je souhaiterais mettre en place une connexion SQL en PDO pour mon site. Pour cela, avant d'effectuer les modifications sur le serveur web, je préfère le faire en local avec wampserver.
Cependant, j'ai quelques petits soucis... Avec le code de connexion suivant :

Code : Tout sélectionner

<?php try { $bdd = new PDO('mysql:host=localhost;dbname=joshua2', 'root', ''); $bdd->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); } catch(Exception $e) { } ?>
L'erreur, qui m'est renvoyée est la suivante :
No database selected
Or, une copie de la base de données est bien présente dans wampserver. J'ai essayé de modifier le nom de cette dernière sur phpmyadmin et dans mon code, mais rien à y faire, je n'ai toujours pas de résultats.

Si cela peut vous aider, j'ouvre la connexion à ma base de données sur un index, auquel sont inclues des pages avec des requêtes SQL.

Je vous serais très reconnaissant si vous pouviez m'aider à résoudre ce problème. ;)

Très cordialement.

Joshua

ViPHP
xTG
ViPHP | 7331 Messages

19 juil. 2011, 12:55

C'est assez bizarre, la syntaxe est correcte, donc si la bdd existe il n'y a pas de raison que cela pose problème.
Ne fais-tu pas une erreur de terme entre base de données et table ?

Es-tu certain que c'est ce code qui te renvoie l'erreur et non ce qui suit ? (testes ce fichier tout seul)

Petit nouveau ! | 3 Messages

19 juil. 2011, 14:11

Bonjour,

J'ai testé le fichier seul et la connexion est réussie.
La requête qui suit derrière est la suivante :

Code : Tout sélectionner

$requete_news = mysql_query('SELECT * FROM news ORDER BY id DESC LIMIT 0, 2') or die(mysql_error());
Ce serait donc elle qui ferait tout planter ? Mais pour quelles raisons ?

Merci par avance.

Joshua

devlop78
Invité n'ayant pas de compte PHPfrance

19 juil. 2011, 16:37

LOL. Ca aurait bien dès le début de mettre tout le code. Mysql_query et PDO n'ont rien à voir. Je te conseille de lire la doc.

Eléphant du PHP | 171 Messages

19 juil. 2011, 18:15

LOL. Ca aurait bien dès le début de mettre tout le code. Mysql_query et PDO n'ont rien à voir. Je te conseille de lire la doc.
C'est sûr.

Joshua, en faisant ce que tu fais actuellement tu établis une connexion avec l'interface PDO.
Si tu souhaites utilisé la connexion réalisé dans cet interface, tu dois changer tes requêtes et utiliser tes requêtes avec cette interface. Pour savoir comment utiliser PDO, il y a plein de tutoriels, juste à taper "tutoriel PDO" sur Google et tu es servi.

Après, si tu veux continuer à utiliser tes requêtes mysql_query (même en utilisant PDO), tu dois définir sa connexion à la base de données à part. En gros comme tu le faisais jusqu’à maintenant.

Quand je dis même en utilisant PDO, c'est au cas tu as beaucoup d'ancienne requêtes et que tu n'as pas envie de toutes les adapter, bien que je trouve pas ça très rigoureux.
Le bon jugement s'apprend par l'expérience qui s'acquiert en partie par le mauvais jugement.

Petit nouveau ! | 3 Messages

19 juil. 2011, 19:52

Bonsoir,

Je vous remercie pour vos réponses. ;)