Het aanhalingsteken.
Ik heb een site met een textarea, deze textarea staat gekoppeld met een database. Jullie kennen 't verhaal vast beter dan ik. Maarja. Nu wil ik graag de gebruikers HTML laten gebruiken, maar, er zijn problemen met het aanhalingsteken. Als dit erin staat, werkt het script niet meer. Zou ik htmlspecialchars(); moeten gebruiken? Hierdoor kan ik geen HTML meer laten toepassen, da's wel een minpuntje.
En je ziet dat ik veel met een aanhalingsteken typ, dus da's best wel vervelend. :(
~Tom Joosten.
mysql_real_escape_string of prepared statements. Als je het uit de database haalt, en weergeeft, dan moet je htmlentities o.i.d. gebruiken.
Als je het in de database stopt alleen Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
mysql_connect("$host", "$username", "$password")or die("cannot connect");
mysql_select_db("$db_name")or die("cannot select DB");
$aantekening = $_POST['aantekening'];
$naam = $_POST['naam'];
$datum = $_POST['datum'];
$maker = $_SESSION['username'];
$jaarlaag = $_POST['jaarlaag1'];
$boek = $_POST['boek'];
$vak = $_POST['vak'];
$result = mysql_num_rows(mysql_query("SELECT * FROM $tbl_name WHERE username='$username'"));
mysql_query("INSERT INTO aantekeningen (naam, aantekening, maker, datum, jaarlaag, boek, vak) VALUES ('$naam', '$aantekening', '$maker', '$datum', '$jaarlaag', '$boek', '$vak' )");
mysql_select_db("$db_name")or die("cannot select DB");
$aantekening = $_POST['aantekening'];
$naam = $_POST['naam'];
$datum = $_POST['datum'];
$maker = $_SESSION['username'];
$jaarlaag = $_POST['jaarlaag1'];
$boek = $_POST['boek'];
$vak = $_POST['vak'];
$result = mysql_num_rows(mysql_query("SELECT * FROM $tbl_name WHERE username='$username'"));
mysql_query("INSERT INTO aantekeningen (naam, aantekening, maker, datum, jaarlaag, boek, vak) VALUES ('$naam', '$aantekening', '$maker', '$datum', '$jaarlaag', '$boek', '$vak' )");
Code (php)
1
$result = mysql_num_rows(mysql_query("SELECT * FROM $tbl_name WHERE username='".mysql_real_escape_string($username)."'"));
Zo doe je dat voor alle variabelen die je in een SQL query plakt. Dus ook bij die "INSERT INTO" query.
Gewijzigd op 16/06/2010 20:15:57 door Piet Verhagen
Aangezien jij je stukje ook weghaalt, heb ik 't ook maar weggehaald o-o
Gewijzigd op 16/06/2010 20:21:38 door Tom Joosten