Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> obłusga znaków specjalnych z magic_quotes
melior
post
Post #1





Grupa: Zarejestrowani
Postów: 68
Pomógł: 3
Dołączył: 7.12.2009

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


Witam,
Zwracam się z pomocą bo trochę się już pogubiłem w obsłudze znaków specjalnych, a szczególnie w przypadku, gdy skrypt ma obsługiwać strony mające włączone magic_quotes i te bez.

Ogólnie wszystko działa mi ok, poza przypadkiem gdy ktoś wklepie backslasha "\"

Przy dodawaniu do bazy mysql mam taki kod
  1. $name = trim($name);
  2.  
  3. $name= htmlentities($name);
  4. }
  5. else{
  6. $name= htmlentities($db->real_escape_string($name));
  7. }


Przy wyświetlaniu w input text
  1. <input type="text" name="name" value="<?php
  2. echo $edit?htmlspecialchars(stripslashes($_POST['name'])):'';
  3. }else{
  4. echo $edit?html_entity_decode(htmlspecialchars($_POST['name'])):'';
  5. }
  6.  
  7. ?>">


Efekt jest taki, że gdy na serwerze z magic_quotes wpiszę "\test\" to zapisze się to poprawnie do bazy danych, ale przy wyświetlaniu w input text gubię "\" i dostaję samo "test".
Na localhost gdzie nie mam magic_quotes wszystko hula.

Wolę się spytać jak to powinno wyglądać dobrze, bo nie chcę za dużo mieszać w kodzie na próbach. Wystarczająco dużo czasu męczyłem się by kod obsługiwał poprawnie ' i " dostal.gif

Dzięki za wszelką pomoc smile.gif
Go to the top of the page
+Quote Post

Posty w temacie


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: 20.08.2025 - 17:26