оптимизировать -
https://methodpoet.com/return-early-or-if-statement/
думаю при такой линейной логике вставить нужную проверку не должно быть проблемой
почитать -
https://habr.com/ru/post/565652/
<?php
$fprint_id = (int)$_GET['fprint_id'];
$device_uid = $_GET ['device_uid'];
$serialnumber = (int)$_GET['serialnumber'];
if($fprint_id < 1 || $fprint_id > 128) {
exit('ID должен быть в диапазоне от 1 до 127');
}
//Проверить введенный f_id в диапазоне от 1 до 127
$stmtfprint = $conn->prepare('SELECT * FROM users WHERE fprint_id = ? LIMIT 1');
$stmtfprint->bind_param('s', $fprint_id);
$stmtfprint->execute();
$resultfprint = $stmtfprint->get_result()->fetch_all();
if($resultfprint) {
exit('Этот ID уже существует!');
}
//существует ли такой же введенный fID, если нет продолжить
$stmtSerial = $conn->prepare('SELECT * FROM users WHERE serialnumber = ? LIMIT 1');
$stmtSerial->bind_param('i', $serialnumber);
$stmtSerial->execute();
$resultSerial = $stmtSerial->get_result()->fetch_all();
if($resultSerial) {
exit('Серийный номер уже занят!');
}
//существует ли такой же SERIALNUMBER, если нет продолжить
$stmtdevice_uid = $conn->prepare('SELECT * FROM users WHERE device_uid = ? LIMIT 1');
$stmtdevice_uid->bind_param('s', $device_uid);
$stmtdevice_uid->execute();
$resultdevice_uid = $stmtdevice_uid->get_result()->fetch_all();
if($resultdevice_uid != true) {
exit('Данный отдел не существует!');
}
//существует ли такой же ОТДЕЛ, если нет продолжить
$stmtadd_fid = $conn->prepare('SELECT * FROM `users` WHERE `add_fid` = 1 LIMIT 1');
$stmtadd_fid->execute();
$resultadd_fid = $stmtadd_fid->get_result()->fetch_all();
if($resultadd_fid) {
exit('Нельзя добавить более одного ID за раз');
//если где-то значение add_fid = 1 - ошибка, иначе продолжить
}
//НАДО ЗАГОТОВИТЬ И ВСТАВИТЬ В ЗАПРОС ДАННЫЕ О НАЗВАНИИ ОТДЕЛА (ОНО СВЯЗАНО С DEV_UID)
$sqlINSERTquery = "INSERT INTO users ( fprint_id, user_date, device_uid, device_dep, del_fid , add_fid)
VALUES ($fid, CURDATE(), $device_uid, $dev_name, 0, 1)";
// $db->query($sqlINSERTquery);
echo('Запись начата');