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

Tutorial PHP di base

Tutorial PHP avanzato

PHP & MySQL

Manuale PHP

Uso e esempio della funzione PHP mysqli_stmt_fetch()

PHP MySQLi Manuale di Referenza

La funzione mysqli_stmt_fetch() estrarrà i risultati della frase preparata nei variabili associati.

Definizione e uso

Puoi creare una frase preparata con mysqli_prepare() funzione, che ha il marchio di parametro ("?") (se ci sono valori). Dopo la frase preparata, è necessario utilizzaremysqli_stmt_bind_param()La funzione associa i valori ai parametri della frase creata.

In modo analogo, può essere utilizzata la funzione mysqli_stmt_bind_result() per associare le colonne del set di risultati della frase all'variabile necessaria.

Se è stato chiamatomysqli_stmt_fetch()La funzione, dopo aver associato le colonne, estrarrà le colonne dei risultati nel variabile specificato.

Sintassi

mysqli_stmt_fetch($stmt);

Parametro

NumeroParametri e descrizioni
1

stmt(obbligatorio)

Questo è l'oggetto che rappresenta la frase preparata.

Valore di ritorno

Se si ottengono dati, la funzione PHP mysqli_stmt_fetch() restituiràTRUE;; Se si verifica un errore, viene restituitoFALSE; Se non ci sono più righe nei risultati, viene restituitoNULL.

Versione PHP

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

Esempio online

Esempi seguenti dimostrano:mysqli_stmt_fetch()La funzione dell'uso (stile procedurale), utilizza la frase preparata per associare i valori delle risultati ai variabili:

<?php
   $con = mysqli_connect("localhost", "root", "password", "mydb");
   mysqli_query($con, "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");
   mysqli_query($con, "INSERT INTO myplayers values(1, 'Sikhar', 'Dhawan', 'Delhi', 'India');")
   mysqli_query($con, "INSERT INTO myplayers values(2, 'Jonathan', 'Trott', 'CapeTown', 'SouthAfrica');")
   print("Inserire le registrazioni.....\n");
   //Ricerca del contenuto della tabella
   $stmt = mysqli_prepare($con, "SELECT * FROM myplayers");
   //Esegui la dichiarazione
   mysqli_stmt_execute($stmt);
   //Leggi i valori del risultato e li assegna ai variabili
   mysqli_stmt_bind_result($stmt, $id, $fname, $lname, $pob, $country);
   while (mysqli_stmt_fetch($stmt)) {
      print("Id: ".$id."\n");
      print("fname: ".$fname."\n");
      print("lname: ".$lname."\n");
      print("pob: ".$pob."\n");
      print("country: ".$country."\n");
      print("\n");
   }
   //Fine della dichiarazione
   mysqli_stmt_close($stmt);
   //Chiudi la connessione
   mysqli_close($con);
?>

Risultato di output

Creazione della tabella.....
Inserire le registrazioni.....
Id: 1
fname: Sikhar
lname: Dhawan
pob: Delhi
country: India
Id: 2
fname: Jonathan
lname: Trott
pob: CapeTown
country: SouthAfrica

Esempio online

La sintassi di questa funzione in stile orientato agli oggetti è:$stmt->fetch();。Ecco un esempio di questo metodo in stile orientato agli oggetti, che utilizza la preparazione delle istruzioni per associare variabili al risultato:

<?php
   //Establecendo la connessione
   $con = new mysqli("localhost", "root", "password", "mydb");
   $con->query("CREATE TABLE Test(Name VARCHAR(255), AGE INT)");
   $con->query("insert into Test values('Raju', 25),('Rahman', 30),('Sarmista', 27)");
   print("Creazione della tabella.....\n");
   $stmt = $con->prepare("SELECT * FROM Test WHERE Name in(?, ?)");
   $stmt->bind_param("ss", $name1, $name2);
   $name1 = 'Raju';
   $name2 = 'Rahman';
   print("La registrazione è stata eliminata.....\n");
   //Esegui la dichiarazione
   $stmt->execute();
   //Associare le variabili al set di risultati
   $stmt->bind_result($name, $age);
   while ($stmt->fetch()) {
      print("Nome: ".$name."\n");
      print("Età: ".$age."\n");
   }
   //Fine della dichiarazione
   $stmt->close();
   //Chiudi la connessione
   $con->close();
