23. maj 2003 - 05:12Der er
5 kommentarer og 1 løsning
htmlspecialchars check
Lad os sige jeg tjekker et input sådan her:
$info2 = htmlspecialchars($info,ENT_QUOTES);
$sql = mysql_query("INSERT INTO users (info) VALUES("'$info2'") or die (mysql_error());
Men hvis jeg nu har et helt array som skal checkes: $sql = mysql_query("INSERT INTO users (first_name, last_name, email_address, username, password, info, signup_date) VALUES('$first_name', '$last_name', '$email_address', '$username', '$db_password', '$info2', now())") or die (mysql_error());
Hvordan får jeg tjekket $sql inden det ryger i db'en?
hmm det jeg lige kan komme i tanke på er at sætte alle variablerne ind i et array, lave en funtion der tjekker arrayet igennem, og så hente dem fra det rettede array i VALUES. Det er måske en dum løsning, men det er for sent til andet end hacks :-)
men det jeg mente var noget lignende: ---------- $a[0]=$first_name; $a[1]=$last_name; $a[2]=$email_address; $a[3]=$username; $a[4]=$db_password; $a[5]=$info2;
$a = dohtmlthingy($a);
$sql = mysql_query("INSERT INTO users (first_name, last_name, email_address, username, password, info, signup_date) VALUES('$a[0], '$a[1]', '$a[2]', '$a[3]', '$a[4]', '$a[5]', now())") or die (mysql_error());
function dohtmlthingy(var $tempa){ while ($i=0; i < count ($tempa); $i++){ $tempa[$i] = htmlspecialchars($tempa[$i],ENT_QUOTES); } return $tempa; } ----------
Er dog meget usikker på at det er den smarteste måde.... Det den gør er det samme som din enkelte linie, den gør det bare på alle værdierne.
ok jeg var også næsten sikkert på at der var en smartere måde :-)
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.