mysql_real_escape_string richtig setzen

Bash, Shell, PHP, Python, Perl, CGI
amiga1200
Posts: 208
Joined: 2007-01-13 19:58

mysql_real_escape_string richtig setzen

Post by amiga1200 » 2011-10-21 11:34

Kann man mysql_real_escap_string so lose verwenden:

$user=$_POST["user"]
$user=mysql_real_escape_string($user);
$pw=$_POST["pw"]
$pw=mysql_real_escape_string($pw);

mysql_query("INSERT INTO kunde set user='$user',pw='$pw' ")
(ist das so sicher?)

oder geht mysql_real_escape_string nur in einer Querry wie
$query = sprintf("SELECT * FROM users WHERE user='%s' AND password='%s'",
mysql_real_escape_string($user),
mysql_real_escape_string($password));

User avatar
Joe User
Project Manager
Project Manager
Posts: 11138
Joined: 2003-02-27 01:00
Location: Hamburg

Re: mysql_real_escape_string richtig setzen

Post by Joe User » 2011-10-21 16:07

Die erste Version kann man verwenden, wobei eine entsprechende Function oder Class deutlich flexibler wäre.
PayPal.Me/JoeUserFreeBSD Remote Installation
Wings for LifeWings for Life World Run

„If there’s more than one possible outcome of a job or task, and one
of those outcomes will result in disaster or an undesirable consequence,
then somebody will do it that way.“ -- Edward Aloysius Murphy Jr.

Roger Wilco
Administrator
Administrator
Posts: 5924
Joined: 2004-05-23 12:53

Re: mysql_real_escape_string richtig setzen

Post by Roger Wilco » 2011-10-21 19:13

Ich frage mich schon seit geraumer Zeit, weshalb sich Leute immer noch selbst SQL-Queries zusammenbauen, statt einfach Prepared Statements zu verwenden…