繁体   English   中英

如何自动更新phpmyadmin中的列

[英]How to automatically update the column in phpmyadmin

我的表名是保留:

| Reservation_id(pk)| 人数| 容量|

我希望当我输入人数时,要从容量列中减去no_of_people列,并为新的no_of_people更新容量列。 请告诉我如何更新容量表?

模型视图:

 public function insert_into_db($people)
{
    $sql = "INSERT INTO `reservation` (`no_of_people`) VALUES (?) ";
    "SELECT *, `capacity`-`no_of_people` AS `capacity` FROM `reservation`";
    $this->db->query( $sql, array($people) );
}

控制器视图

public function insert_people()
{

    $people =$this->input->post('no_of_people');

    $this->Books_model->insert_into_db($people);
    redirect('Booking_Controller/view');
}

查看文件:

<form action="<?php echo base_url();?>index.php/Booking_controller/insert_people" method="POST">

<table>
    <tr>
        <td> <label for="no of people" class="col-sm-2 control-label"><td>Number Of People*</td></label>
        </td>
        <td> <input type = 'text' name='no_of_people'></td>
    </tr>

    <tr>

        <td><input type='submit' class="btn btn-success"  value="Book a Table"></td>

    </tr>

</table>

请帮助我找出我在哪里犯了错误?

正如@nathanmac所暗示的那样,这是一个不好的数据库设计范例。 仍然可用的座位数和座位数量与特定的预订完全无关,因此不应存储在那里。 除其他严重的计算问题外,这意味着您始终在引用最新的预订以获取座位数,并且如果十个人的预订事先修改了预订中的人数,则您将不得不针对每个其余的保留。

更好的方法(请注意,可能有六种不错的实现方法)是按照nathanmac所说的动态计算人数。 任何时候需要确定可用的座位数时,都可以获取总容量的计数,并减去动态计算的预订数。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM