php - 使用 PHP 从 MySQL 数据库中选择带有通配符的 IP

标签 php mysql wildcard

我正在尝试根据客户端的 IP 地址在客户端浏览器上执行 Javascript。我有一个用户信息表,比如他们的名字,另一个表有 IP 和在他们身上执行的 Javascript。

例如,我希望 IP 为 192.168.0.*(我的本地网络)的每个人在每次查看此页面时都被重定向到 Google。在数据库中,列出的 IP 是 192.168.0.%,在 javascript 列中我有 window.location.href = 'http://www.google.com';

IP 为 192.168.0.5 的人访问了我的页面。 PHP 运行 SQL 查询来查找其 IP 并检查是否有任何特定的 Javascript 需要执行(如果它不在数据库中,则客户端不会发生任何事情)。它应该发现 window.location.href = 'http://www.google.com'; 需要执行,因为它们符合通配符。

我能否在 SQL 表的条目中保留通配符,并且仍然让它们的行为就像在查询中使用一样? mysql_query("SELECT javascript_to_execute FROM ip_table WHERE ip='$user_IP'"); 工作吗?

最佳答案

是的,您可以将通配符 % 存储为字符串的一部分。 IP 范围 192.168.0.* 可以作为 192.168.0.% 保存在您的数据库中。然后查询将是 SELECT javascript FROM ip_table WHERE '$user_IP' LIKE ip

关于php - 使用 PHP 从 MySQL 数据库中选择带有通配符的 IP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12124902/

相关文章:

php - 使用Symfony 2.3引发PHP通知异常

PHP7 - 类型提示可信吗?

php - WHERE 条件下的变量

mysql - #1215 - 无法添加外键约束 :/

带通配符 (*) 的 Dockerfile 符号链接(symbolic link)不起作用

java - 用于搜索/查找的目录路径中正则表达式中的通配符?

php:将多个csv文件导入mysql表

php - 从 MySql 数据库中读取 č ć đ š ž 等符号

mysql - 一个困难的查询代码

excel - 删除单个单元格中变量字符串的多个实例