Notice: Array to string conversion in C:\xampp\htdocs\Privat\index.php on line 81 Array?

... komplette Frage anzeigen

3 Antworten

Es weder ein Error noch ein Warning, sondern nur eine Notice.

Dennoch sollte man es korrigieren: mysqli_fetch_array liefert ja ein Array zurück, doch Du gibst es mit echo($ErsterTag) den Rückgabewert, den Du in $ErsterTag zwischenspeichertest, als Zeichenkette aus. Die Notice bekommst Du weg mit echo($ErsterTag[0]) jedoch solltest Du vorher überprüfen, ob es ein Array mit mindestens einem Element ist oder ansonsten eine entsprechende Meldung ausgeben, dass kein Datensatz gefunden wurde.

echo (is_array($ErsterTag) && sizeof($ErsterTag)>0) ? $ErsterTag[0] : "kein Eintrag gefunden");
Antwort bewerten Vielen Dank für Deine Bewertung

mysql_fetch_array() gibt ein Array zurück. Das kann man nicht mit echo ausgeben. Du kannst dazu

print_r($ErsterTag);

benutzen um das Array zu parsen und dann den Index benutzen:



echo $ErsterTag[0];

Mit mysql_fetch_assoc() bekommst du assoziative Arrays, also die Indizes heißen wie die Tabellenfeldnamen.

Bedenke auch, dass mehrere Ergebnisse in einer Schleife gelesen werden sollten.


Und als letztes: Nutz PDO! Die alten mysql-Funktionen sind sowas von alt und gammelig. Es gibt keine prepared Statements (Gefahr von Injections), sie sind deprecated as hell (gibts vielleicht irgendwann nicht mehr) und PDO ist genrell für jegliche DMBS nutzbar und objekt orientiert.

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von Elmo2999
16.05.2016, 12:31

Ich sehe gerade, mysqli ist ok. Hab das i übersehen. PDO ist aber dennoch cooler.

0
Kommentar von Kiboman
16.05.2016, 12:37

print_r oder für noch mehr infos

var_dump

den rest der Antwort kann man wohl weg lassen ;)

assoc liefert kein int als index da bringt dor [0] garnichts

in seinem code bekommt er nur einen row also schleife auch überfallig

mysqli selbst gemerkt,ok

0

Du kannst ein Array nicht mit der function echo ausgeben.

Da es sich um eine Notice handelt, ist das eben nicht fatal.

http://php.net/manual/de/function.print-r.php wäre eine Alternative

Antwort bewerten Vielen Dank für Deine Bewertung

Was möchtest Du wissen?