-1

この問題は私を夢中にさせています...

最初の免責事項ですが、私は正式なプログラミングのトレーニングをほとんど受けていません。私はこれにつまずいています。

一般エラー: 2014 エラーが表示されます。最初は、(クラスで確立された) 1 つの特定のクエリであり、警告は、オブジェクトをインスタンス化しているコード内の場所に依存していました。すべてのクエリを fetchAll に変更し、fetchAll が機能しなかった後、すべてのクエリのカーソルを閉じました。現在、問題のあるクエリが 2 つあります。ここに1つのコピーと貼り付けがあります:

(更新されたコード):

$sql = "select initial_state from source_nodes where id = :id";

$core = Core::getInstance();
$stmt = $core->dbh->prepare($sql);
$stmt->bindParam(':id', $allSources->id[$id], PDO::PARAM_INT);

if ($stmt->execute()) {
    $row = $stmt->fetchAll();
    $stmt->closeCursor();
    foreach($row as $i=>$value){
        $allSources->state[$id] = $row[$i]['initial_state'];
    }
}

問題があるかどうかは定かではありませんが、「if」で警告がスローされます。私の知る限り、すべての「fetch」は「fetchAll」になり、「closeCursor」が含まれています。

接続は次のように設定されています。

$this->dbh = new PDO($dsn, $user, $password, array(
            PDO::ATTR_PERSISTENT => true,
            PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
            PDO::MYSQL_ATTR_USE_BUFFERED_QUERY =>true
            ));

提案?

4

2 に答える 2

0

PHPのバグである可能性があると思います。

https://bugs.php.net/bug.php?id=57540

PHPのバージョンは?

于 2013-11-06T05:27:23.020 に答える