无法使用php在数据库中存储尼泊尔日期

时间:2019-07-09 05:13:19

标签: php mysql

我正在尝试将表单值存储在数据库中。但是我能够存储所有  表单值(尼泊尔日期除外)。我的代码如下。使用输入类型作为日期时,我可以插入英文日期,并从英文日历中插入日期。

registration.php

<div class="form-group ">
  <label>दर्ता मिति</label>
  <input type="text" name="registration_date" autocomplete="off" class="form-control date-picker " value="<?php echo $registration_date; ?>">
  <script type="text/javascript">
   $(".date-picker").nepaliDatePicker({
     dateFormat: "%y-%m-%d",
     closeOnDateSelect: true

   }); 
 </script>
</div>

<?php
require_once "conn.php";
$registration_date = $fiscalyear_id = $houseowner_name_np = "";

if ($_SERVER["REQUEST_METHOD"] == "POST") {
    $registration_date  = trim($_POST["registration_date"]);
    $fiscalyear_id      = trim($_POST["fiscalyear_id"]);
    $houseowner_name_np = trim($_POST["houseowner_name_np"]);
    $sql                = "INSERT INTO bps_registration_newregistration (registration_date, fiscalyear_id, houseowner_name_np) VALUES (?, ?, ?)";


    if ($stmt = mysqli_prepare($conn, $sql)) {
        mysqli_stmt_bind_param($stmt, "sss", $registration_date, $fiscalyear_id, $houseowner_name_np);
        $registration_date  = $registration_date;
        $fiscalyear_id      = $fiscalyear_id;
        $houseowner_name_np = $houseowner_name_np;
        if (mysqli_stmt_execute($stmt)) {
            header("location: index.php");
            exit();
        } else {
            echo "Something went wrong. Please try again later.";
        }
    }

    mysqli_close($conn);
}
?>

1 个答案:

答案 0 :(得分:0)

DATE类型用于具有日期部分但没有时间部分的值。 MySQL检索并以DATE格式显示'YYYY-MM-DD'值。受支持的范围是'1000-01-01''9999-12-31'

有两种方法可以解决您的问题。

  1. 您可以更改日期格式,然后保存到数据库表中。
  2. 或更改列的数据类型CHARVARCHAR

CHARVARCHAR类型的声明长度表示您要存储的最大字符数。例如,CHAR(30)最多可容纳30个字符。

希望这会有所帮助。