フィールド名とフォーム名の自動化

フィールド名を勝手に抽出し、
POSTがあれば、POSTを優先
無ければDBを優先
これを勝手に行うソースコード

この記事に出会ったあなたはラッキーです。

// テーブル抽出(1レコードのみ)
$sql = "SELECT * FROM `TABLE_NAME` LIMIT 1";
$statement = $pdo->query($sql);
$item = $statement->fetch(PDO::FETCH_ASSOC);

// Key を配列化
$key_arr = array();
foreach($item as $key => $val){
    // echo $key."=>".$val."<br>"; // 試験表示
    array_push($key_arr, $key);
}

// POST があれば変数に代入、無ければテーブルから変数に代入
$i="0";
while($key_arr[$i]!=""){
    $value=$key_arr[$i];
    
    // POST があれば変数に代入
    if(($_POST[$value]!="") && ($_POST[$value]!="NULL")){
        $$value=$_POST[$value];
    
    // 無ければテーブルから変数に代入
    }else{
        $$value=$item[$value];
    }
    
    $i ++;
}

コメントを残す