#28606 [NEW]: sprintf() function bug with classes

From: Date: Tue, 01 Jun 2004 23:02:32 +0000
Subject: #28606 [NEW]: sprintf() function bug with classes
Groups: php.bugs 
Request: Send a blank email to php-bugs+get-60266@lists.php.net to get a copy of this message
From: Kmos at GodsFamily dot com Operating system: Windows XP SP1 PHP version: 4.3.6 PHP Bug Type: Compile Warning Bug description: sprintf() function bug with classes Description: ------------ I think there is a bug with sprintf() function when I use it with more than one % to format variable output. Example: If I use two %s %s it crashes, but if I use only one %s or static values the sql query is valid and no warning errors happen. I think this is really strange, and I don't think I've mistake my php code, I code for some years.. Reproduce code: --------------- class bdsql { function query($sql="",$vars="") { $sql=sprintf($sql, $vars); $result=@mysql_query($sql); return $result; } } class kwww extends bdsql { function load_data($cat="",$scat="",$min=0,$max=10) { $result=$this->query("SELECT * FROM sites WHERE cat='%s' AND scat='%s' LIMIT %d,%d;","addslashes(htmlentities($cat)), addslashes(htmlentities($scat)), $min, $max"); } } How to use (index.php): $ret2=$kwww->load_data("computadores","internet",0,5); Expected result: ---------------- Execute the SQL query with no warning errors... Actual result: -------------- Warning: sprintf(): Too few arguments in c:\program files\apache\htdocs\kwww\kwww.php on line 38 -- Edit bug report at http://bugs.php.net/?id=28606&edit=1 -- Try a CVS snapshot (php4): http://bugs.php.net/fix.php?id=28606&r=trysnapshot4 Try a CVS snapshot (php5): http://bugs.php.net/fix.php?id=28606&r=trysnapshot5 Fixed in CVS: http://bugs.php.net/fix.php?id=28606&r=fixedcvs Fixed in release: http://bugs.php.net/fix.php?id=28606&r=alreadyfixed Need backtrace: http://bugs.php.net/fix.php?id=28606&r=needtrace Need Reproduce Script: http://bugs.php.net/fix.php?id=28606&r=needscript Try newer version: http://bugs.php.net/fix.php?id=28606&r=oldversion Not developer issue: http://bugs.php.net/fix.php?id=28606&r=support Expected behavior: http://bugs.php.net/fix.php?id=28606&r=notwrong Not enough info: http://bugs.php.net/fix.php?id=28606&r=notenoughinfo Submitted twice: http://bugs.php.net/fix.php?id=28606&r=submittedtwice register_globals: http://bugs.php.net/fix.php?id=28606&r=globals PHP 3 support discontinued: http://bugs.php.net/fix.php?id=28606&r=php3 Daylight Savings: http://bugs.php.net/fix.php?id=28606&r=dst IIS Stability: http://bugs.php.net/fix.php?id=28606&r=isapi Install GNU Sed: http://bugs.php.net/fix.php?id=28606&r=gnused Floating point limitations: http://bugs.php.net/fix.php?id=28606&r=float

« previous php.bugs (#60266) next »