PHPでプロフィールページを作成しました。このページには、住所と電話のフィールドが含まれており、ユーザーはデータを挿入するように求められます。その後、データは profile という名前のテーブルに保存されます。すべて正常に動作しますが、問題は、既にデータが含まれている場合にのみテーブルが更新されることです。どうすればそれを変更できますか (おそらく関数にある mysql クエリ)、データが空であってもテーブルに入力されるようにします。使用できる UPDATE OR INSERT INTO 構文のようなものはありますか? ありがとう
<?php
if ( isset($_GET['success']) === true && empty($_GET['success'])===true ){
echo'profile updated sucessfuly';
}else{
if( empty($_POST) === false && empty($errors) === true ){
$update_data_profile = array(
'address' => $_POST['address'],
'telephone' => $_POST['telephone'],
);
update_user_profile($session_user_id, $update_data_profile);
header('Location: profile_update.php?success');
exit();
}else if ( empty($errors) === false ){
echo output_errors($errors);
}
?>
そして、次の関数を使用して
function update_user_profile($user_id, $update_data_profile){
$update = array();
array_walk($update_data_profile, 'array_sanitize');
foreach($update_data_profile as $field => $data )
{
$update[]='`' . $field . '` = \'' . $data . '\'';
}
mysql_query(" UPDATE `profile` SET " . implode(', ', $update) . " WHERE `user_id` = $user_id ") or die(mysql_error());
}