Bademeister: scheitere an der benutzung von 'mysql_num_rows'

Beitrag lesen

Vielen Dank euch allen,
habe das 'or die' weggelassen und das script funktioniert prima.
Auch wenn mir nicht ganz klar ist warum. Habe diese 'or die(mysql_error)'-konstruktion sonst immer benutzt und auch schon x-fach in diversen tutorials etc gelesen. Die bricht doch einfach nur das script ab und gibt den entsprechenden mysql-fehler aus, falls die anfrage aus irgendeinem Grund nicht ausgeführt wird, oder?
Werde es jetzt bei dieser Methode belassen, das script wird nur inhouse benutzt und im schlimmsten BUMM-fall taucht ein eintrag an anderer stelle doppelt auf.

Danke,
Paco

Hi Paco,
wie jetzt oben bereits diskutiert:
der entscheidende Unterschied sind die Klammern.

$result = ($a or $b);

wertet den Ausdruck ($a or $b) aus, der ist TRUE, und das wird an $result uebergeben.

$result = $a or $b;

hingegen ist das, was wohl in den Tutorials steht, die Du meintest. Die Hierarchie ist hier anders - das ist gleichbedeutend mit
($result = $a) or $b;

d.h. $result wird der Wert von $a zugewiesen, und wenn $a != 0 ist, dann ist "or" zufrieden und gibt TRUE zurueck (was aber keinen interessiert, weil das Ergebnis von "or" nicht ausgewertet wird).

Lies Dir mal das hier durch, das wird Dich erhellen ;-)

Viele Gruesse,
der Bademeister