2014-10-02 71 views
-1

我有一个关系db.i需要做更新并重新插入。但是这一切正在做的是删除,而不是重新更新/再值删除后不会重新插入

if($_POST['value_coming'] !=""){ 
    $delete_value_query=" DELETE FROM values WHERE value_id='$value_id' "; 
    $result=mysqli_query($connection,$delete_value_query); 
    confirm_query($result);  
    foreach($_POST['value_coming'] as $value_coming_id){  
    $value_query="INSERT INTO values(value_id,value_coming_id) 
    VALUES($student_id,$value_coming_id) "; 
    if($value_query && mysqli_affected_rows($connection)>0){ 
     echo "updated sucessully"; 
    }else{echo " could not update" . mysqli_error($connection);} 
}//foreach end 
} 
+0

将是什么'的var_dump($ _ POST [ 'value_coming']);'返回?另外,发布我们的“confirm_query”函数。并消毒。 – briosheje 2014-10-02 10:47:55

+0

返回从post数组中选择进入的值,它的正确值。此表没有一个自动增量字段,它连接到与另一个表有关的$ value id。 – 2014-10-02 10:49:35

+0

实际上你永远不会重新插入值。你正在准备查询,但你没有执行它。也许你想'if(mysqli_query($ value_query)&& mysqli_affected_rows($ connection)> 0)'?无论如何,在进行查询之前,你应该清理你的输入,你永远不会知道什么会进入你的$ _POST,因此在查询它们之前,最好** escape这些值。 – briosheje 2014-10-02 10:51:40

回答

0
if(mysqli_query($value_query) && mysqli_affected_rows($connection)>0)