Thread Gehirnverknotung dank Hashes
(12 answers)
Opened by Basti at 2012-09-07 16:13
Hallo!
Ich habe noch irgendwo einen Fehler. Noch mal kurz, was ich tue. Ich lese alle Kunden aus einer Datenbanktabelle ein. Code (perl): (dl
)
1 2 3 4 5 6 7 8 9 10 11 12 13 sub einlesen { $count = 0; $db->Sql("select * from customers"); while ($db->FetchRow()) { $customer{'customerId'} = $db->Data("kundennummer"); $customer{'street'} = $db->Data("strasse"); $customer{'streetNumber'} = $db->Data("hausnummer"); $customer{'city'} = $db->Data("ort $allCustomers{$count} = \%ddvCustomer; $count++; } return %allCustomers; } Ich denke, dass alle Kunden in den Hash %allCustomers eingelesen, da mir use Data::Dumper; Dumper(%allCustomers); sowas ausgibt: Code: (dl
)
1 $VAR1 = '127'; Gehe ich jetzt aber mit der Dereferenzierung Code (perl): (dl
)
1 2 3 4 foreach my $key (%allCustomers) { my %customer = %{ $allCustomers{$key} }; print $customer{'customerId'} . " "; } durch den Hash, bekomme ich 1234 Can't use an undefined value as a HASH reference at [die Zeile, wo das print steht] Die Kundennummer ist die Nummer des letzten Kunden in der Liste, die aus der Datenbankabfrage resultiert. Jetzt weiß ich nicht, wo mein Fehler liegt. Last edited: 2012-09-17 11:47:55 +0200 (CEST) |