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

Variablen ersetzen: Datei einlesen uns die Variablen erstetz

Reader: 1


<< >> 6 entries, 1 page
guest Gast
 2003-09-12 12:20
#51193 #51193
Hallo,

ich habe folgendes Problem:
ich habe HTML-Quellcode in einer Textdatei gespeichert. Nun lese ich diese über Perl ein und gebe die HTML Seite aus.

Ich möchte nun innerhalt der HTML - Seite Variablen angeben,die beim Einlesen vom Skript ersetzt werden.

Bisher gint er immer nur die Variablennamen aus . z.B: $ary[0] statt den Wert. Wie kann ich das lösen?

Danke im voraus
Thomas

PS:
Quellcode bei Einlsen und ausgeben:
open(FILE,"$kopf");
@KOPFLINES=<FILE>;
close(FILE);

print "Content-type: text/html\n\n";
foreach(@KOPFLINES){
print $_;
}
renee
 2003-09-12 12:36
#51194 #51194
User since
2003-08-04
14371 articles
ModeratorIn
[Homepage] [default_avatar]
[html]<body>
_ERSETZEN_
</body>[/html]
Code: (dl )
1
2
3
4
foreach(@KOPFLINES){
$_ =~ s/_ERSETZEN_/Dies ist ein Test/g;
print $_;
}

Jetzt wird nicht mehr _ERSETZEN_ ausgegeben, sondern Dies ist ein Test...
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/
jan10001
 2003-09-12 12:38
#51195 #51195
User since
2003-08-14
962 articles
BenutzerIn
[default_avatar]
Benutze doch Templates damit geht es einfacher.
Code: (dl )
use HTML::Template


Hier mehr Infos zu Template\n\n

<!--EDIT|jan10001|1063355968-->
Dubu
 2003-09-12 12:41
#51196 #51196
User since
2003-08-04
2145 articles
ModeratorIn + EditorIn

user image
Schau dir mal CPAN:HTML::Template oder aehnliches an.

Wenn du es von Hand machen moechtest: Es ist keine gute Idee, in einem Template direkt Variablen in Perl-Syntax zu benutzen, denn das macht das Ersetzen schwieriger und nicht leichter. Man kann zwar den Text durch ein eval() jagen, um die Ersetzung zu erreichen, dabei stolpert man aber leicht ueber Quotingprobleme und oeffnet evtl. Sicherheitsluecken.

Nimm lieber ein Markup, das garantiert nicht im Template vorkommt, und verziere damit deine Variablen.

Beispiele fuer beides finden sich in anderen Threads:
http://board.perl-community.de/cgi-bin....=0;t=10
http://board.perl-community.de/cgi-bin....t=0;t=4
jan10001
 2003-09-12 13:23
#51197 #51197
User since
2003-08-14
962 articles
BenutzerIn
[default_avatar]
Er könnte auch seinen HTML Quelltext ins Script aufnehmen und diesen dann mit "print qq~" ausgeben. Dann würden die Variablen die im HTML Quelltext enthalten sind auch ordentlich ausgegeben.\n\n

<!--EDIT|jan10001|1063358704-->
renee
 2003-09-12 14:18
#51198 #51198
User since
2003-08-04
14371 articles
ModeratorIn
[Homepage] [default_avatar]
Ich mache bei vielen Sachen auch lieber eine extra HTML-Datei, damit ich das programmieren und das designen getrennt habe...
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/
<< >> 6 entries, 1 page



View all threads created 2003-09-12 12:20.