Frage von thechatroom, 95

PHP-Script Funktioniert nicht, liegt das am Versionsunterschied (5.6.17 zu 7.0.3) oder ist da ein Fehler drin?

"Hey, ich tue mir gerade als zwischenstopp in meinem bestreben PHP zu erlernen auch MySQL an bei einer Einfachen Tabellenabfrage bekomme ich allerdings eine Fehlermeldung :

<?php

$pdo = new PDO('mysql:host=localhost;dbname=test', 'root@localhost', '');

$sql = "SELECT email, vorname, nachname FROM users";

foreach ($pdo->query($sql) as $row) {

echo $row['vorname']." ".$row['nachname']." ";

echo "E-Mail: ".$row['email']."

";

}

?>

Wenn ich das allerdings versuche zu öffnen sagt er :

Warning: Invalid argument supplied for foreach() in C:\xamp\htdocs\MySQLPDO.php on line 5

Was ist den an der Zeile falsch:

foreach ($pdo->query($sql) as $row)

Ich benutze die PHP Version 7.0.3 aber das Tutorial ist noch mit der Version 5.6.17

Ich kann leider nicht auf diese Version runter, die Installation macht bei mir da Problemem :/

Jemmand eine Idee wie ich diesen Fehler ausmerzen kann ?

Danke im Voraus

Grüße :)

Antwort
von Xandoo94, 57

Du nutzt in der foreach dir Schreibweise für mysql_fetch_object Bitte mache folgendes $query = mysql_query ($sql) ; dannach Bitte noch $ergb = mysql_fetch_object dannach sollte die foreach laufen

Kommentar von Kiboman ,

die ausgaben hat er nicht im object sondern assoziert

Kommentar von maximilianus7 ,

daneben! der fragesteller benutzt PDO

Kommentar von Kiboman ,

eben er fängt damit an.

die ausgaben macht er aber assoziiert

macht er ein fetch_object muss er auch die ausgabe. Abandern

Kommentar von thechatroom ,

Das Script funzt hiier (http://www.php-einfach.de/mysql-tutorial/daten-ausgeben/) ohne die Abänderungen warum ?

Antwort
von Kiboman, 66

der code ist falsch der fehler steht in dem error den du gepostet hast

der query führt aus.

im foreach kommt ein ...fetch_assoc

Kommentar von Kiboman ,

warum fängst du oben OOP an und machst das nicht bis zum schluss?

such dir ein ordentliches tutorial, und gewöhne dir nicht so einen murks an.

Kommentar von thechatroom ,

Kannst du im Punkt Ordentliches Tutorial eine Empfehlung ausspucken. :)

Kommentar von Kiboman ,

müsste ich selber gucken.

hab seit jahren kein tutorial mehr gelesen.

Kommentar von thechatroom ,

Wäre nett :)

Kommentar von Kiboman ,

ich schäme mich das funktioniert tasächlich, fast UNVERÄNDERT.

egal mit welcher version

Blöde Frage eine mysql datenbank mit der tabelle hast du?

Kommentar von thechatroom ,

Ja die habe ich angelegt und auch ein Paar einträge gemacht :/ Versuche es nachher nochmal mit einer neuen Tabelle vllt lag es irgendwie daran.

Keine passende Antwort gefunden?

Fragen Sie die Community

Weitere Fragen mit Antworten