Utilisation de PDO avec PHP

roona -  
jeremy.s Messages postés 1248 Statut Membre -
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

  1. sk8dada Messages postés 52 Statut Membre 7
     
    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
  2. jeremy.s Messages postés 1248 Statut Membre 79
     
    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