如果我输入了访问者应输入自己网址的文字
<form name="frm" method="post" action="addlink.php">
url : <input type="text" name="url" id="url">
<button type="submit" class="options green">add</button>
</form>
和addlink.php这样的代码
$url = $_POST['url'];
$sql = "INSERT INTO $table_urls (url) VALUES ('$url')";
mysql_query($sql, $conn) or die(mysql_error());
我想禁止例如www.something.com/anything所以如果访问者输入任何网址,请访问www.something.com/else - www.something.com/elsething ..etc
它检测到something.com并给出错误,如
<?PHP if(XXXXXXXX){
echo "somthing.com is not allowed";
}else{
$sql = "INSERT INTO $table_urls (url) VALUES ('$url')";
mysql_query($sql, $conn) or die(mysql_error());
}
如果是的话!我想说如果$url
有任何something.com然后给予不允许!
答案 0 :(得分:1)
我想要同样的事情。我是用VB做的,但请检查一下这是否有帮助 Extract words from a string and verify whether or not they exist in a database in VB
只需在空格处分割单词并验证数据库中是否存在该值。如果是,则替换为****
或您想要的任何内容,并在过滤单词时使用StringBuilder,只有当单词包含禁用值时才附加每个单词,它将附加****
并返回原始字符串
答案 1 :(得分:1)
您可以使用PHP的函数preg_match()
来查找完全匹配:
if (preg_match('/something.com/i', $url) > 0) {
// Your error message here
}
有关使用该功能的更多信息,您可以在此处查看:http://php.net/manual/en/function.preg-match.php
答案 2 :(得分:0)
$parsed_url=parse_url($url);
if (strtolower($parsed_url['host']) == 'www.something.com' || strtolower($parsed_url['host']) == 'something.com')
{
$error=true;
}