English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Tutorial di base PHP

Tutorial avanzato PHP

PHP & MySQL

Manuale di riferimento PHP

Uso e esempio della funzione PHP mysqli_stmt_execute()

Manuale di riferimento PHP MySQLi

La funzione mysqli_stmt_execute() esegue la query pronta.

Definizione e uso

mysqli_stmt_execute()La funzione accetta come parametro un oggetto di statement pronta (creato con la funzione prepare()) e l'esegue, sostituendo automaticamente qualsiasi marcatura di parametro esistente con i dati appropriati.

Dopo questa funzione, se si chiama la funzione mysqli_stmt_affected_rows() (nel caso di query di UPDATE, DELETE, INSERT), si ottiene il numero di righe influenzate. Nello stesso modo, se si chiama la funzione mysqli_stmt_fetch() (nel caso di query di SELECT), si restituisce il set di risultati.

Sintassi

mysqli_stmt_execute($stmt);

Parametro

Numero di sequenzaParametri e spiegazioni
1

con(obbligatorio)

Questo è l'oggetto della statement pronta.

Valore di ritorno

La funzione PHP mysqli_stmt_execute() restituisce un valore booleano, true nel caso di successo.true, nel caso di fallimento èfalse.

Versione PHP

Questa funzione è stata introdotta originariamente nella versione PHP 5 e può essere utilizzata in tutte le versioni successive.

esempi online

Supponiamo che abbiamo già creato una tabella chiamata employee nel database MySQL, con il seguente contenuto:

mysql> select * from employee;
+------------+--------------+------+------+--------+
| FIRST_NAME | LAST_NAME | AGE | SEX | INCOME |
+------------+--------------+------+------+--------+
| Vinay | Bhattacharya | 20 | M | 16000 |
| Sharukh    | Sheik        |   25 | M    |  18300 |
| Trupthi    | Mishra       |   24 | F    |  36000 |
| Sheldon | Cooper | 25 | M | 12256 |
| Sarmista | Sharma | 28 | F | 15000 |
+------------+--------------+------+------+--------+
5 rows in set (0.00 sec)

Ecco un esempio che dimostra:mysqli_stmt_execute()L'uso della funzione (stile procedurale), esecuzione e statement di update pronte:

<?php
   $con = mysqli_connect("localhost", "root", "password", "mydb");
   $stmt = mysqli_prepare($con, "UPDATE employee set INCOME=INCOME-? where INCOME >?");
   mysqli_stmt_execute($stmt, "si", $reduct, $limit);
   $limit = 16000;
   $reduct = 5000;
   //Esegui lo statement
   mysqli_stmt_execute($stmt);
   print("Le record sono state aggiornate......\n");
   //Fine dello statement
   mysqli_stmt_execute($stmt);
   //Chiudi la connessione
   mysqli_close($con);
?>

Visualizza risultati

Le record sono state aggiornate......

Dopo l'esecuzione del programma sopra:employeeIl contenuto della tabella è il seguente:

mysql> select * from employee;
+------------+--------------+------+------+--------+
| FIRST_NAME | LAST_NAME | AGE | SEX | INCOME |
+------------+--------------+------+------+--------+
| Vinay | Bhattacharya | 20 | M | 16000 |
| Sharukh | Sheik | 25 | M | 13300 |
| Trupthi | Mishra | 24 | F | 31000 |
| Sheldon | Cooper | 25 | M | 12256 |
| Sarmista | Sharma | 28 | F | 15000 |
+------------+--------------+------+------+--------+
5 rows in set (0.00 sec)

esempi online

La sintassi di questa funzione in stile orientato agli oggetti è la seguente:$stmt->execute();。Ecco un esempio di questa funzione in stile orientato agli oggetti, esecuzione e prepared insert statement.

<?php
   //Establishing connection
   $con = new mysqli("localhost", "root", "password", "mydb");
   //Creating a table
   $con -> query("CREATE TABLE myplayers(ID INT, First_Name VARCHAR(255), Last_Name VARCHAR(255), Place_Of_Birth VARCHAR(255), Country VARCHAR(255))");
   print("Crea tabelle.....\n");
   //Usa lo statement preparato per inserire i valori nella tabella
   $stmt = $con->prepare('INSERT INTO myplayers values(?, ?, ?, ?, ?)');
   $stmt->bind_param('issss', $id, $fname, $lname, $pob, $country);
   $id = 1;
   $fname = 'Shikhar';
   $lname = 'Dhawan';
   $pob = 'Delhi';
   $country = 'India';
   //Esegui lo statement
   $stmt->execute();
   //Fine dello statement
   $stmt->close();
   //Chiudi la connessione
   $con->close();
?>

Visualizza risultati

Crea tabelle.....

esempi online

Puoi anche eseguiremysqli_stmt_prepare()Espressioni create dalla funzione -

<?php
   $con = mysqli_connect("localhost", "root", "password", "mydb");
   $query = "CREATE TABLE Test(Name VARCHAR(255), AGE INT)"; 
   mysqli_query($con, $query);
   print("Crea tabelle.....\n");
   //Inizializza lo 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.....");
   //Esegui lo statement
   mysqli_stmt_execute($stmt);
   //Fine dello statement
   mysqli_stmt_close($stmt);
   //Chiudi la connessione
   mysqli_close($con);
?>

Visualizza risultati

Crea tabelle.....
Inserisci record.....

Manuale di riferimento PHP MySQLi