2013-03-28 111 views
-2

我正在使用臨時文本文件將HTML Web表單數據提交到數據庫。基本上這個過程是: 提交表單數據==>寫入表單數據到temp.txt ==>提交temp.txt數據到數據庫。 我知道如何將數據寫入文本文件以及如何從文本文件讀取數據。 如何在文本文件關閉後立即將數據寫入數據庫?讀取和寫入PHP和MySQL中的臨時文件

+1

1顯示一些代碼。 2.爲什麼不在記憶中做? – 2013-03-28 07:46:45

+0

你最好將它保存在文件中的數據它自己..再次寫入的開銷。:) – 2013-03-28 07:48:37

+0

爲什麼只是爲什麼!?您可以將表單數據目錄輸入到數據庫中。爲什麼要製作臨時文件?你試圖獲得什麼?你可以用'$ _REQUEST'訪問所有的數據,如果有文件上傳使用'$ _FILES' – botenvouwer 2013-03-28 07:48:57

回答

0

我沒有看到將表單數據寫入文本文件時立即寫入數據庫的問題。首先將其寫入文本文件只會減慢過程。

在任何情況下:

$data = $_POST['data']; 
// Make sure to check the data before insertion to the database! 
$file = fopen('temp.txt', 'w'); 
fwrite($file, $data); 
fclose($file); 

// Write the data to the database here. 

$data = $_POST['data']; 
// Make sure to check the data before insertion to the database! 
$file = fopen('temp.txt', 'w+'); 
fwrite($file, $data); 
// Write the data here, and save yourself from having to open the file again. 
fclose($file); 
+0

你應該真的使用['tmpfile'](http://php.net/manual/en/function.tmpfile.php )。 – 2013-03-28 08:02:28

+0

感謝Xenolithic。我在這方面有些小竅門,並且正在通過一個教程,提供了我發佈的方法。這清除了它! – 2013-03-28 08:06:27

+0

我從來沒有使用過這個功能,但我會記住,謝謝。我決定使用'fopen()'的主要原因是因爲詢問指定了文件名/擴展名,所以我只是假定它是一個實際的文件,而不僅僅是一個合法的臨時文件。 :P – Xenolithic 2013-03-28 08:08:28