[ Milan M. Radovic @ 15.12.2009. 14:21 ] @
Imam problem
HTML:

Code:
<input name="id_card_registred" type="text" class="textboxmedium" id="id_card_registred" value="{if $smarty.post.id_card_registred}{$smarty.post.id_card_registred}{else}{$user->user_data.id_card_registred|escape:"html"}{/if}" maxlength="32" />


Ako na prvoj stranici otkucam u polje
Code:
MUP "Pancevo"


Dobijam na sledeco stanici u tom polju
Code:
MUP \"Pancevo\"


A ako skinem |escape:html, dobijam
Code:
MUP \


A moram kad primam iz $user->user_data.id_card_registred da uzmem sa html chars, jel moze da se desi da je korisnik uneo navodnike i da tako stoji u bazi... pa ce mi kad upisuje u stranicu dati MUP \

Stranica je za izmenu podataka... pa ako se napravi greska, smarty samo upise u polja ono sto je na prethodnoj strani poslato.... ali ovo mi je problem.
[ Nikola Poša @ 15.12.2009. 15:19 ] @
Meni to više liči na problem sa magic_quotes... Probaj da isključiš to podešavanje u PHP-u, pa vidi kakvi će onda da budu rezultati.

A i ne razumem to kad kažeš "prva", "sledeća" stranica... Šta tačno radiš? Jel to neka forma, pa podatke iz nje upisuješ u bazu ili šta? Ja obično takve stvari sa navodnicima rešavam tako što ih pretvaram u odgovarajuće HTML entitete, i u tom obliku ih i čuvam u bazi. Naravno, podrazumeva se i to da je opcija magic_quotes_gpc isključena.
[ Milan M. Radovic @ 15.12.2009. 16:11 ] @
Citat:
Nikola Poša: Meni to više liči na problem sa magic_quotes... Probaj da isključiš to podešavanje u PHP-u, pa vidi kakvi će onda da budu rezultati.

A i ne razumem to kad kažeš "prva", "sledeća" stranica... Šta tačno radiš? Jel to neka forma, pa podatke iz nje upisuješ u bazu ili šta? Ja obično takve stvari sa navodnicima rešavam tako što ih pretvaram u odgovarajuće HTML entitete, i u tom obliku ih i čuvam u bazi. Naravno, podrazumeva se i to da je opcija magic_quotes_gpc isključena.


strana se zove modify_profile.php.. jelte i - ona cita iz baze korisnika i smesta u load_data u okviru objekta $user....
Dakle upisu se u formu podaci za izmenu, kada korisnik klikne na submit,forma se salje na istu stranu sa odredjenom GET ... u mom slucaju ?check=true.
Onda se forma proverava i upisuje se u niz ako ima gresaka. Ako je $error (array) veci od nule, nista se ne upisuje u bazu, vec smarty samo opet ucita isti template... gde ce i napisati da ima gresku, ali kao vrednost polja uzima ono sto je prethodno korisnik POSTom poslao. Jel sad ok? Magic quotes mi super koristi jer kad salje vrednost, odmah je promeni, tako da ne moram ja da dodajem addslashes() (ili kako se vec zove funkcija)... ali kapiram da onda i svaka $smarty.post.* varijabla je ustvari $_POST sa odradjenim qoutes....
Dakle ono sto bi meni trebalo jeste da smarty kada ucitava $smarty.post.* podatak.. skloni slesheve... kako se ne bi upisali i oni u polja :~)
[ Nikola Poša @ 15.12.2009. 17:37 ] @
Pa kad si već spomenuo addslashes(), funkcija koja radi suprotno je stripslashes(). A ako si već rešio da ideš sa magic_quotes_gpc (pritom imaj na umu da je ta opcija već neko vreme "deprecated", a biće uklonjena u PHP v6), možeš recimo da napraviš custom Smarty modifier, koji će da utilizira funkciju stripslashes(), i onda samo u kodu ovako nešto:
Code:
{$user->user_data.id_card_registred|stripslashes}
[ Milan M. Radovic @ 15.12.2009. 19:55 ] @
Citat:
Nikola Poša: Pa kad si već spomenuo addslashes(), funkcija koja radi suprotno je stripslashes(). :) A ako si već rešio da ideš sa magic_quotes_gpc (pritom imaj na umu da je ta opcija već neko vreme "deprecated", a biće uklonjena u PHP v6), možeš recimo da napraviš custom Smarty modifier, koji će da utilizira funkciju stripslashes(), i onda samo u kodu ovako nešto:
Code:
{$user->user_data.id_card_registred|stripslashes}
Hvala! :)