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