#28871 [Fbk->Opn]: mysql_afftected_rows returns 0 even when updates record

From: Date: Tue, 22 Jun 2004 10:07:54 +0000
Subject: #28871 [Fbk->Opn]: mysql_afftected_rows returns 0 even when updates record
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-61206@lists.php.net to get a copy of this message
ID: 28871 User updated by: nav at nc dot ru Reported By: nav at nc dot ru -Status: Feedback +Status: Open Bug Type: MySQL related Operating System: Windows XP PHP Version: 4.3.6 New Comment: No, I carefully checked the record before and after UPDATE. It WAS changed. However, mysql_affected_rows returned 0. Previous Comments: ------------------------------------------------------------------------ [2004-06-22 00:47:51] iliaa@php.net Maybe the data is unchanged, meaning that it already was what you were trying to change it to. ------------------------------------------------------------------------ [2004-06-21 18:39:34] nav at nc dot ru Description: ------------ I've got the problem similar to already reported here. mysql_afftected_rows sometimes returns 0, sometimes 1. Although actually it does UPDATES the record. This query changes user login (password, e-mail) in the table "user" (see below. If it matters, MySQL is 3.23.53-max, Apache is 1.3.27): Reproduce code: --------------- mysql_query("UPDATE user SET ".$setRequest." WHERE login = '$userCurrentLogin' AND password = md5('$userCurrentPass')"); /* $setRequest is the string compiled conditionally, but I've just printed whole query string and it looked correct: UPDATE user SET login = 'aaa' WHERE login = 'bbb' AND password = md5('ccc') */ $num = mysql_affected_rows(); if ($num == 0) $errorMsg = "Could not complete your request. Check the data"; else if ($num == -1) $errorMsg = "Database error. Try again later"; else $changeMsg = "Your data has been successfully changed"; Expected result: ---------------- Of course, I expect correct work of mysql_affected_rows :) Actual result: -------------- BUT the result ($num) is sometimes 0, sometimes 1, even if the record is actually updated. ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=28871&edit=1

« previous php.bugs (#61206) next »