dedlfix: $ergebnis->bind_result alle Variablen sind leer

Beitrag lesen

Hi!

$sql = 'SELECT
         Vorname,
         Nachname,
       FROM
          Tabelle
       WHERE
           UserId =(?)';

Die Klammer um den Platzhalter kann weg.

$ergebnis = $db->prepare($sql);

Nebenbei: Der Name $ergebnis ist irreführend, weil ein Prepared Statement noch kein Ergebnis darstellt.

$ergebnis->bind_param('s',$UserId);
$ergebnis->execute();
$ergebnis->bind_result($Vorname, $Nachname);

So sieht das schon etwas besser aus. Allerdings hast du immer noch keine Fehlerbehandlung eingebaut. Schau im PHP-Handbuch nach, was die Methoden im Fehlerfall liefern und prüfe vor dem Fortsetzen, ob nicht solch ein Fehlerwert geliefert wurde.

Außerdem wäre der Handbuch-Blick (beispielsweise für bind_result()) auch für dein Problem von Nutzen gewesen, denn dann wäre dir beim Lesen der dortigen Hinweise vielleicht aufgefallen, dass du vergessen hast, eine weitere Methode aufzurufen.

Lo!