[PHP] PDO - zabezpieczenie przed SQL Injection

0

hej,
używam PDO do obsługi bazy.
pytanie -> czy można jakoś inaczej zabezpieczyć się przed SQL Injections niż używając PDO::prepare? Przyznam szczerze że nie bardzo odpowiada mi taki sposób budowania zapytań ...
Najchętniej używam mysql_real_escape_string, ale oczywiście przy PDO to odpada.

Pozdrawiam

0
$db=new PDO("mysql:cośtam","user","hasło");

$stmt=$db->prepare("select pole1, pole2 from tabela where pole1=:wartosc1 and pole2=:wartosc2");
$stmt->bindValue(":wartosc1",$_POST["wartosc1"]);
$stmt->bindValue(":wartosc2",$_POST["wartos21"]);

$stmt->execute();

PDO automatycznie doda co trzeba

0
maly186 napisał(a)
$db=new PDO("mysql:cośtam","user","hasło");

$stmt=$db->prepare("select pole1, pole2 from tabela where pole1=:wartosc1 and pole2=:wartosc2");
$stmt->bindValue(":wartosc1",$_POST["wartosc1"]);
$stmt->bindValue(":wartosc2",$_POST["wartos21"]);

$stmt->execute();

PDO automatycznie doda co trzeba

dzięki, ale jak pisałem - chodzi właśnie o to żeby nie używać prepare ;)

0

Masz PDO::quote. Tylko prepare jest IMO dużo wygodniejsze.

0

Witam,

Odgrzeje trochę temat a mianowicie jak to zrobić nie używając method $_POST. Bo szuka i szukam i nic a mam bazę MariaDB i pokazuje mi błąd :

Notice: Undefined index: login in C:\xampp\htdocs\CDR\register.php on line 18

1
if (isset($_POST['login'])) {
  // pdo
}
else {
  echo "Nie podano loginu";
}

1 użytkowników online, w tym zalogowanych: 0, gości: 1