?>

Risultato di output

Creazione della tabella.....
Record eliminato.....
Nome: Raju
Età: 25
Nome: Rahman
Età: 30

Esempio online

Esempio di utilizzo delle funzioni mysqli_stmt_bind_result() e mysqli_stmt_fetch() per ottenere i risultati della query DESCRIBE-

<?php
   $con = mysqli_connect("localhost", "root", "password", "mydb");
   mysqli_query($con, "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");
   //Descrizione della tabella
   $stmt = mysqli_prepare($con, "DESC myplayers");
   //Esegui la dichiarazione
   mysqli_stmt_execute($stmt);
   //Leggi i valori del risultato e li assegna ai variabili
   mysqli_stmt_bind_result($stmt, $field, $type, $null, $key, $default, $extra);
   while (mysqli_stmt_fetch($stmt)) {
      print("Campo: ".$field."\n");
      print("Tipo: ".$type."\n");
      print("Null: ".$null."\n");
      print("Chiave: ".$key."\n");
      print("Predefinito: ".$default."\n");
      print("Extra: ".$extra."\n");
      print("\n");
   }
   //Fine della dichiarazione
   mysqli_stmt_close($stmt);
   //Chiudi la connessione
   mysqli_close($con);
?>

Risultato di output

Creazione della tabella.....
Campo: ID
Tipo: int(11)
Null: YES
Chiave:
Predefinito:
Extra:
Campo: Nome
Tipo: varchar(255)
Null: YES
Chiave:
Predefinito:
Extra:
Campo: Cognome
Tipo: varchar(255)
Null: YES
Chiave:
Predefinito:
Extra:
Campo: Luogo_di_nascita
Tipo: varchar(255)
Null: YES
Chiave:
Predefinito:
Extra:
Campo: Paese
Tipo: varchar(255)
Null: YES
Chiave:
Predefinito:
Extra:

Esempio online

Il seguente esempio utilizza le funzioni mysqli_stmt_bind_result() e mysqli_stmt_fetch() per ottenere i risultati della query SHOW TABLES, restituendo tutti i tavoli presenti nel database corrente:

<?php
   $con = mysqli_connect("localhost", "root", "password");
   //Scegli il database
   mysqli_query($con, "CREATE DATABASE NewDatabase");
   mysqli_select_db($con, "NewDatabase");
   //Crea il tavolo
   mysqli_query($con, "CREATE TABLE test1(Name VARCHAR(255), Age INT)");
   mysqli_query($con, "CREATE TABLE test2(Name VARCHAR(255), Age INT)");
   mysqli_query($con, "CREATE TABLE test3(Name VARCHAR(255), Age INT)");
   print("Tavoli creati.....\n");
   //Mostra i tavoli
   $stmt = mysqli_prepare($con, "SHOW TABLES");
   //Esegui la dichiarazione
   mysqli_stmt_execute($stmt);
   //Leggi i valori del risultato e li assegna ai variabili
   mysqli_stmt_bind_result($stmt, $table_name);
   print("Tutti i tavoli presenti nel database corrente: \n");
   while (mysqli_stmt_fetch($stmt)) {
      print($table_name."\n");
   }
   //Fine della dichiarazione
   mysqli_stmt_close($stmt);
   //Chiudi la connessione
   mysqli_close($con);
?>

Risultato di output

Tavoli creati.....
Tutti i tavoli presenti nel database corrente:
test1
test2
test3

PHP MySQLi Manuale di Referenza