From:             [EMAIL PROTECTED]
Operating system: Windows 2000
PHP version:      4.0.5
PHP Bug Type:     MSSQL related
Bug description:  mssql_fetch_array - IDENTITY values returned as string with padded 
NULL chars

OS = Windows 2000
Server = IIS 5.0
Database = SQL Server 7
PHP = 4.0.5

To reproduce
1. Create a table as such:
    CREATE TABLE table1 (
       row_id NUMERIC(9,0) IDENTITY,
       col1 INT NOT NULL,
       col2 INT NULL,
       col3 VARCHAR(25) NULL,
      PRIMARY KEY(row_id)
    )
    GO

2. Insert a row:
    INSERT INTO table1 (col1) VALUES(1)
    GO

3. Now fetch that row
    <?php
    $hostname = "<your hostname here>";
    $username = "<your username here>";
    $password = "<your password here>";
    $dbName = "<your database name here>";

    // Connect
    $connectionID = mssql_connect($hostname, $username, $password);
    $retval = mssql_select_db($dbName);

    // Query
    $query = "SELECT row_id, col1, col2, col3 from table1"
    $queryID = mssql_query($query, $connectionID)

    // Fetch fields
    $fields = mssql_fetch_array($queryID);

    list($row_id, $col1, $col2, $col3) = $fields;

    echo "type = " . gettype($row_id) . "<br>";
    echo "strlen(\$row_id) = " . strlen($row_id) . "<br>";
    echo bin2hex($row_id) . "<br>";

    mssql_close($connectionID);
    ?>

3. Results
    Did yours match mine?  My result from bin2hex is
        310000000000000000000000000000000000000000
    The character 1, followed by 19 nulls!




-- 
Edit Bug report at: http://bugs.php.net/?id=10889&edit=1



-- 
PHP Development Mailing List <http://www.php.net/>
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]

Reply via email to