Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/58.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何将我的ip添加到数据库?_Php_Mysql_Database - Fatal编程技术网

Php 如何将我的ip添加到数据库?

Php 如何将我的ip添加到数据库?,php,mysql,database,Php,Mysql,Database,我在将ip添加到数据库时遇到问题。 我有以下代码: $ip = $_SERVER['REMOTE_ADDR']; $long = ip2long($ip); if ($polaczenie->query("INSERT INTO post VALUES (NULL, '$long', '$massage', '$datum')")){ $dodano = "Added post to datebase"; } 此代码正在向表中添加奇怪的数字。例如:520125797 您知道如何

我在将ip添加到数据库时遇到问题。 我有以下代码:

$ip = $_SERVER['REMOTE_ADDR'];
$long = ip2long($ip);
if ($polaczenie->query("INSERT INTO post VALUES (NULL, '$long', '$massage', 
'$datum')")){
    $dodano = "Added post to datebase";
}
此代码正在向表中添加奇怪的数字。例如:520125797 您知道如何将ip添加到数据库。

基于:-

ip2long-将包含(IPv4)互联网协议点地址的字符串转换为长整数

因此,它正在做正确的事情

您必须直接使用
$ip
:-

$ip = $_SERVER['REMOTE_ADDR'];
if ($polaczenie->query("INSERT INTO post VALUES (NULL, '$ip', '$massage', 
'$datum')")){
    $dodano = "Added post to database";
}

注意:-正如我们所讨论的,您需要将列数据类型更改为
Varchar(256)
,而不是
BIGINT

阅读此操作。您需要直接使用
$ip
进行插入
ip2long()
正在做它所做的事情,即删除ip2long$长=$ip;好的,现在我有了这个代码:$ip=$\u服务器['REMOTE\u ADDR'];如果($polaczenie->query(“插入到post值(NULL,$long','$按摩','$datum')){$dodano=“Added post to datebase”;}但我在datebase中只有图310ok,我做了这个,但在datebase中我只有图310。我想应该是31.0.125.101你知道我现在应该怎么做才能得到basedate正确的ip吗?@user8160814你想保存ip的列的类型是什么?列的类型是biginuse varchar(256)或varchar(100)