• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Problem mit bind_param

freakXHTML

Mitglied
Hallo zusammen,
ich habe folgenden Code:

PHP:
$sql = 'INSERT INTO user (Benuterzname, Passwort, EMail, IPAdresse,Browser, Anmeldedatum) VALUES(?,?,?,?,?,?);';
  $result = $db->prepare($sql);
  if(!$result) {
   $db->error;
  }
  $result->bind_param('sssisi', $Username, $Pasword, $EMail, $IP, $Browser, $Datum);
  if(!$result->execute()){
   $result->error();
  }

In der Zeile mit bind_param erscheint aber folgender Fehler:

Fatal error: Call to a member function bind_param() on a non-object in ...

Laut Google stimmt etwas mit meiner SQL Anweisung nicht. Ich finde jedoch keinen Fehler. Könnt ihr mir da bitte helfen?

Vielen Dank
lg, freakXHTML
 
Zuletzt bearbeitet:
Es wird bool(false) ausgegeben. Das bedeutet, dass irgendwas mit der SQL Anweisung nicht stimmt. Ich sehe aber keinen Fehler?!

Wisst ihr weiter?
Vielen Dank

lg, freaKXHTML
 
vielleicht solltest du die Fehler auch mal ausgeben?
PHP:
$sql = 'INSERT INTO user (Benuterzname, Passwort, EMail, IPAdresse,Browser, Anmeldedatum) VALUES(?,?,?,?,?,?);';
$result = $db->prepare($sql);
if(!$result) {
    var_dump($db->error);
} else {
    $result->bind_param('sssisi', $Username, $Pasword, $EMail, $IP, $Browser, $Datum);
    if(!$result->execute()){
        var_dump($db->error);
    }
}
Gewöhn dir mal an, mit vier Leerzeichen einzurücken; das ist üblicher.
 
Hi,
aus irgendeinem Grund funktioniert nun der Datenbankzugriff. Das versteh ich nicht, aber ich danke dir trotzdem. Ich habe noch eine Frage. Ich möchte das Anmeldedatum speichern und nutze dafür time():

$Datum = time();

In der MySQL Datenbank habe ich eine Spalte, die den Typ Timestamp hat. Jedoch wird $Datum nicht eingetragen. Verwende ich den falschen Typ? Muss ich einfach INT verwenden? Doch wozu ist dann Timestamp gut?

Vielen Dank für deine gute Hilfe
lg, freakXHTML
 
Zurück
Oben