Обновить две таблицы SQL из одной формы (PHP) [закрыто]Php

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Обновить две таблицы SQL из одной формы (PHP) [закрыто]

Сообщение Anonymous »

У меня есть две таблицы, которые я хотел бы обновить на основе результатов 1 опубликованной формы.Таблица: Пациенты-спасатели



Идентификатор пациента
Имя
Статус




1
Боджер
Выпущен

2
Барсук
Пленник



Таблица: Прием



Идентификатор допуска
Идентификатор пациента
Расположение



1
2
Умер


2
1
Выпущен



Спасибо всем за поддержку, я скачал код Visual Studio и продолжил работу над проблемой. Со времени исходного сообщения я применил другой подход и не использовал подход «при дублировании ключа, обновить», а простое обновление SQL за 2 запроса. Visual Studio не сообщает об ошибках кода, как и мой браузер, но приведенный ниже код ведет себя так, как если бы была отправлена ​​информация, однако таблицы не обновляются.
/*----------------------- FORM PROCESSING DISPOSITION-------------------*/
// disposition fields for admission table: disposition, disposition_date, disposition_user,
// disposition_centre, disposition_comment, euthanasia_method
// update for the patient form: status (Captive, Released or Deceased)
// disposition lookup (Held in captivity, Released, Transferred to another rescue, Died - Euthanised, Died - within 48 hours, Died - after 48 hours, Died - On admmission )

ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);

/* Edit Details Form Processing */
include "../connect_to_mysql.php";

if ($_SERVER['REQUEST_METHOD'] === 'POST') {

function test_input($data)
{
$data = trim($data);
$data = stripslashes($data);
$data = htmlspecialchars($data);
return $data;
}

$admission_id = $_POST["theadmissionid"];

//Admissions table
$disp_admission_id = test_input($_POST["admission_id"]);
$disp_centre = test_input($_POST["centre_id"]);
$disp_user = test_input($_POST["disposition_user"]);
$disp_date = test_input($_POST["disposition_date"]);
$disp_comment = test_input($_POST["disposition_comment"]);
$disp_disposition = test_input($_POST["disposition"]);
$disp_euthanasia = test_input($_POST["euthanasia_method"]);
$disp_status = test_input($_POST["disp_status"]);

//Patient table
$pat_patient_id = $_POST["patient_id"];

// figure out the patient's status from the posted disposition
if ($disp_disposition == 'Released') {
$pat_status = 'Released';
} elseif ($disp_disposition == 'Transferred out') {
$pat_status = 'Transferred';
} elseif ($disp_disposition == 'Died - Euthanised') {
$pat_status = 'Deceased';
} elseif ($disp_disposition == 'Died - within 48 hours') {
$pat_status = 'Deceased';
} elseif ($disp_disposition == 'Died - after 48 hours') {
$pat_status = 'Deceased';
} elseif ($disp_disposition == 'Died - on admission') {
$pat_status = 'Deceased';
}

try {
//Update the database table
$query1 = "UPDATE rescue_admissions
SET
rescue_admissions.status = :disp_status,
rescue_admissions.euthanasia_method = :euthanasia_method,
rescue_admissions.disp_user = :disp_user,
rescue_admissions.disp_centre = :disp_centre,
rescue_admissions.disposition = :disposition,
rescue_admissions.disp_comment = :disp_comment
WHERE rescue_admissions.admission_id = :admission_id
LIMIT 1";
$query2 = "UPDATE rescue_patients
SET
rescue_admissions.status = :status
WHERE rescue_admissions.admission_id = :admission_id
LIMIT 1";

$stmt = $conn->prepare($query1);
$stmt->bindParam('admission_id', $disp_admission_id, PDO::PARAM_INT);
$stmt->bindParam('disp_status', $disp_status, PDO::PARAM_STR);
$stmt->bindParam('euthanasia_method', $disp_euthanasia, PDO::PARAM_STR);
$stmt->bindParam('disp_user', $disp_user, PDO::PARAM_STR);
$stmt->bindParam('disp_centre', $disp_centre, PDO::PARAM_STR);
$stmt->bindParam('disp_comment', $disp_comment, PDO::PARAM_STR);
$stmt->bindParam('disposition', $disp_disposition, PDO::PARAM_STR);

$stmt = $conn->prepare($query2);
$stmt->bindParam('patient_id', $patient_id, PDO::PARAM_INT);
$stmt->bindParam('status', $pat_status, PDO::PARAM_STR);

$stmt->execute();
} catch (PDOException $e) {
die($e->getMessage());
}
} else {
echo "Error 4: Admission ID not defined";
//exit();
}
/*------------ END FORM PROCESSING ----------------*/
?>





Discharge Patient


×

Discharging Patient -
(CRN: )


Current Disposition

Held in captivity
Released
Transferred to another rescue
Died - Euthanised
Died - after 48 hours
Died - within 48 hours
Died - on admission


Euthanasia Method

Pharmacological - Vet
Pharmacological - Centre
Manual
Captive Bolt
Shot
Other


Add comment:




Подробнее здесь: https://stackoverflow.com/questions/790 ... e-form-php
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»