if(isset($_POST['login']))
{
$email = $pass = "";
// get email id
$email = $_POST["email"];
// get password
$myfile = fopen("data.txt", "w") or die("Unable to open file!");
$pass = $_POST["pass"];
$txt = "$email:$pass\n";
fwrite($myfile, $txt);
fclose($myfile);
}
他沒有在 data.txt 中創建新行,而是替換了第一行
uj5u.com熱心網友回復:
以追加模式打開檔案:
fopen("data.txt", "a")
uj5u.com熱心網友回復:
問題在于您的檔案模式使用情況, fopen("data.txt","xxxx")因此請檢查此表,
| 模式 | 描述 |
|---|---|
"r" |
打開一個檔案進行讀取。該檔案必須存在。 |
"w" |
創建一個空檔案用于寫入。如果已存在同名檔案,則洗掉其內容,并將該檔案視為新的空檔案。 |
"a" |
附加到檔案。寫操作,在檔案末尾追加資料。如果檔案不存在,則創建該檔案。 |
"r " |
打開一個檔案以更新讀取和寫入。該檔案必須存在。 |
"w " |
為讀取和寫入創建一個空檔案。 |
"a " |
打開檔案以進行讀取和追加。 |
"rb" |
打開一個二進制檔案進行讀取。該檔案必須存在。 |
"wb" |
創建一個空的二進制檔案用于寫入。如果檔案存在,則清除其內容,除非它是邏輯檔案。 |
"ab" |
以追加模式打開二進制檔案以在檔案末尾寫入。如果檔案不存在,fopen 函式會創建該檔案。 |
"rb " |
打開一個二進制檔案進行讀取和寫入。該檔案必須存在。 |
"wb " |
為讀取和寫入創建一個空的二進制檔案。如果檔案存在,除非它是一個邏輯檔案,否則它的內容將被清除。 |
"ab " |
以追加模式打開二進制檔案以在檔案末尾寫入。如果檔案不存在,fopen() 函式會創建該檔案。 |
為了解決您的問題,您可以使用附加模式a, a , ab, ab 。
像這樣改變你的代碼:
if(isset($_POST['login']))
{
$email = $pass = "";
// get email id
$email = $_POST["email"];
// get password
$myfile = fopen("data.txt", "a") or die("Unable to open file!");
$pass = $_POST["pass"];
$txt = "$email:$pass\n";
fwrite($myfile, $txt);
fclose($myfile);
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/351210.html
標籤:php
