2016-04-12 7 views
0

jsonでmysqliエラーを返す方法があるかどうかを理解しようとしています。以下は私のコードです。このコードは、SQLが実際に動作しても、配列内のform_passを返します。json配列の準備文のエラーを返します

if($pass){ 
$stmt2 = mysqli_stmt_init($con); 
$sql = 'UPDATE `users` SET `fname` = ?,`lname` = ?,`email` = ?,`username` = ?,`password` = ?,`active` = ?,`enc` = ? WHERE `id` = ?'; 
if(mysqli_stmt_prepare($stmt2,$sql)){ 
    mysqli_stmt_bind_param($stmt2,'sssssiii',$fname,$lname,$email,$username,$password,$active,$ran,$id); 
    mysqli_stmt_execute($stmt2); 
    if(mysqli_stmt_affected_rows($stmt2) == 0){ 
     $return_arr['error_msg'] = mysqli_stmt_error($stmt2); 
    } else { 
     $return_arr['form_pass'] = 'true'; 
    } 
} 
} 
print json_encode($return_arr); 

私はSQLが失敗した場合、mysqli_stmt_affected_rows-1、ない0を返します

if(!mysqli_stmt_execute($stmt2)){ 
$return_arr['error_msg'] = mysqli_stmt_error($stmt2); 
} 

if(mysqli_stmt_error($stmt2)){ 
$return_arr['error_msg'] = mysqli_stmt_error($stmt2); 
} 

答えて

0

のようなものを使用してみました。このif文を代わりに使用してみてください。

if(mysqli_stmt_affected_rows($stmt2) <= 0){ 
関連する問題