我有一個記錄用戶IP地址的文本文件,我試圖將每個現有地址與訪問者的IP地址進行比較以查看它們是否匹配。如何將文本文件的行與變量進行比較
如果它們不匹配,我想將用戶的IP地址寫入文本文件 - 否則我不希望將任何內容寫入文本文件。
目前,所有IP地址正在寫入文本文件,即使它們匹配。任何幫助表示讚賞,在此先感謝。
<?php
$ip = $_SERVER['REMOTE_ADDR'];
$ipFile = 'ip.txt';
$openip = fopen($ipFile, 'r');
$exists = false;
while(!feof($openip))
{
$existingip = fgets($openip);
if($existingip == $ip) {
echo "Your ip already exists <br>";
$exists = true;
}
}
fclose($openip);
if($exists == false) {
$openip = fopen($ipFile, 'a');
fwrite($openip, $ip . "\r\n");
echo "Your IP has been logged <br>";
fclose($openip);
}
else {
echo "Your IP is already stored <br>";
}
?>
爲什麼不使用數據庫? INSERT IGNORE'會簡單得多。 – DocRattie