PHP SQL Abfrage nimmt Variable nicht

xep22

Banned
Registriert
Apr. 2018
Beiträge
395
hallo, hab ein komisches Problem mit PHP und mySQL Abfrage...

kurz gefragt: was ist daran bitte falsch?

PHP:
$nutzername = substr('/user xep22', 6);

$statement = $pdo->prepare('SELECT * FROM XXX WHERE nutzername = ?');
$statement->execute(array(strtolower($nutzername)));
// $statement->execute(array(strtolower('xep22')));
$user = $statement->fetch();

echo $user['nutzername'];
echo '<br><br>'.$nutzername;

die variable $nutzername ist gesetzt. $user['nutzername'] bleibt beim echo aber leer. nehme ich die auskommentierte Zeile anstatt die darüber, bzw. lasse ich das mit substr weg und mache nur den Nutzernamen in die Variable, klappt es... Im Serverlog steht kein Fehler.

Ich verstehs nicht.
 
Zuletzt bearbeitet:
Ist das Error Reporting an? Einfach um zu verifizieren, dass du wirklich alle Fehler ausgeworfen bekommst.

Dann mach mal kein echo $user['username'] sondern print_r($user); bzw var_dump($user) um sicher zu gehen, dass es keinen anderslautenden Index in dem Array gibt.

Mach auch mal ein var_dump($nutzername); direkt unter dem substr um zu erkennen, dass deine Variable zB kein Leerzeichen enthält.
 
Zuletzt bearbeitet:
Ein stmt->errorInfo() nach dem execute kann manchmal auch sehr aufschlussreich sein.

Außerdem solltest du generell die Multibyte-Funktionen nehmen (mb_substr).
 
Zuletzt bearbeitet:
Zurück
Oben