PHP内爆():传递的参数无效
我有一个php表单,它有一个复选框选项,如果用户选择“其他”,就会出现一个文本输入。这是工作良好,但数据没有提交。我正在获取错误消息PHP introde():传递的参数无效 这是: PHP验证PHP内爆():传递的参数无效,php,implode,Php,Implode,我有一个php表单,它有一个复选框选项,如果用户选择“其他”,就会出现一个文本输入。这是工作良好,但数据没有提交。我正在获取错误消息PHP introde():传递的参数无效 这是: PHP验证 if(!isset($_POST['competitor_model'])){ echo '<p><font color="red" size="+1">• Please select at least one competitor model</font>&l
if(!isset($_POST['competitor_model'])){
echo '<p><font color="red" size="+1">• Please select at least one competitor model</font></p>';
} else {
$compmodel = implode(',', $_POST['competitor_model']);
}
if(!isset($\u POST['competitor\u model']){
echo“•请至少选择一个竞争对手型号”;
}否则{
$compmodel=内爆(“,”,$\u POST['competitor\u model']);
}
这是JS/HTML表单
<script type="text/javascript">
var temp = '';
function disableTxt() {
var field = document.getElementById("other");
if(field.value != '') {
temp = field.value;
}
field.style.display = "none";
field.value = '';
}
function enableTxt() {
document.getElementById("other").style.display = "inline";
document.getElementById("other").value = temp;
}
</script>
<input type="checkbox" value="BMW 3-series" onchange="disableTxt()" name='competitor_model[]'>BMW 3-series<br>
<input type="checkbox" value="Mercedes Benz C-class" onchange="disableTxt()" name='competitor_model[]'>Mercedes Benz C-class<br>
<input type="checkbox" value="Lexus IS" onchange="disableTxt()" name='competitor_model[]'>Lexus IS<br>
<input type="checkbox" value="Audi A4" onchange="disableTxt()" name='competitor_model[]'>Audi A4<br>
<input type="checkbox" value="Other" onchange="enableTxt(Number)" name='competitor_model[]'>Other <em>If yes please submit model</em>
<input type="text" name="competitor_model[]" id="other" style="display:none;" value="<?php if (isset($_POST['competitor_model'])) echo $_POST['competitor_model']; ?>"/>
var temp=“”;
函数disableTxt(){
var字段=document.getElementById(“其他”);
如果(field.value!=''){
温度=字段值;
}
field.style.display=“无”;
field.value='';
}
函数enableTxt(){
document.getElementById(“其他”).style.display=“内联”;
document.getElementById(“其他”).value=temp;
}
宝马3系
梅赛德斯-奔驰C级
雷克萨斯是
奥迪A4
其他如果是,请提交模型
$\u POST['competitor\u model']
是一个数组。请尝试以下操作:
if (is_array($_POST['competitor_model']))
{
$compmodel = implode(",", $_POST['competitor_model']);
}
或者试试看-
echo implode(', ', (array)$_POST['competitor_model']);
我也面临着同样的问题,这正是对我有效的方法
在拉威尔:
$contributes = $request->your_contribute;
$each_contribute = implode(',', (array)$contributes);
错误消息:内爆():在第70行的C:\xampp\htdocs\test\u 01\index.php中传递的参数无效
答:当内爆函数未获取任何要内爆的字符串数组时,会出现此类错误消息。您不应在输入文本上使用competitor\u model[]
。而且,
标签多年来一直被弃用。改用CSS。最后,在使用内爆()
$\u POST['competitor\u model']]
之前,至少应该检查PHP中的是否为数组()。请尝试var\u dump($\u POST['competitor\u model'])
并确认?问题在别处。您可以只var\u dump
并查看是否获得了值吗?可能是因为$\u POST['competitor\u model']
没有生成数组@Raptor是的,我没有注意到它是文本,您的文本是正确的,我们没有将它初始化为数组。