bij enkel quote in gastenboek tekst wordt er niets verstuurd naar mysql
we hebben een gastenboek aangepast. Alles werkt goed dachten we tot we hoorden dat er sommige problemen hebben met het posten in het gastenboek en geen foutmelding kregen.
Maar steeds toen we probeerden hadden wij geen problemen, tot we zelf een tekst invoegde met daarin het woord foto's. Dit bericht werd niet toegevoegd en gaf geen foutmelding.
Ik denk dat het probleem ligt bij die '.
hoe kan dit probleem verholpen worden
met oprechte dank
scalle
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
2
3
4
5
6
7
8
9
10
11
12
13
14
<? ob_start();
include "connect.php";
include "ubb.php";
//antiflood
function flood(){
$time = 20;
if(!isset($_COOKIE["floodvh"])){
setcookie("floodvh",time()+$time,time()+$time, "/");
}
elseif($_COOKIE["floodvh"] >= time()){
exit("<table><tr><td><b>Je moet nog even wachten voor je je volgende bericht kunt plaatsen!</b><br><a href='javascript:window.history.go(-1)'>Klik hier om terug te keren</a></td></tr></table>");
}
}
?>
include "connect.php";
include "ubb.php";
//antiflood
function flood(){
$time = 20;
if(!isset($_COOKIE["floodvh"])){
setcookie("floodvh",time()+$time,time()+$time, "/");
}
elseif($_COOKIE["floodvh"] >= time()){
exit("<table><tr><td><b>Je moet nog even wachten voor je je volgende bericht kunt plaatsen!</b><br><a href='javascript:window.history.go(-1)'>Klik hier om terug te keren</a></td></tr></table>");
}
}
?>
<html>
<head>
<title>Gastenboek</title>
<link rel="stylesheet" type="text/css" href="layout.css">
<script language="javascript" type="text/javascript">
function limitText(limitField, limitCount, limitNum) {
if (limitField.value.length > limitNum) {
limitField.value = limitField.value.substring(0, limitNum);
} else {
limitCount.value = limitNum - limitField.value.length;
}
}
</script>
</head>
<body>
<h5><b>Voeg een bericht toe</b></h5>
<i>Op het gastenboek is er plaats voor humor, poëzie, liefdesboodschappen en andere onzin...<br>
Hou het wel kort en beleefd zo blijft iedereen tevree.</i><br><br>
<table>
<form method="post" action="s_midden.php?url=gastenboek" name="gastenboek">
<tr><td width="50"> </td><td width="50">Naam<font size=1> *</font></td><td width="250"><input type="text" name="naam" size="35"></td></tr>
<tr><td width="50"> </td><td width="50">Email<font size=1> *</font></td><td width="250"><input type="text" name="email" size="35"></td></tr>
<tr><td width="50"> </td><td valign="top">Bericht<font size=1> *</font></td><td><textarea name="bericht" onKeyDown="limitText(this.form.bericht,this.form.countdown,200);"
onKeyUp="limitText(this.form.bericht,this.form.countdown,200);" cols="34" rows="5"></textarea><br> <input type="submit" name="submit" value="verzenden"></td></tr>
<tr><td width="50"> </td><td></td><td>
Nog <input readonly type="text" name="countdown" size="3" value="200"> karakters beschikbaar.<br>
<font size="1">(Velden met een * zijn verplicht)<br></font>
</td></tr>
</form>
</table>
<br><br><br>
Code (php)
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
<? if ($_GET['submit'] == "yes") {
if ($_GET['naam']!="" AND $_GET['bericht']!="" AND $_GET['email']!="") {
flood();
$insert = "INSERT INTO gastenboek (id,naam,email,homepage,bericht,datum,ip) VALUES ('','".$_GET[naam]."','".$_GET[email]."','".$_GET[homepage]."','".$_GET[bericht]."','".date('Y-m-d H:i:s')."','".$REMOTE_ADDR."')";
mysql_query($insert) or die(mysql_error());
echo "<script>location.href='gastenboek.php'</script>"; }
else { echo"<table><tr><td><b>U bent vergeten iets in te vullen.</b><br><a href='javascript:window.history.go(-1)'>Klik hier om terug te keren</a></td></tr></table>";}}
else { ?>
if ($_GET['naam']!="" AND $_GET['bericht']!="" AND $_GET['email']!="") {
flood();
$insert = "INSERT INTO gastenboek (id,naam,email,homepage,bericht,datum,ip) VALUES ('','".$_GET[naam]."','".$_GET[email]."','".$_GET[homepage]."','".$_GET[bericht]."','".date('Y-m-d H:i:s')."','".$REMOTE_ADDR."')";
mysql_query($insert) or die(mysql_error());
echo "<script>location.href='gastenboek.php'</script>"; }
else { echo"<table><tr><td><b>U bent vergeten iets in te vullen.</b><br><a href='javascript:window.history.go(-1)'>Klik hier om terug te keren</a></td></tr></table>";}}
else { ?>
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
<?
// inc
$limit = $_GET[limit];
$page = $_GET[page];
if (!($limit)){
$limit = 10;} // default number results per page
if (!($page)){
$page = 0;} // default page value
$numresults = mysql_query("SELECT * FROM gastenboek");
$numrows = mysql_num_rows($numresults);
$pages = intval($numrows/$limit); // number of result pages
if ($numrows%$limit) {
$pages++;}
$current = ($page/$limit) + 1;
if (($pages < 1) || ($pages == 0)) {
$total = 1;}
else {
$total = $pages;}
$first = $page + 1;
if (!((($page + $limit) / $limit) >= $pages) && $pages != 1) {
$last = $page + $limit;}
else {
$last = $numrows;}
?>
// inc
$limit = $_GET[limit];
$page = $_GET[page];
if (!($limit)){
$limit = 10;} // default number results per page
if (!($page)){
$page = 0;} // default page value
$numresults = mysql_query("SELECT * FROM gastenboek");
$numrows = mysql_num_rows($numresults);
$pages = intval($numrows/$limit); // number of result pages
if ($numrows%$limit) {
$pages++;}
$current = ($page/$limit) + 1;
if (($pages < 1) || ($pages == 0)) {
$total = 1;}
else {
$total = $pages;}
$first = $page + 1;
if (!((($page + $limit) / $limit) >= $pages) && $pages != 1) {
$last = $page + $limit;}
else {
$last = $numrows;}
?>
<h5><b>Lees pagina van </b></h5>
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
2
3
4
5
6
7
8
9
10
11
12
13
14
<?
$sql = "SELECT * FROM gastenboek ORDER BY datum DESC LIMIT $page,$limit";
$resultaat = mysql_query($sql) or die ("query mislukt");
echo "<hr width=450px color=#b7672d;>";
while ($rij = mysql_fetch_object($resultaat)){
$naam = htmlspecialchars($rij->naam);
$email = htmlspecialchars($rij->email);
$homepage = htmlspecialchars($rij->homepage);
$bericht = htmlspecialchars($rij->bericht);
$datum = htmlspecialchars($rij->datum);
set_smilies($bericht);
echo "<table><tr><td width=150 valign=top><b>".$naam."</b><br><font size=1>".$datum."</font>";
echo "</td><td width=250 valign=top style='WORD-wrap:break-word;width=250px'>".$bericht."</td></tr></table><hr width=450px color=#b7672d;>";} ?>
$sql = "SELECT * FROM gastenboek ORDER BY datum DESC LIMIT $page,$limit";
$resultaat = mysql_query($sql) or die ("query mislukt");
echo "<hr width=450px color=#b7672d;>";
while ($rij = mysql_fetch_object($resultaat)){
$naam = htmlspecialchars($rij->naam);
$email = htmlspecialchars($rij->email);
$homepage = htmlspecialchars($rij->homepage);
$bericht = htmlspecialchars($rij->bericht);
$datum = htmlspecialchars($rij->datum);
set_smilies($bericht);
echo "<table><tr><td width=150 valign=top><b>".$naam."</b><br><font size=1>".$datum."</font>";
echo "</td><td width=250 valign=top style='WORD-wrap:break-word;width=250px'>".$bericht."</td></tr></table><hr width=450px color=#b7672d;>";} ?>
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?
// ins
if ($page != 0) {
$back_page = $page - $limit;
echo("<a href=\"s_midden.php?url=gastenboek&page=$back_page&limit=$limit\">vorige</a> \n");}
for ($i=1; $i <= $pages; $i++)
{
$ppage = $limit*($i - 1);
if ($ppage == $page) {
echo("$i \n");}
else {
echo("<a href=\"s_midden.php?url=gastenboek&page=$ppage&limit=$limit\">$i</a> \n");}
}
if (!((($page+$limit) / $limit) >= $pages) && $pages != 1) {
$next_page = $page + $limit;
echo("<a href=\"s_midden.php?url=gastenboek&page=$next_page&limit=$limit\">volgende</a> \n");}
} ?>
// ins
if ($page != 0) {
$back_page = $page - $limit;
echo("<a href=\"s_midden.php?url=gastenboek&page=$back_page&limit=$limit\">vorige</a> \n");}
for ($i=1; $i <= $pages; $i++)
{
$ppage = $limit*($i - 1);
if ($ppage == $page) {
echo("$i \n");}
else {
echo("<a href=\"s_midden.php?url=gastenboek&page=$ppage&limit=$limit\">$i</a> \n");}
}
if (!((($page+$limit) / $limit) >= $pages) && $pages != 1) {
$next_page = $page + $limit;
echo("<a href=\"s_midden.php?url=gastenboek&page=$next_page&limit=$limit\">volgende</a> \n");}
} ?>
</body>
Gebruik de functie mysql_real_escape_string() om strings die je naar de database wilt schrijven te beveiligen.