perlunity.de - PERL | JAVASCRIPT | PHP | MySQL | APACHE



#!/COMMUNITY

Members: 5374
davon online: 1
weitere User: 17
Click for quality!




12.02.2012 / 02:25

Community-Member werden   |   Paßwort vergessen   |   OnlineMonitor (1) Wer ist online ... OnlineMonitor starten !
     

 

Home


PERLscripts


PHPscripts


JAVAscripts


Hilfreiches


Links2www


Newscenter


Community


Interna




Community  »  CGI: Allgemeines Forum zur Themenübersicht Themensuche Themenansicht in Thread-Modus


BeitragZeilenumbrüche
Seitenanfang
Hallo

Ich benutze das Script von Markus Wolf für das Gästebuch. Nun werden im Text die Zeilenumbrüche aber nicht dargestellt. Es kommt immer alles in eine Reihe.
Wo liegt das Problem?

Besten Dank für die Tipps

Josef

Das zugehörige Script:

sub new {
my %FM=&parse_form() ;

###
#Eingaben prüfen
if ( !$FM{'name'} ||
!$FM{'com'} ||
(length($FM{'com'})>$max_length && $max_length>0 ) ) {
&er_form(\%FM) ;
}

###
#Eingaben bereinigen

foreach my $key (keys %FM) {
###
#Sonderzeichen
$FM{$key} =~ s/\&/\&\;/g;
$FM{$key} =~ s/"/\"\;/g;
$FM{$key} =~ s/\cM\n/<BR>/g;
$FM{$key} =~ s/\n\cM/<BR>/g;
$FM{$key} =~ s/\cM/<BR>/g;
$FM{$key} =~ s/\n/<BR>/g;
$FM{$key} =~ s/\|/\//g;

###
#Wortlänge

my @text=split(/\s+/,$FM{$key});
my $textok ;
foreach my $word (@text){
if ( length($word) > $max_word ) {

my @chars=split(//,$word) ;
my $wordout="" ;

for(my $i=0; $i<= $#chars/$max_word; $i++) {
$wordout=$wordout." ".substr($word,$i*$max_word,$max_word);
}

$textok .= "$wordout " if ($wordout) ;

} else {

$textok .= "$word " if ($word) ;
}
}

$FM{$key} = $textok;
$FM{$key} =~ s/\s+/ /g;
$FM{$key} =~ s/\s+/ /g;
$FM{$key} =~ s/^\s+//g;
$FM{$key} =~ s/\s+$//g;
}

Datum: 20.12.2005-21:06

Beitragre: Zeilenumbrüche
Seitenanfang
Hi,

versuch doch mal ein Dumper(\%FM) vor und nach der Bereinigung. Dann siehst Du, ob überhaupt irgendwas mit <br> ersetzt wird. Ich denke, daran hängt's.

Gruss,
svenXY

Datum: 22.12.2005-14:22

Beitragre: Zeilenumbrüche
Seitenanfang
Danke für den Tipp.

Aber ich kriegs nicht hin...
Kannst du mir bitte das Script mit diesem Befehl ergänzen und hier eintragen.

Mit Gruss
Josef

Datum: 22.12.2005-20:45

Beitragre: Zeilenumbrüche
Seitenanfang
Hi,
mach's doch einfach so:

print "Vor Bereinigung: $FM{$key}\n";
$FM{$key} =~ s/\&/\&\;/g;
$FM{$key} =~ s/"/\"\;/g;
$FM{$key} =~ s/\cM\n/<BR>/g;
$FM{$key} =~ s/\n\cM/<BR>/g;
$FM{$key} =~ s/\cM/<BR>/g;
$FM{$key} =~ s/\n/<BR>/g;
$FM{$key} =~ s/\|/\//g;
print "Nach Bereinigung: $FM{$key}\n\n";

Gruss,
svenXY

Datum: 23.12.2005-09:20

Beitragre: Zeilenumbrüche
Seitenanfang
Hallo

Danke Hier, das (erwartete) Resultat:

Vor Bereinigung: Test
Nach Bereinigung: Test

Vor Bereinigung: http://
Nach Bereinigung: http://

Vor Bereinigung: Zeile1Zeile2Zeile3Zeile4
Nach Bereinigung: Zeile1Zeile2Zeile3Zeile4

Ich bin am Anschlag ;-(

Josef

Datum: 23.12.2005-21:24

Beitragre: Zeilenumbrüche
Seitenanfang

Hier ist übrigens noch das ganze Script.

Ich danke schon jetzt für jeden Tipp .

Josef

#!/usr/bin/perl
############################################################################
#
# (c) Markus Wolf, 1998-2003
#
############################################################################
#
# gbook.cgi
# COPYRIGHT NOTICE
# Copyright 1998-2003 Markus Wolf
# All Rights Reserved.
# EMail: support@perlunity.de
# URL : http://www.perlunity.de
#
# gbook.cgi darf von jedermann kostenlos benutzt und geändert werden,
# solange dieser Copyright-Verweis und die restlichen Kommentare erhalten
# bleiben. Mit dem Einsatz dieses Skripts akzeptieren Sie, daß Markus Wolf
# von jeglicher Haftung und Gewährleistung hinsichtlich des Einsatzes
# befreit ist.
#
# Der Verkauf dieses Skripts, auch in modifizierter Form, ist ohne
# vorherige Absprache ausdrücklich untersagt. Mit anderen Worten: Fragen
# Sie mich, bevor Sie versuchen, mit meinem Skript Geld zu verdienen.
#
# Um dieses Skript über das Internet oder irgendein anderes Medium
# weiterzuverbreiten, benötigen Sie vorher meine Erlaubnis. In jeden
# Fall müssen der Copyright-Verweis und die restlichen Kommentare
# erhalten bleiben.
#
############################################################################
#
# - Adminmodus zum Löschen von Einträgen und Kommentarmöglichkeit
# - FileLocking
# - keine Reloadmöglichkeit
# - Eingabenpüfung
# - Design der Einträge über Templates anpassbar
# - Seitenweise Anzeige
#
###########################################################################
#
# Einbindung : http://mein.server.de/cgi-bin/gbook.cgi
# Löschenmod : http://mein.server.de/cgi-bin/gbook.cgi?func=admin
#
############################################################################

############################################################################
# Systemeinstellungen : BITTE ANPASSEN
############################################################################

#Wechsel in das aktuelle Verzeichnis
$0 =~ /^(.*)[\/\\].*/ && chdir ($1) ;

#Ausgabepuffer auschalten, Ausgabe beginnt sofort
$| = 1 ;

#Standard-Module
use CGI ;
use CGI::Carp qw(fatalsToBrowser) ;
use strict ;

#Komplette WWW-Adresse des GÄSTEBUCH-Scriptes inkl. Host
my $cgi_www="http://127.0.0.1/demo/_archiv/gast/cgi-bin/gbook/gbook.cgi" ;

#Grafikpfad-absolut (URL)
my $pic_dir="/demo/_archiv/gast/images/gbook" ;

#Titel des Gästebuches
my $title="Gästebuch - perl-archiv.de" ;

#Anzeige pro Seite (alles auf eine Seite: 100000 :-)) )
my $anzen=5 ;

#max. Länge (in Zeichen) für Gästebucheintrag (0 für keine Begrenzung)
my $max_length=200 ;

#max. Länge (in Zeichen) eines Wortes
my $max_word=40 ;

#Mail an Admin bei neuem Eintrag (1=ja/0=nein)
my $adminmail=1 ;

#Für Mailfunktion (0=Mail verschicken / 1=Mail speichern)
my $offline=1 ;

#Mailprogramm (nur Unix)
my $mailprog = "/usr/bin/sendmail" ;

#Mailempfänger
my $webmaster = "perl\@perl-archiv.de" ;

#File-Locking 0 für nein (WinXX)/1 für ja
my $lock=0 ;

#Zeitverschiebung in Stunden (-/+ möglich)
my $zeitverH=0 ;

#Paßwort für den Admin(Lösch)modus (unbedingt ändern)
my $pw = "pw" ;

############################################################################
# Hauptprogramm
############################################################################

my $query=new CGI ;
my %PARA=&parse_para() ;

if ($PARA{'func'} eq "form") {
&sign_form() ;
} elsif ($PARA{'func'} eq "new") {
&new() ;
} elsif ($PARA{'func'} eq "del") {
&del() ;
} elsif ($PARA{'func'} eq "redir") {
&redir() ;
} else {
&show() ;
}

############################################################################
# Ausgabe der Einträge
############################################################################

sub show {

my ($GUESTAMOUNT,$GUESTDATA)=&read_data() ;

$PARA{'action'} =~ s/\D//g ;
$PARA{'action'} ||= 0 ;
$PARA{'action'} = 0 if ($PARA{'action'}>$GUESTAMOUNT) ;

my $anzeige_von=$PARA{'action'} ;
my $anzan=$anzen ;
my $nocache=time ;
my ($out) ;

###
#Template laden

open (HTML , "< ./tmpl/gbook_lines.html") || die "Kann das File -./tmpl/gbook_lines.html- nicht laden : $! " ;
my @html=<HTML> ;
close(HTML) ;
my $html=join('',@html) ;

###
#Admin-Modus

if ($PARA{'func'} eq "admin") {
$out .= "<form method=\"post\" action=\"$cgi_www?func=del\">" ;
}

###
#Ausgabe der Einträge:

for my $x ($anzeige_von .. $anzeige_von+$anzan-1) {

last if ($x>=$GUESTAMOUNT) ;

my $html_tmp=$html ;
my $hp="keine Homepage" ;
my $em="keine E-Mail" ;

if ($GUESTDATA->[$x][4] =~ /http:\/\/.*\./) {
$hp="<a class=\"gb_link\" href=\"$GUESTDATA->[$x][4]\" target=\"new\">$GUESTDATA->[$x][4]</a>";
}

if ($GUESTDATA->[$x][2] =~ /.*\@.*\..*/) {
$em="<a class=\"gb_link\" href=\"mailto:$GUESTDATA->[$x][2]\">$GUESTDATA->[$x][2]</a>";
}

if ($PARA{'func'} eq "admin") {
$html_tmp =~ s/<!--admin-->/<input type=checkbox name=\"del_$GUESTDATA->[$x][0]\" value=\"1\"> /ig ;
}

if ($PARA{'func'} eq "admin") {
$html_tmp =~ s/<!--comment-->/Kommentar: <input type=text name=\"comment_$GUESTDATA->[$x][0]\" value=\"$GUESTDATA->[$x][6]\" size=50>/ig ;
}

if ($GUESTDATA->[$x][6]) {
$GUESTDATA->[$x][6]="<br>$GUESTDATA->[$x][6]<br>" ;
}

$html_tmp =~ s/<!--comment-->/$GUESTDATA->[$x][6]/ig ;
$html_tmp =~ s/<!--name-->/$GUESTDATA->[$x][1]/ig ;
$html_tmp =~ s/<!--text-->/$GUESTDATA->[$x][3]/ig ;
$html_tmp =~ s/<!--mail-->/$em/ig ;
$html_tmp =~ s/<!--www-->/$hp/ig ;
$html_tmp =~ s/<!--time-->/$GUESTDATA->[$x][5]/ig ;
$html_tmp =~ s/<!--pics-->/$pic_dir/ig ;

$out .= $html_tmp ;
}

###
#Admin-Modus

if ($PARA{'func'} eq "admin") {

$out .= qq~
<center>Paßwort: <input type=text name=pw size=10>
   
<input type=hidden value=\"$anzeige_von\" name=showid>
<input type=submit value=\"Einträge ändern/löschen\">
</form></center><br>
~ ;
}

###
#Blätteranzeige

my $anzeige_zurueck=$anzeige_von-$anzan ;
my $anzeige_weiter=$anzeige_von+$anzan ;
my $anzeige_von=$anzeige_von+1 ;
my $anzeige_bis=$anzeige_von+$anzan ;

$out .= qq(<table border=0 width=100% cellspacing=0 cellpadding=0 width=100%><tr><td>) ;

if($anzeige_zurueck >= 0) {

if ($PARA{'func'} eq "admin") {
$out .= qq(<a href="$cgi_www?func=admin&action=$anzeige_zurueck&nocache=$nocache" onmouseover="window.status='Vorherige $anzan ...';return true;" onmouseout="window.status='';return true;"><img src="$pic_dir/zurueck.gif" border=0 alt="Vorherige $anzan ..."></a>) ;
} else {
$out .= qq(<a href="$cgi_www?func=show&action=$anzeige_zurueck&nocache=$nocache" onmouseover="window.status='Vorherige $anzan ...';return true;" onmouseout="window.status='';return true;"><img src="$pic_dir/zurueck.gif" border=0 alt="Vorherige $anzan ..."></a>) ;
}

} else {

$out .= qq( ) ;
}

if ($anzeige_weiter>$GUESTAMOUNT) { $anzeige_bis=$GUESTAMOUNT ; }

$out .= qq~
</td><td align=center width=100% class=\"gb_status\"><b>$anzeige_von-$anzeige_bis \| $GUESTAMOUNT Einträge</b></td>
<td align=right>
~ ;

if($anzeige_weiter<$GUESTAMOUNT) {

if ($PARA{'func'} eq "admin") {
$out .= qq(<a href="$cgi_www?func=admin&action=$anzeige_weiter&nocache=$nocache" onmouseover="window.status='Nächste $anzan ...';return true;" onmouseout="window.status='';return true;"><img src="$pic_dir/weiter.gif" border=0 alt="Nächste $anzan ..."></a>) ;
} else {
$out .= qq(<a href="$cgi_www?func=show&action=$anzeige_weiter&nocache=$nocache" onmouseover="window.status='Nächste $anzan ...';return true;" onmouseout="window.status='';return true;"><img src="$pic_dir/weiter.gif" border=0 alt="Nächste $anzan ..."></a>) ;
}

} else {

$out .= qq( ) ;
}

$out .= qq(</td></tr></table>) ;

###
#Ausgabe

print $query->header('text/html');
print &parse_tmpl($out,$GUESTAMOUNT) ;

}

############################################################################
# Neuer Eintrag
############################################################################

sub new {

my %FM=&parse_form() ;

###
#Eingaben prüfen

if ( !$FM{'name'} ||
!$FM{'com'} ||
(length($FM{'com'})>$max_length && $max_length>0 ) ) {

&er_form(\%FM) ;
}

###
#Eingaben bereinigen

foreach my $key (keys %FM) {

###
#Sonderzeichen

$FM{$key} =~ s/\&/\&\;/g;
$FM{$key} =~ s/"/\"\;/g;
$FM{$key} =~ s/\cM\n/<BR>/g;
$FM{$key} =~ s/\n\cM/<BR>/g;
$FM{$key} =~ s/\cM/<BR>/g;
$FM{$key} =~ s/\n/<BR>/g;
$FM{$key} =~ s/\|/\//g;

###
#Wortlänge

my @text=split(/\s+/,$FM{$key});
my $textok ;

foreach my $word (@text){

if ( length($word) > $max_word ) {

my @chars=split(//,$word) ;
my $wordout="" ;

for(my $i=0; $i<= $#chars/$max_word; $i++) {
$wordout=$wordout." ".substr($word,$i*$max_word,$max_word);
}

$textok .= "$wordout " if ($wordout) ;

} else {

$textok .= "$word " if ($word) ;
}
}

$FM{$key} = $textok;
$FM{$key} =~ s/\s+/ /g;
$FM{$key} =~ s/\s+/ /g;
$FM{$key} =~ s/^\s+//g;
$FM{$key} =~ s/\s+$//g;
}

###
#Eintrag speichern

my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime(time+(3600*$zeitverH));
my $datum = sprintf "%02d.%02d.%04d - %02d:%02d" , $mday , $mon+=1 ,$year+=1900 , $hour , $min ;

open (DATNEW , ">> ./data/gbook_data.txt") || die "Kann die Datei -./data/gbook_data.txt- nicht zum Schreiben öffnen: $! " ;
flock(DATNEW,2) if ($lock==1) ;
print DATNEW time."\|$FM{'name'}\|$FM{'email'}\|$FM{'com'}\|$FM{'url'}\|$datum\|\|$ENV{'REMOTE_ADDR'}\|\n" ;
close (DATNEW) ;

###
#Adminmail verschicken

&send_mail(\%FM) if ($adminmail==1) ;

###
#Aufruf des Scripts

print $query->redirect("$cgi_www?func=show&action=0&nocache=".time) ;

}

############################################################################
# Fehlerausgabe bei nicht ausgefüllten Feldern des Formulars
############################################################################

sub er_form {

my $FM=shift ;
my $errmark=" <font color=ff0000><b>X<\/b><\/font> " ;
my $x_hinweis="Ihr müßt mindestens die mit einem $errmark markierten Felder ausfüllen." ;
my $x_name=$errmark if (!$FM->{'name'}) ;
my $x_text=$errmark if (!$FM->{'com'}) ;
my ($x_mail,$x_url) ;

###
#Länge der Eingabe prüfen

if ( $max_length>0 && length($FM->{'com'})>$max_length ) {

$x_hinweis=qq(<font color=ff0000>Maximal zulässige Länge von $max_length Zeichen überschritten!</font><br> <br>) ;
}

###
#Fehler - Form wieder ausgeben

&sign_form($x_hinweis,$x_name,$x_mail,$x_url,$x_text) ;
exit ;

}

############################################################################
# Löschen eines Eintrages im Adminmodus
############################################################################

sub del {

my %FM=&parse_form() ;

###
#Passwort prüfen und Eintrag ggf. löschen

if ($FM{'pw'} eq $pw) {

my ($GUESTAMOUNT,$GUESTDATA)=&read_data() ;
open (DAT , "> ./data/gbook_data.txt") ;
flock(DAT,2) if ($lock==1) ;
for my $x (0...$GUESTAMOUNT-1) {
unless ($FM{'del_'.$GUESTDATA->[$x][0]} == 1) {
my $c = ( exists $FM{'comment_'.$GUESTDATA->[$x][0]} ? $FM{'comment_'.$GUESTDATA->[$x][0]} : $GUESTDATA->[$x][6] ) ;
print DAT "$GUESTDATA->[$x][0]|$GUESTDATA->[$x][1]|$GUESTDATA->[$x][2]|$GUESTDATA->[$x][3]|$GUESTDATA->[$x][4]|$GUESTDATA->[$x][5]|$c|$GUESTDATA->[$x][7]|\n" ;
}
} close(DAT) ;
}

###
#Für den Fall, dass das Script einfach mit DEL aufgerufen wird

$FM{'showid'}=0 if (!$FM{'showid'}) ;

###
#Aufruf des Scripts

print $query->redirect("$cgi_www?func=show&action=$FM{'showid'}&nocache=".time) ;

}

#############################################################################
#Ausgabe des Eintragsformulares
#############################################################################

sub sign_form {

my ($x_hinweis,$x_name,$x_mail,$x_url,$x_text)=@_ ;
my ($GUESTAMOUNT)=&read_data() ;
my %FM=&parse_form() ;
my ($out) ;

###
#Eingaben verarbeiten

$FM{'url'}="http://" unless ($FM{'url'}) ;
$FM{'com'} =~ s/\n//g ;

###
#Form aufbauen

$out = qq~
<form name="mail" method=POST action="$cgi_www?func=new">
<table border=0 cellspacing=3>
~ ;

if ($x_hinweis) {

$out .= qq~
<tr>
<td bgcolor="#f9f9f9"><br><font color="#ff0000"> Fehler:</font><br> <br></td>
<td> </td>
<td>$x_hinweis</td>
</tr>
~ ;
}

$out .= qq~

<tr>
<td bgcolor="#f9f9f9"> Name:</td>
<td>$x_name</td>
<td><input type=text name="name" size=44 maxlength=140 value="$FM{'name'}"></td>
</tr>
<tr>
<td bgcolor="#f9f9f9"> E-Mail:</td>
<td>$x_mail</td>
<td><input type=text name="email" size=44 maxlength=140 value="$FM{'email'}"></td>
</tr>
<tr>
<td valign=top bgcolor="#f9f9f9"> Text:<br><img src="$pic_dir/trenner.gif" border=0 width=120 height=1></td>
<td valign=top>$x_text</td>
<td><textarea name="com" rows=10 cols=33 wrap=virtual>$FM{'com'}</textarea><br></td>
</tr>
<tr>
<td bgcolor="#f9f9f9"> Homepage:</td>
<td>$x_url</td>
<td><input type=text name="url" value="$FM{'url'}" size=44 maxlength=140></td>
</tr>
<tr>
<td bgcolor="#f9f9f9"><img src="$pic_dir/trenner.gif" border=0 width=120 height=1></td>
<td> </td>
<td><br><br><input type=submit value="Ins Gästebuch eintragen ..."></td>
</tr>
</table>
</form>

~ ;

###
#Ausgabe

print $query->header('text/html') ;
print &parse_tmpl($out,$GUESTAMOUNT) ;

}

#############################################################################
# Umleitung der DD-Liste, wenn Javascript nicht funktioniert
#############################################################################

sub redir {

my %FM=&parse_form() ;

###
#Seite anzeigen

print $query->redirect( ( $FM{'links'} || $cgi_www ) ) ;

}

############################################################################
# Datendatei einlesen
############################################################################

sub read_data {

my @guest ;
my $guests=0 ;

###
#Daten einlesen

open (DAT , "< ./data/gbook_data.txt") || die "Kann das File -./data/gbook_data.txt- nicht öffnen: $! " ;
while ( my @data=split(/\|/,<DAT>) ) {
push ( @guest , [@data] ) ;
} close(DAT) ;

###
#Umkehrung der Reihenfolge

@guest=reverse @guest if ($PARA{'func'} ne "del") ;
$guests = $#guest+1 ;

###
#Rückgabe

return($guests,\@guest) ;

}

############################################################################
# TMPL verabeiten
############################################################################

sub parse_tmpl {

my ($in,$dd)=@_ ;
my ($ix2,$ix3) ;
my $nocache=time ;

###
#Template laden

open (HTML , "< ./tmpl/gbook_main.html") || die "Kann das File -./tmpl/gbook_main.html- nicht laden : $! " ;
my @tmpl=<HTML> ;
close(HTML) ;
my $tmpl = join('',@tmpl) ;

###
#DDliste

my $ddout=qq~
<select name="links" size=1 OnChange="jump(this.options[this.selectedIndex].value)">
<option value="$cgi_www?func=show&action=0&nocache=$nocache">Eintrag ...</option>
~ ;

for (my $ix=1 ; $ix <= $dd ; $ix+=$anzen) {

$ix2+=$anzen ;
$ix3=$ix-1 ;
$ix2=$dd if ($ix2 > $dd) ;
$ddout .= qq(<option value="$cgi_www?func=show&action=$ix3&nocache=$nocache">$ix - $ix2</option>\n) ;
}

###
#Werte einsetzen

$tmpl =~ s/\[PART:main\]/$in/ ;
$tmpl =~ s/\[PART:ddlist\]/$ddout<\/select>/ ;
$tmpl =~ s/\[PART:title\]/$title/g ;
$tmpl =~ s/\[PART:imagedir\]/$pic_dir/g ;

###
#Rückgabe

return($tmpl) ;

}

############################################################################
# Admin-Mail verschicken
############################################################################

sub send_mail {

my ($FM)=@_ ;

###
#Online/Offline

if($offline==1) {
open(MAIL,"> ./temp/mail.txt") ;
} else {
open(MAIL,"|$mailprog -t") ;
}

###
#Mail verschicken/speichern

print MAIL "To: $webmaster\n";
print MAIL "From: $FM->{'email'} ($FM->{'name'})\n";
print MAIL "Subject: neuer Gaestebuch-Eintrag\n\n";
print MAIL "---------------------------------------------------------------------------\n";
print MAIL "Name : $FM->{'name'}\n";
print MAIL "Mail : $FM->{'email'}\n";
print MAIL "URL : $FM->{'url'}\n";
print MAIL "---------------------------------------------------------------------------\n";
print MAIL "\n$FM->{'com'}\n\n";
print MAIL "---------------------------------------------------------------------------\n";
print MAIL "Browser: $ENV{'HTTP_USER_AGENT'}\n";
print MAIL "IP: $ENV{'REMOTE_ADDR'}\n";
print MAIL "---------------------------------------------------------------------------\n";

###
#Mail-Ende

close (MAIL) ;

}

############################################################################
# GET-Parameter auslesen und Umlaute/Sonderzeichen konvertieren
############################################################################

sub parse_para {

my %PARA ;

###
#Werte decodieren

foreach ( split(/\&/ , $ENV{'QUERY_STRING'}) ) {

my ($feldname,$wert) = split(/=/) ;
$feldname =~ s/\W//g ;

$PARA{$feldname} = $wert ;
$PARA{$feldname} =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg ;
$PARA{$feldname} =~ tr/\+/ / ;
$PARA{$feldname} =~ s/\W/ /g ;
}

###
#Rückgabe

return(%PARA) ;

}

############################################################################
# POST-Formular auslesen und Umlaute/Sonderzeichen umwandeln
############################################################################

sub parse_form {

my %FM ;

###
#Werte verarbeiten

foreach my $fname ( $query->param ) {

$FM{$fname} = $query->param($fname) ;

$FM{$fname} =~ s/<([^>]|\n)*>/ /g;
$FM{$fname} =~ s/\|/\//g;
$FM{$fname} =~ s/\cM\n//g;
$FM{$fname} =~ s/\n\cM//g;
$FM{$fname} =~ s/\cM//g;
$FM{$fname} =~ s/\s+/ /g;
$FM{$fname} =~ s/^\s+//g;
$FM{$fname} =~ s/\s+$//g;
}

###
#Rückgabe

return(%FM) ;

}

#############################################################################
# ENDE
#############################################################################

Datum: 23.12.2005-21:38

Beitragre: Zeilenumbrüche
Seitenanfang
Hat diesen Fehler vielleicht schon jemand behoben? Ich habe nämlich das selbe Problem und habe von dem ganzen "CGI" keinen Plan.

Bin schon froh wenn ich die Skripte installiert bekomme. Für eine Antwort wäre ich sehr dankbar.

Datum: 05.01.2006-12:00

-






-
-