Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP] Ukośnik przed cudzysłowem
detter
post
Post #1





Grupa: Zarejestrowani
Postów: 47
Pomógł: 0
Dołączył: 6.03.2004
Skąd: Wawa

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


Witam.
Mam taki problem: jeśli w formularzu w polu input wpisze się text zawierający cudzysłów, to w zmiennej przekazywany
jest oprócz wpisanej treści przed każdym cudzysłowem ukośnik (\).
Czy ktoś ma pomysł jak się pozbyć tego ukośnika i otrzymać zmienną z cudzysłowami ale bez żadnych ukośników??

dla przykładu:
  1. wpisuje:
  2.  
  3. jakas "specjalistyczna" nazwa
  4.  
  5. a otrzymuje:
  6.  
  7. jakas \"specjalistyczna\" nazwa


Ten post edytował detter 23.01.2009, 03:45:20


--------------------
Detter
Go to the top of the page
+Quote Post
EarthCitizen
post
Post #2





Grupa: Zarejestrowani
Postów: 286
Pomógł: 70
Dołączył: 13.01.2009

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


W php.ini masz ustawione magic_quotes_gpc na ON, po więcej info zapraszam na http://pl.php.net/manual/pl/info.configura...agic-quotes-gpc

  1. <?php
  2. if (get_magic_quotes_gpc()) { // Jeżeli magic_quotes_gpc = ON
  3.    $_POST['key']   = stripslashes($_POST['key']);
  4.    $_GET['key']    = stripslashes($_GET['key']);
  5.    $_COOKIE['key'] = stripslashes($_COOKIE['key']);
  6. }
  7. ?>


Możesz też użyć funkcji, która przeleci po całej tablicy:

  1. <?php
  2. function stripslashes_rec($array) {
  3.    foreach ((array)$array as $key => $value) {
  4.        if (is_array($value)) {
  5.            $array[$key] = stripslashes_rec($value);
  6.        } else {
  7.            $array[$key] = stripslashes($value);
  8.        }
  9.    }
  10.  
  11.    return $array;
  12. }
  13.  
  14.    $_POST = stripslashes_rec($_POST);
  15.    // analogicznie dla $_GET i $_COOKIE i dla każej innej tablicy ;)
  16. }
  17. ?>


Zwróć jednak uwagę, że dodanie backslasha jest ze względów bezpieczeństwa i uniknięcia wielu problemów przy dalszym operowaniu na tych zmiennych...
Szczególnie zapoznaj się z http://forum.php.pl/index.php?showtopic=23258 (SQL Injection)

Ten post edytował EarthCitizen 23.01.2009, 04:48:30
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: 22.08.2025 - 07:42