ID: 30898 Updated by: [EMAIL PROTECTED] Reported By: jap1968 at yahoo dot es -Status: Open +Status: Feedback Bug Type: Sybase (dblib) related Operating System: Linux (RedHat 9) PHP Version: 4.3.8 New Comment:
What is the freetds version you're using? And do read this: http://lists.ibiblio.org/pipermail/freetds/2004q3/016779.html It would suggest that this is not any bug anywhere but just a configuration issue.. Previous Comments: ------------------------------------------------------------------------ [2004-11-25 17:36:16] jap1968 at yahoo dot es "Expected" and "Actual" are interchanged. Sorry for the mistake! ------------------------------------------------------------------------ [2004-11-25 17:33:54] jap1968 at yahoo dot es Description: ------------ When using a LC_TIME locale which do represent time in 0..24h manner in spite of using AM/PM, wrong results are obtained. Results are always in the range 0..11, so if the time corresponds to a PM hour, the returned result is wrong. It does not correspond with the real value stored in the database! Reproduce code: --------------- // Asking a MS_SQLServer through FreeTDS + Sybase functions $linkBD = sybase_connect("SGBD", "user", "pass"); sybase_select_db("BD", $linkBD); $query = "select fecha from table"; /* RIGHT */ setlocale (LC_TIME, "en_US"); // Returns correct time $res = sybase_query($query, $linkBD); if ($fila = sybase_fetch_array($res)) { $fecha = $fila['fecha']; echo 'en_US'.$fecha; } /* WRONG */ setlocale (LC_TIME, "es_ES"); // Returns wrong time $res = sybase_query($query, $linkBD); if ($fila = sybase_fetch_array($res)) { $fecha = $fila['fecha']; echo 'es_ES'.$fecha; } sybase_close($linkBD); Expected result: ---------------- en_US:NOV 25 2004 01:00PM es_ES:nov 25 2004 01:00 Actual result: -------------- en_US:NOV 25 2004 01:00PM es_ES:nov 25 2004 13:00 ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=30898&edit=1