Hey Helpmij-leden,
ik ben sinds kort begonnen met php en heb een gastenboek gemaakt, voor op m'n website.
Hij werkt helemaal maar heb de vraag of jullie misschien wat tips ofzo hebben om hem beter te beveiligen of andere aanmerkingen hoe ik hem zou kunnen verbeteren.
Hier zijn de scripts:
contact15.php
contact_plaats.php
Alvast bedankt!!
Gordon:thumb:
ik ben sinds kort begonnen met php en heb een gastenboek gemaakt, voor op m'n website.
Hij werkt helemaal maar heb de vraag of jullie misschien wat tips ofzo hebben om hem beter te beveiligen of andere aanmerkingen hoe ik hem zou kunnen verbeteren.
Hier zijn de scripts:
contact15.php
PHP:
<?php session_start();
$email = $_SESSION['email'];
$sterren = $_SESSION['sterren'];
$naam = $_SESSION['naam'];
$bericht = $_SESSION['bericht'];
$verstuur = $_SESSION['verstuur'];
?>
<!DOCTYPEhtml PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>RepairIt</title>
<meta name="keywords" content="" />
<meta name="description"content="" />
<link href="default.css" rel="stylesheet" type="text/css" />
<link rel="shortcut icon" href="../images/favicon.ico" type="image/x-icon" />
</head>
<body>
<div id="wrapper">
<!-- start header -->
<?php include ("menu.php"); ?>
<!-- end header -->
</div>
<!-- start page -->
<div id="page">
<!-- start content -->
<div id="content">
<div class="post">
<h1 class="title">Gastenboek</h1>
<div class="entry">
<p>Heb ik uw pc gerepareed of geholpen met andere dingen, dan vind ik het erg leuk om daar een reactie op te krijgen. Dat kan vanaf nu in dit gastenboek!
</p>
<p>
<?php
$datum = date("d-m-Y");
$tijd = date("G:i");
$dent = $datum . " @ " . $tijd;
if ($verstuur == 1)//check of er een bericht vertuurd moet worden
{
if (strlen($bericht) > 20)//check grote van bericht
{
if (strlen($naam) != 0)//check grote van de naam
{
$file = fopen("reacties.txt","r");//open de oude berichten
$reacties = fread($file,filesize("reacties.txt"));//sla de oude berichen op
if ($sterren == 1)
$ster = "<img src='images/ster.png' alt='' width='17
' height='22' />";
elseif ($sterren == 2)
$ster = "<img src='images/ster.png' alt='' width='17
' height='22' /><img src='images/ster.png' alt='' width='17
' height='22' />";
elseif ($sterren == 3)
$ster = "<img src='images/ster.png' alt='' width='17
' height='22' /><img src='images/ster.png' alt='' width='17
' height='22' /><img src='images/ster.png' alt='' width='17
' height='22' />";
elseif ($sterren == 4)
$ster = "<img src='images/ster.png' alt='' width='17
' height='22' /><img src='images/ster.png' alt='' width='17
' height='22' /><img src='images/ster.png' alt='' width='17
' height='22' /><img src='images/ster.png' alt='' width='17
' height='22' />";
elseif ($sterren == 5)
$ster = "<img src='images/ster.png' alt='' width='17
' height='22' /><img src='images/ster.png' alt='' width='17
' height='22' /><img src='images/ster.png' alt='' width='17
' height='22' /><img src='images/ster.png' alt='' width='17
' height='22' /><img src='images/ster.png' alt='' width='17
' height='22' />";
$berichtnieuw = "<table width='500' border='0' cellspacing='0' cellpadding='0'>
<tr>
<td>" . $bericht . "</td>
</tr>
<tr>
<td>" . $naam . " " . $dent . "</td>
</tr>
<tr>
<td>" . $ster . "</td>
</tr>
</table>
<p><img src='images/blok.jpg' alt='' width='500
' height='1' /></p>";
$reactiesnieuw = $berichtnieuw . $reacties;//voeg oude en nieuwe berichten samen
$filew = fopen("reacties.txt","w");//open bestand om te schrijven
fwrite($filew,$reactiesnieuw);//schrijf in bestand
fclose($filew);//sluit bestand
mail("contact@repairit-gouda.nl","nieuwe reactie in gastenboek","u heeft een nieuwe reactie in het gastenboek van" . $naam . "
met het bericht:" . $bericht . "
sterren:" . $sterren . "
om:" . $dent,"From: $naam <$email>");
session_destroy();
}
else
{
echo "<font color= color='#FF0000'>FOUT</font><br />
<form method='post' action='contact_plaats.php' accept-charset='ISO-8859-1'>
<p>Naam:* <font color= color='#FF0000'>U heeft uw naam niet ingevuld</font><br />
<input type='text' name='naam' /> <br />
Email:<em>(niet zichtbaar op de website)</em><br />
<input type='text' name='email' /><br />
Bericht:*<br />
<textarea name='bericht' rows='10' cols='80'></textarea><br />
Beoordeling: <br />
<select name='sterren'>
<option value='5'>5</option>
<option value='4'>4</option>
<option value='3'>3</option>
<option value='2'>2</option>
<option value='1'>1</option>
</select><br />
<input type='submit' />
</p>
</form>
<br />
* = verplicht";
}
}
else
{
if (strlen($naam) != 0)//check grote van de naam
{
echo "<font color= color='#FF0000'>FOUT</font><br />
<form method='post' action='contact_plaats.php' accept-charset='ISO-8859-1'>
<p>Naam:*<br />
<input type='text' name='naam' /> <br />
Email:<em>(niet zichtbaar op de website)</em><br />
<input type='text' name='email' /><br />
Bericht:* <font color= color='#FF0000'>je bericht is te kort</font><br />
<textarea name='bericht' rows='10' cols='80'></textarea><br />
Beoordeling: <br />
<select name='sterren'>
<option value='5'>5</option>
<option value='4'>4</option>
<option value='3'>3</option>
<option value='2'>2</option>
<option value='1'>1</option>
</select><br />
<input type='submit' />
</p>
</form>
<br />
* = verplicht";
}
else
{
echo "<font color= color='#FF0000'>FOUT</font><br />
<form method='post' action='contact_plaats.php' accept-charset='ISO-8859-1'>
<p>Naam:* <font color= color='#FF0000'>U heeft geen naam ingevuld</font><br />
<input type='text' name='naam' /> <br />
Email:<em>(niet zichtbaar op de website)</em><br />
<input type='text' name='email' /><br />
Bericht:* <font color= color='#FF0000'>je bericht is te kort</font><br />
<textarea name='bericht' rows='10' cols='80'></textarea><br />
Beoordeling: <br />
<select name='sterren'>
<option value='5'>5</option>
<option value='4'>4</option>
<option value='3'>3</option>
<option value='2'>2</option>
<option value='1'>1</option>
</select><br />
<input type='submit' />
</p>
</form>
<br />
* = verplicht";
}
}
}
else
{
if (isset($_COOKIE["bericht"]))//check of er de afgelopen 20 minuten een bericht is verstuurd
echo "U heeft de afgelopen 20 minuten al een bericht geplaats hierna kunt u weer een bericht plaatsen.";
else
{
echo "
<form method='post' action='contact_plaats.php' accept-charset='ISO-8859-1'>
<p>Naam:*<br />
<input type='text' name='naam' /> <br />
Email:<em>(niet zichtbaar op de website)</em><br />
<input type='text' name='email' /><br />
Bericht:*<br />
<textarea name='bericht' rows='10' cols='80'></textarea><br />
Beoordeling: <br />
<select name='sterren'>
<option value='5'>5</option>
<option value='4'>4</option>
<option value='3'>3</option>
<option value='2'>2</option>
<option value='1'>1</option>
</select><br />
<input type='submit' />
</p>
</form>
<br />
* = verplicht";
}
}
?>
</p>
<p>
</div>
<p></p>
<div class="entry">
<img src='images/blok.jpg' alt='' width='500
' height='1' />
<?php include("reacties.txt") ?>
</div>
<div class="meta"></div>
</div>
<div class="post">
<h2 class="title"> </h2>
<div class="entry">
<p> </p>
</div>
<div class="meta">
<p class="links"><a href="#" class="comments"></a></p>
</div>
</div>
</div>
<!-- end content -->
<!-- start sidebar -->
<?php include("sidebar2.php"); ?>
<!-- end sidebar -->
<div style="clear: both;"> </div>
</div>
<!-- end page -->
<!-- start footer -->
<?php
include("footer.php");
?>
</body>
</html>
contact_plaats.php
PHP:
<?php
session_start();
setcookie("bericht", "1", time()+1200);
$_SESSION['verstuur'] = 1;
$bericht = $_POST["bericht"];
$bericht = htmlentities($bericht);
$bericht = nl2br($bericht);
$_SESSION['bericht'] = stripslashes($bericht);
$_SESSION['naam'] = $_POST["naam"];
$_SESSION['sterren'] = $_POST["sterren"];
$_SESSION['email'] = $_POST["email"];
?>
<meta http-equiv="refresh" content="0; url=http://www.repairit-gouda.nl/contact15.php">
Alvast bedankt!!
Gordon:thumb: