English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
PHP MySQLi Manuale di riferimento
La funzione mysqli_stmt_prepare() prepara una frase SQL per l'esecuzione
mysqli_stmt_prepare()La funzione mysqli_stmt_prepare() prepara un'istruzione SQL per l'esecuzione, puoi utilizzare i segnaposto di parametro ("?"). Specifica i valori per loro e esegui in seguito.
mysqli_stmt_prepare($stmt, $str);
Numero | Parametri e descrizione |
---|---|
1 | stmt(Obbligatorio) Questo è un oggetto che rappresenta lo statement (restituito dalla funzione mysqli_stmt_init()). |
2 | str(Obbligatorio) Questa è la stringa che specifica la query necessaria. |
Questa funzione restituisce un valore booleanosese ha successo, restituiscetrue; se fallisce, restituiscefalse.
Questa funzione è stata introdotta nella versione PHP 5 e può essere utilizzata in tutte le versioni successive.
Ecco un esempio che dimostramysqli_stmt_prepare()Uso della funzione (stile procedurale)-
<?php $con = mysqli_connect("localhost", "root", "password", "mydb"); $query = "CREATE TABLE Test(Name VARCHAR(255), AGE INT)"; mysqli_query($con, $query); print("Creazione della tabella.....\n"); //Inizializzazione dello statement $stmt = mysqli_stmt_init($con); mysqli_stmt_prepare($stmt, "INSERT INTO Test values(?, ?)"); mysqli_stmt_bind_param($stmt, "si", $Name, $Age); $Name = 'Raju'; $Age = 25; print("Inserisci record....."); //Esecuzione della frase mysqli_stmt_execute($stmt); //Fine della frase mysqli_stmt_close($stmt); //Chiusura della connessione mysqli_close($con); ?>
Output dei risultati
Creazione della tabella..... Inserimento dei record.....
Nello stile orientato agli oggetti, la sintassi di questo metodo è$stmt->prepare();。Ecco un esempio di questo metodo in stile orientato agli oggetti;
<?php $con = new mysqli("localhost", "root", "password", "mydb"); $query = "CREATE TABLE Test(Name VARCHAR(255), AGE INT)"; $con->query($query); print("Creazione della tabella.....\n"); //Inizializzazione dello statement $stmt = $con->stmt_init(); $stmt->prepare("INSERT INTO Test values(?, ?)"); $stmt->bind_param("si", $Name, $Age); $Name = 'Raju'; $Age = 25; print("Inserisci record....."); //Esecuzione della frase $stmt->execute(); //Fine della frase $stmt->close(); //Chiusura della connessione $con->close(); ?>
Output dei risultati
Creazione della tabella..... Inserimento dei record.....
Vediamo un altro esempio di utilizzo di una query SELECT con lo stile orientato agli oggetti di questa funzione-
<?php //Creazione della connessione $con = new mysqli("localhost", "root", "password", "mydb"); $con -> query("CREATE TABLE myplayers(ID INT, First_Name VARCHAR(255), Last_Name VARCHAR(255), Place_Of_Birth VARCHAR(255), Country VARCHAR(255))"); print("Creazione della tabella.....\n"); $con -> query("INSERT INTO myplayers values(1, 'Sikhar', 'Dhawan', 'Delhi', 'India')"); $con -> query("INSERT INTO myplayers values(2, 'Jonathan', 'Trott', 'Cape Town', 'Sud Africa')"); $con -> query("INSERT INTO myplayers values(3, 'Kumara', 'Sangakkara', 'Matale', 'Sri Lanka')"); $con -> query("INSERT INTO myplayers values(4, 'Virat', 'Kohli', 'Delhi', 'India')"); print("Inserimento dei record.....\n"); //Inizializzazione dell'oggetto della frase $stmt = $con->stmt_init(); $stmt -> prepare("SELECT * FROM myplayers WHERE country=?"); $stmt -> bind_param("s", $country); $country = "India"; //Esecuzione della frase $stmt->execute(); //Fine della frase $stmt->close(); //Chiusura della connessione $con->close(); ?>
Output dei risultati
Creazione della tabella..... Inserimento dei record.....