Functie PHP anti SQL injection

Atunci cand lucrezi cu o baza de date si extragi informatii pe baza unor criterii / date introduse de un utilizator, este bine sa faci o “curatare” a datelor. De ce? Pentru ca nu poti avea incredere in utilizatori, daca vrei sa eviti sa iti fie golita sau furata toata baza de date. La inceput cand cautam metode de curatare a datelor imi facusem o functie care avea cateva randuri de comenzi care verificau si aplicau / schimbau chestii. O data cu trecerea timpului mi-am dat seama ca am nevoie doar de expresii regulate (ereg_replace) ca sa curat datele.

<?php
function sanitize_data($data) 
{
	$data = ereg_replace("[^A-Za-z0-9]", "",$data);
	return $data;
}

$username = sanitize_data($_POST['username']);
$password = sanitize_data($_POST['password']);

$sql = mysql_query("SELECT COUNT(id) AS cnt 
					FROM user_table 
					WHERE username = '$username' 
					AND password = '$password' 
					LIMIT 1");

Succes si sper sa va fie si voua de folos.

2 thoughts on “Functie PHP anti SQL injection”

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.