ID: 41639 Updated by: [EMAIL PROTECTED] Reported By: cody dot stockwell at qsicorp dot com -Status: Assigned +Status: Feedback Bug Type: ODBC related Operating System: Red Hat 4 ES PHP Version: 4.4.7 Assigned To: kalowsky New Comment:
Please try using this CVS snapshot: http://snaps.php.net/php5.2-latest.tar.gz For Windows (zip): http://snaps.php.net/win32/php5.2-win32-latest.zip For Windows (installer): http://snaps.php.net/win32/php5.2-win32-installer-latest.msi If the bug exists in PHP 5.2 snapshot, update the version to "5CVS, 4CVS (yyyy-mm-dd) Previous Comments: ------------------------------------------------------------------------ [2007-06-08 18:08:47] cody dot stockwell at qsicorp dot com Description: ------------ The script works fine when talking to Apache(WinXP)/PHP5/DNS [SQL Server]/MS SQL Express 2005, but when I try to get it to run on Apache (Linux)/PHP4/[unixODBC/FreeTDS]/MS SQL Express 2005 I get an error from PHP. If I place variables into the odbc_prepare() statement directly it works fine, but for some reason refuses to replace the '?' parameter in odbc_execute(). Obviously that would negate the security advantage of using odbc_prepare(). So it appears to be a bug in PHP4, but unfortunately the boss is hesitant to install PHP5 or any new version for fear of breaking everything. Reproduce code: --------------- <?php $dsn = "SQLExpress"; $dbuser = "sa"; $dbpass = "mypass"; $dbname = "mydb"; $connect = odbc_connect($dsn, $dbuser, $dbpass); odbc_exec($connect, "use " . $dbname) or die("Failed to connect to database."); $query = odbc_prepare($connect, "SELECT FIRST_NAME, MIDDLE_INITIAL, LAST_NAME FROM mytable WHERE LAST_NAME = ?"); odbc_execute($query, array("Smith")); echo odbc_result_all($query); ?> Expected result: ---------------- FIRST_NAME MIDDLE_INITIAL LAST_NAME Joseph C Smith Travis M Smith 2 Actual result: -------------- Warning: odbc_execute(): SQL error: <�tH� I��5, SQL state 00000 in SQLExecute in /var/www/html/v_contact.php on line 11 ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=41639&edit=1