php - 匹配 url mysql

标签 php sql mysql

$value = 'http://www.mydomain.com/this-is-page-one'

我的 mysql 表中有一个名为“urls”的字段,其中存储不同的 url,例如:

http://www.bdsada.com/dsadsfsaf
http://www.comddsad.com/dsadacsdfs

等等

我想让我的值与其中一个网址最匹配。 - 执行sql查询 也许是重复字母的数量。

请举一个实际的例子......拜托

最佳答案

不确定“最佳匹配”到底是什么意思。假设您将 URL 存储在上面列出的数据库中 (http://www.website.com/extension)。此外,输入可能包含也可能不包含“http://”、“www.”或 URL 中的任何其他 GET 变量。在提交数据库查询的字符串之前,我将执行以下操作:

从 URL 中删除“http://”或“https://”。

$valueStrip = explode("//",$value);
$value = $valueStrip[1];

删除任何获取变量

$valueStrip = explode("?",$value);
$value = $valueStrip[0];

此外,请确保清除它以防止任何 SQL 注入(inject)攻击,这应该有效

$value = mysql_real_escape_string($value);

假设“url”是表的名称,“domainName”是实际域名的列名。因此,您的查询可能如下所示

$query = mysql_fetch_array(mysql_query("SELECT url FROM domainName WHERE url LIKE '%$value%'"));

我应该注意,我还没有测试代码,它可以变得更高效。

关于php - 匹配 url mysql,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4238983/

相关文章:

php按日期从mysql获取数据

javascript - 字符串中的幻影空间

sql - 格式化包含多个嵌套 SELECTS 的 CASE 的更好方法

sql - 在 Access 97 中的 SQL 查询中 Access 另一个受密码保护的数据库

mysql - MySQL 使用哪个版本的 UUID?

php - 新的引用不给出警告

php - Select MySQL 出现重复条目​​ - 非常奇怪

mysql - Magento - 如何按最大值选择mysql行?

mysql - 将动态数字行转入列而不进行分组

mysql - Postgresql 模式匹配 utf 8