Tach!
Nun bekomme ich zwar viele Fehler ich bekomme aber 72 Datensätze angezeigt. Ein Fehler lautet:
Warning: mysqli_stmt::bind_result(): Number of bind variables doesn't match number of fields in prepared statement in
Die Meldung bemängelt genau das, was ihr Text verlauten lässt. Ein UNION vereint die Mengen sozusagen senkrecht und nicht waagerecht. Waagerecht hingegen würde ein JOIN arbeiten. Anders ausgedrückt, ergeben bei einem UNION beispielsweise 5 Datensätze aus der einen Menge und 3 Datensätze aus der anderen Menge insgesamt 8 Datensätze in der Ergebnismenge. Die Teilmengen werden einfach nacheinander in die Ergebnismenge gelegt. Wenn das nicht dein Ziel ist, und du stattdessen Verknüpfungen zwischen beiden Teilmengen brauchst, dann wäre eine der Join-Arten das Mittel zum Ziel. Beim Join kommt es auf dessen Art an, aber es gibt nie mehr als in diesem Beispiel 5 Datensätze. Es können auch weniger sein, wenn aufgrund der Verknüpfungsbedingungen Datensätze wegfallen.
Die Fehlermeldung kommt jedenfalls, weil in der Ergebnismenge nur 6 Felder enthalten sind, du aber 12 zu binden versuchst.
der zweite Fehler der wiederholt sich in jeder Zeile lautet:
Notice: Undefined offset: 2
Die Ursache kann ich grad nicht aus dem gezeigten Code erkennen. Schau mal genauer hin, da sollte ja auch eine Zeilennummer ausgegeben werden, die dir die Stelle im Code verrät. Du greifst da jedenfalls auf ein Array-Element zu, das nicht existiert. Kontrollausgaben können helfen, die Wirklichkeit aufzuzeigen, um somit die Differenz zum Wunsch zu erkennen. var_dump() liefert bei jeder Art Wert eine genaue Ausgabe, print_r() hilft bei Array. In beiden Fälle empfiehlt sich ein Blick in die Quelltextansicht des Browsers oder ein <pre> vor der Ausgabe.
dedlfix.