Thread MySQL Ausgabe als Link mit Tabellenverknüpfung
(18 answers)
Opened by Tobax at 2013-03-19 12:33
Problem 1: Du übernimmst in der sub bei der Zuweisung
$kunden_id = @_; nicht den ersten Wert der übergebenen Parameter sondern die Anzahl der Parameter, weil $kunden_id einen skalaren Kontext erzwingt. Stattdessen muss du ($kunden_id) = @_; verwenden, die Klammer erzeugt Listenkontext und damit übernimmt $kunden_id den ersten Listenwert. //EDIT: Das Übernehmen eines Parameters der sub in die Variable hätte geklappt wenn du shift vewendest hättest. Also so: Code: (dl
)
$kunden_id = shift @_; oder kurz: Code: (dl
)
$kunden_id = shift; Problem 2: $query_kdsys = "select ID from tb_systeme where ID='@_'"; ist nicht sinnvoll. Dort gehört ein Parameter hinein und aus Sicherheitsgründen solltest du Platzhalter vewenden wie in DbiPlatzhalter beschrieben. Damit muss dann aber auch im excute der Parameter angegeben werden, der den Platzhalter ersetzt. Dein Code: Code (perl): (dl
)
1 2 3 4 $kunden_id = @_; $query_kdsys = "select ID from tb_systeme where ID='@_'"; $statement = $dbh->prepare($query_kdsys); $statement->execute(); das von mir korrigierte: Code (perl): (dl
)
1 2 3 4 ($kunden_id) = @_; $query_kdsys = "select ID from tb_systeme where ID=?"; $statement = $dbh->prepare($query_kdsys); $statement->execute($kunden_id); Vergleich mal beide und frag dann weiter bei Nichtverstehen. ;) Last edited: 2013-03-26 08:55:20 +0100 (CET) |