0

以下は、prepareステートメントでの私の試みです。現時点でページが停止しているため、明らかに何かが間違っています。

function telephoneinsert($elector,$inputs,$outputs){
            global $dbh;
            $sql = "UPDATE electors SET $inputs WHERE ID=?";
            $q = $dbh->prepare($sql);
            $q->execute(array($outputs,$elector));
            //UPDATE STATS
        }

これがこのようなページで呼び出される関数です

telephoneinsert($Ielector,$inputs,$outputs);

ここで、$ input =は、エコーされた場合に次のように見える投稿された配列ですname = ?, type =?。最後のコンマを取り除くことは意図的にrtrimされています。

エコーされた場合の$outputsと同じ原理benjamin,socialist

何も表示されないというエラーレポート

$this->pdo->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING );
        print_r($dbh->errorInfo());
4

2 に答える 2

1

$outputsカンマ区切りの文字列が含まれていますが、execute()パラメータが配列の要素として渡されることを想定しています。したがって、文字列を分割する必要があります。

$q->execute(explode(',', "$outputs,$elector"));
于 2012-07-02T16:24:38.937 に答える
0

ここの配列には2つの要素があります

$q->execute(array($outputs,$elector));

ただし、SQLに1つしかない場合?、配列要素の数は、発生する疑問符の数と一致する必要があります。

于 2012-07-02T16:15:01.783 に答える