php - MySQLテーブルに複数のフォーム値を効率的に挿入するにはどうすればよいですか?

原文 php mysql pdo

データベースに挿入する必要のあるフォーム値の長いリストがあります。かさばる条件の長いリストを用意するのではなく、これらの値をすべてデータベースの別々の列に挿入する効率的な方法はありますか?

これが私のコードです:

PHP:

// I've removed most of them to simplify demonstration
$title = isset($_POST['title']) ? $_POST['title'] : "";
$name = isset($_POST['name']) ? $_POST['name'] : "";
$description = isset($_POST['description']) ? $_POST['description'] : "";
$how_hear = isset($_POST['how_hear']) ? $_POST['how_hear'] : "";

// I have to do this for every single form element:
if (!empty($title)) {
    DB::query('INSERT INTO `table` (`title`) VALUES (?);', array($title));
}
答え
$usrData = array(
    "user" => "hello",
    "pass" => "pass1",
    "mail" => "[email protected]"
);

$cols = "";
$vals = "";
foreach($usrData as $col => $val) {
    $col = mysql_real_escape_string($col);
    $val = mysql_real_escape_string($val);

    $cols.= "`{$col}`, ";
    $vals.= "'{$val}', ";
}
$query = "INSERT INTO `myTable` (". rtrim($cols, ", ") .") VALUES (". rtrim($vals, ", ") .");";   
mysql_query($query);
関連記事

wordpress - Amazon Red Hat(Ubuntuではない)のランダムな「502エラーBad Gateway」-Nginx + PHP-FPM

php - symfony syliusインストールキャッシュの名前変更

php - jpgまたはjpegが爆発した場合にファイルを取得する

php - OneupUploaderBundle(blueimp)、-許可されていないメソッド

php - テーブルを結合して、フィールドがLaravelでフィールドAまたはBから値を取得できるクエリを実行する方法

php - 機能テストでオプション値を選択できません

php - nginx-phppgadmin-* 1ルールにより禁止されたアクセス

php - PHP Theliaでcssテンプレートにコンパイルされるファイルを減らすにはどうすればよいですか?

php - SymfonyのDoctrineエンティティにExcelシートをインポートする方法

php - MySQLデータベースレコードへのリンクを<html> hrefとして追加する方法