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

ein paar fragen - hilfe :/: njaa perl halt ^^ (Seite 4)



<< |< 1 2 3 4 5 >| >> 47 Einträge, 5 Seiten
renee
 2005-07-13 22:12
#5199 #5199
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#!/usr/bin/perl -w
use strict;
use CGI;
use CGI::Carp qw(fatalsToBrowser);


my $cgi = CGI->new();
print $cgi->header();

unless($cgi->param('id')){
print "<html><head><title>Logfile </title></head><body>\n";
print "<form action =\"/cgi-bin/comments.pl\" method=\"post\">\n";
print "<p><b> Logfilename eingeben </b> <br> \n";
print " <p> <input name =\"Logfilename\" size = \"40\" > </p> \n",
"<p> <input type='hidden' name =\"id\" value='1' > </p> \n";
print "<p> <input type = \"submit\" value = \"Ok\" > </p> \n";
print "</form>\n";
print "</body></html>\n";
exit(0);
}

my $a = "logfile-accesspoint-1.txt";
my $b = "logfile-accesspoint-2.txt";

my $file= $cgi->param("Logfilename");

if($file eq $a) {
logfile($a);
}
elsif($file eq $b) {
logfile($b);
}

sub logfile {
my ($file) = @_;
open(LOGFILE1, "<$file") or die "kann $f nicht oeffnen: $!\n";
while(<LOGFILE1>) {
print;
}
close LOGFILE1;
}


*) Der Vergleichsoperator bei Strings ist eq
*) Man sollte immer versuchen, Dinge zusammenzufassen (wie hier die Subroutine)
*) Du musst ne Fallunterscheidung machen, ob das Formular abgesendet wurde oder ob das Formular angezeigt werden soll
*) Du solltest Dir im Wiki nochmal den Artikel zum Thema "use strict" durchlesen...
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/
Derunwissende
 2005-07-14 19:34
#5200 #5200
User since
2005-07-05
20 Artikel
BenutzerIn
[default_avatar]
hm..und wie krieg ich nun das ganze dazu es auf ne html-seite auszugeben ?
renee
 2005-07-14 22:19
#5201 #5201
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
*Was* soll auf ne HTML-Seite?? Du musst schon mehr Informationen geben, wenn wir Dir helfen sollen...

Die Datei wird im Moment einfach ausgegeben...
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/
Derunwissende
 2005-07-14 22:53
#5202 #5202
User since
2005-07-05
20 Artikel
BenutzerIn
[default_avatar]
Ich soll ein programm schreiben, wo man auf ner html-seite auswählen kann ob man die datei logfile-accesspoint-1.txt oder logfile-accesspoint-2.txt sehen will und dann wenn man sich für eine entscheidet wird die dann auf ner html seite ausgegeben <: ! Zwischendrinn sollte ich noch alle Leerzeilen löschen <: ..deswegen wollt ich noch so nebenbei fragen wie man was aus ner datei löscht ?

mfg
renee
 2005-07-14 23:10
#5203 #5203
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Wenn das einfacher Text ist und Du das in HTML ausgibst, dann werden die Leerzeilen nicht angezeigt...

Skript:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
#!/usr/bin/perl -w
use strict;
use CGI;
use CGI::Carp qw(fatalsToBrowser);


my $cgi = CGI->new();
print $cgi->header();

unless($cgi->param('id')){
print qq~<html><head><title>Logfile </title></head><body>
<form action ="/cgi-bin/comments.pl" method="post">
<p><b> Logfilename eingeben </b> <br>
<p><select name="Logfilename"><option>logfile-accesspoint-1.txt</option>
<option>logfile-accesspoint-2.txt</option></select> <br>
<p> <input type='hidden' name ="id" value='1' > </p>
<p> <input type="submit" value="Ok" > </p>
</form>
</body></html>~;
exit(0);
}

my $a = "logfile-accesspoint-1.txt";
my $b = "logfile-accesspoint-2.txt";

my $file= $cgi->param("Logfilename");

if($file eq $a) {
logfile($a);
}
elsif($file eq $b) {
logfile($b);
}

sub logfile {
my ($file) = @_;
open(LOGFILE1, "<$file") or die "kann $f nicht oeffnen: $!\n";
while(<LOGFILE1>) {
next if(/^\s*?$/); # überspringe Leerzeilen... (für Reguläre Ausdrücke siehe perldoc perlre)
print;
}
close LOGFILE1;
}
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/
pq
 2005-07-15 00:44
#5204 #5204
User since
2003-08-04
12208 Artikel
Admin1
[Homepage]
user image
vielleicht noch ein HTML::Entities::escape_entities dazu... ich muss auch so ein
logfile-script benutzen, welches sachen in <> tags dann nicht anzeigt.
nervig, sowas...
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
Crian
 2005-07-15 17:19
#5205 #5205
User since
2003-08-04
5866 Artikel
ModeratorIn
[Homepage]
user image
[quote=Derunwissende,13.07.2005, 20:06]jo use CGi::Carp qw(fatalsToBrowser); gehört meines wissen nach ^^[/quote]

nein

use CGI::Carp qw(fatalsToBrowser);\n\n

<!--EDIT|Crian|1121433681-->
s--Pevna-;s.([a-z]).chr((ord($1)-84)%26+97).gee; s^([A-Z])^chr((ord($1)-52)%26+65)^gee;print;

use strict; use warnings; Link zu meiner Perlseite
Derunwissende
 2005-07-16 18:35
#5206 #5206
User since
2005-07-05
20 Artikel
BenutzerIn
[default_avatar]
jo schon klar, crian <:

zur zeit wird bei dem programm irgendwie noch nicht viel ausgegeben..wenn ich das programm angucken möchte wird einfach alles im browser ausgegebn, also, der ganze perl code ^^..wird das mit dem HTML::Entities::escape_entities bereinigt ? [kann zur zeit nicht testen - hab perl hier nicht installiert ]

mfg
Merlin
 2005-07-18 10:14
#5207 #5207
User since
2005-06-06
63 Artikel
BenutzerIn
[default_avatar]
Verwendest du eigendlich einen webserver um das skript auszuführen?
perldoc is your answer
renee
 2005-07-18 10:45
#5208 #5208
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Und ist auch die Endung als cgi-script per AddHandler eingestellt?
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/
<< |< 1 2 3 4 5 >| >> 47 Einträge, 5 Seiten



View all threads created 2005-07-05 21:49.