2014-01-14 11 views
-5

我使用SQL作爲數據庫來設置PHP重定向器。由於SQL條目是URL,所以有點「。」在像example.com這樣的刺激中。在數據中使用SQL時的SQL問題

現在,當我嘗試獲取對應的目標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

+1

我們展示包含點的查詢和錯誤你 –

+0

後一些代碼,你可以得到你所需要的幫助。 –

+2

這是MySQL還是SQL服務器?它不能兼而有之。 – Zane

回答

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