Maison > Article > développement back-end > Exemple de partage de code pour l'utilisation de la fonction bind_param() en php
Cet article présente principalement l'utilisation de la fonction bind_param() dans php, et analyse brièvement la fonction, les paramètres, l'utilisation et les précautions associées de la fonction bind_param() . , les amis dans le besoin peuvent se référer à
Cet article explique l'utilisation de la fonction bind_param() en php avec des exemples. Partagez-le avec tout le monde pour votre référence, les détails sont les suivants :
Il n'est pas difficile de comprendre littéralement les paramètres de liaison ; permettez-moi d'en parler à travers un exemple de paramètres de liaison :
pour exemple :
bind_param("sss", firstname,lastname, $email);
1 Cette fonction lie les paramètres SQL et indique à la base de données la valeur des paramètres. La colonne de paramètres "sss" gère les types de données des paramètres restants. Le caractère s indique à la base de données que le paramètre est une chaîne.
Les paramètres ont les quatre types suivants :
i - entier (type entier)
d - double (double précision virgule flottante tapez )
s - string (string)
b - BLOB (booléen)
Chaque paramètre doit être spécifié en type.
En indiquant à la base de données le type de données du paramètre, vous pouvez réduire le risque d'injection SQL.
2. Le prénom, le nom et $email ci-dessus sont transmis par des guillemets, qui ne peuvent pas être directement écrits sous forme de chaînes après PHP5.3. Afin de vérifier cette conclusion, j'ai écrit ici A. test est le suivant :
$servername="localhost"; $username="root"; $password="admin"; $dbname="test"; $conn=new mysqli($servername,$username,$password,$dbname); if($conn->connect_error){ die("connected failed:".$conn->connect_error); } $sql="INSERT INTO user(user_first,user_last,age)VALUES(?,?,?)"; $stmt=$conn->prepare($sql); $stmt->bind_param("sss","xiao","hong",22); $stmt->execute(); echo "News records created successfully!"; $stmt->close(); $conn->close();
Ci-dessus, j'ai écrit un programme de test qui écrit les paramètres directement dans les chaînes. Après l'exécution, il apparaît :
Enfin. Je réécris le programme comme suit :
$servername="localhost"; $username="root"; $password="password"; $dbname="test"; $conn=new mysqli($servername,$username,$password,$dbname); if($conn->connect_error){ die("Connect failed:".$conn->connect_error); } $sql="INSERT INTO user(user_first,user_last,age)VALUES(?,?,?)"; $stmt=$conn->prepare($sql); $stmt->bind_param("sss",$user_first,$user_last,$age); $user_first="xiao"; $user_last="hong"; $age=12; $stmt->execute(); echo "News records created successfully!"; $stmt->close(); $conn->close();
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!