我正在寫一個小腳本,用於檢查用戶是否在名爲whitelist.txt的文件中有他的用戶名。如果沒有找到它的用戶名添加。這是腳本:使用PHP讀取和搜索txt文件的問題
$fh = @fopen("whitelist.txt", 'a+');
$stringData = $_POST[usr]. "\n";
if ($fh)
{
while (!feof($fh))
{
$buffer = fgets($fh);
if (strpos($buffer, $stringData) == TRUE)
echo "This username is already whitelisted.";
elseif (strpos($buffer, $stringData) == FALSE) {
fwrite($fh, $stringData);
echo "Username ". $stringData. " is now whitelisted.";
}
}
fclose($fh);
}
我現在得到的,如果我第一次輸入一個新的用戶名,一切都好。第二次輸入一個新的用戶名時,它會被複制。問題在繼續:如果我輸入一個現有的用戶名,它會被添加兩次,並顯示「此用戶名已被列入白名單」。沒有顯示。每個用戶名都在一個新行中。
謝謝你的時間和幫助!
尖叫出來使用的數據庫。 – 2012-03-11 23:11:47
其他軟件使用的文件,所以我堅持使用它。 – andreicek 2012-03-11 23:13:42
在這種情況下,您應該使用===不==,請參閱手冊頁爲什麼 – 2012-03-11 23:15:37