2010-03-03 76 views
0

我有一個形式,它傳遞了以下值:PHP:沒有收到一些POST變量?

image_title, 
image_description, 
image_file 

我想多次提出這種形式,所以我做了以下內容:

image_title_1, 
image_description_1, 
image_file_1 

image_title_2, 
image_description_2, 
image_file_2 

多次,所以我有場1 - 10.我提交表單並打印出POST數組的內容,唯一的問題是數組中不存在「image_title_1」之後的任何「image_title_#」:但其他所有內容都是這樣。

所以數組將類似於:

image_title_1 -> "title!" 
image_description_1 -> "description!" 
image_file_1 -> file 

image_description_2 -> "description!" 
image_file_2 -> file 

image_description_3 -> "description!" 
image_file_3 -> file 

所以制定出它是什麼,我換的說明和標題對方,但仍標題不顯示1後,我不做任何處理,我真的只是打印出$ _POST數組之前甚至觸摸它。這沒有意義,可能是什麼原因造成的?

澄清:即使我重新安排訂單,問題是「image_title_#」(例如:image_title_3)沒有通過,除了image_title_1。輸出前我不做任何處理。

編輯HTML源代碼就是:

<form method="post" action=""> 
    <input type="text" name="image_title_1"></input> 
    <input type="text" name="image_description_1"></input> 
    <input type="text" name="image_file_1"></input> 

    <input type="text" name="image_title_2"></input> 
    <input type="text" name="image_description_2"></input> 
    <input type="text" name="image_file_2"></input> 

    <input type="text" name="image_title_3"></input> 
    <input type="text" name="image_description_3"></input> 
    <input type="text" name="image_file_3"></input> 

    <input type="submit" name="submit" value="submit"></input> 
</form> 
+0

你能顯示錶單的HTML源代碼嗎? –

+0

向我們展示您的表單生成的* HTML。 –

+0

如果可以的話,你應該顯示你的代碼。 – Sarfraz

回答

2

一個更好的解決辦法是將它們轉換爲數組,試試這個:現在

<form method="post" action=""> 
    <input type="text" name="image_title[]"></input> 
    <input type="text" name="image_description[]"></input> 
    <input type="text" name="image_file[]"></input> 

    <input type="submit" name="submit" value="submit"></input> 
</form> 

,在你的PHP腳本,你可以得到他們的陣列是這樣的:

print_r($_POST['image_title']); 
print_r($_POST['image_description']); 
print_r($_POST['image_file']); 

後綴字段名稱與[]將其轉換爲數組。另一件好事是它縮短了您的代碼。

一旦有了數組,你可以通過他們循環使用foreach

foreach($_POST['image_title'] as $key => $value) 
{ 
    // process them any way you want 
} 
0

代碼工作。我只是剪切並粘貼你的表格並做一個測試提交

Array 
(
[image_title_1] => 1 
[image_description_1] => 2 
[image_file_1] => 3 
[image_title_2] => 4 
[image_description_2] => 5 
[image_file_2] => 6 
[image_title_3] => 7 
[image_description_3] => 8 
[image_file_3] => 9 
[submit] => submit 
)