这里我们再来一次,我需要一些帮助。 preg_match无法正常工作,因为它不验证任何站点链接。我需要第二双眼睛来帮助我看看我的代码有什么问题。URL缩写,preg_match不验证
if (!empty($_POST["url"]))
{
if (filter_var($_POST["url"], FILTER_VALIDATE_URL))
{
if (!preg_match('/^http(s)?:\/\/(?:[a-z\d-]+\.)*mysite.com(?:(?=\/)|$)/i', $url))
{
echo "<strong>Error</strong>: Not a valid Mysite.com link or could shorten link";
} else {
$result = $sql->query("SELECT `id` FROM `shortcuts` WHERE `url`='{$_POST["url"]}'");
$id = $result[0]["id"];
if (empty($id))
{
$result = $sql->query("INSERT INTO `shortcuts` (`url`) VALUES ('{$_POST["url"]}')");
if ($result)
{
$id = $sql->get_increment();
if (empty($id))
{
echo "FAILED ENCODE";
exit(1);
}
}
$shorturl = "http://mysite.com/".encode($id);
}
}
}
}
你能发布一些例子输入,好吗? –
金字塔代码的命运。 – hakre