Pdo
jordxn
-
Utilisateur anonyme -
Utilisateur anonyme -
Bonjour,
J'ai trouver un script en ajax utilisant le language mysql et j'ai essayé de le mettre en PDO mais depuis il ne fonctionne plu... :
Version qui marche :
Version qui bug :
Merci
J'ai trouver un script en ajax utilisant le language mysql et j'ai essayé de le mettre en PDO mais depuis il ne fonctionne plu... :
Version qui marche :
<?php
$link = mysql_connect("**", "**", "*")
or die("Impossible de se connecter : " . mysql_error());
mysql_select_db("*");
// si une variable queryString a été posté
if(isset($_POST['queryString'])) {
$queryString=$_POST['queryString'];
// si la longueur du contenu de la variable est superieur à 0
if(strlen($queryString) >0) {
// requete sql à personnaliser pour correspondre à votre base de données
$result = mysql_query("SELECT nom FROM marque WHERE nom LIKE '$queryString%' LIMIT 10");
if($result) {
// on parcourt les resultats
while ($nom = mysql_fetch_object($result)) {
// on affiche les resultats dans un element de liste en ajoutant la fonction la fill sur l'evenenement onClick
echo '<li onClick="fill(\''.$nom->nom.'\');">'.$nom->nom.'</li>';
}
} else {
echo 'Il y a une probleme avec la requete sql.';
}
} else {
}
} else {
echo 'Il ne devrait pas avoir un accès direct à ce script !!!';
}
?>
Version qui bug :
<?php
include('config.php');
// si une variable queryString a été posté
if(isset($_POST['queryString'])) {
$queryString=$_POST['queryString'];
// si la longueur du contenu de la variable est superieur à 0
if(strlen($queryString) >0) {
// requete sql à personnaliser pour correspondre à votre base de données
$query = $pdo->prepare("SELECT nom FROM marque WHERE nom LIKE '$queryString%' LIMIT 10");
$query->execute();
if( $query->rowCount() != 0){ //S'il existe des r??sultats.
while($Value=$query->fetch()) {
$nom=$Value['nom'];
// on affiche les resultats dans un element de liste en ajoutant la fonction la fill sur l'evenenement onClick
echo '<li onClick="fill(\''.$nom->nom.'\');">'.$nom->nom.'</li>';
}
} else {
echo 'Il y a une probleme avec la requete sql.';
}
} else {
}
} else {
echo 'Il ne devrait pas avoir un accès direct à ce script !!!';
}
?>
Merci
1 réponse
Bonjour
Dans ta version avec mysql_, tu faisais un mysql_fetch_object et tu récupérais donc un objet. Le champ récupéré était donc $nom->nom, que tu utilisais dans ton <li>
Maintenant, avec PDO, si tu n'as pas mis d'option particulière, avec $Value=$query->fetch(), tu récupères un tableau associatif et non plus un objet. Le champ qui t'intéresse est
$nom=$Value['nom']; comme tu l'as très bien écrit.
Donc dans ton <li>, il faut maintenant mettre simplement $nom et non pas $nom->nom.
Dans ta version avec mysql_, tu faisais un mysql_fetch_object et tu récupérais donc un objet. Le champ récupéré était donc $nom->nom, que tu utilisais dans ton <li>
Maintenant, avec PDO, si tu n'as pas mis d'option particulière, avec $Value=$query->fetch(), tu récupères un tableau associatif et non plus un objet. Le champ qui t'intéresse est
$nom=$Value['nom']; comme tu l'as très bien écrit.
Donc dans ton <li>, il faut maintenant mettre simplement $nom et non pas $nom->nom.
jordxn
Merci beaucoup,
Utilisateur anonyme
De rien.