2017-08-19 92 views
-1
function update($data, $table, $id) 
{ 
    global $conid; 
    //echo $id; 
     /*Assuming array keys are = to database fileds*/ 
     if (count($data) > 0) { 
      foreach ($data as $key => $value) { 

       $value = mysqli_real_escape_string($value); // this is line shows a warning 
       $value = "'$value'"; 
       $updates[] = "$key = $value"; 
      } 
     } 
     $implodeArray = implode(', ', $updates); 
     $sql = ("UPDATE $table SET $implodeArray WHERE id=$id"); 
     mysqli_query($conid, $sql); 


} 

这是所有表单的更新代码,但它会给出警告。警告只显示在该行的其他作品完美的我没有找到为什么会发生..mysqli在php中获取更新数据的警告

+1

什么是警告信息吗? –

+0

警告:mysqli_real_escape_string()正好期待2个参数 – Shri

回答

0

由于您使用mysqli_ *功能,那么你必须包括您连接到数据库到mysqli_real_escape功能:

您需要改变

$value = mysqli_real_escape_string($value); 

$value = mysqli_real_escape_string($conid, $value); 
+0

。谢谢................. – Shri

+0

不客气,如果有帮助,请[upvote并接受答案](https://stackoverflow.com/help/someone -answers)快乐编码! :) –

0

mysql的

$value = mysqli_real_escape_string($value); 

的mysqli //在需要作为connection object的mysqli 2 perameter和string data

$value = mysqli_real_escape_string($conid,$value);//connection object