Problème de comprehension de code

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Problème de comprehension de code

Re: Problème de comprehension de code

par stealth35 » 02 janv. 2011, 16:28

il va binder les valeurs suivant les types, "s" correspond a "string", ca marche un peu comme un sprintf :wink:
le 1er s correspond à $login
le 2eme à $pass
...

Re: Problème de comprehension de code

par guillaume150 » 01 janv. 2011, 17:45

Enfaite c'est dans un tutoriel, voilà la méthode complète et ca marche très bien mais pouvez-vous tout expliquer, car même bind_param je comprend pas.
static function sauvegardeUser($login, $pass, $mail, $hash){

$bdd = utilitaire::ConnexionBDD();
$type = 'membre';
$query = 'INSERT INTO membres(login, pass, type, hash, mail) VALUES(?,?,?,?,?)';
$stmt = $bdd->prepare($query);
$stmt->bind_param('sssss', $login, $pass, $type, $hash, $mail);
$stmt->execute();

$stmt->close();
$bdd->close();
} 
Merci

Re: Problème de comprehension de code

par Castor Gaspard » 01 janv. 2011, 17:37

Bonjour,

Pour la propreté du code, je laisse la parole pour les spécialistes, mais a priori rien ne me chagrine. :)

Les *cinq* points d'interrogation correspondent aux *cinq* données que tu passes juste après avec bind_param.Le premier correspond à 'login", le deuxième à "pass" et ainsi de suite.

Edit
En revanche, ta requête ne fonctionnera pas, car 'sssss' n'a rien à faire dans bind_param : quelle est ton idée ?
Je retire la phrase, car je suis un âne baté. :mrgreen:

Cordialement,

Gaspard

Problème de comprehension de code

par guillaume150 » 01 janv. 2011, 15:54

Bonjour,

Voici une partie d'une méthode dans une class mais j'ai du mal à la comprendre, principalement les points d'interrogations, les 5 s et stmt, pouvez-vous m'expliquer? Et aussi ce code est-il "propre"?
$query = 'INSERT INTO membres(login, pass, type, hash, mail) VALUES(?,?,?,?,?)';
$stmt = $bdd->prepare($query);
$stmt->bind_param('sssss', $login, $pass, $type, $hash, $mail);
$stmt->execute();
Merci