Heim >Backend-Entwicklung >PHP-Tutorial >Beispielcode-Freigabe für die Verwendung der Funktion bind_param() in PHP
Dieser Artikel stellt hauptsächlich die Verwendung der Funktion bind_param() in php vor und analysiert kurz die Funktion, Parameter, Verwendung und damit verbundene Vorsichtsmaßnahmen der Funktion bind_param() . , Freunde in Not können sich auf
beziehen. Dieser Artikel erklärt die Verwendung der Funktion bind_param() in PHP anhand von Beispielen. Teilen Sie es allen als Referenz mit. Die Details lauten wie folgt:
Es ist nicht schwer, die Bindungsparameter wörtlich zu verstehen. Lassen Sie mich anhand eines Beispiels für Bindungsparameter darüber sprechen:
zum Beispiel:
bind_param("sss", firstname,lastname, $email);
1 Diese Funktion bindet SQL-Parameter und teilt der Datenbank den Wert der Parameter mit. Die Parameterspalte „sss“ verwaltet die Datentypen der übrigen Parameter. Das s-Zeichen teilt der Datenbank mit, dass es sich bei dem Parameter um eine Zeichenfolge handelt.
Die Parameter haben die folgenden vier Typen:
i – Ganzzahl (Ganzzahltyp)
d – Double (doppelte Genauigkeit Gleitkomma). Typ )
s – Zeichenfolge (Zeichenfolge)
b – BLOB (boolean)
Jeder Parameter muss als Typ angegeben werden.
Indem Sie der Datenbank den Datentyp des Parameters mitteilen, können Sie das Risiko einer SQL-Injection verringern.
2. Der obige Vorname, Nachname und die E-Mail-Adresse werden in Anführungszeichen übergeben, die nach PHP5.3 nicht direkt als Zeichenfolgen geschrieben werden können. Um diese Schlussfolgerung zu überprüfen, habe ich hier A geschrieben test ist wie folgt:
$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();
Oben habe ich ein Testprogramm geschrieben, das Parameter direkt in Strings schreibt. Nach dem Ausführen erscheint:
Endlich Ich schreibe das Programm wie folgt um:
$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();
Das obige ist der detaillierte Inhalt vonBeispielcode-Freigabe für die Verwendung der Funktion bind_param() in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!