selfhtml.de - Alles für den Webmaster!

 

Empfehlung:

wix.com

Kostenlose Homepage

Besuchen Sie auch:

Jobs:

Datenbankabfrage mittels Variable

Autor: fuechsin
Datum: 14.02.2010 20:38:12

Hallo,

vorweg muss ich sagen, dass mein Wissen über Perl bisher sehr begrenzt ist.

Also ich habe ein Skript gebastelt, welches ein kleine Eingabefeld zur Verfügung stellt. In diesem Eingabefeld wird dann ein Wert eingegeben, auf Grund dessen wird eine Datenbankanfrage gestellt und der Name zu dem Wert herausgesucht.

Meine Abfrage sieht dann folgendermaßen aus:
my $sth = $dbh->prepare ("SELECT name FROM lxotest.public.customer WHERE customernumber='$wert';");
$sth->execute();
my $kundenname = $sth->fetchrow_array;

Das ganze funktioniert auch wunderbar. In $kundenname steht das drin was drinstehen sollte :)

Mache ich aber um das Ganze eine if-Abfrage, die abfragt ob es sich bei $wert um eine Zahl handelt, dann kommt kein Ergebnis aus der DB zurück weil $wert dann leer ist.

if($wert=~ /^[+-]?d+$/){
my $sth = $dbh->prepare ("SELECT name FROM lxotest.public.customer WHERE customernumber='$wert';");
$sth->execute();
my $kundenname = $sth->fetchrow_array;
}


Wie kann es also sein, dass wenn ich eine if-Abfrage um meine DB-Anfrage baue, die Variable leer ist? Falls es wichtig sein sollte es handelt sich um eine Postgressql DB (8.3)

Lg fuechsin