Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/283.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 用日期搜索数据表_Php_Mysql_Date_Search_Html Table - Fatal编程技术网

Php 用日期搜索数据表

Php 用日期搜索数据表,php,mysql,date,search,html-table,Php,Mysql,Date,Search,Html Table,我有一个数据表,它是一次表单提交的结果,表单有开始日期和结束日期,其类型为DATETIME-LOCAL 在我的数据库中,它的日期时间(不显示AM和PM), 我想根据日期而不是日期和时间向我的数据表添加搜索功能 基于类型和名称的其他类型的搜索正在工作,但不会显示日期,也不会显示错误和结果 <form action="search.php" id="searchform" method="POST" class="searchbox-container"> <input t

我有一个数据表,它是一次表单提交的结果,表单有开始日期和结束日期,其类型为
DATETIME-LOCAL

在我的数据库中,它的日期时间(不显示AM和PM),
我想根据日期而不是日期和时间向我的数据表添加搜索功能

基于类型和名称的其他类型的搜索正在工作,但不会显示日期,也不会显示错误和结果

<form action="search.php" id="searchform" method="POST" class="searchbox-container">
    <input type="text" id="searchbox" placeholder="Search" name="searchbox" class="searchbox" />
    <input type="date" name="date">

    <select name="select" id="select">
        <option value="type">Type</option>
        <option value="name">Name</option>
    </select>
    <input type="submit" name="search" class="searchbox-btn" value="Go" />

</form>

<?php

    if(isset($_POST['search'])){
        $search=preg_replace('#[^a-z 0-9?!]#i','',$_POST['searchbox']);


        $user="admin";
        $pass="neehahs";
        $host="localhost";
        $db_name="eventregisteration";

        $con=mysqli_connect($host, $user, $pass, $db_name);
        if(mysqli_connect_errno($con)){
            echo "Failed to connect to MySQL: " . mysqli_connect_error();
        }

        $date=$_POST['date'];


        if($_POST['select']=="type"){
            $sqlcommand="SELECT * FROM eventform WHERE event_type LIKE '%$search%'";    


        }
        elseif($_POST['select']=="name"){
            $sqlcommand="SELECT * FROM eventform WHERE event_name LIKE '%$search%'";        


        }
        else {
            if($date!=0)
                $sqlcommand="SELECT * FROM eventform WHERE start_date='$date' ORDER BY start_date DESC";    


        }
        $sqldata=mysqli_query($con,$sqlcommand)
            or die("Error Getting Data");

        $count=mysqli_num_rows($sqldata);
        if($count!=0){

            echo "<table border=2 bordercolor=#440000 cellpadding=2 bgcolor=#DDDDDD width=100%>";
            echo "<tr bgcolor=#555555 style=font-size:18px align=center><th>Event Code</th><th>Event Name</th><th>Event Type</th><th>Event Level</th><th>Start Date</th>
      <th>End Date</th><th>Point</th><th>Picture</th><th>Video</th><th>Description</th></tr>";
            while($row=mysqli_fetch_array($sqldata)){
                echo "<tr align=center><td>";
                echo $row['event_code'];

                echo "</td><td>";
                echo $row['event_name'];
                echo "</td><td>";

                echo $row['event_type'];
                echo "</td><td>";

                echo $row['event_level'];
                echo "</td><td>";

                echo $row['start_date'];
                echo "</td><td>";

                echo $row['end_date'];
                echo "</td><td>";

                echo $row['points'];
                echo "</td><td>";

                echo "<a href=http://localhost/greenstudio/".$row['pic'].">".$row['pic']."</a>";
                echo "</td><td>";

                echo "<a href=http://localhost/greenstudio/".$row['video'].">".$row['video']."</a>";
                echo "</td><td>";

                echo $row['description'];
                echo "</td></tr>";

            }
            echo "</table>";

        }else{
            echo "hi";
            $search_output="<hr/>0 Results for<strong>$search</strong><hr/>";

        }
    }

?>

类型
名称

以索引友好方式编写的查询可能如下所示

选择*
从eventform
其中开始日期>=“$date”
开始日期<'$date'+间隔1天
按开始日期说明订购
其中,
$date
应采用
YYYY-MM-DD
格式(例如
2013-11-27

这里是演示

<强>边注:因为您已经使用<代码> MySQLI>代码>考虑学习和使用,而不是插入查询字符串,使其对SQL注入敞开。