Warning: mysqli_fetch_array() expects parameter 1 to be mysqli_result, boolean given in

smatie52

Grünschnabel
Hallo,
ich schreibe gerade in PHP eine SQL SELECT Abfrage und hänge momentan an einem Problem.

Das ist der Codeteil in dem der Fehler auftritt:
Code:
<?php

    $sql="SELECT Artikelname as Artikel, Firmenname as Hersteller, Artikelart as Art,Anschrift as Firmenanschrift, Preis, Kuenstlername as Künstlername, Vorname, Nachname
        FROM company, magier, magier_artikel, zauberartikel
        WHERE artikelref=Artikel_ID
        AND companyref=Firmen_ID
        AND magierref=Magier_ID";
      
        $table= mysqli_query($conn,$sql);
      
         echo "<table>";
        while ($zeile = mysqli_fetch_array($table))
         {
            echo"<tr><td>$zeile[Artikel]</td><td>$zeile[Hersteller]</td><td>$zeile[Artikelart]</td><td>$zeile[Anschrift]</td><td>$zeile[Preis]</td><td>$zeile[Kuenstlername]</td><td>$zeile[Vorname]</td><td>$zeile[Nachname]</td></tr><br>";
      
        }
        mysqli_query($conn,$sql);
        echo"</table>";
?>
ich will die Datenbank in einer Tabelle ausgeben und bekomme folgende Fehlermeldung:
Warning: mysqli_fetch_array() expects parameter 1 to be mysqli_result, boolean given in

ich finde den Fehler leider nicht :/

Danke schonmal für eure Antworten!
 
Zuletzt bearbeitet:
Grundsätzlich: es ist eine Warnung, kein Error. In deinem Fall führt es aber dazu, dass du nicht das gewünschte Resultat kriegst.

die Meldung besagt, dass du einen Boolean übergibst. Das heisst, dass $table true oder false ist.
Ergo dürfte der Fehler beim mysqli_query liegen.
https://www.php.net/manual/de/mysqli.query.php hat gesagt.:
Returns FALSE on failure. For successful SELECT, SHOW, DESCRIBE or EXPLAIN queries mysqli_query() will return a mysqli_result object. For other successful queries mysqli_query() will return TRUE.

So scheint es, dass dein sql zu einem Fehler führt.
Hier habe ich ein Tutorial, wie man Fehler in sql innerhalb von PHP einfach finden kann: [PHP][MySQLi] Debug Queries [Yaslaw.Info]

Ps: Du hast in sql mehrere Tabellen, aber bei keinem Feld eine Angabe woher es stammt. Das geht nur, wenn die Felder ganz eindeutig einer Tabelle zugeordnet werden kann
 
Zuletzt bearbeitet:

Neue Beiträge

Zurück