ID: 26996
Comment by: marco at alphasoft dot ch
Reported By: arion_ at msn dot com
Status: Bogus
Bug Type: MSSQL related
Operating System: Windows
PHP Version: 4.3.4
New Comment:
I think this is a bug anyway.
CodeSample 1:
<?php
$db=mssql_connect('myserver','sa','sa');
mssql_select_db('mydb',$db);
//$sql = "DROP TABLE dbtest";
//$res=mssql_query($sql,$db);
$sql = "CREATE TABLE dbtest (id int NOT NULL,abc varchar(20),PRIMARY
KEY (id))";
$res=mssql_query($sql,$db);
$sql = "INSERT INTO dbtest (id,abc) VALUES (1,'')";
$res=mssql_query($sql,$db);
$sql = "SELECT abc as xy from dbtest WHERE id=1";
$res=mssql_query($sql,$db);
$d = mssql_fetch_object($res);
mssql_close($db);
echo 'o'.$d->xy.'o';
?>
Expected Output:
oo
Actual Output:
o o
CodeSample 2:
<?php
$db=mssql_connect('myserver','sa','sa');
mssql_select_db('mydb',$db);
//$sql = "DROP TABLE dbtest";
//$res=mssql_query($sql,$db);
$sql = "CREATE TABLE dbtest (id int NOT NULL,abc varchar(20),PRIMARY
KEY (id))";
$res=mssql_query($sql,$db);
$sql = "INSERT INTO dbtest (id,abc) VALUES (1,'')";
$res=mssql_query($sql,$db);
$sql = "SELECT 'x'+abc as xy from dbtest WHERE id=1";
$res=mssql_query($sql,$db);
$d = mssql_fetch_object($res);
mssql_close($db);
echo 'o'.$d->xy.'o';
?>
Expected Output:
oxo
Actual Output:
oxo
I find the following example interesting:
CodeSample 3:
<?php
$db=mssql_connect('myserver','sa','sa');
mssql_select_db('mydb',$db);
//$sql = "DROP TABLE dbtest";
//$res=mssql_query($sql,$db);
$sql = "CREATE TABLE dbtest (id int NOT NULL,abc varchar(20),PRIMARY
KEY (id))";
$res=mssql_query($sql,$db);
$sql = "INSERT INTO dbtest (id,abc) VALUES (1,'')";
$res=mssql_query($sql,$db);
$sql = "SELECT len(abc) as abclen,abc as xy from dbtest WHERE id=1";
$res=mssql_query($sql,$db);
$d = mssql_fetch_object($res);
mssql_close($db);
echo $d->abclen;
?>
Expected Output:
0
Actual Output:
0
I have tested with php 4.3.6, 4.3.7-dev and 5.0.0RC3-dev on Windows
Server 2003 with MSSQL 2000.
Well, is this a bug or a bogus? I think this is a bug!
Greetings
Marco
Previous Comments:
------------------------------------------------------------------------
[2004-04-23 15:57:33] cbunk at arescorporation dot com
The bug is not bogus and not already covered in bug report
http://bugs.php.net/bug.php?id=25777. The mentioned bug report was
fixed causing this specific problem. When querying a MSSQL db and the
field's value is empty a space gets returned, not an empty string as
expected. This is causing lots off problems with scripts I have that
check to see if a value is empty to determine if to display some stuff.
The bug report http://bugs.php.net/bug.php?id=26996 got listed as
bogus but it was a correct report. I'm not sure I think I may try
submitting another bug report in hopes it will be noticed.
------------------------------------------------------------------------
[2004-01-26 06:06:20] arion_ at msn dot com
I've read the bug report you sent me but..... I only need to know if
there will be solution in future versions, if I must adapt all my
scripts using trim(), or to use 4.3.3 for ever.
Thanks.
------------------------------------------------------------------------
[2004-01-21 14:43:26] [EMAIL PROTECTED]
Please do not submit the same bug more than once. An existing
bug report already describes this very problem. Even if you feel
that your issue is somewhat different, the resolution is likely
to be the same.
Thank you for your interest in PHP.
See bug #25777 and add your comments there.
------------------------------------------------------------------------
[2004-01-21 14:37:56] arion_ at msn dot com
I've just done and I'm sorry :( but 4.3.5RC2-dev doesn't work yet. If
you need I test something more, just tell me.
Thanks.
Running on Apache 2.0.48
------------------------------------------------------------------------
[2004-01-21 14:22:47] [EMAIL PROTECTED]
Please try using this CVS snapshot:
http://snaps.php.net/php4-STABLE-latest.tar.gz
For Windows:
http://snaps.php.net/win32/php4-win32-STABLE-latest.zip
------------------------------------------------------------------------
The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/26996
--
Edit this bug report at http://bugs.php.net/?id=26996&edit=1