• ベストアンサー

変更項目の抽出

御覧頂きありがとうございます。 さっそく本題なのですが、DBから引っ張ってきたいくつかの値を表示させ、表示させた値を直接入力で変更出来るような画面を作りました。 今現在の私の実力ではデフォ値とデフォ値(一部変更有り)を一旦別で処理しif文で不一致であった場合新たなArrayに突っ込み・・・ といった様な処理しか思いつきません。 もっとスマートに変更をした項目のみ抽出したいのですが、いい手は無いでしょうか? 毎度説明が下手で申し訳ありませんが、参考になりそうなURLでも構いませんので、よろしくお願い致します。

質問者が選んだベストアンサー

  • ベストアンサー
  • mpro-gram
  • ベストアンサー率74% (170/228)
回答No.1

プログラム言語は、phpでいいのですよね。 データベースからの値を連想配列$rowに取得したとして、 入力form の name もその連想キー(つまりカラムエイリアス名)を使って作っておけば、array_diff_assoc で、値の異なる物が抽出できるのでは。 $deff = array_diff_assoc( array_intersect_key( $_POST,$row) , $row); // よけいなキーが追加されてる場合を考慮して、array_intersect_key で 元の連想キーのみに制限

参考URL:
http://jp.php.net/manual/ja/function.array-diff-assoc.php
sosuno20
質問者

お礼

ありがとうございます、早速試してみます。

関連するQ&A