Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

[Info] Funkcja zabezpieczająca PHP


Rekomendowane odpowiedzi

Opublikowano

Siema znalazłem gdzieś taka funkcję

 

 

 

function tekst($tekst){     
    $search = array('@<script[^>]*?>.*?</script>@si', '@<[\/\!]*?[^<>]*?>@si', '@<style[^>]*?>.*?</style>@siU', '@<![\s\S]*?--[ \t\n\r]*>@'); 
    $text = preg_replace($search, '', $tekst);
    $arr = array('"',"'","#","//","--");
    $tekst = str_replace($arr, '', $tekst);
    return $tekst = trim(mysql_real_escape_string(nl2br(htmlspecialchars(trim($tekst))))); 
}
 

 

i chciałem się dowiedzieć czy ona spełania swoje zadanie czyli ma filtrować dane z formularzy ?

Opublikowano
    $search = array('@<script[^>]*?>.*?</script>@si', '@<[\/\!]*?[^<>]*?>@si', '@<style[^>]*?>.*?</style>@siU', '@<![\s\S]*?--[ \t\n\r]*>@'); 
    $text = preg_replace($search, '', $tekst);
    $arr = array('"',"'","#","//","--");
    $tekst = str_replace($arr, '', $tekst);

 

Śmierdzi PHP 4 na kilometr.

Do wyboru do koloru;

http://php.net/manual/en/function.htmlspecialchars.php

http://php.net/manual/en/function.addslashes.php

http://php.net/manual/en/function.strip-tags.php

http://php.net/manual/pl/function.mysql-escape-string.php

 

Ewentualnie jakiś FW i filtracja w nim.

Specjalista
Opublikowano

spełnia :) funkcja mi znana z silników gvw :)
Lecz są krótsze strip_tags, mysql_real_escape_string itd...
czyste filtrowanie tekstu.
w PDO nie musisz się o to martwić,. gdyż PDO automatycznie oczyszcza żądania z niepotrzebnego kodu

Opublikowano

PDO domyślnie NIE filtruje zapytań.

http://php.net/manual/en/pdo.query.php

Co innego, gdy ktoś używa prepared statement - ale już nie raz, nie dwa widziałem kod, gdzie "programista" był pewien 100% zabezpieczenia skryptu poprzez PDO i działał na nim jak na mysql_query.

 

edt;

Zresztą tak swoją drogą, PDO zawsze będzie wolniejsze od mysqli z prepared statement - http://php.net/manual/en/mysqli.prepare.php, wiec moim zdaniem nie ma co go tak na siłę polecać. ;-)

Opublikowano

okey dzięki za informacje :)

 

A mam pytanie czy takie filtrowanie jest poprawne ?

 

 

 

$_POST['indeks'] = mysql_real_escape_string(mysql_escape_string(htmlspecialchars(addslashes(strip_tags($_POST['indeks'])))));
 

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...