Maison > base de données > tutoriel mysql > Pourquoi `mysqli_stmt::fetch_array()` provoque-t-il une \'Erreur fatale : appel à la méthode non définie mysqli_stmt::fetch_array()\' ?

Pourquoi `mysqli_stmt::fetch_array()` provoque-t-il une \'Erreur fatale : appel à la méthode non définie mysqli_stmt::fetch_array()\' ?

Barbara Streisand
Libérer: 2024-11-01 20:29:29
original
1126 Les gens l'ont consulté

Why is `mysqli_stmt::fetch_array()` causing a

mysqli_stmt::fetch_array() Échec de l'appel expliqué

Dans la programmation PHP, l'erreur "Erreur fatale : Appel à une méthode non définie mysqli_stmt:: fetch_array()" se produit lors des opérations de base de données utilisant des instructions préparées par MySQLi. Cela se produit lorsque vous tentez d'utiliser la méthode fetch_array() sur un objet mysqli_stmt.

Comprendre le problème

L'erreur indique que fetch_array() n'est pas une méthode valide pour Objets mysqli_stmt. Les instructions préparées dans MySQLi ont leur propre ensemble de méthodes pour récupérer des données, à savoir fetch().

Solution : Utiliser mysqli_stmt::fetch()

Pour récupérer des données de une instruction préparée, la méthode fetch() doit être utilisée à la place de fetch_array(). La méthode fetch() renvoie un tableau indexé numériquement des données de la ligne actuelle.

Alternative : mysqli_result::fetch_all()

Si plusieurs lignes doivent être récupérées, la méthode mysqli_result::fetch_all() peut être utilisée. Cette méthode renvoie un tableau de tableaux associatifs représentant toutes les lignes de l'ensemble de résultats.

Code révisé

La version corrigée de votre code serait :

<code class="php">...
$sql->execute();
$sql->bind_result($job);

$data = array();

while ($sql->fetch()) {
    $data[] = array(
            'label' => $job  
    );
    echo json_encode($data);
}</code>
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal