Utilisation de PDO avec PHP

Fermé
roona - 11 avril 2013 à 14:34
jeremy.s Messages postés 1226 Date d'inscription lundi 28 mars 2011 Statut Membre Dernière intervention 2 septembre 2013 - 22 avril 2013 à 17:40
j'ai un problème je voudrais enregistrer les coordonner de l'utilisateur lorsqu'il se connecte
normalement
le code est la :

// enregistrer les info de connexion
$query = "INSERT INTO main_connection ( connection_id, connection_user_fk , connection_date, connection_ip ) VALUES ('', '$user_id','$today', '$user_ip')";
@mysql_query($query,$dbg);

header("location:index.php"); // redirection vers page index

c'est juste avec mysql pur etablir la connexion mais moi j'utilise PDO a la place de
je voudrais un équivalent de ce code si dessus et merci

2 réponses

sk8dada Messages postés 46 Date d'inscription samedi 27 juin 2009 Statut Membre Dernière intervention 19 juin 2013 7
22 avril 2013 à 11:27
Essaye en mettant à la place de "@mysql_query($query,$dbg); " quelquechose comme:
$PDO->query($query);

Le $PDO étant l'objet de connexion à la base de données, normalement il devrait sensiblement ressembler à ça:

$PDO = new PDO('mysql:host=localhost;dbname=$db', '$user', '$mdp');
0
jeremy.s Messages postés 1226 Date d'inscription lundi 28 mars 2011 Statut Membre Dernière intervention 2 septembre 2013 79
22 avril 2013 à 17:40
Deplus, tu ne peux pas faire : VALUES ('', '$user_id','$today', '$user_ip')";
Si tu veux mettre des variables, tu peux le faire mais il faut déclaté ta requete entre ' ' et non entre " "
Sinon le plus propre et le plus sécurisé reste les bindValue de PDO :
$query = "INSERT INTO main_connection ( connection_id, connection_user_fk , connection_date, connection_ip ) VALUES (:co_id, :co_u, :co_d, :co_ip)";
$pdo->prepare($query);
$tab = array(':co_id'=>$co_id, ':co_u'=>$co_u, ':co_d'=>$co_d,':co_ip'=>$co_ip);
$pdo->execute($tab);

0