Schrift
Wiki:Tipp zum Debugging: use Data::Dumper; local $Data::Dumper::Useqq = 1; print Dumper \@var;
[thread]3617[/thread]

mysql: wert in variable



<< >> 6 Einträge, 1 Seite
Strazke
 2005-09-13 20:53
#33541 #33541
User since
2005-07-11
120 Artikel
BenutzerIn
[default_avatar]
Hallo, ich habe verstehe aus der Beschreibung von DBI nicht, wie ich an einen speziellen Wert komme. Zum beispiel kann ich mir alle Tabellen ausgeben lassen, aber wenn ich nun folgendes mache:
Code: (dl )
my $sth = $dbh->prepare('select passwort from members where nickname="root"');


Dann bekomme ich nur einen Hash zurück. Wie komme ich jetzt aber an das passwort?
Strazke
 2005-09-13 21:42
#33542 #33542
User since
2005-07-11
120 Artikel
BenutzerIn
[default_avatar]
Oder ist es besser, das mit use Mysql zu machen?
esskar
 2005-09-13 22:06
#33543 #33543
User since
2003-08-04
7321 Artikel
ModeratorIn

user image
Code: (dl )
1
2
my $rv = $sth->execute;
my $hash_ref = $sth->fetchrow_hashref;
Strazke
 2005-09-13 22:36
#33544 #33544
User since
2005-07-11
120 Artikel
BenutzerIn
[default_avatar]
sry, aber rv is bei mir 1 und hash_ref enthält HASH(0x8f25e20).
Soll ich direkt auf die Speicherstelle zugreifen oder wie soll ich an "passwort" kommen?
Strat
 2005-09-13 22:49
#33545 #33545
User since
2003-08-04
5246 Artikel
ModeratorIn
[Homepage] [default_avatar]
dann haettest du die doku weiterlesen oder mal einen blick auf meine HP -> Perl -> Tips&Tricks -> Perl-Enhanced -> MySql mit DBI werfen sollen...

nebenbei: HASH(0x.....) steht fuer eine Hashreferenz... lies dir z.B. mal meine "Einfuehrung in Perl" durch, da habe ich was zu hashreferenzen geschrieben...

wenn du nur eine zeile aus einer tabelle brauchst, kannst du auch mit selectrow_array:
Code: (dl )
1
2
3
my $sql = "SELECT passwort from members where nickname='root'";
my ($password) = $dbh->selectrow_array($sql);
defined ($password) or die "Error in sql: $DBI::errstr\nSql: $sql\n";


Wenn du anstelle von "root" 'root' verwendest, dann wird dein SQL portabler (manche server verstehen "root" naemlich nicht)
perl -le "s::*erlco'unaty.'.dk':e,y;*kn:ai;penmic;;print"
http://www.fabiani.net/
vayu
 2005-09-14 15:57
#33546 #33546
User since
2005-01-13
782 Artikel
BenutzerIn
[default_avatar]
/edit: war bullshit was ich geschrieben hab -.-\n\n

<!--EDIT|vayu|1126699092-->
<< >> 6 Einträge, 1 Seite



View all threads created 2005-09-13 20:53.