Marilo Il y a 5 mois Répondre
Vraiment agréable ! j'avais des craintes concernant l'assimilation de la PDO mais grâce à ce tuto, tout s'éclaircit dans mon esprit ! Merci encore pour le partage des connaissances !
Après avoir appris sur Internet quoi de plus normal que de partager à son tour ? Passionné par le web depuis un peu plus de 5 ans maintenant j'aime partager mes compétences et mes découvertes avec les personnes qui ont cette même passion pour le web : Vous.
Marilo Il y a 5 mois Répondre
Vraiment agréable ! j'avais des craintes concernant l'assimilation de la PDO mais grâce à ce tuto, tout s'éclaircit dans mon esprit ! Merci encore pour le partage des connaissances !
neoxeur Il y a 5 mois Répondre
$BD = new PDO('mysql:host=localhost';dbname=ta_base', 'root', '');
ça vas encore pas trop compliqué mais les updates j'ai encore du mal ...
Antoine Il y a 5 mois Répondre
Très bien ce tutoriel ! Il m'a fait apprendre comment utiliser PDO avec succès ! Je vous remercie mille fois :D
omar berrayti Il y a 5 mois Répondre
Mercii Pour le meilleur tuto :p
parmah Il y a 8 mois Répondre
Trop bien ce site
Roxeur76150 Il y a 8 mois Répondre
Ta aussi sa pour les error :
$req = ($sql) or die('Erreur SQL <br> Verifier votre table');
Mido Il y a 9 mois Répondre
Excellent tuto
funpro Il y a 9 mois Répondre
Merci pour c'est info
zvetlania Il y a 10 mois Répondre
Super tuto, merci beaucoup !
WinuX Il y a 11 mois Répondre
Pas mal le tuto, mais il manque juste ce que j'veux savoir xD
J'vais faire des recherches, mais si quelqu'un saurait me répondre.
Comment faire pour ajouter des class (pas sur du nom), faire par exemple :
$DB->fetch_assoc($requete);
$DB->num_rows($requete);
etc....
canonier Il y a 11 mois Répondre
Bonjour, excellent tuto !!
J'ai envi de dire comme d'hab' x)
Petite question concernant komodo edit:
J'ai remarqué que vous aviez le meme "probleme" que moi en ce qui concerne les accents. Je voulais savoir si il y avait une manipulation a faire où si il fallait repasser à chaque fois par le bon vieux notepad++ et se refaire tous les textes pour corriger les accents !?
(cf: tuto-vidéo un peu avant 4min)
bocaliste Il y a 11 mois Répondre
excellent , tutoriel très clair !
killman Il y a 1 an Répondre
excellent tutoriel. je souhaitais justement avoir une vue d'ensemble sur l'utilisation de l'objet PDO => parfait! Merci beaucoup.
cunimb Il y a 1 an Répondre
Très intéressant et très clair.
Bravo et Merci beaucoup
steph Il y a 1 an Répondre
Il ne manquerait pas un $DB->commit(); avant le $DB->rollback(); dans le dernier exemple ?
steph Il y a 1 an Répondre
Il ne manquerait pas un $DB->commit(); avant le $DB->callback(); dans le dernier exemple ?
Griffon974 Il y a 1 an Répondre
Il serait aussi possible de mettre en chaque fin de requête des "$req->closeCursor()" ^^".
Cordialement, Griffon974
Mister-Dydy7o Il y a 1 an Répondre
Bonjour Grafikart !
Merci pour ton super tuto , qui m'a permi de mieux m'y retrouver dans mon code !!
Cependant , j'aimerais savoir en PDO , quel est l'équivalent de mysql_num_rows ?
Merci d'avance !!
kawelo Il y a 8 mois - Répondre
Le "mysql_num_rows" de PDO est :
$nombre = $pdo->rowCount();
@ntonin Il y a 2 ans Répondre
Comme toujours un excellent tutoriel qui m'a permis de saisir l'utilité et la facilité de PDO pour les connexions et requêtes MySQL comme pour le repérage d'erreurs.
Juste une légère remarque : les noms de variables ne sont pas toujours explicite.
@ntonin
P.S : 18/20
mouflam Il y a 2 ans Répondre
bonour a tous encore une fois
j'ai essayé de me mettre à la PDO au lieu du prodédural, mais il m'affiche un message d'erreur (le code est correct ) il me dit que la methode fetch() de l'objet PDO n'existe pas alors que l'extension php_pdo_mysql est activée sur wamp.
ma question est la suivante : est ce qu'on doit activer l'extension autrement que par la petite icone de wamp sur ma barre inférieur PHP->PHP extensions ->php_pdo_mysql
merci d'avance
Rtransat Il y a 2 ans Répondre
Merci pour le tuto ^^
Par contre j'aimerais inclure la connexion à la base de donnée une seule fois sans àa chaque fois recréer l'objet PDO.
Avant sans PDO je faisais un fichier config.php avec mes identifiants serveur et je faisait un include de ce fichier pour utiliser mysql mais si je fais pareil avec PDO il me dit que l'objet PDO n'existe pas...
Mettre à chaque fois : (dans chaque fonction)
$bdd = new PDO('mysql:host=localhost;dbname=module', 'root', '');
C'est embêtant.
mouflam Il y a 2 ans Répondre
bonjour;
moi j'ai essayé de me mettre à la PDO au lieu du prodédural, mais il m'affiche un message d'erreur (le code est correct ) il me dit que la methode fetch() de l'objet PDO n'existe pas alors que l'extension php_pdo_mysql est activée sur wamp.
mais question est la suivante : est ce qu'on doit activer l'extension autrement que par la petite icone de wamp sur ma barre inférieur PHP->PHP extensions ->php_pdo_mysql
merci d'avance
iveinsomnia Il y a 2 ans Répondre
Chouette ! Vivement le tuto sur Vimeo (Daily me fais la gueule ¬¬)
KaKuZa` Il y a 2 ans Répondre
il serait plus juste de faire
die('Erreur : ' . $e->getMessage());
plutôt que echo(); non ?
OverSpeed Il y a 2 ans Répondre
Lioninho : C'est NetBeans PHP il me semble.
Wapaca : si tu a ça : $req = "SELECT * FROM tutoriels"; pour fermer la requete tu fais $req->CloseCursor(); je crois.
Wapaca Il y a 2 ans Répondre
J'ai une question :
Il ne faut pas fermer la connexion à la BDD avec un équivalent de mysql_close() en PDO ???
Eathan Il y a 2 ans - Répondre
Bonsoir =)
PDO s'occupe de lui même de fermer les connexions à la base de données en toute fin de script, automatiquement.
Bonne soirée.
lioninho Il y a 2 ans Répondre
Juste pour savoir, l'IDE que tu utilises. Merci! encore merci pour le Tuto!!!
arde Il y a 2 ans Répondre
bonjour,
super comme d'habitude tes tutos !
J'ai une question, si par exemple si on a besoin de recouperer des donnes de deux tables par exemple comment il faut faire??
Je dois faire deux requetes ou avec une seul c'est possible ?
Pour ilustrer ma question:
J'ai deux tables une avec mes rubriques principales de mon site et une deuxieme avec les sous rubriques, et du coup je veux recouperer les données de deux tables
d'abord pour ecrire mes rubriques et seconde pour ecrire toutes les sous rubriques de chaque rubrique du type :
RUBRIQUE
sous-rubrique
sous-rubrique
RUBRIQUE
sous-rubrique
sous-rubrique
sous-rubrique
RUBRIQUE
sous-rubrique
sous-rubrique
Je remercie par avance votre aide .
Tchao
OverSpeed Il y a 2 ans
A mon avis, il si pour une rubrique tu a une table, il suffit de faire un while. En gros ça donnerais ça : http://overspeed001.pastebin.com/itn66dkJ (je l'ai mis sur Pastebin pour pas avoir à scroller comme un fou).
arde Il y a 2 ans
Bonjour, je te remercie pour ton conseil , je vais tester au plus vite. a bientot
Eathan Il y a 2 ans
Bonsoir =)
PDO possède une autre de fonction qui s'occupe de rapatrier l'ensemble des résultats d'une requête, à savoir "fetchAll()".
Donc pour votre exemple, afin de limiter au maximum les accès à la base de données (optimisation des performances), il faut utiliser la syntaxe SQL "JOIN" ("LEFT JOIN" dans l'exemple qui suit), récupérer tous les résultats dans une variable et les traiter dans une boucle "foreach".
Dans votre cas, la requête pourrait ressembler à ceci : $sql="SELECT * FROM sousRubrique sr LEFT JOIN rubrique r ON r.idRubrique=sr.rubrique_id ORDER BY nomRubrique";. Puis, on exécute la requête : $req=$pdo->query($sql); et enfin, on récupère le tout dans une variable : $res=$req->fetchAll();.
Il reste alors à boucler sur $res grâce à : foreach($res as $ligne){...} et à traiter le tout pour avoir l'affichage désiré.
Note : la requête ci-dessus est à adapter selon vos nom de champs et, idéalement, il ne faudrait pas faire un "SELECT * ..." mais sélectionner les champs requis avec plus de précision (juste les noms des sous-rubrique et des rubriques, par exemple).
Bonne soirée!
Eathan Il y a 2 ans
Bonsoir =)
Merci pour cette initiation à PDO, c'est une base qui sera utile à pas mal de monde.
PDO à été intégré à PHP à partir de la version 5.1 (ce fut d'ailleurs la raison principale de la sortie de cette version mineure).
Ce tutoriel, comme les autres présents sur votre site est clair et bien conçu, mais je trouve dommage de ne pas avoir présenté la méthode "fetchAll()", sans doute la plus utilisée lorsqu'il y a de multiples résultats découlant d'une requête.
De plus, sans passer par la gestion des "Exception", il est relativement simple de vérifier si oui ou non une requête est correcte et si elle renvoie des résultats (le try/catch à la création de l'objet est cependant recommandé).
En effet, en prenant comme exemple un objet PDO "$pdo" et une requête sql "$sql" en faisant un simple "if($req=$pdo->query($sql)){...}else{print_r($pdo-errorInfo());}", on vérifie si la requête est correcte et on affiche directement l'erreur renvoyée par le driver.
De même, tenant compte de l'exemple précédent, un "if($res=$req->fetchAll()){...}else{echo 'Pas de résultat';}" permettra de savoir s'il oui ou non il y a des résultats (et agir en conséquence, sans passer par un "SELECT COUNT(*)..." superflu).
Dernière chose : quel dommage de ne pas avoir démontré la puissance de la petite méthode "$pdo->lastInsertId()" dont on a souvent tellement besoin. Cette dernière renvoie l'identifiant de la dernière ligne insérée.
Bonne soirée!
Eathan Il y a 2 ans - Répondre
Bonsoir =)
J'ai du faire une mauvaise manipulation et mon précédent message ne devrait pas se trouver ici, car ce n'était pas une réponse à un commentaire, mais bien un commentaire en soi.
Bonne soirée!
radah Il y a 2 ans Répondre
très intéressant comme tutoriel merci.
Pobourger Il y a 2 ans Répondre
Non, c'est NetBeans
Juice Il y a 2 ans Répondre
Super sympa comme tutoriel, merci.
Au fait, ton IDE, c'est toujours Komodo ? Parce que le thème à l'air bien sympa.
jbou43 Il y a 2 ans Répondre
Merci Merci pour ce tuto.
Corentin Il y a 2 ans Répondre
Jolie j'en avais juste besoin ...
Néandre Il y a 2 ans Répondre
Merci bien,
J'en connaissais bien peu en fait.
Site-waide.fr Il y a 2 ans Répondre
Cool , depuis le temps que c'est recommende pour l'utilisation de mysql ^^"
Wapaca Il y a 2 ans Répondre
Merci pour ce tuto
neirda33 Il y a 2 ans Répondre
Aaah ! Exactement ce que je voulais ! Merci !
iTACHi Il y a 16 jours Répondre
Exellent tuto , qui nous montre bien les équivalents du language mysql en PDO
Encore une fois , Merci ^^