Как передать id конкретного пользователя через сессию и получить id книги при нажатии на кнопку
Есть таблица reservation, где есть столбцы: id, id_book, id_reader, bookissuingdate, bookreturndate. Есть таблица book, со столбцами: id, id_section, Name, Author, BookEdition, Yearofpublication, Jenre. Таблица users, со столбцами: id, full_name, login, email, password.
Нужно, при нажатии на кнопку "Забронировать!" на странице book-1.php:
<?php
session_start();
if (!isset($_SESSION['user'])) {
header('Location: /');
}
include_once("header.php");
?>
<?php
require_once 'BDconnect.php'; // Подключаем БД из файла
$image = 'book/'.$_GET['image']; // Получаем параметр GET, который передали
// table - название Вашей таблицы
$sql = "SELECT * FROM `book` WHERE `image`=:image"; // Ваш запрос в БД(поиск записи по id)
$req = $dbh->prepare($sql);
$req->bindValue(':image', $image, PDO::PARAM_STR); //Данные, которые передаёте в запрос
$req->execute();
$array = $req->fetch(PDO::FETCH_ASSOC); // Возвращаем значение.
?>
<table style="margin-right: 700px; margin-top: 20px;" border='1' align="right" width="20%" cellpadding="28" cellspacing="0" >
<?php
if (isset($_GET['res_id'])) { //проверяем, есть ли переменная
$del_id = mysqli_real_escape_string($link, $_GET['res_id']);
$result = mysqli_query($link, "SELECT id FROM `book` WHERE `id` = '$res_id'");
$row = mysqli_fetch_array($result);
$dir='';
unlink($dir.$row[0]);
//удаляем строку из таблицы
$sql = mysqli_query($link, "INSERT INTO `reservation`(`id_book`,`id_reader`) VALUES ('{$_POST['id']}', '{$_POST['$_SESSION']}')");
if ($sql) {
echo "<h2>Данные о книге удалены.</h2>";
} else {
echo '<p>Произошла ошибка: ' . mysqli_error($link) . '</p>';
}
}
?>
<form>
<a href="#"><?= $_SESSION['user']['id'] ?></a>
</form>
<?php
if($array) { // Выводим данные
echo "<td>№ секции <td>{$array['id_section']}</tr>";
echo "<td>Название книги <td>{$array['Name']}</tr>";
echo"<td>Автор <td>{$array['Author']}</tr>";
echo "<td>Издание <td>{$array['BookEdition']}</tr>";
echo "<td>Год публикации <td>{$array['Yearofpublication']}</tr>";
echo"<td>Жанр <td>{$array['Jenre']}</tr>";
echo "<td>Количество страниц <td>{$array['NumberofPages']}</tr>";
echo "<td><a href='?res_id=$id'>Забронировать!</a></tr>";
echo '<img src=" Admin/'.$image.'"style=" margin-left: 400px; margin-top: 20px; width:400px;"; />';
}
?>
</table>
<?php
include_once("footer.php");
?>
получать id пользователя, который сейчас использует сайт и id книги, и записывать все это в таблицу reservation, в соответствующие поля.
BDconnect.php, если вдруг нужен:
<?php
try {
$dbh = new PDO('mysql:dbname=Library;host=localhost', 'Neko', 'qweqwe');
} catch (PDOException $e) {
die($e->getMessage());
}
У меня не записывается ничего, id книги тоже не ищется, как и id пользователя. Но он выводит его на отдельную страницу. Мне не нужно, чтобы меня перекидывало на другую страницу, нужно остаться на этой, просто после того, как пользователь нажал на кнопку 1 раз и забронировал книгу, чтобы при посл. нажатии выводилось сообщение, что книга уже забронирована.