Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]Usuwanie ukośników podczas odczytu danych z bazy
Forum PHP.pl > Forum > Przedszkole
Rookie
Zabezpieczając się przed SQL Injection stosuję przed zapisem do tabeli w mysql to:
  1. $tytul=mysql_real_escape_string(trim($_POST[tytul]));

I np. po wpisaniu tytułu: Krucjata Bourney'a wiadmo, że w bazie jest tak: Krucjata Bourney\'a, o to chodzi, zeby powstrzymać ten typ ataku, ale jeżeli to jest zwykły tytuł, to jak mogę podczas odczytywania zdjąć z niego ten ukośnik, aby w bazie było Krucjata Bourney\'a, a na stronie po odczytaniu normalnie Krucjata Bourney'a questionmark.gif
Pytałem się dziadka google, ale nie znalazłem nic ciekawego, jeżeli, jest gdzieś o tym artykuł, miło widziany link lub podanie sposobu tutaj.
Z góry dziękuję.
Pozdrawiam
Pawel_W
to nie przez mysql_real_escape_string, to php dodaje ten "bajer"

wg. możesz użyć po prostu str_replace winksmiley.jpg
Rookie
czyli najprostrze rozwiązanie.
Proste jest dobre smile.gif
Chyba, że jest jakaś specjalna funkcja do usuwania niepotrzebnych ukośników po odczycie ;p
Fafu
stripslashes
Rookie
Dzięki fafu, umknęła mi ta funkcja smile.gif
str_replace nie pomogło a to tak smile.gif
rep+
Ale Pawel_W starał się pomóc więc też dostanie smile.gif
ADD: Można zamknąć ;p, rozwiązany
ucho
Cytat(Rookie @ 20.08.2009, 20:10:43 ) *
Zabezpieczając się przed SQL Injection stosuję przed zapisem do tabeli w mysql to:
  1. $tytul=mysql_real_escape_string(trim($_POST[tytul]));

I np. po wpisaniu tytułu: Krucjata Bourney'a wiadmo, że w bazie jest tak: Krucjata Bourney\'a

To źle, w bazie ma się znaleźć dokładnie "Krucjata bourne'a", bez żadnych slashy czy innych znaków escapowania. Najwyraźniej na serwerze jest włączone "magic quotes". Ta opcja zniknie z PHP i to już niedługo, dlatego prawidłowym rozwiązaniem jest sprawdzenie czy magic quotes jest włączone (get_magic_quotes_gpc()), jeśli tak użyć stripslashes na danych w $_POST/$_GET, a następnie używać tych danych normalnie: mysql_real_escape_string lub prepared statements (osobiście polecam)
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.