PHP Warning: Undefined array key "status"?

2 Antworten

Vom Beitragsersteller als hilfreich ausgezeichnet

Die fetch_all-Methode liefert ein Array mit numerischen Indizes. Um ein assoziatives Array zu erhalten, solltest du den entsprechenden Modus noch mit angeben.

$tickets = $resultSet->fetch_all(MYSQLI_ASSOC);

Lass dir den Array mal ausgeben und schau, ob die keys überhaupt drin sind. Dann Vergiss nicht einzubauen, dass du sowas prüfst, bevor du die abfragst, da sowas ein Sicherheitsproblem werden kann, wenn andere einen Einblick erhalten durch den Fehler


verreisterNutzer  21.05.2022, 16:27

ich weiss nicht ob ich es richtig gemacht hab.

Hab ganz einfach das hier reingemacht:

<? echo '<p>' $tickets '</p>' ?>

Und es wird das ausgegeben:

' $tickets '' ?>

FaTech  21.05.2022, 16:28
@verreisterNutzer

var_dump("array"); glaube ich war das. Es geht erstmal nur um das Array anschauen, nicht mehr

FaTech  21.05.2022, 16:30
@verreisterNutzer

Auf der HTML Seite. Nur dass du dafür nicht HTML brauchst. Du sollst es nur ausgeben lassen

FaTech  21.05.2022, 16:32
@verreisterNutzer

Dann ist der Array wohl leer. Das solltest du immer mit einer if Abfrage prüfen, bevor du die Elemente darin abfragst. Dann musst du jetzt noch einen Schritt zurück. Schauen, warum der leer ist

verreisterNutzer  21.05.2022, 16:33
@FaTech

Okay, mir faellt grad auf, dass ich ein Fehler gemacht habe. Jetzt wird doch etwas ausgegeben: string(7) "tickets"
Sieht aber trotzdem nicht so richtig aus, oder?

FaTech  21.05.2022, 16:34
@verreisterNutzer

string(7) tickets ist immerhin die richtige Ausgabe. Wenn da aber nicht mehr steht, ist der leer. string ist der Datentyp und tickets hat 7 Zeichen

verreisterNutzer  21.05.2022, 16:35
@FaTech

verstehe. Kannst du mir helfen herauszufinden, warum er leer ist? Ich check es irgendwie nicht

FaTech  21.05.2022, 16:37
@verreisterNutzer

Im Thema PHP und MySQL(i) bin ich überhaupt nicht drin. Ist denn die Verbindung zu deiner Datenbank aktuell? Also funktioniert die überhaupt? (Ich vermute mal ja)

FaTech  21.05.2022, 16:51
@verreisterNutzer

Dann einen Schritt weitergehen, gibt es die Tabellen und Splalten aus der Query? Wenn ja, ist der PHP Code davon korrekt? Oder fehlt vielleicht noch etwas? Die SQL Query sieht soweit richtig aus, ob die Tabellen/Spalten richtig sind weiß ich aber nicht

FaTech  21.05.2022, 16:56
@verreisterNutzer

Dann den PHP Code Prüfen, ob die Anfrage überhaupt ausgeführt wird, also ob vielleicht Code fehlt oder so

regex9  21.05.2022, 17:22
@verreisterNutzer

Um ein Array (ich nenne es folgend $arr) auszugeben, nutze:

print_r($arr);

oder

var_dump($arr);

Auch wenn das Array leer ist, erhältst du eine Ausgabe. Andernfalls gibt es im Skript einen Fehler, der es vorzeitig abbrechen lässt.

Mit

var_dump("tickets");

lässt du dir nur die Information zum String tickets ausgeben. Einen Bezug zur Variable $tickets gibt es nicht.