[MySQLi] Daten ausgeben

B

ByeBye 242513

Hallo Community,
ich seh den Wald vor lauter Bäumen nicht mehr.
Wieso funktioniert diese Datenausgabe nicht? Es wird kein Fehler angezeigt.

PHP:
<?
  $db = @new mysqli(**********, **********, **********, **********);
  if(mysqli_connect_errno() != 0) { echo "Datenbankfehler: <strong>" .mysqli_connect_errno(). " : " .mysqli_connect_error(). "</strong>"; exit(); }
  $db->set_charset("utf8");
 
  $sql = 'SELECT `wohnort` FROM `benutzer` WHERE vorname=?, nachname=?';
  $result = $db->prepare($sql);
  $result->bind_param('ss', $vorname, $nachname);
  $result->execute();
  $result->bind_result($wohnort);
  $result->fetch();
  echo $wohnort;
  $result->close();

  $db->close();
?>
 
Dein $result ist kein Result sondern ein Statement. Nur mal so um die Verwirrung um die Namensgebung zu lösen

Kontroliere doch mal $vorname und $nachname, was da wirklich drinsteht

Und schmeiss mal den Folgende Code a ANfang rein, um ev. unterdrückte Fehler anzuzeigen
PHP:
error_reporting(E_ALL);
ini_set('display_errors', 1);
 
In den Variablen steht nichts auffälliges drin, lt. echo().
Der Code für die Fehleranalyse steht bereits bei mir drin, zeigt aber nichts an.
 
Dann wirds kein technischer Fehler sein, sondern ein Fachlicher. SPrich, er findet keine Daten mit dieen Argumenten.

PHP:
echo $result->num_rows;

Und lass dir die Variablen mittels var_dump() ausgeben damit du Zeihelnumbrüche, Leerrzeichen etc. siehst.

Ansonsten lass dir mal das SQL zu Debugzwecken ausgeben. Das kannst du über Umwege machen
http://wiki.yaslaw.info/dokuwiki/doku.php/php/libraries/ypdostmt
 
Hi,

du solltest auch mindestens die Rückgabe von
PHP:
$result->fetch();
auswerten.

Das gibt dir Informationen darüber ob Informationen vorhanden sind oder Fehler passiert sind.

Die Rückgabewerte von mysql_stmt::fetch sind: (Genauer siehe: http://php.net/manual/en/mysqli-stmt.fetch.php)
true => Erfolgreich
false => Fehler
NULL => keine weiteren daten

Prinzipiell sollte man immer vermeiden auf Variablen zuzugreifen, bei denen man nicht (relativ) sicher sein kann, was drin steht. Das ist in diesem Fall bei $wohnort der Fall.

VG
Nino
 
Fehler gefunden... etwas peinlich... hatte bei $vorname einen Buchstabendreher... Danke für eure Zeit!
 
Zurück