Ce face mysqli_stmt_error_list
Fiecare element al listei are cheile errno, sqlstate și error. Lista este goală dacă ultima operație a reușit.
Exemplele de pe această pagină folosesc baza de date magazin, cu tabelul produse (coloanele id INT AUTO_INCREMENT, nume VARCHAR(100) NOT NULL, pret INT și stoc INT) și patru rânduri: Laptop (3200 lei, 5 buc.), Mouse (80 lei, 40 buc.), Monitor (900 lei, 0 buc.) și Tastatură (150 lei, 12 buc.). Comenzile SQL sunt explicate în secțiunea MySQL. Rezultatele au fost scrise pentru MySQL 8, pentru că exemplele au nevoie de un server de baze de date.
Parametri
| Parametru | Descriere |
|---|---|
$statement |
Interogarea pregătită. |
Ce returnează
Un tablou cu erorile.
Exemple
Exemplul 1: Toate detaliile erorii
<?php
mysqli_report(MYSQLI_REPORT_OFF);
$conn = mysqli_connect("localhost", "ana", "parola_ta", "magazin");
$stmt = mysqli_prepare($conn, "INSERT INTO produse (nume, pret, stoc) VALUES (?, 100, 1)");
$nume = null;
mysqli_stmt_bind_param($stmt, "s", $nume);
mysqli_stmt_execute($stmt);
print_r(mysqli_stmt_error_list($stmt));
Rezultat (cu un server MySQL și tabelul produse de mai sus)
Array
(
[0] => Array
(
[errno] => 1048
[sqlstate] => 23000
[error] => Column 'nume' cannot be null
)
)
Greșeli frecvente
- Te aștepți la mai multe elemente pentru o singură comandă. De obicei lista are o singură eroare; avertismentele se citesc cu
mysqli_stmt_get_warnings.
Comenzi înrudite
mysqli_stmt_error: Returnează mesajul ultimei erori a unei interogări pregătite, sau text gol.mysqli_error_list: Returnează lista erorilor ultimei operații pe conexiune, fiecare cu cod, SQLSTATE și mesaj.mysqli_stmt_get_warnings: Returnează avertismentele generate de o interogare pregătită, ca obiect mysqli_warning.