Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Cudzysłowy i ich przetwarzanie
track
post
Post #1





Grupa: Zarejestrowani
Postów: 180
Pomógł: 0
Dołączył: 17.07.2003
Skąd: Łódź

Ostrzeżenie: (0%)
-----


Witam wszystkich. Pewnie nie jedna osoba spotkala sie z przetwarzaniem cydzyslowow przez php. Jak wiadomo znaki typu " lub ' sa znakami specjalnymi. php roznie sie zachowuje. Raz wogole sie ich pozbywa, a raz wstawia slash przez znakiem. Moj problem polega na wlasciwym zastosowaniu dwoch funkcji:

addSlashes() i stripSlashes()

Np. mam formularz ktory co wyslanie jest "przeladowywany" czyli dane nie wedruja nigdzie tylko z powrotem na formularz. Teraz zauwazylem dziwna rzecz. Jesli " wstawie w textarea to cudzyslow pozostanie cudzyslowem, natomiast jesli cudzyslow wstawie w pole TEXT to php zmieni go na \ i usunie wszystko co znajduje sie za nim. Probowalem juz wielu kombinacji. Jak formatowac dane z formularza, aby mozna bylo w nich umieszczac znaki specjalne " lub '. Bede wdzieczny za pomoc.

Pozdrawiam,
TRACK
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 6)
ArturS
post
Post #2





Grupa: Zarejestrowani
Postów: 19
Pomógł: 0
Dołączył: 8.01.2006
Skąd: Zabrze

Ostrzeżenie: (0%)
-----


No to mały teścik:
1. Wpisuję w formularz ciąg znaków:
\ / " ' . \ | / ,
2. Do bazy po użyciu funkcji addshashes zapisuje się to w postaci:
\ / " ' . \ | / ,
czyli identycznej
3. Wyświetlając ten ciąg wyciągnięty z bazy jako zwykły tekst (np w tabeli) po użyciu stripslashes na ekranie mam
/ " ' . | / ,
czyli znikły ukośniki \
4. Chce wyedytować to pole, a tym samym ciąg z bazy wyświetlić w polu tekstowym input po przepuszczeniu przez stripslashes, to jedyne co się ukazuje to znak /

hmm.. rzeczywiście cosik nie tak działają te funkcje. Dołączam się więc do pytania TRACKa jak sobie z tym poradzić (pewnie w przyszłości się przyda)
Go to the top of the page
+Quote Post
mike
post
Post #3





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

Ostrzeżenie: (0%)
-----


A jak macie ustawioną dyrektywę magic_quotes_gpc ?
Go to the top of the page
+Quote Post
nospor
post
Post #4





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




@track jak bys pokazal kodzik jak to robisz, byloby super winksmiley.jpg Ja jakoś nigdy nie mialem z tym problemów


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
ArturS
post
Post #5





Grupa: Zarejestrowani
Postów: 19
Pomógł: 0
Dołączył: 8.01.2006
Skąd: Zabrze

Ostrzeżenie: (0%)
-----


funkcję addslashes wywołuję wewnątrz IFa sprawdzającego ustawienie megic quotes. Np
  1. <?php
  2.  
  3. $fv = addslashes($fv);
  4. $kontrahent = addslashes($kontrahent);
  5. $platnosc = addslashes($platnosc);
  6. $rodzaj = addslashes($rodzaj);
  7. $kwota = doubleval($kwota);
  8. }
  9.  
  10. ?>


hmm... za to stripshashes() wywołuje zawsze, bez sprawdzenia magic_quotes... może właśnie w tym problem? :-)
Go to the top of the page
+Quote Post
mike
post
Post #6





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

Ostrzeżenie: (0%)
-----


Cytat(ArturS @ 2006-02-07 17:17:02)
hmm... za to stripshashes() wywołuje zawsze, bez sprawdzenia magic_quotes... może właśnie w tym problem? :-)

Zgadnij tongue.gif
Skoro wywalasz slashe bez sprawdzania czy zostały dodane, to czemu się dziwisz?

Przenoszę na php Pocz.
Go to the top of the page
+Quote Post
ArturS
post
Post #7





Grupa: Zarejestrowani
Postów: 19
Pomógł: 0
Dołączył: 8.01.2006
Skąd: Zabrze

Ostrzeżenie: (0%)
-----


Właściwie się nie dziwię, ale jakoś nie zwracałem na to wcześniej uwagi wacko.gif
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 21.08.2025 - 21:51