php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #15565 AND operation errors on datas from MySQL Table
Submitted: 2002-02-15 06:01 UTC Modified: 2002-04-30 00:00 UTC
From: daniel dot alazet at libertysurf dot fr Assigned:
Status: No Feedback Package: Math related
PHP Version: 4.1.1 OS: any
Private report: No CVE-ID: None
Welcome back! If you're the original bug submitter, here's where you can edit the bug or add additional notes.
If you forgot your password, you can retrieve your password here.
Password:
Status:
Package:
Bug Type:
Summary:
From: daniel dot alazet at libertysurf dot fr
New email:
PHP Version: OS:

 

 [2002-02-15 06:01 UTC] daniel dot alazet at libertysurf dot fr
Hello
Can I submit a strange problem PHP / MySQL ?
From a very simple table, 1 key ( BYTE ), 2 vars ( INTEGER )
I initialise two records whith some values.
I read the first var from first record and second var from second record.
I do the AND ( & ) functiun on the two vars and I get a wrong result.
I join my test script to my request.
Please send problem analysis to daniel.alazet@libertysurf.fr
Best regards.

<html>

<head>
<title>Functiun AND Check</title>
</head>

<?php
// Data Base Open.
    $dbcnx = mysql_connect("localhost");
    if (!$dbcnx)
    {  echo( "<P>No access to Data Base Server.</P>" );
       exit();
    }
    if (! @mysql_select_db("BaseTest") )
    {  echo( "<P>No access to Data Base.</P>" );
       exit();
    }
// Table Cr?ation.
    $sql = "CREATE TABLE TEST (
           ".     " Num TINYINT UNSIGNED not null AUTO_INCREMENT,
           ".     " V1 INT (10) UNSIGNED not null,
           ".     " V2 INT (10) UNSIGNED not null,
           ".     " PRIMARY KEY (Num),
           ".     " UNIQUE (Num))
           ".     " comment = 'Table de Test.';"; 
    $crt = mysql_query($sql);
// First record create.
    $x = 0Xffffffff;
    $sql = "INSERT INTO TEST SET
            ".   " V1='$x';";
    $ce = mysql_query($sql);
// Second record create.
    $x = 0X0f0f0f0f; 
    $sql = "INSERT INTO TEST SET
            ".   " V2='$x';";
    $ce = mysql_query($sql);
// Vars initialisation .
    $a = 0;
    $b = 0;
// First record Read.
    $rt = MYSQL_QUERY("SELECT V1 FROM TEST WHERE (Num = 1)") or die("Erreur No: ".mysql_error());
    $ct = mysql_fetch_array($rt);
    if ($ct)
    {   $a = $ct[V1];
    }
    mysql_free_result ($rt);
// Second record read.
    $rt = MYSQL_QUERY("SELECT V2 FROM TEST WHERE (Num = 2)") or die("Erreur No: ".mysql_error());
    $ct = mysql_fetch_array($rt);
    if ($ct)
    {   $b = $ct[V2];
    }
    mysql_free_result ($rt);
// AND functiun on results and display.    
    $x = $a & $b;
    echo ("Var A = ".DecBin($a)."<br>");
    echo ("Var B = ".DecBin($b)."<br>");   
    echo ("AND Result = ".DecBin($x)."<br>");
// Correct display for vars.
// Waiting AND Result = 1111000011110000111100001111
// I get   AND Result = 1100010101010011001
// Where the error is?.
?>
</body>
</html>

Patches

Pull Requests

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2002-02-16 05:44 UTC] sander@php.net
Works fine for me. Does the following script work for you?

$a = 0xFFFFFFFF;
$b = 0x0F0F0F0F;
$x = $a & $b;
echo decbin($a)."\n".decbin($b)."\n".decbin($x)."\n";

What OS are you running?

(reclassified)

 [2002-04-30 00:00 UTC] php-bugs at lists dot php dot net
No feedback was provided for this bug for over a month, so it is
being suspended automatically. If you are able to provide the
information that was originally requested, please do so and change
the status of the bug back to "Open".
 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Sat Dec 21 17:01:58 2024 UTC