gpt4 book ai didi

php - 可选的日期、时间、为Mysql数据库归档的日期时间

转载 作者:行者123 更新时间:2023-11-29 07:10:03 28 4
gpt4 key购买 nike

我有一个带有文本字段、多项选择和日期、日期时间、时间字段的 php 表单,我想在提交表单时将日期、日期时间和时间字段设置为可选。怎么办呢?仅输入日期、日期时间、时间字段时插入值。

PHP代码

//获取变量

$checkout_date_input = $_POST['checkout_date_input'];
$checkout_time_input = $_POST['checkout_time_input'];


$arrival_date_time = $_POST['arrival_date_time'];
$arrival_flightno = $_POST['arrival_flightno'];
$departure_date_time = $_POST['departure_date_time'];
$departure_flightno = $_POST['departure_flightno'];

//插入SQL查询

$query = mysql_query("insert into reservationform(booking_checkout_date, booking_checkout_time, booking_arrival_date, booking_arrival_flightno, booking_departure_date,booking_departure_flightno) values ('$checkout_date_input',  '$checkout_time_input',
$arrival_flightno,'$departure_date_time',$departure_flightno)");

最佳答案

解决方案#1

最好的方法是检查用户是否输入了某些内容,如果有,您可以传递该值,如果没有,您可以将变量设置为 NULL。

if(!empty(trim($_POST['checkout_date_input']))){
$checkout_date_input = $_POST['checkout_date_input'];
} else {
$checkout_date_input = null;
}

解决方案#2

您可以做的另一件事是指定要插入数据库的列名。

INSERT INTO 表(列 1,列 2)VALUES('值 1','值 2')

该查询只会将值插入到column1和column2中,其他列将为空。如果您设置了多个 if 语句来检查字段是否已填充,则可以确定向哪些列插入值以及不向哪些列插入值。




这两种解决方案都基于这样的假设:您的数据库列允许空值,这些值将被插入到数据库中。

安全

您的代码非常容易受到数据库攻击。我建议使用 PDO 和准备好的语句来确保数据库查询的卫生。 More info can be found here.

关于php - 可选的日期、时间、为Mysql数据库归档的日期时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40117447/

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