0

基本上我想把这个放在我的桌子上,

--------------------------------------------
|   products_id   |   related_products_ids |
| ------------------------------------------
|    1            |   2                    |
| ------------------------------------------
|    1            |   3                    |
| ------------------------------------------
|    1            |   4                    |
--------------------------------------------

我有复选框,

<input value="1" type="checkbox" name="rp_product[]" id="in-category1"> Microsoft IntelliMouse Pro 1
<input value="2" type="checkbox" name="rp_product[]" id="in-category2"> Microsoft IntelliMouse Pro 2
<input value="3" type="checkbox" name="rp_product[]" id="in-category3"> Microsoft IntelliMouse Pro 3
<input value="3" type="checkbox" name="rp_product[]" id="in-category3"> Microsoft IntelliMouse Pro 4

我想要的是在表格中插入选中的复选框products_id

我使用这个 php 代码,

for ($i=0; $i<count($_POST['rp_product']); $i++)
 {
  $check_val1 .= $_POST['rp_product'][$i] .",";
 }
$check_val = trim($check_val1, ','); 
unset($check_val1);

$insert_rp_ids1 = explode(',', $check_val);

 for($i=0;$i<count($insert_rp_ids1);$i++) {
   $usetag = mysql_real_escape_string(stripslashes(ltrim(rtrim($insert_rp_ids1[$i]))));
      if($usetag == "") continue;
        $array1 = array('products_id' => (int)$products_id,
                     'related_products_ids' => $usetag);
        $wpdb->insert(TABLE_RELATED_PRODUCTS, $array1);
      }
 }

问题是,只插入了第一个选中的复选框。似乎是什么问题或您有其他解决方案?请帮忙。

4

1 回答 1

0

trim 将删除字符串中的所有逗号 ',' 并且你正在使用 ',' 爆炸,它将如何返回任何内容??????$_POST['rp_product'] 将直接返回一个数组。您可以简单地使用 foreach 浏览数组并插入。

于 2012-04-14T13:20:38.930 回答