phpbar.de logo

Mailinglisten-Archive

AW: Perl/mySQL - INSERT INTO - Es klappt nicht...
Archiv Mailingliste mysql-de

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

AW: Perl/mySQL - INSERT INTO - Es klappt nicht...



Aloha,

> ----------
> Von: 	Portal Internet GmbH[SMTP:th.barth_(at)_portal.de]
> 
> ich finde einfach den Fehler in dem folgenden Script nicht. Ich bekomme
> wieder eine Server Fehler Meldung.
> 
> use CGI qw(:standard);
> 
Ich kenn ja das Modul CGI nur vom Namen her, weil mir das zu maechtig
ist um Uebergabevariablen zu extrahieren....

> my ($anbieter_id) = (param('anbieter_id'));
> 
Aber ich denke, hier ist der Hund begraben. Das ist auf jeden Fall
kein gültiges Perl-Konstrukt. Ich VERMUTE, dass das Modul
CGI die Uebergabeparameter als Hash zurueckgibt. Dann muesste
das heissen :

my $anbieter_id = $param{'anbieter_id'};
(die erste Klammer nach my ist uebrigens ueberfluessig)

Zum Test, ob alle uebertragene Variablen richtig ankommen wuerde ich
folgendes 

> my ($sth) = $dbh->prepare (qq{
>   INSERT INTO angebote
> (anbieter_id,art,standort,jahr,quadrat,immer,extras,preisangabe)
>   VALUES
> ('$anbieter_id','$art','$standort','$jahr','$quadrat','$immer','$extras','
> $p
> reisangabe')});
> 
mit folgendem ersetzen:

my $query = qq( INSERT INTO angebote 
	(anbieter_id,art,standort,jahr,quadrat,immer,extras,preisangabe)
	 VALUES
('$anbieter_id','$art','$standort','$jahr','$quadrat','$immer','$extras',
	'$preisangabe');
(Soweit mir duenkt, muss man nach qq eine runde Klammer setzen ...)
dann 
print "QUERY: $query<br>\n";
und ausfuehern
my $sth = $dbh->prepare($query);
$sth->execute;

Wenn bei query schon nix gescheites rauskommt, fehlten die uebergebenen
Werte.
Wenn immer noch Server Error kommt, hast du noch ein paar Fehler in dem
Script,
die ich nicht auf anhieb gefunden habe ;)

Gruesse, Mathias


---
*** Weitere Infos zur Mailingliste und MySQL unter www.4t2.com/mysql 


Home | Main Index | Thread Index

php::bar PHP Wiki   -   Listenarchive