#28124 [NEW]: Using MSSQL functions an empty string is returned as a space

2004-04-23 Thread cbunk at arescorporation dot com
From: cbunk at arescorporation dot com
Operating system: Windows 2000
PHP version:  4.3.6
PHP Bug Type: MSSQL related
Bug description:  Using MSSQL functions an empty string is returned as a space

Description:

When making a query on a MSSQL DB using mssql functions an extra space is
added to the end of output.  This is causing trouble with scripts of mine
that check to see if the querried field is empty to determine whether or
not to display some text.

The bug mentioned at
http://bugs.php.net/bug.php?id=25777
describes the problem but was marked as bogus.  I think when the fix for
http://bugs.php.net/bug.php?id=25777 was made it in advertently left an
extra space in results.

Reproduce code:
---
//once connected to the db
$sql="Select name from contacts";
$result=mssql_query($sql);
$row = mssql_fetch_array($result);
//assume there is one entry in the table 
//with an empty string as the value for 
//name
if (!empty($row["name"])){
  echo "Name: " . $row["name"];
}else{
  echo "Name value is empty";
}

Expected result:

Name value is empty

Actual result:
--
Name: 

-- 
Edit bug report at http://bugs.php.net/?id=28124&edit=1
-- 
Try a CVS snapshot (php4):  http://bugs.php.net/fix.php?id=28124&r=trysnapshot4
Try a CVS snapshot (php5):  http://bugs.php.net/fix.php?id=28124&r=trysnapshot5
Fixed in CVS:   http://bugs.php.net/fix.php?id=28124&r=fixedcvs
Fixed in release:   http://bugs.php.net/fix.php?id=28124&r=alreadyfixed
Need backtrace: http://bugs.php.net/fix.php?id=28124&r=needtrace
Need Reproduce Script:  http://bugs.php.net/fix.php?id=28124&r=needscript
Try newer version:  http://bugs.php.net/fix.php?id=28124&r=oldversion
Not developer issue:http://bugs.php.net/fix.php?id=28124&r=support
Expected behavior:  http://bugs.php.net/fix.php?id=28124&r=notwrong
Not enough info:http://bugs.php.net/fix.php?id=28124&r=notenoughinfo
Submitted twice:http://bugs.php.net/fix.php?id=28124&r=submittedtwice
register_globals:   http://bugs.php.net/fix.php?id=28124&r=globals
PHP 3 support discontinued: http://bugs.php.net/fix.php?id=28124&r=php3
Daylight Savings:   http://bugs.php.net/fix.php?id=28124&r=dst
IIS Stability:  http://bugs.php.net/fix.php?id=28124&r=isapi
Install GNU Sed:http://bugs.php.net/fix.php?id=28124&r=gnused
Floating point limitations: http://bugs.php.net/fix.php?id=28124&r=float


#26996 [Com]: If a field is empty it returns one blank space character.

2004-04-23 Thread cbunk at arescorporation dot com
 ID:   26996
 Comment by:   cbunk at arescorporation dot com
 Reported By:  arion_ at msn dot com
 Status:   Bogus
 Bug Type: MSSQL related
 Operating System: Windows
 PHP Version:  4.3.4
 New Comment:

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.


Previous Comments:


[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





[2004-01-21 12:57:20] arion_ at msn dot com

Description:

If a field is empty it returns one blank space character.

Reproduce code:
---


Expected result:

JustDoIt

Actual result:
--
Just DoIt





-- 
Edit this bug report at http://bugs.php.net/?id=26996&edit=1


#25777 [Com]: char and varchar fields are being rtrimmed (and also ltrimmed?) using freetds

2004-04-23 Thread cbunk at arescorporation dot com
 ID:   25777
 Comment by:   cbunk at arescorporation dot com
 Reported By:  duh at dowebwedo dot com
 Status:   Closed
 Bug Type: MSSQL related
 Operating System: Debian GNU/Linux 3.0
 PHP Version:  4.3.4RC1
 New Comment:

The fix for this bug has caused a new bug.  When querying a MSSQL db
and the a 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.


Previous Comments:


[2004-03-30 06:22:35] arion_ at msn dot com

Description:

If a field is empty it returns one blank space character.

Reproduce code:
---


Expected result:

AB

Actual result:
--
A B


I reported this here http://bugs.php.net/bug.php?id=26996 and I have
wait for the new release to solve this problem.

I've just test with 4.3.5 and doesn't works yet.



[2003-11-17 18:14:15] [EMAIL PROTECTED]

The sybase and mssql extensions do not handle returned data the exact
same way, and it might be that we need to readd the rtrim code to the
sybase extensions. It seams like the dbconvert() finctions are
implemented differently.

You could also try the native mssql extension. That will work with
FreeTDS as well, and give you more functions.



[2003-11-17 17:29:18] cquincy at whitewave dot com

I think I have run into a problem related to this bug fix.  I am using
sybase/freetds to interact with mssql on my company intranet like the
orginator of this bug.  Now with version 4.3.4 numbers, whether integer
of floating points are coming back with spaces on the right side.  i.e.
you put "123" in the database, then when you mssql_fetch* you get back
"123   ".  Note that the originator of the bug was only concerned with
char and varchar fields.  4.3.3 did not have this problem with numbers.
 So, it seems the "fix" has created an unforseen problem with numbers
which is worse in my opinion than "hi   " coming back as "hi".   


Obviously I expect to get exactly the same data that is stored in the
database instead of right padded data.

Expected result:

Put 123 in the database get back 123, not '123 '.  Put 123.456 in the
database get back 123.45, not '123.456 '

Thanks for your efforts.



[2003-10-14 23:32:13] [EMAIL PROTECTED]

This bug has been fixed in CVS.

In case this was a PHP problem, snapshots of the sources are packaged
every three hours; this change will be in the next snapshot. You can
grab the snapshot at http://snaps.php.net/.
 
In case this was a documentation problem, the fix will show up soon at
http://www.php.net/manual/.

In case this was a PHP.net website problem, the change will show
up on the PHP.net site and on the mirror sites in short time.
 
Thank you for the report, and for helping us make PHP better.





[2003-10-10 06:12:57] duh at dowebwedo dot com

the configure line is:

'./configure' '--with-mysql' '--with-apxs=/www/bin/apxs'
'--with-gd=/usr/local' '--with-png-dir' '--with-freetype-dir'
'--with-pear' '--with-zlib-dir' '--enable-track-vars'
'--enable-trans-sid' '--disable-posix-threads' '--enable-shared'
'--with-pgsql=/usr' '--with-unixODBC=/usr/local/easysoft/unixODBC'
'--with-mssql=/usr/local'



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/25777

-- 
Edit this bug report at http://bugs.php.net/?id=25777&edit=1