ID:               17248
 Updated by:       [EMAIL PROTECTED]
 Reported By:      [EMAIL PROTECTED]
-Status:           Open
+Status:           Feedback
 Bug Type:         MySQL related
 Operating System: Linux Mandrake 8.2
 PHP Version:      4.1.2
 New Comment:

It seems like a bug in your code/logic. Please paste a small,
self-contained example showing the problem. Also make sure you run
everything with error_reporting(E_ALL);


Previous Comments:
------------------------------------------------------------------------

[2002-05-15 09:19:42] [EMAIL PROTECTED]

Hi!

I just recently switched an application from Debian Woody with PHP
4.0.3 PL1 to Mandrake Linux 8.2 / PHP 4.1.2 (as an RPM out of the box).
The same script that worked fine for over a year now makes trouble on
the new machine:

    /*  two function definitions */

    Create_DB_Connection($verbindung_lfz) OR
        ErrorMsg("Module", "connection could not be created");

    if ($kdnrClub)
    {
        /* GetUserData creates its own connection to the db and closes
it after
           use */
        GetUserData($SID, $row);
        [...]
    }
    [...]
    /* some php-code and some db-queries with $verbindung_lfz but
different
       $result-vars */
    [...]
     
    if (! $verbindung_lfz)
    {
        print "No connection!<br>";
    }
    else
    {
        print "Connection ok!<br>";
    }

    SQLExec($statement, $verbindung_lfz, $result_lfz) OR
        ErrorMsg("Luftfahrzeug", "couldn't get data: " .
mysql_error());

The connection still exists because there is the "Connection ok!"
message. Right after that my SQLExec blows up and gives 

    Warning: [some number] is not a valid MySQL-Link resource in [...]

Later, the connection can't be closed because it does not exist. But
why does my connection-check work before I call SQLExec?
    
The SQL-statement is working fine on the console. My query works if I
move it to the beginning of the script after the Create_DB_Connection.

I replaced my wrapping functions with the original functions-calls but
that didn't make a difference.

I've got some kind of framework for my database connections. These are
the used functions in this excerpt:

    function Create_DB_connection(&$newconnect)
    {
        $db_user    = $GLOBALS["CONST_DB_USER"];
        $db_host    = $GLOBALS["CONST_DB_HOST"];
        $db_pass    = $GLOBALS["CONST_DB_PASS"];

        $retval         = 1;
        $newconnect = mysql_connect($db_host, $db_user, $db_pass) or
            $retval = 0;
        return $retval;
    }

    function SQLExec($sqlquery, $viaconnection, &$resultset)
    {
        $db_base    = $GLOBALS["CONST_DB_BASE"];

        $retval     = 1;
        $resultset  = mysql_db_query($db_base, $sqlquery,
$viaconnection) or
            $retval = 0;

        return $retval;
    }

So what changed between 4.0.3PL1 und 4.1.2 to cause this behaviour?
There are some more scripts and I'd like to have an idea about what I
should take care of.

Thanks!

------------------------------------------------------------------------


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

Reply via email to