preg_match wilt niet
gastenboek werkt prima maar sinds kort wordt ze gespammed met constant berichten als "Hi! Good site respect! visit www.iederekeeranders.com".
nou dacht ik, als ik gewoon als voorwaarde neer zet dat "Hi! Good site" niet in een bericht voor mag komen dan ben ik er vanaf.
maar gek genoeg pakt hij de preg_match niet.
zo ziet mijn code eruit:
if ($action == "sign"){
if ($trigger){
if ($name == ""){ print 'Name field is empty'; $error = "ja"; }
if ($msg == ""){ print 'Message field is empty'; $error = "ja"; }
if (preg_match("{Hi! Good site}",$msg)){ print 'No spam asshole'; $error = "ja"; }
if ($name != ""&&$msg != ""&&!preg_match("{Hi! Good site}",$msg)){
include 'smileys.php';
$newmsg = str_replace($zoeksmiley,$vervangsmiley,$msg);
$zoek2 = array(chr(13));
$vervang2 = array("<BR>");
$nieuwtext = str_replace($zoek2,$vervang2,$newmsg);
$zoek = array('http://');
$vervang = array("");
$homepagec = str_replace($zoek,$vervang,$homepage);
if ($homepage != ""){
$homepage2 = "http://$homepagec";
}
if ($homepage == ""){
$homepage2 = "";
}
print '
<body background="'.$bleh2['bg'].'" bgcolor="'.$bleh2['bgcolor'].'" onload="wait();">';
mysql_query("INSERT INTO comments(afzender,bericht,datum,tijd,homepage,aan,ip) VALUES('$name','$nieuwtext','$datum','$tijd','$homepage2','$usr','$ip')");
print '<BODY onload="wait()">
Thank you for signing the guestbook of '.$bleh2['naam'].'!';
};};
if (!$trigger||$error == "ja"){
print '
<body background="'.$bleh2['bg'].'" bgcolor="'.$bleh2['bgcolor'].'">
<center>
<FORM method="POST" action="gb.php?actn=sign&usr='.$usr.'&lan='.$lan.'">
Name: <input type="text" maxlength="20" name="name"><BR>
Homepage: <input type="text" maxlength="150" name="homepage"><BR>
Message:<BR>
<TEXTAREA name="msg" style="width: 80%; height: 70%;" rows="20"></TEXTAREA><BR>
<INPUT type="hidden" value="trigger" name="trigger">
<INPUT type="submit" class="button" value="submit!">
</FORM>';
};};
Gewijzigd op 01/01/1970 01:00:00 door Dennis
Code (php)
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
<?php
$pattern = "/Hi! Good site/i";
if(preg_match($pattern, $jedata)) {
echo "Optyfen";
} else {
//de rest
}
?>
$pattern = "/Hi! Good site/i";
if(preg_match($pattern, $jedata)) {
echo "Optyfen";
} else {
//de rest
}
?>
nope, ook niet helaas.
Code (php)
1
2
3
4
5
6
7
2
3
4
5
6
7
<?php
$str = 'Hi! Good site respect! Visit: www.site.com';
if (preg_match ('/Hi! Good site respect!/', $str)) {
echo 'niet toegestaan';
}
?>
$str = 'Hi! Good site respect! Visit: www.site.com';
if (preg_match ('/Hi! Good site respect!/', $str)) {
echo 'niet toegestaan';
}
?>
misschien teveel "if" statements ofzo?
Gewijzigd op 01/01/1970 01:00:00 door Dennis