• 9 odgovora
  • 4.985 pregleda
<textarea> i HTML kod u njemu 05.05.2005. u 19:51 · pre 261 meseci #1
U sklopu jednog sajta sam napravio deo pomoću kojeg mogu da se edituju template fajlovi onlajn, znači stranica sa <textarea> koja sadrži kod template-a koji se edituje.

Problem je u tome što browser (za sada sam probao FX i IE) krene da renderuje deo sadržaja koji se nalazi u <textarea>, znači ne ceo već recimo dugme.

Proverio sam da nisam neki tag zaboravio da zatvorim ili nešto ali nije do toga izgleda..

What to do?
Potpis
"Nutri-matik je konstruisala i izradila Sirijuska kibernetska korporacija čije odeljenje za žalbe sada prekriva sve glavne kopnene mase prve tri planete zvezde Tau iz sistema Sirijusa"
Re: <textarea> i HTML kod u njemu 05.05.2005. u 21:49 · pre 261 meseci #3
Znakovi <>" i još neki su specijalni znakovi za HTML. Moraš koristiti &gt;, &lt;, &quot; zamjene za te znakove. Tada će oni doslovno biti ispisani. Ako radiš u PHP pogledaj funkciju htmlspecialchars().
Potpis
"I'd take the awe of understanding over the awe of ignorance any day."
- Douglas Adams
Re: <textarea> i HTML kod u njemu 06.05.2005. u 02:31 · pre 261 meseci #4
Hm... to sam nesvesno eliminisao jer sam ukapirao da će mi isto tako biti ispisano kao &lt;, &gt itd.. :) Hvala vam, probaću sutra sad je prviše kasno za coding :)
Potpis
"Nutri-matik je konstruisala i izradila Sirijuska kibernetska korporacija čije odeljenje za žalbe sada prekriva sve glavne kopnene mase prve tri planete zvezde Tau iz sistema Sirijusa"
Re: <textarea> i HTML kod u njemu 14.05.2005. u 22:07 · pre 261 meseci #5
Sad imam problem na drugoj strani :) Koristim htmlentities(); za deo kada prikazujem kod u <textarea>, a kada prihvatam pre nego sto ga sačuvam kao HTML koristim html_entities_decode(); i to bez menjanja navodnika u oba slučaja međutim kada upišem novi sadržaj u fajl sve navodnike mi upiše kao \".

Pretražio sam manual za obe funkcije i ne mogu nađem uzrok nigde..
Potpis
"Nutri-matik je konstruisala i izradila Sirijuska kibernetska korporacija čije odeljenje za žalbe sada prekriva sve glavne kopnene mase prve tri planete zvezde Tau iz sistema Sirijusa"
Re: <textarea> i HTML kod u njemu 15.05.2005. u 00:21 · pre 261 meseci #6
Ja ne bih koristio html_entities_decode. Jednostavno, ono što korisnik unese u polje, to sačuvaj u tom obliku. Nikakve transformacije nemoj obavljati na unosu.
Korisnik ne treba da unosi &gt; umjesto > ili &quot; umjesto ". On unosi HTML kod kao u nekom text editoru.
Ti taj unos sačuvaš u tom obliku.
Kada želiš da prikažeš koristiš htmlspecialchars (radije nego htmlentities) funkciju.
Potpis
"I'd take the awe of understanding over the awe of ignorance any day."
- Douglas Adams
Re: <textarea> i HTML kod u njemu 15.05.2005. u 01:17 · pre 261 meseci #7
To sam i radio (prvo sam i koristio htmlspecialchars ali kad sam došao do ovog problema nisam mogao da nađem suprotnu funkciju da dekodiram to nazad). U početku nisam koristio decode posle, ali i bez toga mi se isto pojavljivalo \" umesto " u kodu, pa sam pomislio da je do toga što je u samom source kodu te strane textarea popunjen već sa sadržajem koji je prošao kroz encode.

Realno iznerviralo me je ostavio sam ga za sutra da probam na nekom drugom primeru da vidim kako se ponaša :)

P.S. Nisam mogao da ga ostavim za sutra :)
Izvalio sam gde je greška samo sam pozvao decode, a nisam pokupio return value :) U svakom slučaju to sada radi kod mene na mašini, međutim na serveru opet ne radi, što je još čudnije kod mene na mašini radi i bez decode-a... logično.

Kući vrtim: Apache/2.0.50 i PHP/5.0.1 (Win)
Na serveru je: Apache/1.3.33 i PHP/4.3.10 (Linux)

Da nije do verzije PHP-a možda?
Potpis
"Nutri-matik je konstruisala i izradila Sirijuska kibernetska korporacija čije odeljenje za žalbe sada prekriva sve glavne kopnene mase prve tri planete zvezde Tau iz sistema Sirijusa"
Re: <textarea> i HTML kod u njemu 17.05.2005. u 14:42 · pre 260 meseci #8
Ja sam nedavno počeo da učim PHP i susreo sam se sa sličnim problemom. Napravio sam stranicu za isprobavanje HTML kombinacija putem dva FRAME-a. U gornjem frejmu imam TEXTAREA gde upisujem kod i sa submit dugmetom upisani kod se renderuje u donjem frejmu.
Korišćenjem jednostavne funkcije stripslashes() ovo kod mene radi. Inače, mnogo mi koristi Live HTTP headers ektenzija za Firefox gde tačno mogu videti šta browser šalje do servera i šta se vraća.
Potpis
If Microsoft invented plumbing, legions of hackers would smugly discuss the benefits of washing in a stream.
Re: <textarea> i HTML kod u njemu 17.05.2005. u 22:12 · pre 260 meseci #9
@ambimoustrous:

Hvala na odgovoru, iskoristio sam stripslashes(); i sada radi kako treba.
Potpis
"Nutri-matik je konstruisala i izradila Sirijuska kibernetska korporacija čije odeljenje za žalbe sada prekriva sve glavne kopnene mase prve tri planete zvezde Tau iz sistema Sirijusa"
Re: <textarea> i HTML kod u njemu 18.05.2005. u 02:05 · pre 260 meseci #10
Pozd.
Ovo sam vec pominjao chini mi se:
Code:

function PrepareUserInput($uinput) {
  if (ini_get("magic_quotes_sybase") == 1) {
    $uinput = str_replace("''", "'", $uinput);
  }
  elseif (get_magic_quotes_gpc() == 1) {
    $uinput = stripcslashes($uinput);
  }
  return $uinput;
}


Kroz ovu moju malu funkciju propushtaj ono shto dolazi od browsera, a prema konfiguraciji PHP-a slashevi i slichne gluposti koji prave probleme ce biti uklonjeni. Uvek treba gledati imati neshto univerzalno shto bi radilo na bilo kojoj konfiguraciji.
Svako dobro.
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme