我正在使用SQL作为数据库设置PHP重定向器。由于SQL条目是URL,因此有点“。”在像example.com这样的刺痛中。
现在,当我尝试获取对应的目标URL时,SQL总是返回0行。我检查了几个不同的数据包,并且当URL包含一个点时,查询出错了。有没有人知道如何使查询成为可能,或者我是否必须用不同的符号替换所有点?
抱歉,我是Stackoverflow的新手。这是我的疑问:
$url="example.com";
$result=mysqli_query($db,"SELECT * FROM links WHERE source='".$url."' AND active=1");
我回来了0行,但测试的$ url肯定存在(从phpMyAdmin复制)。它是Ubuntu 12.04计算机上的mySQL服务器。
干杯, JCK
答案 0 :(得分:0)
您可以使用正则表达式来匹配网址吗?您没有包含查询...
/^(https?:\/\/)?([\da-z\.-]+)\.([a-z\.]{2,6})([\/\w \.-]*)*\/?$/
以上是匹配包含https和双正斜杠
的URL的正则表达式此处包含数字,字母,点和连字符。
在MySQL中你可以使用它来匹配它:
http://dev.mysql.com/doc/refman/5.1/en/regexp.html#operator_regexp