Hallo,
ich experementiere zur Zeit ein wenig mit Prepared Statements rum. Mir ist die Funktionsweise klar und "einfache" Statements funktionieren auch. Nur wenn ich SQL-Funktionen ins Spiel bringe, bekomme ich kein Result zurück.
Beispiel:
Leider bekomme ich immer 0 Treffer zurück. Um Fehler in der Anbindung aususchließen, habe ich folgendes Probiert:
Richtigerweise bekomme ich dann genau 1 treffer zurück. Um fehler in der SQL Syntax oder im Passwort auszuschließen habe ich folgendes Statement über phpMyAdmin (SQL-Feld) ausgeführt:
Und auch hier bekam ich richtigerweise ein Treffer zurück. Es muss also mit der mit der Funktion PASSWORD() im SQL Statement im Zusammenhang mit Prepared Statements zu tun haben.
Leider konnte ich zu diesem Problem nichts im Handbuch oder im Web finden. Wäre für jeden Tipp dankbar.
Mit freundlichen Grüßen
typolos
ich experementiere zur Zeit ein wenig mit Prepared Statements rum. Mir ist die Funktionsweise klar und "einfache" Statements funktionieren auch. Nur wenn ich SQL-Funktionen ins Spiel bringe, bekomme ich kein Result zurück.
Beispiel:
PHP-Code:
...
$sql = "Select * From tbl_user
where fld_user_name Like :username
And fld_user_password = PASSWORD(:lwd)
And fld_delete = 0
Order by fld_user_name";
$this->stmnt = $this->objDb->prepare($sql);
$this->stmnt->bindParam(':username', 'test');
$this->stmnt->bindParam(':lwd', 'test');
$dbResult = $this->stmnt->fetchAll();
...
PHP-Code:
...
$sql = "Select * From tbl_user
where fld_user_name Like :username
And fld_delete = 0
Order by fld_user_name";
$this->stmnt = $this->objDb->prepare($sql);
$this->stmnt->bindParam(':username', 'test');
$dbResult = $this->stmnt->fetchAll();
...
PHP-Code:
Select * From tbl_user
where fld_user_name Like 'test'
And fld_user_password = PASSWORD('test')
And fld_delete = 0
Order by fld_user_name
Leider konnte ich zu diesem Problem nichts im Handbuch oder im Web finden. Wäre für jeden Tipp dankbar.
Mit freundlichen Grüßen
typolos
Kommentar