On 2005-06-05, Ole Jensen <ole_jensen> wrote:
> Jeg er i gang med at bruge php og mysql for første gang.
> Jeg er nået til det punkt hvor jeg skal have smidt data ind i
> databasen, og man kan jo sagtens manuelt konvertere alle de enkelte
> inputs.
>
> fx:
> $input = addslashes($_POST["input"]);
> $input2 = addslashes($_POST["input2"]);
> $inputosv = addslashes($_POST["inputosv"]);
>
> Men der må da næsten være en lettere måde man lynhurtig kunne løbe sine
> $_POST data igennem og konvertere så de er klar til at ryge ind i databasen?
Ifølge manualen er best practice at bruge mysql_real_escape_string():
http://dk2.php.net/mysql_real_escape_string
Hvis du insisterer på at benytte addslashes kan du bruge array_map() til
at udføre en operation på samtlige elementer i et array med. F.eks:
$slashedInput = array_map('addslashes', $_POST);
Bemærk, at du vil få et forkert resultat, hvis du benytter addslashes()
eller mysql_real_escape_string() på en streng, der allerede er blevet
escapet. Det er beskrevet på manualsiden for mysql_real_escape_string().
--
Med venlig hilsen
- Jacob Atzen