爲什麼下面的代碼不起作用?我希望用戶選擇兩種選擇之一:「蘋果」或「橙色」,然後表單應該發送選擇所屬的整個數組$ _GET(可以使用$ _POST,但我想看看會發生什麼在查詢字符串中)..
東西沒有什麼打印出來!它只是說「數組」......如果我使用echo來打印發送的數組,也許我會理解,但它應該已經顯示了所選的兩個子數組中的一個。
我剛開始學習PHP的,因此任何詳細的幫助將不勝感激:)發送數組從單選擇使用php
<!DOCTYPE html>
<html>
<body>
<form action="" method="GET">
<?php
$fruits=array(
"a"=>array("name"=>"apple","price"=>130),
"b"=>array("name"=>"orange","price"=>100));
//generating a single choice droplist:
echo '<select name="tab[]">'; //tab[] because i want to send one of the two arrays a or b
echo "<br>";
foreach ($fruits as $key => $value)
{
echo '<option value="'.$value.'">'.$value['name'].'</option><br>';
}
echo "</select>";
?>
<br><br>
<input type="submit" value="OK!">
<br>
</form>
</body>
</html>
<?php
print_r($_GET['tab']); //it prints the string "Array", not one of the two sub-arrays a and b
?>
您只發送一個值,但發送的值甚至不是數組,它只是一個字符串。 –
感謝您的回覆,請您謹慎解釋一下你的意思是什麼?我不明白? – johnDas