Nekosha
@Nekosha

Как сделать так, чтобы менялось значение в таблице?

Совсем недавно начал изучать PHP, и первым заданием стало создание системы авиабилетов. Суть вопроса: у меня есть две таблицы, это - рейсы, билеты и расписание. Рейсы и билеты связаны между собой по номеру рейса. Я хочу сделать функцию возврата билета, чтобы при попытке вернуть билет увеличивалось количество свободных мест, а при покупке уменьшалось.

Код покупки билета:
<?php
header('Location:http://localhost:63342/Air/buy.html');
$fio = $_POST['fio'];
$pass_num = $_POST['pass_num'];
$ad = $_POST['ad'];
$phone_num = $_POST['phone_num'];
$flight_num = $_POST['flight_num'];
$quantity = $_POST['quantity'];
$mysql = new mysqli('localhost', 'ruslan', 'root', 'airport');
$mysql ->query("INSERT INTO `buyticket` (`fio`, `pass_num`, `ad`,`phone_num`, `flight_num`, `quantity` )
VALUES ('$fio', '$pass_num', '$ad', '$phone_num', '$flight_num', '$quantity') ");
$mysql -> close();
?>


Функция добавления нового рейса:

<?php
    header('Location:http://localhost:63342/Air/flights.html');
    $flight_num = $_POST['flight_num'];
    $departure_city = $_POST['departure_city'];
    $departure_time = $_POST['departure_time'];
    $arrival_city = $_POST['arrival_city'];
    $arrival_time = $_POST['arrival_time'];
    $package_num = $_POST['package_num'];

    $mysql = new mysqli('localhost', 'ruslan', 'root', 'airport');
    $mysql ->query("INSERT INTO `flights` (`flight_num`, `departure_city`, `departure_time`,`arrival_city`, `arrival_time`, `quantity` )
VALUES ('$flight_num', '$departure_city', '$departure_time', '$arrival_city', '$arrival_time', '$quantity') ");
    $mysql -> close();
?>


Таблица вывода расписания рейсов:
<html>
<head>
      <meta charset="UTF-8"><!DOCTYPE html>
    <form action="timetable.php" method="post">
        <link rel="stylesheet" href="css/table.css" >
        <title>Текущие рейсы</title>

        <?php
        try {
            $pdo = new PDO("mysql:host=localhost;dbname=airport", "ruslan", "root");

            $sql="select * from flights";
            $stmt = $pdo->prepare($sql);
            $stmt->execute();
            echo "<table class = 'timetable' border='1' align='center'>";

            echo "<tr> <td>Номер рейса</td><td>Город отправления</td><td>Дата отправления</td><td>Город прибытия</td><td>Дата прибытия</td><td>Количество мест</td></tr>";



            while ( ($row = $stmt->fetch(PDO::FETCH_ASSOC) ) !== false) {
                echo "<tr>";

                echo "<td>".$row['flight_num']."</td>";
                echo "<td>".$row['departure_city']."</td>";
                echo "<td>".$row['departure_time']."</td>";
                echo "<td>".$row['arrival_city']."</td>";
                echo "<td>".$row['arrival_time']."</td>";
                echo "<td>".$row['quantity']."</td>";
                echo "</tr>";
            }
            echo "</table>";
        }
        catch(PDOException $e)
        {
            echo  $e->getMessage();
        }
        ?>
  • Вопрос задан
  • 73 просмотра
Решения вопроса 1
Adamos
@Adamos
В данном случае нужно отложить изучение РНР и поизучать SQL.
Например, тут: sql-ex.ru
Потом, понимая, как работать с БД, вернуться к коду и выкинуть mysqli-функции, используя только PDO.
И все получится.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы