1
你好傢伙我是新來的PHP。我有一個註冊表單,我試圖每次向該文件寫入每行用戶一行。這是我有,但由於某種原因,它不工作。我正在使用Windows。提前致謝。php一次寫入一行文件
$outputstring = $fname. "\t". $lname. "\t". $email. "\t". $address. "\t". $phone. "\t". $login. "\n";
@ $fp = fopen("orders.txt", 'ab');
flock($fp, LOCK_EX);
if(!$fp)
{
echo "<h1>Registrtion failed</h1></body></html>";
exit;
}
fwrite($fp, $outputstring, strlen($outputstring). "\n");
flock($fp, LOCK_UN);
fclose($fp);
我不相信這是'爲模式B'選項,所以'的fopen( 「orders.txt」, 'A');'就足夠了。該文件是否可寫? –
imo,首先從'@ $ fp = fopen(「...' - 刪除'@' - 你想看到每一個錯誤,警告和通知,並修復它們:)接下來,你想追加到文件。好吧,如果它不存在呢?因此,在'fopen append'之前對文件進行測試,如果文件不存在,則創建文件。不要依賴'it should create it anyway behavior'作爲這並不一定適用於網絡共享和可移動設備等。 –
此外,fwrite($ fp,$ outputstring,strlen($ outputstring)。「\ n」);'沒有任何意義;它應該是'fwrite ($ fp,$ outputstring。「\ n」);'(第三個參數是可選的,而''n''換行符應該被附加到數據中,而不是它的長度)。 –