Код: Выделить всё
id: 1
age: 30
studying: Business
language: English
relationship_status: Single
username: conor
about_me: This is conor's bio.
- Вход в систему как Конор. Поскольку у Конора уже есть строка в базе данных, я просто хочу запустить запрос UPDATE, чтобы обновить поле, в котором имя пользователя равно conor.
- Войти как Алиса
- Войти как Алиса код>. Так как у Алисы нет в базе данных строки, соответствующей ее имени пользователя. Затем я хочу запустить запрос INSERT. Для всех пользователей все пользователи должны будут ввести свои данные, а затем соответствующим образом обновить их.
Вот мой текущий подход:
Код: Выделить всё
$about_me = htmlentities(trim(strip_tags(@$_POST['biotextarea'])));
$new_studying = htmlentities(trim(strip_tags(@$_POST['studying'])));
$new_lang = htmlentities(trim(strip_tags(@$_POST['lang'])));
$new_rel = htmlentities(strip_tags(@$_POST['rel']));
if(isset($_POST['update_data'])){
// need to check if the username has data already in the db, if so, then we update the data, otherwise we insert data.
$get_bio = mysqli_query($connect, "SELECT * FROM user_bio WHERE username ='$username'");
$row_returned = mysqli_num_rows($get_bio);
$get_row = mysqli_fetch_assoc ($get_bio);
$u_name = $get_row['username'];
if ($u_name == $username){
$update_details_query = mysqli_query ($connect, "UPDATE user_bio SET studying ='$new_studying', language ='$new_lang',
relationship_status = '$new_rel', about_me = '$about_me' WHERE username ='$username'");
echo "
Details updated successfully!
";
} else {
$insert_query = mysqli_query ($connect, "INSERT INTO user_bio
VALUES ('', '$age','$new_studying','$new_lang','$new_rel', '$username', '$about_me'");
mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
echo "
Details added successfully! $row_returned
";
}
}
Подробнее здесь: https://stackoverflow.com/questions/363 ... e-database