phpbar.de logo

Mailinglisten-Archive

[pear] Select-Befehl, query, getOne ?

[pear] Select-Befehl, query, getOne ?

Frank Rasche phpml at raschesweb.de
Don Feb 27 16:56:38 CET 2003


Hallo Jens,

Jens Schindler schrieb am Donnerstag, 27. Februar 2003 um 16:20:

>> [...]
>> $check = $db_object->query("SELECT uname, pwd FROM
>> authuser.nutzer WHERE (uname =
>> '".$_POST['username']."' AND pwd =
>> '".$_POST['password']."')");

>> if(DB::isError($check)) {
>>    die('Der Nutzer: '.$_POST['username'].' mit dem
>> Paßwort: '.$_POST['password'].' existiert nicht in
> <snip>

> Hier fragst du ab, ob die Datenbankverbindung einen Fehler zurückliefert.
> Macht sie natürlich nicht (falls der Server nicht gerade down ist),
> dementsprechend wird der if-Zweig auch nicht angezeigt.

Das ist nicht ganz richtig.
DB::isError($check) prüft ob die Query korrekt ist und MySQL keinen
Fehler zurückgibt.
Ob die Datenbankverbindung (connection) einen Fehler liefert, hat OP hoffentlich
schon vorher durch DB::isError($db_object) geprüft.

> Also, statt

>    if(DB::isError($check)) { [...] }

nicht statt, sondern zusätzlich auch

> nimm

>    if (!$check->numRows()) { [...] }

Nochmal:
Ein leeres Resultset gibt keinen DB-Error aus!
Du fragst mit DB::isError($check) nur ab, ob es einen MySQL-Error
gab.


HTH Frank

-- 

Website       : http://www.raschesweb.de
e-mail        : info at raschesweb.de
GPG public-key: http://www.raschesweb.de/rasche.asc
=================================================== ;-)


php::bar PHP Wiki   -   Listenarchive