Задать вопрос
Konstantin18ko
@Konstantin18ko
Стоматолог

Как проверить запись на дубликат, если нет, то добавить?

Как сейчас выглядит код на добавление записи.
$dbc = mysqli_connect('localhost', 'root', '', 'cniis_blank', '3306')
                or die('Ошибка соединения с MySQL');
        $dbc->set_charset("utf8");
        
        $query = "INSERT INTO patient ( id, "
                . "type_of_payment, "
                . "in_card_number, "
                . "FIO_patient_surname, "
                . "FIO_patient_name, "
                . "FIO_patient_patronymic, "
                . "sex,"
                . "birthday, "
                . "enter_day, "
                . "FIO_doctor_surname, "
                . "FIO_doctor_name, "
                . "FIO_doctor_patronymic, "
                . "diagnosis, "
                . "diagnosis_letter, "
                . "diagnosis_numeral, "
                . "diagnosis_index, "
                . "out_card_number) "
                . "VALUES (NULL,"
                . "'$type_of_payment', "
                . "'$in_card_number', "
                . "'$FIO_patient_surname', "
                . "'$FIO_patient_name', "
                . "'$FIO_patient_patronymic', "
                . "'$sex', "
                . "'$birthday', "
                . "'$enter_day', "
                . "'$FIO_doctor_surname', "
                . "'$FIO_doctor_name', "
                . "'$FIO_doctor_patronymic', "
                . "'$diagnosis', "
                . "'$diagnosis_letter', "
                . "'$diagnosis_numeral', "
                . "'$diagnosis_index', "
                . "'$out_card_number')";
        
        
        $result = mysqli_query($dbc, $query) or die('Ошибка при запросе!');
        
        mysqli_close($dbc);


Как сделать проверку записи на дубликат, если есть дубликат по трем параметрам, то добавить запись.
Как найти запись по трем параметрам, уже понял - примерно так:
$query2 = "SELECT * FROM patient WHERE "
                . "in_card_number='$in_card_number' AND "
                . "FIO_patient_surname='$FIO_patient_surname' AND "
                . "birthday='$birthday'";


Как создать цикл который будет проверять и добавлять записи?
  • Вопрос задан
  • 159 просмотров
Подписаться 1 Оценить 2 комментария
Помогут разобраться в теме Все курсы
  • Skillbox
    Веб-разработчик на PHP
    9 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Решения вопроса 1
i_d_1
@i_d_1
Программист PHP
сделайте в бд уникальный ключ из трех столбцов.
если надо либо добавить либо ничего не делать то INSERT подойдет.
если надо либо вставить либо обновить то INSERT INTO table (a,b,c) VALUES (1,2,3)
ON DUPLICATE KEY UPDATE c=c+1;

когда у вас уникальный комбинированный ключ есть в бд, вам не надо ничего предварительно выбирать.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
FoodSoul Калининград
от 180 000 до 250 000 ₽
IT-Spirit Москва
от 230 000 до 320 000 ₽
от 200 000 до 290 000 ₽