Gibt es in Perl eine Funktion mit der ich entweder gleich überprüfen kann, ob da überhaupt was von der DB zurückkam oder wieviel? Sowas wie mysql_num_rows. Mein "Perl in a Nutshell" gibt das leider nicht her. Oder ich habs bisher net gefunden.
perldoc DBI (bzw. die HTML doku auf deinem Rechner oder entsprechende Seiten Online)
Die Methode heißt rows, wobei aber:
(aus http://www.oreilly.de/catalog/perldbiger/chapter/
Das Ergebnis dieser Methode ist die Anzahl der Zeilen, die vom letzten Kommando zur Änderung der Datenbank betroffen waren. Die Zahl -1 signalisiert, daß dieser Wert nicht bekannt ist.
Im allgemeinen kann man sich auf diesen Wert nur verlassen, wenn das durchgeführte Kommando kein SELECT-Kommando war. Normalerweise setzen nur Kommandos zur Änderung der Datenbank, wie UPDATE oder DELETE, einen sinnvollen Wert.
Bei SELECT-Queries ist es im allgemeinen nicht möglich, die Anzahl der Zeilen in der Ergebnistabelle vorher zu bestimmen. Die einzige verläßliche Möglichkeit besteht darin, die Tabelle zu lesen und die Zeilen zu zählen. Aus diesem Grund übergeben einige Treiber an dieser Stelle die Zeilennummer der Ergebnistabelle oder den Wert -1. Deshalb raten wir davon ab, die Methode rows oder die Variable $DBI::rows mit SELECT-Abfragen zu verwenden.
Eine bessere Methode ist es, die Datenbank durch ein explizites SELECT COUNT(*) FROM ... die Zeilen zählen zu lassen, wobei man dieselbe WHERE-Klausel verwendet wie für den nachfolgenden Abruf der Daten.
Struppi.
Javascript ist toll (Perl auch!)