textarea admin

Cinek.ck

Avatar: Cinek.ck

2010-07-26 12:47

Witam,
jak dodać pole textarea w settings.tpl próbowałem zrobić tak :

<textarea type="text" style="width: 100%; height: 100px;" value="$config[autorText]" name="autorText" class="input" alt="simple">$config['autorText']</textarea>

I zapisuje mi krótki opis ale po drugim trzecim zapisie zapisuje już całkiem inaczej w config i wyrzuca błąd. Jak nie dodam $config['autorText'] w textarea to zapisuje mi to co chcę na stronie ale nie widać tego w polu w adminie i nie ma możliwości redagowania wpisu.
Wie ktoś jak to zrobić? Z polem input nie ma problemu z zapisem.

» Quick.Cms v2.x

lordofhares.com

Cinek.ck

Avatar: Cinek.ck

2010-08-05 12:35

No nic zostałem przy input. Dzięki :-)

lordofhares.com

boboo

Avatar: boboo

2010-08-08 08:13

No to wracaj do textarea ;-)

Textarea ma tę przypadłość, że jeśli używasz w niej "enter" to w stringu pojawia się CR LF (0D 0A [#13 #10]) i wtedy przy zapisywaniu takiego stringu z "enterami" w środku textu, dzieją się "cudeńka" w stawianiu ";" na końcu linii.
Bo ten średnik ";" jest stawiany po każdym 0A (LF), czyli nowa linijka KODU PHP zacznie się od reszty textu z textarea.
I dlatego te błędy.
Rozwiązanie:
w pliku /core/common-admin.php w funkcji: saveVariables
dodaj POD linijką:
$sValue = stripslashes( $sValue );
linijkę:
$sValue = str_replace(chr(13).chr(10),'\n', $sValue);
Czyli ciąg "x0D x0A" wychodzący z textarea zamieniamy na najzwyklejszy "newline" --> "\n".
W tekście w general.php (lub xx_lang.php) będzie to trochę nieczytelnie wyglądać
("będzie\nnieczytelnie\nwyglądać")
ale w textarea przecież to oglądasz i zmieniasz. A tam "śliczności" :-)
Na jednolinijkowe inputy to nie ma wpływu, bo one ze swojej natury nie wyrzucają z siebie 0D (CarriageReturn), więc takiej sekwecji 0D0A w nich nie ma, ergo ta dodatkowa linijka będzie trafiać tylko wielolinijkowe texarea.

http://skupienie.kimla.de/?software-quickcart,106

Cinek.ck

Avatar: Cinek.ck

2010-08-08 12:44

No i działa dzięki wielkie, fajnie że są jeszcze ludzie którzy chcą pomóc. Jeszcze raz dzięki :-).
P.S.
Wykład iście profesorski :-p znasz się na rzeczy, pozdrawiam.

lordofhares.com

Do góry
o nas | kontakt