Thread SELECT Ergebnis als String klappt nicht (5 answers)
Opened by rk-ger at 2007-01-29 23:21

renee
 2007-01-30 08:50
#35146 #35146
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Code: (dl )
1
2
3
4
5
  foreach my $row ($sth->fetchrow_arrayref()){
print ".HIER\n";
$var1 = join("|",@row);
print "$var1\n";
}


Was Du hier machst:

Code: (dl )
  foreach my $row ($sth->fetchrow_arrayref()){

Du willst über alle Elemente der Liste iterieren, die $sth->fetchrow_arrayref liefert. Da Du immer nur eine Zeile anforderst bei dem Aufruf, bekommst Du nur ein Element zurück (deswegen muss die while-Schleife verwendet werden - wie von MartinR gezeigt). Die Arrayreferenz speicherst Du in dem SCALAR $row.

Das print ist klar...

Code: (dl )
       $var1 = join("|",@row);


Du speicherst in $var einen String, der aus allen Elementen des ARRAYs @row zusammengesetzt ist (mit jeweils eineim | zwischen den Elementen). Auch wenn Du den gleichen "Namen" verwendest, sind doch SCALAR und ARRAY etwas komplett unterschiedliches...

Wie ptk schon anmerkte, solltest Du Wiki:[tt]use strict[/tt] verwenden...
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/

View full thread SELECT Ergebnis als String klappt nicht