Împiedicați injecția SQL cu expresii regulate?

Possible Duplicate:
Best way to prevent SQL Injection in PHP

Am vrut să vă întreb că trebuie să folosesc altceva din codul de mai jos:

         if(isset($_POST['submit'])) {
         $username = $_POST['username'];
         $password = $_POST['password'];
         $validate = '/^[a-z]+[a-z0-9]*[.-_]*$/i';
               if ((preg_match($validate , $username)==true) && (preg_match($validate ,                                                                                     $password)==true)) {

                        some query...   
               } else {
                        echo "You've used some characters that aren't allowed.";
               }
       }else {
               echo 'Not logged!';  
       }

Este această expresie regulată bună pentru a mă salva de la injectarea SQL? Sau puteți să-mi dați alte sugestii pentru a face ca formula mea de autentificare să fie bună?

0
Este. Dar dacă vrei să fii leneș, atunci fugi mai degrabă de o bază de date greoaie scape complet .
adăugat autor mario, sursa

1 răspunsuri

utilizați mysql_real_escape_string dacă driverul dvs. este încă cel mai vechi sau ați pregătit instrucțiuni cu parametri obligatorii dacă utilizați drivere mai noi pdo sau mysqli_real_escape_string din mysqli.

http://php.net/manual/en/function.mysql -REAL-evacuare-string.php

http://php.net/manual/en/pdo.prepared-statements.php

http://php.net/manual/en/mysqli.real-escape -string.php

0
adăugat
Și ce zici de interogări SQL greșite la baza de date? Chiar și cu declarațiile pregătite vor fi trimise care nu sunt bune pentru productivitatea serverului.
adăugat autor Paul Basenko, sursa
PHP România, Moldova
PHP România, Moldova
173 participanți

Vorbim despre Yii, Laravel, Symphony, MySQL, PgSQL, WP, OpenCart... Pentru confort, opriți notificările. Parteneri: https://ciupacabra.com @js_ro @node_ro @python_ro @seo_ro @Romania_Bot Offtop: @holywars_ro Joburi: @php_job @Grupuri_IT

MySQL - comunitatea Română
MySQL - comunitatea Română
19 participanți

Comunitatea română a programatorilor MySQL.