這使我瘋狂。我知道還有其他問題可以解決這個問題,我想我已經嘗試了我讀過的所有內容。 要麼我誤解了一些非常基本的東西,要麼需要另一雙眼睛。如何通過POST通過php將所有選中的選項從選擇表單中取出?
所以有一個會話已經開始,當這個代碼與登錄憑據和whatnot會見。我試圖從選擇的表單中取出選中的選項並使用它們。
if(isset($_POST['select']))
{
if (is_array($_POST['select'])) {
foreach ($_POST['select'] as $x)
echo "<p>$x</p>";
}
else {
echo "<p> There is no selection </p>";
}
}
echo <<<_END
<form method='post' action='profile.php' enctype='multipart/form-data'>
<h3>Enter or edit your details </h3>
<textarea name='text' cols='50' rows='3'>$text</textarea><br />
<br />
<span class='fieldname'>YY:</span>
<select name="select[]" multiple="multiple" >
<option value="Opt1"> Choice1</option>
<option value="Opt2"> Choice2</option>
<option value="Opt3"> Choice3</option>
<option value="Opt4"> Choice4</option>
</select>
</span><br /><br />
_END;
?>
<input type='submit' value='Save Profile' />
</form></div><br /></body></html>
我只貼中的相關位。
當我做我的選擇,然後單擊保存我只得到其他分支。
編輯:似乎用窗體上的默認編碼嘗試沒有解決此問題。
你不是指$ _POST []不是$ _POST {}? –
這是在實際的代碼。從這裏複製錯字。 – user3046061
請大家記住,我有這個確切的代碼位,在另一個頁面上有相同的表單,它確實有效。我試過用空,is_array,沒有多個值。仍然無法得到任何形式的東西。某些POST數據會丟失嗎? – user3046061