gpt4 book ai didi

php - 我如何在 mysql 表中存储营业时间

转载 作者:可可西里 更新时间:2023-11-01 07:39:16 28 4
gpt4 key购买 nike

我正在处理一个涉及本地餐馆的网站,我需要做的一件事是将餐馆营业时间存储在 mysql 中。

从 HTML 到 PHP 的数据看起来像这样。

// Eg: from Monday to Saturday 8am to 10pm
$_POST['from'], $_POST['to'], $_POST['opening_time'], $_POST['closing_time']

我的sql 表结构是这样的。

CREATE TABLE business_hours (
id integer NOT NULL PRIMARY KEY,
restaurant_id integer NOT NULL,
day integer NOT NULL,
open_time time,
close_time time
)

我的问题是,我从上述用户那里得到了两天的开放和关闭时间。所以现在我需要将这两天之间的所有记录插入到 business_hours 表中。

例如:MondayFrid​​ay(如果一周的开盘和收盘周期)

然后我需要像这样将这些营业时间存储在我的表中

Monday,9am,11pm
Tuesday,9am,11pm
Wednesday,9am,11pm
Thursday,9am,11pm
Friday,9am,11pm

谁能告诉我该怎么做?

任何想法将不胜感激。

谢谢。

最佳答案

经过大量研究、反复试验,这最终对我有用。数据全部基于动态结构化标记的餐厅条目。

建表SQL:

CREATE TABLE tbl_businesshrs (
`id` int(11) NOT NULL,
`tbl_index_id` int(11) NOT NULL,
`DoW` varchar(128) NOT NULL,
`status` enum('Open','Closed') NOT NULL COMMENT '0 is Cosed',
`start_time` varchar(128) NOT NULL,
`end_time` varchar(128) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

tbl_index_id 是餐厅表中餐厅的 ID,它是一个 INDEX,DoW 是星期几。

我还加入了 AJAX 函数,以便在营业时间更改时更新营业时间表。然后在餐厅设置 php 页面上,我包含了一周中每一天的记录源查询,该查询使用数据库中存储的值更新选择字段。

查询:

<?php 
$colname_rs_mondayshrs = "-1";
if (isset($_GET['restaurantid'])) {
$colname_rs_mondayshrs = $_GET['restaurantid'];
}
mysqli_select_db( $restaurant, $database_restaurant);
$query_rs_mondayshrs = sprintf("SELECT * FROM tbl_businesshrs WHERE tbl_index_id = %s
AND DoW='Monday'", GetSQLValueString($colname_rs_mondayshrs, "int"));
$rs_mondayshrs = mysqli_query( $restaurant, $query_rs_mondayshrs) or
die(mysqli_error($GLOBALS["___mysqli_ston"]));
$row_rs_mondayshrs = mysqli_fetch_assoc($rs_mondayshrs);
$totalRows_rs_mondayshrs = mysqli_num_rows($rs_mondayshrs);

?>

以此类推一周中的每一天。那么华丽PHP stcrcmp函数比较数据库中打开和关闭的条目,并用相关条目填充选择选项:

<select id="mondaystatus" onChange="update_mondaystatus()">
<option selected value="" <?php if (!(strcmp("",
$row_rs_mondayshrs['status']))) {echo "selected=\"selected\"";} ?>>Open or Closed?
</option>
<option value="Open" <?php if (!(strcmp("Open",
$row_rs_mondayshrs['status']))) {echo "selected=\"selected\"";} ?>>Open</option>
<option value="Closed" <?php if (!(strcmp("Closed",
$row_rs_mondayshrs['status']))) {echo "selected=\"selected\"";} ?>>Closed</option>
</select>

结果:

enter image description here

数据库中的结果:

enter image description here

如果有人感兴趣或者它可以帮助节省一些宝贵的时间,我可以添加 AJAX 功能。

关于php - 我如何在 mysql 表中存储营业时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31407996/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com