Php 在我的MYSQL表上意外插入了一行

Php 在我的MYSQL表上意外插入了一行,php,sql,database,wordpress,Php,Sql,Database,Wordpress,在表中插入值时出现问题 -------------------------------------------- | products_id | related_products_ids | | ----------------------------------------- | | 1,2,3,4,6, | | ----------------------------------------- | 2

在表中插入值时出现问题

--------------------------------------------
|   products_id   |   related_products_ids |
| -----------------------------------------
|                |   1,2,3,4,6,            |
| -----------------------------------------
|    2            |   1,2,3,6,             |
| -----------------------------------------
|    3            |   1,2,4,               |
-------------------------------------------
有一个空白的
products\u id
值,其中每个产品id上的所有插入值都位于其
相关的\u products\u id
值上

我用这个密码

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

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

foreach($insert_rp_ids1 as $rp_ids) {

    $related_query = "SELECT related_products_ids, products_id 
                      FROM ".TABLE_RELATED_PRODUCTS." 
                      WHERE products_id = '" . $rp_ids ."'";

    $result_rp = mysql_query($related_query);
    $related_products_value = mysql_fetch_assoc($result_rp);

    if(mysql_num_rows(mysql_query("SELECT products_id FROM ".TABLE_RELATED_PRODUCTS." WHERE products_id = '$rp_ids'"))){

        $rp_values = $related_products_value['related_products_ids'].$products_id.',';
        $rps_each1 = array('related_products_ids' => $rp_values);

        $wpdb->update( TABLE_RELATED_PRODUCTS, $rps_each1, array( 'products_id' => $rp_ids ));

     } else {

         $rps_each2 = array('products_id' => $rp_ids,
                   'related_products_ids' => $products_id.',');

         $wpdb->insert(TABLE_RELATED_PRODUCTS, $rps_each2);
     }
 }
用于($i=0;$i$rp\u值);
$wpdb->update(表相关的产品,$rps\u each1,数组('PRODUCTS\u id=>$rp\u id));
}否则{
$rps\u each2=数组('products\u id'=>$rp\u id,
“相关产品标识”=>$products\U id.,”;
$wpdb->insert(表相关产品,$rps\U each2);
}
}
我的代码有问题吗?我找不到它。那一行没有必要,也没有用


请提供帮助。

我在perl的数组初始化中看到了这一点。初始化数组时,有时会使用null zeroteh元素创建数组,具体取决于数组的声明方式


尝试使用perl调试器(perl-D)运行并检查插入数组,或者包含Data::Dumper并打印整个数组。

这是一个混乱,但这应该可以避免将来出现问题

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

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

foreach($insert_rp_ids1 as $rp_ids)
{

 if($result_rp = mysql_query("SELECT related_products_ids, products_id FROM ".TABLE_RELATED_PRODUCTS." where products_id = '" . $rp_ids ."'"))
 {
    if($products_id > 0)
   {
  $related_products_value = mysql_fetch_assoc($result_rp);
  $rp_values = $related_products_value['related_products_ids'] . "," . $products_id;

  $rps_each1 = array('related_products_ids' => $rp_values);
  $wpdb->update( TABLE_RELATED_PRODUCTS, $rps_each1, array( 'products_id' => $rp_ids ));
   }
  }
  else
  {
   if($rp_ids > 0 && $products_id > 0)
   {
   $rps_each2 = array('products_id' => $rp_ids, 'related_products_ids' => $products_id);
   $wpdb->insert(TABLE_RELATED_PRODUCTS, $rps_each2);
   }
  }
 }
($i=0;$i 0)的

{
$related\u products\u value=mysql\u fetch\u assoc($result\u rp);
$rp_值=$related_products_值['related_products_id']。“,”$products_id;
$rps\u each1=数组('related\u products\u id'=>$rp\u值);
$wpdb->update(表相关的产品,$rps\u each1,数组('PRODUCTS\u id=>$rp\u id));
}
}
其他的
{
如果($rp\u id>0&&$products\u id>0)
{
$rps\u each2=数组('products\u id'=>$rp\u id,'related\u products\u id'=>$products\u id);
$wpdb->insert(表相关产品,$rps\U each2);
}
}
}

能否使用空格/制表符重新格式化代码,使其更易于阅读?现在,这就像阅读没有段落的正文。哈哈,缩进的空格;-)我已经修改了一些代码来完成它的工作。谢谢你。