3

私は PDO 準備済みステートメントを使用しているため、データベースに挿入する前に必要なときにスラッシュを追加しています。

スラッシュを表示せずに結果を取得してウェブサイトに表示する適切な方法を考えていました。

を使うだけで簡単echo stripslashes($result->message);ですか?

私のクエリは次のようになります。

$database->query('INSERT INTO table_name (field1, field2, field3) VALUES (?, ?, ?)', array($value1, $value2, $value3));

これが私のquery方法です:

public function query($query, $bind=null)
{
    global $pdo;

    # Prepare Statment
    $this->statement = $this->pdo->prepare($query);

    # Execute Query
    $this->statement->execute($bind);
}

編集:get_magic_quotes_gpcWHM(cPanel)がオフだと言ったにもかかわらず、実際にオンになりました

4

2 に答える 2

4

準備済みステートメントは、クエリ データにスラッシュを追加しません。プレースホルダーがクエリの一部ではなく、データのみの一部と見なされるように、パラメーターをプレースホルダーの形式でクエリに挿入します。

したがって、スラッシュは追加されず、stripslashes().

スラッシュが追加されている場合は、PDO インスタンスの準備済みステートメントのエミュレーションを無効にしてください。

$pdo->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
于 2012-08-31T20:33:47.190 に答える
1

get_magic_quotes_gpcWHM(cPanel)がオフだと言ったにもかかわらず、実際にオンになりました

于 2012-09-01T07:38:32.053 に答える