dongxian4531 2012-03-31 12:39
浏览 43
已采纳

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

I have a problem inserting values on my table.

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

There is a blank products_id value where all inserted values on each product ids are on its related_products_ids value.

I use this code,

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);
     }
 }

Is there something wrong with my code? I can't find it. That row is not necessary and its no use.

Please help.

  • 写回答

2条回答 默认 最新

  • duankao4489 2012-03-31 13:28
    关注

    That was a mess but this should avoid problems in future..

    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);
       }
      }
     }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥20 RL+GNN解决人员排班问题时梯度消失
  • ¥15 统计大规模图中的完全子图问题
  • ¥15 使用LM2596制作降压电路,一个能运行,一个不能
  • ¥60 要数控稳压电源测试数据
  • ¥15 能帮我写下这个编程吗
  • ¥15 ikuai客户端l2tp协议链接报终止15信号和无法将p.p.p6转换为我的l2tp线路
  • ¥15 phython读取excel表格报错 ^7个 SyntaxError: invalid syntax 语句报错
  • ¥20 @microsoft/fetch-event-source 流式响应问题
  • ¥15 ogg dd trandata 报错
  • ¥15 高缺失率数据如何选择填充方式