phpbar.de logo

Mailinglisten-Archive

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

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

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



Das CGI Modul in Perl geht so:

# Modul aufrufen
use CGI;

# neues Objekt anlegen
$q = new CGI;

# Parameter auslesen
my $anbieter_id = $q->param(anbieter_id);


# oder wenn Du alle Parameter in ein hash %Parameter packen willst
foreach $c ($q->param) {$Parameter{$c}=$q->param($c)} 



# Im uebrigen scheinen mir die Anfuehrungszeichen nicht ganz koscher zu sein
# Wenn Du Werte an sub qq übergibst , dann mußt Du die in Tuetteln setzen
# Wenn Du aber in Perl Variablen in 'einfache Tuetteln' setzt, werden sie 
buchstaeblich aufgefaßt.
# bei
$asdf = 'lalala';
print '$asdf'
## kommt $asdf raus, und nicht "lalala"


#Vielleicht geht es ja so:
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\")");

# Und wenn du qq() nicht brauchst dann so
my $query = "INSERT INTO angebote 
(anbieter_id,art,standort,jahr,quadrat,immer,extras,preisangabe) 
VALUES 
(\"$anbieter_id\",\"$art\",\"$standort\",\"$jahr\",\"$quadrat\",\"$immer\",\
"$extras\",\"$preisangabe\")";



# mfg Thies



Gloss Mathias schrieb:  ÒAW: Perl/mySQL - INSERT INTO - Es klappt nicht...Ó.
[2000/09/20 17:02]

> Aloha,
> 
> > ----------
> > Von: 	Portal Internet GmbH[SMTP:th.barth_(at)_portal.de]
> > 
> > ich finde einfach den Fehler in dem folgenden Script nicht. Ich bekom
> me
> > 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','$extr
> as','
> > $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 
> 



-----------------------------------------
Thies Lindenthal
www.schule-im-Netz.de
Tel: 04846-69189  mobil: 0177-6112357

thies_(at)_schule-im-netz.de

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


Home | Main Index | Thread Index

php::bar PHP Wiki   -   Listenarchive