dongyi1015 2015-07-09 10:52
浏览 55
已采纳

HTML日期使用php输入到SQL

I have been trying to Use a form written in HTML to input a "Name" and a "Date" into a SQL Database.

Concerning the connection to SQL everything is fine. It is just that using the the HTML5 Date Input type (which include a drop down calendar) the data and PHP does not seem to show up. When I input the data into the SQL table the "Name" shows up but the "Date" remains blank. I have put some of my code below. The Form is input.html and the data handling code is table.php. The DB name is users and the table name is staff.

input.html

<html>
<form action='table.php' method='POST'>
    Name <input type="text" name="name"> <br />
    Date of Expiry <input type="date" name="date1"> <br />
    <input type="submit" name="submit" value="Submit"> <br />
</form>
</html>

table.php

<?php
  $name = $_POST["name"];
  $date1 = $_POST["date1"];
  $servername = "exampleserver.net";
  $uname = "exampleusername";
  $pass = "password";
  $dbname = "users";
  $errors = array();
  $conn = new mysqli($servername, $uname, $pass, $dbname);
  if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
  } 
  if(mysqli_query($conn,"INSERT INTO staff (`name`, `date1`) VALUES('$name','$date1')")) { 
    header("Location: http://newpageafterdataentry.com"); 
    die(); 
  } else { 
    echo "Error: " . $sql . "<br>" . mysqli_error($conn); 
  } 
  mysqli_close($conn);
?>
  • 写回答

1条回答 默认 最新

  • douchen7555 2015-07-09 11:43
    关注

    You can use strtotime() for converting into timestamp and date() for formatting before saving into DB mysql.Try following:

    $day1 = strtotime($_POST["date1"]);
    $day1 = date('Y-m-d H:i:s', $day1); //now you can save in DB
    

    Full code should be:

    <?php
      $name = $_POST["name"];
      $day1 = strtotime($_POST["date1"]);
      $day1 = date('Y-m-d H:i:s', $day1); //now you can save in DB
      $servername = "exampleserver.net";
      $uname = "exampleusername";
      $pass = "password";
      $dbname = "users";
      $errors = array();
      $conn = new mysqli($servername, $uname, $pass, $dbname);
      if ($conn->connect_error) {
        die("Connection failed: " . $conn->connect_error);
      } 
      if(mysqli_query($conn,"INSERT INTO staff (`name`, `date1`) VALUES('$name','$date1')")) { 
        header("Location: http://newpageafterdataentry.com"); 
        die(); 
      } else { 
        echo "Error: " . $sql . "<br>" . mysqli_error($conn); 
      } 
      mysqli_close($conn);
    ?>
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 matlab中使用gurobi时报错
  • ¥15 WPF 大屏看板表格背景图片设置
  • ¥15 这个主板怎么能扩出一两个sata口
  • ¥15 不是,这到底错哪儿了😭
  • ¥15 2020长安杯与连接网探
  • ¥15 关于#matlab#的问题:在模糊控制器中选出线路信息,在simulink中根据线路信息生成速度时间目标曲线(初速度为20m/s,15秒后减为0的速度时间图像)我想问线路信息是什么
  • ¥15 banner广告展示设置多少时间不怎么会消耗用户价值
  • ¥16 mybatis的代理对象无法通过@Autowired装填
  • ¥15 可见光定位matlab仿真
  • ¥15 arduino 四自由度机械臂