PHP variable bei Datenbankabfrage ist leer

Sarius87

Banned
Registriert
Mai 2016
Beiträge
888
hallo, ich habe wieder mal einen denkfehler oder so ... und zwar will ich hier die ID auslesen aber die variable $id ist leer ... aber wieso ?? den user gibt es ...

PHP:
$pdo=new PDO('mysql:host=localhost;dbname=XXX', 'XXX', 'XXX');
$user="Yasin";
$sql="SELECT id FROM users WHERE nickname=$user";
foreach($pdo->query($sql) as $row) {
	$id=$row['id'];}
echo ">$id<";
 

Anhänge

  • 2017-06-28_22.11.00.png
    2017-06-28_22.11.00.png
    5,5 KB · Aufrufe: 282
tipp 1: lass dir doch mal den fehler ausgeben. wie das geht, verraet dir eine google-suche.
tipp 2: benutz doch lieber prepared statements, wenn du schon PDO hast
 
Prüfst du vorher auch mal selbst gegen, bevor du einen neuen Thread eröffnest? Sieh dir das SQL an...
Code:
SELECT id FROM users WHERE nickname=Yasin
Ergibt wahrscheinlich einen Fehler, weil wohl keine Spalte Yasin existiert.

Nutz bitte Prepared Statements wenn du schon die PDO nutzt und setze die Variablen nicht direkt in den Query.
 
Yuuri schrieb:
Prüfst du vorher auch mal selbst gegen, bevor du einen neuen Thread eröffnest? Sieh dir das SQL an...

Nein tut er nicht, ist doch viel bequemer hier einen Thread zu eröffnen und andere für sich denken zu lassen. So lange er hier auch noch Hilfe bekommt, wird sich daran nichts ändern.
 
Yuuri schrieb:
Prüfst du vorher auch mal selbst gegen, bevor du einen neuen Thread eröffnest?


Ja. dieses script nutze ich immer und es geht auch, mir fällt grad auf dass es umgekehrt auch geht , also id auslesen wenn man den nickname hat... warum nicht andersherum ?? weil die id eine "aufzählung" in der DB ist vielleicht ?
 
Wenn du weiterhin Rückgabewerte und Fehlermeldungen in deinen PHP scripts igonierst, werden wir noch viel Spaß mit dir haben. Ich hoffe, das wird keine öffentlich erreichbare Webseite oder gar irgendwas komerzielles.

Yuuri hat es zwar schon genannt, aber kopier doch mal das SQL, das du in PHP erzeugst in PHP-Admin rein und führe es aus. Vielleicht siehst du dann, wo es hakt (falls nicht, Screenshot machen und hier posten).
 
Zurück
Oben