2013-09-22 58 views
0

我有一個帶有表單的php頁面。PHP加載預先保存的表單

這裏的主要想法是有一個圖片列表,你可以選擇一個複選框。客戶將選擇他想要的圖片並提交表格。

我希望這種形式的信息是保存在一個文件(.txt文件會做到這一點。我不希望在mysql的一個表中的每個客戶端如果可能的話)

然後當管理員會登錄同一頁面(或者客戶說,因爲他對他的選擇不滿意),我希望表格填寫完全像以前保存的一樣。

老實說,我不知道該怎麼做,以及它會被加載的方式。

我可以很容易地寫入.txt文件與PHP變量,但如何加載這些數據,並沒有得到任何錯誤,如果(僅舉例)我刪除文件夾中的文件?

這裏是我的形式與PHP代碼:爲

<form method="post" action="Exec.php"> 

<?php 
$counter = 0; 
foreach (glob("preview/*.jpg") as $file) 
{ 
?> 
<div class="photoscontainer"> 
<a class="big" href="<?php echo $file; ?>"><img src="<?php echo $file; ?>" width="100%" height="auto" alt="Photo <?php echo $file; ?>" /></a> 
<br /> 
<input class="checkbox" type="checkbox" name="Photo <?php echo $counter; ?>" id="<?php echo pathinfo($file,PATHINFO_BASENAME) ; ?>" /> 
</div> 
<?php 
$counter++; 
} 
?> 

</form> 
+0

不要在表單元素名稱中使用空格 – Salim

回答

1

您可以(通過JSONing形式輸入爲例)爲用戶節省的答案爲自定義字段中的數據庫,甚至幾個新領域(一個每個表格字段)...所以肯定不爲每個用戶使用單獨的表格。 這就是數據庫的用途。

如果您仍然希望使用純文本,則可以使用CSV(逗號分隔值)文件,.ini文件或任何您想要的自定義結構。

所以,值得谷歌搜索:

並避免文件丟失錯誤 - 只需檢查是否file_exists

0

使用文件來存儲數據或數據庫,它確實不會改變任何方式。數據庫通常是首選的方法,但每個客戶端只需要一個表和一個字段。

您需要將表單數據存儲在數據庫或文件中使用serialize或json_encode存儲的數組/對象中。

例如:

<?php 

if(!empty($_GET)){ 
$client_form_data = json_encode($_GET); 
echo $client_form_data; 
} 

?> 

然後使用您的存儲值建立自己的形式。

只要發生錯誤 - 您需要開發一種方法來使用條件語句捕獲潛在的錯誤。