2017-07-19 51 views
-1

我有問題將我的ip添加到數據庫。 我有以下代碼:如何將我的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添加到數據庫嗎?

+1

http://php.net/manual/en/function.ip2long.php閱讀它做了什麼。 – castis

+0

你需要直接使用'$ ip'來插入。 'ip2long()'正在爲 –

+0

簡單地刪除ip2long; $ long = $ ip; – Carca

回答

0

基於ip2long() Manual: -

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

+0

好的我已經做到了這一點,但在數據庫中我只有圖310.我認爲它應該是31.0.125.101 – Paul

+0

你知道我現在應該做什麼來獲得基於正確的IP ? – Paul

+0

@ user8160814你想要保存ip的列的類型是什麼? –

相關問題