Om man skickar data angiven av användare rakt in i databasen går det att utifrån skicka vilka kommandon man vill till databasen.
T.ex. om någon skriver följande i formuläret:
'; DELETE FROM tblIngrediens WHERE 'a'='a
Så kommer följande skickas till databasen:
INSERT INTO tblIngrediens SET ingrediens=''; DELETE FROM tblIngrediens WHERE 'a'='a'
Det kallas SQL injection.
http://en.wikipedia.org/wiki/SQL_injection
mysql_real_escape_string() byter ut t.ex. ' mot \' så att databasen vet att ' är en del av texten, och inte avslut på strängen.
Man bör absolut använda mysql_real_escape_string() även om det bara är admin som har tillgång till formuläret.
Tillägg:
Se även
http://se2.php.net/manual/en/functio...ape-string.php