Lave sprogfilter i PHP :o)
HEJSA!Nu er lille lalleglade jeg begyndt på det sjove internetkodnings sprog, PHP.
Og stolt som jeg er har jeg lavet en tagwall, med en lille admin del og IP ban.
Og jeg vil gerne udvide den så meget som jeg nu kan, så nu vil jeg lave et sprogfilter, men hvordan? :o
Jeg tror at det er noget med:
$forbudte_ord = array("Her", "Skal", "De", "Forbudte", "Ord", "Stå");
$besked = str_replace($forbudte_ord,"*Fyfy*",$besked);
Hvis det er rigtigt, så er det jo godt. Men HVOR i koden skal den sættes ind?
Her er koden:
<?
$dato = date('Y-m-d H:i:s', time());
$ip = $_SERVER['REMOTE_ADDR'];
$minip = "80.198.57.156";
$_SESSION['IP'] = $ip;
include("db.php");
if( !empty( $_POST['navn'] ) && !empty( $_POST['besked'] ) )
{
$sql = "INSERT INTO guestbook (navn, besked, ip, dato) VALUES ('$_POST[navn]','$_POST[besked]','$_POST[ip]','$_POST[dato]')";
mysql_query($sql, $con) or die('Error: ' . mysql_error());
}
elseif ($_GET[action] == "delete"){
mysql_query("delete from guestbook where id='$_GET[id]';");
header("location:tagwall.php?action=admin");
}
$result = mysql_query("SELECT * FROM ban") or die(mysql_error());
while ($row = mysql_fetch_assoc($result))
{
if($ip == "$row[ip]"){
exit("Du er blevet bannet!");
header("location:bannet.php");
}
}
?>
<html>
<head>
<title>Tagwall v1.4</title>
<style type="text/css">
body, td, tr {
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size: 11px;
font-style: normal;
color: #000000;
}
.tagwall {
border: 1px dotted #000000;
background-color:#FFFFFF;
}
</style>
</head>
<body style="background-image:url(bg.gif);">
<center>
<table border='1' cellpadding='0' cellspacing='0' style='border-collapse: collapse; border-style: dashed; border-width: 1' bordercolor='#111111' width='300' id='AutoNumber1'>
<tr><td style="background-color:#FFFFFF; border-style:dashed; border-width:1px;" width='300'>
<p align="center"><strong>Tagwall v1.4</strong></p>
</td></tr><tr> <td style="background-color:#FFFFFF;">
<form method="post" action="tagwall.php">
Navn:<br>
<input type="text" name="navn" maxlength="10"><br />
Besked:<br />
<textarea name="besked" rows="5" cols="30">
</textarea><br />
<input type="submit" value="Skriv" /> <input type="submit" value="Opdater"> <?php if ($_SESSION['IP'] == "$minip"){?>
<input type="button" value="Ban IP" HREF="java script:void(1)"
ONCLICK="window.open('ban.php','miniwin','toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=0,resizable=0,width=160,height=30')">
<?php
}
?>
<input name="ip" type="hidden" value="<?php echo $ip; ?>">
<input name="dato" type="hidden" value="<?php echo $dato; ?>"
</form>
</td></tr></table><br>
<?
$result = mysql_query("SELECT * FROM guestbook order by id DESC limit 7") or die(mysql_error());
while ($row = mysql_fetch_assoc($result))
{?>
<table border='1' cellpadding='0' cellspacing='0' style='border-collapse: collapse; border-style: dashed; border-width: 1; padding-left: 4; padding-right: 4; padding-top: 1; padding-bottom: 1' bordercolor='#111111' width='300' id='AutoNumber1' height='17' class="tagwall">
<tr>
<th scope="col" width="130" style="background-color:#FFFFFF; border-style: dashed; border-width: 1" class="tagwall"><p align="left">
<?php echo $row['navn']; ?>
</p></th>
<th scope="col" style="background-color:#FFFFFF; border-style: dashed; border-width: 1" class="tagwall"><p align="right">
<?php echo $row['dato']; ?>
</p></th></tr>
<tr>
<td colspan="2" style="background-color:#FFFFFF; border-style: dashed; border-width: 1" class="tagwall">
<?php echo (nl2br($row['besked'])); ?>
</td></tr>
<?php if ($_SESSION['IP'] == "$minip"){?>
<tr>
<td style="border-style: dashed; border-width: 1" colspan="2">
<?php echo "<a href='tagwall.php?action=delete&id=$row[id]'>Slet</a> - <strong>" . $row[ip] . "</strong>";
} ?>
</td></tr>
</table><br>
<?php
}
?>
</center>
</body>
</html>
Nogle der kan hjælpe? :D