gpt4 book ai didi

php - 我有两个日期变量,date_from 和 date_to,我可以读入它们之间的每个值吗?

转载 作者:行者123 更新时间:2023-11-29 03:23:14 25 4
gpt4 key购买 nike

请原谅我缺乏这方面的知识,但我是 PHP 新手。我们正在做一个关于 codeigniter 的项目,我很紧张!

我正在做一个项目预订网站。用户可以按日期搜索属性并在这些日期可用时提出预订请求。我有一个属性表、一个请求表(状态会根据房东是否接受而改变)和一个预订表。一旦房东接受了用户的请求,请求的状态将在请求表上更新,并且新的条目将被添加到预订表中

我们的讲师希望我们使用这个逻辑。

如果住宿在 1 月 1 日至 5 日期间被预订,那么每个日期的预订表中都会有 5 个条目。

您能否就如何在 $date1 和 $date2 之间的每个日期(包括 $date2)进行循环读取提供任何建议?

这是我的 Controller

public function acceptBooking()
{
$request_id = $this->input->post('request_id');
$user_id = $this->session->userdata('user_id');
$property_id = $this->input->post('property_id');
$date1= $this->input->post('date1');
$date2 = $this->input->post('date2');
$status = $this->input->post('status');

$data = array(
'request_id'=>$request_id,
'user_id'=>$user_id,
'property_id'=>$property_id,
'date1' => $date1,
'date2' => $date2,
'status' => $status
);

$this->model_booking_status->update_status($request_id,$data);
$this->model_booking_status->insert_bookingToDB();

$this->load->view('view_accept_success');

}

和我的模特

public function insert_bookingToDB(){
$user_id = $this->session->userdata('user_id');
$property_id = $this->input->post('property_id');
$date1= $this->input->post('date1');
$date2 = $this->input->post('date2');
$status = $this->input->post('status');

for(*****){
$sql = "INSERT INTO bookings(user_id,property_id,property_date)
VALUES (" . $this->db->escape($user_id) . ",
" . $this->db->escape($property_id) . ",
" . $this->db->escape($property_date) .")";
$result = $this->db->query($sql);
}

}

function update_status($request_id,$data)
{
$this->db->where('request_id', $request_id);
$this->db->update('requests', $data);
}

}

我有功能 update_status 工作,它允许主机接受请求,并在数据库中更新以供用户查看。老实说,我不知道从哪里开始读取日期并将每个日期输入数据库的循环。我有 *** 我的循环只是为了告诉你我在想做什么,我数据库上的日期格式是 YYYY-MM-DD 并且在预订表上是 property_date。

非常感谢,如果我像个白痴一样再次抱歉!

已解决:)

while (strtotime($date1) <= strtotime($date2)) {
echo "$date1\n";
//use +1 month to loop through months between start and end dates
$date1 = date ("Y-m-d", strtotime("+1 day", strtotime($date1)));
$sql = "INSERT INTO bookings(user_id,property_id,property_date)
VALUES (" . $this->db->escape($user_id) . ",
" . $this->db->escape($property_id) . ",
" . $this->db->escape($date1) .")";
$result = $this->db->query($sql);
}

最佳答案

已解决

while (strtotime($date1) <= strtotime($date2)) {
echo "$date1\n";
//use +1 month to loop through months between start and end dates
$date1 = date ("Y-m-d", strtotime("+1 day", strtotime($date1)));
$sql = "INSERT INTO bookings(user_id,property_id,property_date)
VALUES (" . $this->db->escape($user_id) . ",
" . $this->db->escape($property_id) . ",
" . $this->db->escape($date1) .")";
$result = $this->db->query($sql);
}

关于php - 我有两个日期变量,date_from 和 date_to,我可以读入它们之间的每个值吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40539725/

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