Как записать $ _SESSION NAME, которые выполняют удаление в таблицу истории оракула - PullRequest
0 голосов
/ 21 мая 2019

У меня система crud, использующая Oracle DB для хранения данных.Есть две таблицы (таблица main и history).Пользователи должны войти в систему.Я уже создал триггер update or delete из main в таблицу history, и он отлично работает для обоих.Теперь я хочу захватить $_SESSION NAME и вставить его в столбец ACTION_BY в таблице HISTORY, когда пользователь удаляет любую строку.Я понятия не имею, как это сделать.Может кто-нибудь помочь мне.


proc_delete.php

<?
require 'inc_instance.php';

$id  = $_POST["id"];

$user = $_SESSION['name'];

$db = Database::obtain(HDBUSER, HDBPASS, HDBNAME);
$db->connect();

$sql = "DELETE FROM CIM_TRACKING_MAIN WHERE id = '".$id."'";
$db->query($sql);

echo json_encode([$id]);

$db->close();

Могу ли я напрямую вставить имя сеанса в таблицу history, когда пользователь нажимает на удалениекнопка?

Вот как это выглядит:

image

1 Ответ

0 голосов
/ 21 мая 2019

Не уверен, что это то, что вы хотите

$query = $db->query($sql);
if($query){ // return true if your delete query success
// Insert query into your History table here
   $sql_02 = "INSERT INTO History(ACTION_BY) VALUES ('$user')";
   if($db->query($sql_02)=== TRUE){
    // do the action you want here, if no need then remove this if statement
 }
}

Но использование этого приведет к серьезной уязвимости безопасности , попробуйте использовать подготовить оператор в следующий раз

...