Wordpress使用implode插入多个复选框值

时间:2015-09-23 01:41:18

标签: php wordpress sql-insert implode

我正在尝试使用此代码将我的复选框的值插入数据库,它的工作正常,但进入数据库的唯一数据是我点击的最后一个复选框的值

表单元素:

<input type="checkbox" value="football" name="sports[]">Football
<input type="checkbox" value="running" name="sports[]">Running
<input type="checkbox" value="triathlon" name="sports[]">Triathlon

PHP:

if(isset($_POST['submit'])) {
     global $wpdb;
       $sports =$_POST['sports'];
       foreach ( $sports as $sportt) {
           $sportt;
           }
       $array = array($sportt); 
       $sport = implode(',',$array);
           }
       $wpdb->insert( 
              'user_profile', 
               array(
              'sports' => $sport));

1 个答案:

答案 0 :(得分:0)

$ _ POST [&#39; sports&#39;]作为已检查/选定值的数组提交。因此没有必要尝试使用foreach()和explode()将其转换为数组。 您可能需要使用循环函数将每个值放入数据库。 或者你可以使用implode(&#39;你将它与#39;,$ yourArray粘合在一起);使数组成为要插入数据库的字符串。如果你这样做:如果你想把数据库中的字符串变回一个数组,你可以使用explode(&#39;你用它粘合的东西&#39;,$ stringToExplode);