lang2
lang2

Reputation: 11976

php multiple query problem

First of all, this is a problem with an older combination of php/mysql: PHP 5.2.0-8, mysql Ver 14.12 Distrib 5.0.32

So here is what I'm trying to do:

$con = db_connect();
$last_id = 123;
$q1 = db_select_all( $con, "t1", "WHERE id=" . $last_id );
$r1 = $q1->fetch();
$q2 = db_select_all( $con, "t2", "WHERE id=" . $last_id );
$r2 = $q2->fetch();

function db_connect()
{
    $con = new PDO();
    return $con;
}

function db_select_all( $con, $tab, $cond )
{
    $cmd = "SELECT * FROM " . $tab . " " . $cond;
    print "$cmd\n";
    $res = $con->query( $cmd );
    return $res;
}

Problem is the second call to $con->query() will always return a NULL object.

  • This doesn't happen to an newer version of php/mysql
  • If I close the connection and reconnect, then it'll work fine.

    So it looks like the combination doesn't support multiple query at the same time. Is this a known limitation or there is way to make it working?

    As always, any input welcomed.

    Upvotes: 1

    Views: 296

  • Answers (1)

    Xavier Barbosa
    Xavier Barbosa

    Reputation: 3947

    You need to close cursor, see the doc : PDOStatement::closeCursor()

    Upvotes: 1

    Related Questions