Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: PDO oraz bindowanie przy polach typu password
Forum PHP.pl > Forum > Bazy danych > MySQL
qbsterr
Siemka,

Wlasnie zaczynam sie przesiadac na PDO i schody.

Dla mysql_
  1. mysql_query ('insert into TABELA (user,passwd,email,now) values ($user,password($password),$email,now());


Ale nie bardzo rozumiem jak dla PDO
  1. $res = $db ->prepare ("insert into TABELA (user,passwd,email,now) values (:user,:password,:email,:now())");
  2. $res = bindValue(':user',$user, PDO::PARAM_STR);
  3. $res = bindValue(':password,$password, PDO:PARAM_STR);
  4. $res = bindValue(':email',$email, PDO::PARAM_STR);


Teraz jak uzyc funkcji password($password) and now() w PDO?

Pozdrawiam.
nospor
Binduje sie wartosci przekazywane do PDO a nie funkcje.....

$res = $db ->prepare ("insert into TABELA (user,passwd,email,now) values (:user,password(:password),:email,now())");
qbsterr
Super, tego mi wlasnie brakowalo.

A tak przy okazji, to:

  1. bindValue(':user',$user, PDO::PARAM_STR);


zabezpiecza przed sql injection ? czy jednak warto przepuscic string przez jakas funkcje sprawdzajaca ?


Pozdrawiam.
Crozin
Tak, jest to wystarczające zabezpieczenie. Parametry podpięte przez bindValue są przesyłane do bazy niezależnie od zapytania, więc nie ma możliwości modyfikacji samego zapytania przy ich pomocy.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.