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

HTML::Template & DBI



<< >> 8 Einträge, 1 Seite
pktm
 2004-12-29 22:38
#629 #629
User since
2003-08-07
2921 Artikel
BenutzerIn
[Homepage]
user image
Ja, ich habe mich dazu durchgerungen mein CMS mit einer Datenbank und HTML::Template umzusetzen.
Doch da gibt es einen kleinen Fehler, wenn ich versuche Templates aus meiner Datenbank zu lesen.
Das mache ich so:
Code: (dl )
1
2
3
4
my $sth = $dbh->prepare($get_login_form)          || die $dbh->errstr;
unless( my $rv = $sth->execute ){ die "Konnte login_form nicht aus Datenbank lesen"; }
$template->param( "inhalt" => join"",@$sth->fetchrow_arrayref() );
$sth->finish();

Ich würde hier gerne dem Platzhalter "inhalt" das ergebnis meiner SQL-Abfrage zuordnen.
Aber da kommt die irgendwie paradoxe Fehlermeldung:
"[Mon Dec 29 21:45:42 2003] cmsadmin.cgi: Not an ARRAY reference at cmsadmin.cgi line 96."
zurück.
Aber fetschrow_arrayref gibt bei mir irgendwie ein Array zurück.
Woran könnte das liegen?
Wie kann man sowas beheben / umgehen?
mgf pktm
http://www.intergastro-service.de (mein erstes CMS :) )
renee
 2004-12-30 00:01
#630 #630
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Probier's mal so:
Code: (dl )
1
2
3
4
5
6
my $sth = $dbh->prepare($get_login_form) || die $dbh->errstr;
if( my $rv = $sth->execute ){
 $template->param( "inhalt" => (join"",$sth->fetchrow_array()) );
}
else{ die "Konnte login_form nicht aus Datenbank lesen"; }
$sth->finish();
\n\n

<!--EDIT|renee|1072735321-->
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
pktm
 2004-12-30 00:12
#631 #631
User since
2003-08-07
2921 Artikel
BenutzerIn
[Homepage]
user image
Thx!
Unterliegt es der Willkür ob perl Arrayreferenzen mit @$ oder (Arraykontext) erkennt oder wie ist das?
http://www.intergastro-service.de (mein erstes CMS :) )
esskar
 2004-12-30 00:21
#632 #632
User since
2003-08-04
7321 Artikel
ModeratorIn

user image
Code: (dl )
@{$sth->fetchrow_arrayref()}
pktm
 2004-12-30 01:32
#633 #633
User since
2003-08-07
2921 Artikel
BenutzerIn
[Homepage]
user image
Bedeutet das ja? :D
http://www.intergastro-service.de (mein erstes CMS :) )
pq
 2004-12-30 01:53
#634 #634
User since
2003-08-04
12208 Artikel
Admin1
[Homepage]
user image
nein, das bedeutet, du hast falsch dereferenziert
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem
pktm
 2004-12-30 02:40
#635 #635
User since
2003-08-07
2921 Artikel
BenutzerIn
[Homepage]
user image
Hm, irgendwie sehe ich keinen Unterschied zwischen @{$ref} und @$ref.
Wo kann man sowas denn nachschlagen?
Also so, dass ich es auch verstehe, somit nicht in perldoc perlref ;)
Edit: Typo\n\n

<!--EDIT|pktm|1072744838-->
http://www.intergastro-service.de (mein erstes CMS :) )
esskar
 2004-12-30 03:17
#636 #636
User since
2003-08-04
7321 Artikel
ModeratorIn

user image
zwischen @$ref und @{$ref} besteht auch kein unterschied...

$obj->getref() ist jedoch was zusammengesetztes...
das weiß der @ operator jedoch nicht...
@ bindet $obj stärker als ->
deswegen die {}-Klammern...
ich benutz übrigens immer die {} klammern...
auch im $ref fall...
damit bin ich immer auf der sichern seite
<< >> 8 Einträge, 1 Seite



View all threads created 2004-12-29 22:38.