URGENT! Was mache ich falsch??!!
Divi
- cgi
0 Felix Schwarz0 Divi
Halllooo!
Ich krieg‚s einfach nicht hin mit dem "Daten in Dateien schreiben":
das Arbeiten mit Markierungen, wobei die Markierung + Text ÜBERSCHRIEBEN werden soll.
Aus einem (funktionierenden!) Script abgekupfert, bei mir klapt‚s nicht.
So sieht der Teil aus:
open(GO, ">../../APP/pl.html");
foreach $line (@lines)
{
if ($line =~ /<!--number-->/)
{
print GO "<!--number--><B><BIG>$i</I></BIG></B>\n";
}
{
print GO $line;
}
}
close(GO);
Anstatt nun die entsprechende Zeile
<!--number--><B><BIG>0i</I></BIG></B>
in meiner html-Datei komplett zu überschreiben, schreibt sich die Markierung neu rein + Text neu rein.
Mit jeder weiteren Eingabe potentiert sich das ganze dann.
Lasse ich (print ..... <!--number-->) weg, schreiben sich die Zahlen oben oder unten drüber/drunter.
Bitte helft mir, ich plag mich nun schon soo lange damit rum, bzw. bleibe immer wieder an dieser Stelle stecken.
Danke im Voraus (in der Hoffnung daß Hilfe kommt!!)
Divi
Hi.
open(GO, ">../../APP/pl.html");
or die "Datei konnte nicht zum Schreiben geöffnet werden! $!\n";
wäre angebracht.
foreach $line (@lines)
in @lines sind alle Zeilen korrekt vorhanden? (nur Verständnisfrage, wird wohl so sein)
hier liegt das Problem:
»» if ($line =~ /<!--number-->/)
»» {
»» print GO "<!--number--><B><BIG>$i</I></BIG></B>\n";
»» }
»» {
»» print GO $line;
»» }
es soll wohl eine if-else-Konstruktion werden, oder?
Dann musst Du aber auch das else erwähnen und nicht nur einen neuen Block eröffnen, also:i
if ($line =~ /<!--number-->/)
{ (...) }
else { print GO $line; }
»» print GO "<!--number--><B><BIG>$i</I></BIG></B>\n";
Du bist sicher, dass hier noch mal das Muster kommen soll?
(Ich kenn deinen Script-Aufbau nicht, aber das könnte u.U. Seiteneffekte haben)
fs
Hi Felix,
danke, daß Du Dir die Zeit genommen hast!
Es war das "else" ...
Du hättest meinen Freudentanz sehen sollen!!
Ich hatte den Teil aus einem Scriptteil mit mehreren if und elseif und else, ich hatte gedacht, wenn es nur
eine Alternative gibt .... ("Anfänger-Kurzschluss"!!)
Viele Grüße
von einer glücklichen(!!)
Divi
Ps:
open(GO, ">../../APP/pl.html");
or die "Datei konnte nicht zum Schreiben geöffnet werden! $!\n";
wäre angebracht.
jooooo, wohl war: da hab ich meine "Schularbeiten nicht ordentlich gemacht"!!
;-)
(das hol ich nach!)
Pps.: es war für einen guten Zweck, als reine html-Vorlage für die Idee an sich könntest Du dir das unter
http://www.osnabrueck.netsurf.de:8080/~dbein/APP/prisoner.html
anschauen (cgi kann ich da nicht laufen lassen, bastel ich auf dem PC zu Hause zusammen),
da hab ich mir noch ganz gut was vorgenommen ....