Php PDO多选问题
我正在数据库中插入表单多选值,但它只插入最后一个选定值。如何解决这个问题这是我的代码。有人能告诉我代码有什么问题吗?为什么只插入最后一个值。谢谢 PHP: HTML:Php PDO多选问题,php,pdo,Php,Pdo,我正在数据库中插入表单多选值,但它只插入最后一个选定值。如何解决这个问题这是我的代码。有人能告诉我代码有什么问题吗?为什么只插入最后一个值。谢谢 PHP: HTML: 技能 Html5 Css3 插图画家 Photoshop 珊瑚画 滑动分页 Javascript Wordpress 马根托 安卓 吴哥商业 PHP 您不能直接将like$\u POST['skill']插入数据库字段,但您可以将数组中的值加入字符串,然后将字符串插入数据库字段 因此,您可以尝试以下方法: $skills = j
技能
Html5
Css3
插图画家
Photoshop
珊瑚画
滑动分页
Javascript
Wordpress
马根托
安卓
吴哥商业
PHP
您不能直接将like$\u POST['skill']
插入数据库字段,但您可以将数组中的值加入字符串,然后将字符串插入数据库字段
因此,您可以尝试以下方法:
$skills = join(',', $_POST['skill']);
$stmt->bindParam(':skill', $skills);
当然,也可以使用其他方法(如将不同的值插入数据库表的不同行/数据集中)。我们可以查看您的表单吗?您还必须在选项标记中提供值,例如:Html5,因此提交时,值将保存在变量中。您使用
$stmt->bindParam进行绑定(“:skill',$value);
但是您如何以及在哪里初始化$value
?我尝试了$skill=$_POST['skill'];foreach($skill as$value){echo$value;}当我回显$value时,它会显示所有的值。您知道在使用变量之前必须初始化它吗,例如$value='test';$stmt->bindParam(':skill',$value);
而不是$stmt->bindParam(':skill',$value);$value='test';
?谢谢为我工作
<div class="form-group">
<label>Skills</label>
<select id="ms" name="skill[]" multiple="multiple">
<option>Html5</option>
<option>Css3</option>
<option>Illustrator</option>
<option>Photoshop</option>
<option>Coral Draw</option>
<option>Jquery</option>
<option>Javascript</option>
<option>Wordpress</option>
<option>Magento</option>
<option>Android</option>
<option>Woocommerce</option>
<option>PHP</option>
</select>
</div>
$skills = join(',', $_POST['skill']);
$stmt->bindParam(':skill', $skills);