INSERT INTO On Duplicate Key UPDATE
フォーム入力にどのように使用しますか? 私がオンラインで見つけたすべての例は、カウンターまたは所定の値を使用しています。
UPDATE
標準とメソッドを使用してコードを機能させることができました (非常に役立つメンバーのおかげです)SET
が、私のテーブルではINSERT INTO On Duplicate Key UPDATE
.
'user_id'
すべてのテーブルで一意の主キーであり、account テーブルを除くすべてのテーブルで外部キーです。
<?php
session_start();
require_once('config.php');
require_once('open_db.php');
$setlist='';
foreach ($_POST as $key=>$value) {
$setlist.=$key .'=\''.$value.'\',';
}
$setlist=substr($setlist, 0, -1);
$user_id=$_SESSION['SESS_USER_ID'];
$sql='UPDATE style_test SET '.$setlist.' WHERE user_id='.$user_id;
if (!mysql_query($sql,$con)) {
die('Error: ' . mysql_error());
}
?>
すべてのフィールドを自動的に挿入するために以前使用していたコードは次のとおりです。
$fieldlist=$vallist='';
foreach ($_POST as $key => $value) {
$fieldlist.=$key.',';
$vallist.='\''.urlencode($value).'\',';
}
$fieldlist=substr($fieldlist, 0, -1);
$vallist=substr($vallist, 0, -1);
$user_id=$_SESSION['SESS_USER_ID'];
$fieldlist.=', user_id';
$vallist.=','.$user_id;
$qry='INSERT INTO style_test1 ('.$fieldlist.') VALUES ('.$vallist.')';