を把握することはできません私ができること。これは私がPDOで思い付いたものです:は、私は現在、MySQLからのPDOへのコードのこの部分を変換していプリペアドステートメントに私が間違ってやっている
$db = new PDO('mysql:host='.$db_host.'; dbname='.$db_name, $db_user, $db_pass);
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$catquery = $db->prepare("SELECT category, longdescription, locked, catid,
parentcatid, leveldown
FROM ".$tableprefix."fanfiction_categories
WHERE catid=:catid");
$stmt -> bindPARAM (':catid', $catid, PDO::PARAM_STR);
try {
$stmt->execute();
echo "Sucess";
} catch (PDOException $e) {
echo $e->getMessage();
}
私も多くの形でそれを試した後、正しいbindPARAM部分を取得することはできません。私が見落としているものはありますか?私はPDOに関してちょっと混乱しています。だから、誰かが私がどこに間違っているのかを指摘できればいいと思います。
1)は問題ではないかもしれませんが、関数は' bindParam' 2で修正することを忘れている(から準備する) '$ stmt'は存在しないように見えます。 –
は、 '.'から' .'を抜けている可能性があります。$ tableprefix "fanfiction_categories' @テーブル接頭辞とテーブルの間 – RamRaider
PHPのエラー報告が正しく設定されていましたか?適切な設定についてはリンクされた回答を参照してください。 –