Нужно составить грамотный запрос к mysql

karen12

Постоялец
Регистрация
26 Фев 2012
Сообщения
109
Реакции
4
Есть скрипт-запрос к базе данных, одновременно 3 запроса, 2 на вставку данных и 1 на редактирования одного из первых двух. Все это должен работать одновременно, при нажатии на кнопку "Добавить". В принципе все работает, НО понимаю, что это не граматно. Можно как нибудь откорректировать??
Код:
if($action == "add") {
$sql = "INSERT IGNORE INTO `amb_oragir` (
   
     `patient_id_or`,
    `date_or`,
    `text_data_or`,
    `add_date`,
        `doctor_id_or`,
        `doctor_type_or`,
`stac_treat_or`,
`filter_number` 
    ) VALUES (
   
'{$patient_id}',
'{$date_or}',
'{$text_data_or}',
'{$add_date}',
'{$doctor_id_or}',
'{$doctor_type_or}',
'{$stac_treat_or}',
'{$filter_number}'
    )";
   
$conn->query($sql); 
$last_id=$conn->insert_id;
$data= array();
for ($x = 0; $x < count($_POST['sign_consult']); $x++ )
    {
   $sign_consult = $conn->real_escape_string($_POST["sign_consult"][$x]);
    $data[] = '('.$last_id.','.$patient_id.', '.$doctor_id_or.','.$sign_consult.',  "'.$curent_time_now.'")';
      }
   if(isset($_POST['sign_consult'])){
$sql = 'INSERT INTO `amb_consultation` (`visit`, `patient`, `doctor_id`,`sign_consult`, `sign_date`) VALUES '.implode(',', $data);
}
if ($conn->query($sql) === TRUE) {
   
if(isset($oragir_id)){
$sql1 = "UPDATE `amb_consultation` SET cons_status_out='0' WHERE `id`='$oragir_id'"; 
$conn->query($sql1); 
} 
   
   
   header ("Location: ../amb_cart_view.php?id=".$patient_id."&status=1");
} else {
    echo "Error: " . $sql . "<br>" . $conn->error;
}
$conn->close();
   
}
 
за 80 баксов есть профилировщик dbForge Studio for MySQL с триальным периодом
 
Назад
Сверху