我的php页面包含一个带有多个不同名称的单选按钮的表单,如下所示:
for( $i=1; $i<=$unknownNumber; $i++ ){
echo("<input type=\"radio\" name=\""."radio".$i."\" value=\"cercle\" onchange=\"submit(this.form)\" checked >");
echo("<input type=\"radio\" name=\""."radio".$i."\" value=\"rectangle\" onchange=\"submit(this.form)\" >");
echo("<input type=\"radio\" name=\""."radio".$i."\" value=\"triangle\" onchange=\"submit(this.form)\" >");
}
如何从流程php页面通过$_POST[" ? "]
获取表单数据?
我不知道我应该在$_POST["..."]
的引用中写什么,因为单选按钮的名称不同。
我的一位朋友建议我通过以下方式获取这些数据,
foreach ($_POST as $answer) {
}
我使用此方法获取它们,但我被阻止使用ajax。
$(document).ready(function() {
$('#myForm').on('submit', function() {
var radio = $('#....').val(); // I dont know which name i should use here
$.post( "process.php", { radio: ? }, function(data){
alert('Good');
});
return false;
});
});
答案 0 :(得分:1)
我修改了你的代码。在php中删除了onclick事件
for( $i=1; $i<=$unknownNumber; $i++ ){
echo("<input type=\"radio\" name=\""."radio".$i."\" value=\"cercle\" checked>");
echo("<input type=\"radio\" name=\""."radio".$i."\" value=\"rectangle\">");
echo("<input type=\"radio\" name=\""."radio".$i."\" value=\"triangle\">");
}
JS修改了这个
$(document).ready(function() {
$('input[name^="radio"]').on('click', function() {
$.post( "process.php", $("#myForm").serialize(), function(data){
alert('Good');
});
});
});
每次点击收音机到您的PHP脚本后,“process.php”将以完整的形式发送。这里有一个例子:POST数据:
收音机1:三角形
第二广播电台:色格拉
radio3:三角形
根据此要求,您将拥有
$_POST["radio1"]='triangle';
$_POST["radio2"]='cercle';
$_POST["radio3"]='triangle';
更新!!!!
这样的smth这是我的process.php
$myArray = $_POST;
var_dump($myArray);