bad
$stmt->bindValue(‘:id’, 1, “PDO::PARAM_INT”);
good
$stmt->bindValue(‘:id’, 1, PDO::PARAM_INT);
関連リンク
bad
$stmt->bindValue(‘:id’, 1, “PDO::PARAM_INT”);
good
$stmt->bindValue(‘:id’, 1, PDO::PARAM_INT);
関連リンク
PDOでカラム一覧(フィールド名・列名)を取得する方法のメモ。
カラム名だけを取得するのではなくレコードを取得する時に一緒に取ってきたかったのでこんな感じにしました。
$recs = $pdo->fetchAll(PDO::FETCH_ASSOC);
$keys = array_keys($recs[0]);
foreach($keys as $key){
$th .= ‘<th>’.$key.'</th>’;
}
[PHP5]PDOのfetchAllでフィールド名がキーの配列を取得 – Develog –
カラム名だけ、あるいはカラム情報を取得するなら以下のSQL文で一覧が取得できます。
DESCRIBE テーブル名; OR show columns from テーブル名;
PHPでクラスを作成しメソッドを利用しようとしたらタイトルのようなエラーが出ました。
一般的には
インスタンスを生成していないことが原因の場合がほとんどだと思います。
しかし生成しているのにエラーが出てしまったのでメモ。
原因は、外部の関数でインスタンスを使っていたからでした。
単なるスコープの問題。
毎度の事ながら私はこんなミスばかりしています。
かなりはまりましたが以下のページを見て解決。values()を使えばOKでした。
http://stackoverflow.com/questions/21954593/invalid-parameter-number-pdo-on-duplicate-update-fails
php.iniファイルのinclude_pathの記述方法
unixでは「:」、windowsでは「;」で区切れば複数のパスを指定できますが、「;」で区切るとコメントアウトして動きませんでした。そこでパスの部分を""で括ってみると、無事動いてくれました。