Hej 0D är en omvandling som jag känner igen från asp's motsvariget till server.urlencode. Det är för att en url inte tillåter mellanslag i exempelvis netscape. Förmodligen en dum fråga, men: Frågan var inte alls dum. För ibland kan det vara enkla fel som man själv inte ser. Vad använder du för kåd för att läsa in variablerna?Textarea krånglar
Jag har ett problem med ett cgi script skrivet i perl. Informationen som skrivs in i ett formulär ska sparas på en separat fil en .dat fil.
Problemet är en textarea när någon skrivit i textarean och använt sig av enter för att skriva på en ny rad försvinner det som är skrivet efter enter tryckningen när jag sedan ska läsa från filen.
Jag tror att det har att göra med att scriptet uppfattar enter tryckningen som att det är dags att byta rad i dat filen.
Kan man koda texten så att det inte uppfattas så utan scriptet skriver att som en sträng.
Textstängen som blir av en 1 enter 2 enter 3 ser ut Inlagg=1%0D%0A2%0D%0A3.
Mvh
Kjell IdeskärSv: Textarea krånglar
Att den sparas ner så torde betyda att du kanske omvandlar datat innan du skriver ner det eller kanske mellanlagrar det på något annat sätt. En variant är att innan du visar det igen ersätter alla 0D med de mellanslag du behöver - men som sagt, det låter mer som du strular till strängen innan den skrivs ner till fil.Sv: Textarea krånglar
Har du kollat att inte .dat-filen innehåller allt - t ex med Notepad.
Det är kanske när du läser tillbaka data som du använder något som läser en rad.
I såna lägen har jag själv missat att slå samman raderna till en sträng ...Sv: Textarea krånglar
Men tyvärr så skriver han inte allt till dat filen.
Så här ser adressfältet ut
Rubrik=Hej&Inlagg=Rad+ett%0D%0ARad+tv%E5
Och så här har jag skrivigt att han ska skriva in det:
print LIST "$Rubrik;$Inlagg;\n";
Och i dat filen blir texten:
Hej;Rad ett ;
Det som saknas är texten Rad två.
MVH
KjellSv:Textarea krånglar
Följande kodsnutt bör inte generera några skumma ersättningstecken för mellanslag och radbryt.
use CGI;
$cgi = new CGI;
$text = $cgi->param('Inlagg');
/Andreas