【发布时间】:2018-11-13 12:49:04
【问题描述】:
我有一个 php 我的管理数据库,
我不太了解如何构建它,但遵循this answer 我做了一个
ip int(11) UNSIGNED
IP 值
我想存储用户的IP,这样他们就不能两次访问我的页面了。
我做以下查询
$ip = inet_pton($_SERVER['REMOTE_ADDR']);
$request = "INSERT INTO `users` (`ip`) VALUES (".$ip.")";
$result = $dbh->query($request);
但这给了我一个空值。并且没有任何内容添加到数据库中
编辑:
所以完整的请求是:
function getIPforBDD(){
return inet_pton($_SERVER['REMOTE_ADDR']);
}
$request = "INSERT INTO `users` (`ip`, `finish`, `lastPage`) VALUES (".getIPforBDD().", ".$GLOBALS["userHasFinish"].", questionnaire_initial.php)";
$result = $dbh->query($request);
【问题讨论】:
-
请显示完整的用户表列。
-
inet_pton()返回一个字符串,而不是整数。如果你改用ip2long(),你会得到一个整数。这更好,因为 MySQL 比较整数比比较字符串更快。
标签: php database phpmyadmin ip