人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

PHP MySQL

連想配列
(
[name] => "山田"
[age] => "23"
[comment] => "コメント"
)

があります。
各配列を分け、配列名をカラム名、値をそのカラムに挿入する値としてデータベースに登録したいのですが、セキュリティ上単に INSERT INTO hatena (...) VALUES ($array[name]) とはせず、adodbを利用し、 "INSERT INTO....", array($array..) としたいとかんがえています。

ただ、動的なため幾つのカラムにいくつのデータを挿入するか予測できません。従って自動的にSQLを作成し、(上の配列であれば insert into hatena ('name', 'age', 'comment') values (?,?,?))その後、各配列を変数に代入し、SQLを実行できるような形にしたいと考えています。
よろしくお願いします。




●質問者: esecua
●カテゴリ:コンピュータ ウェブ制作
✍キーワード:23 Hatena MySQL name PHP
○ 状態 :終了
└ 回答数 : 1/2件

▽最新の回答へ

1 ● tezcello
●60ポイント

array_values() でその連想配列のキーのリストを得るー>カラム名を作成

カラム名を引用符を付けカンマで連結する時に、?も(別の変数にでも)カンマで連結

または、キーのリストの要素数から?を連結

で、これらを使って SQL を生成すればよいのでは?

array_values() を使わずに、foreach で全部の要素のキーと値を使って SQL を作るのもそれほど面倒ではなさそうな...

◎質問者からの返答

一通りコードを書いていただけると助かります。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