Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/56.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_Database_Date - Fatal编程技术网

通过日期按年份搜索(仅';日期';,而不是时间戳或其他),通过从变量传递PHP

通过日期按年份搜索(仅';日期';,而不是时间戳或其他),通过从变量传递PHP,php,mysql,database,date,Php,Mysql,Database,Date,因此,我在创建一个搜索函数时遇到了一个问题,该函数将打印所选年份的结果。用户基本上选择希望查看该年发生的所有任务的年份 我已经尝试了很多函数,我还在学习myslqi,所以我为mysql中目前缺少这个*表示歉意 这是我到目前为止所得到的,我没有得到任何错误,我没有得到任何错误,我只是没有得到任何结果 这是html,用户可以在其中选择他们想要的结果来源的年份 我把代码删减,以显示重要的部分 首先,这里是html年份选择: <table> <div class="container-

因此,我在创建一个搜索函数时遇到了一个问题,该函数将打印所选年份的结果。用户基本上选择希望查看该年发生的所有任务的年份

我已经尝试了很多函数,我还在学习myslqi,所以我为mysql中目前缺少这个*表示歉意

这是我到目前为止所得到的,我没有得到任何错误,我没有得到任何错误,我只是没有得到任何结果

这是html,用户可以在其中选择他们想要的结果来源的年份

我把代码删减,以显示重要的部分

首先,这里是html年份选择:

<table>
<div class="container-fluid">
<form>

<div class="btn-group btn-group-justified" role="group" aria-label="..." name="year" id="year" onclick="showYear(this.value)" class="form-control">
  <div class="btn-group btn-group-lg" role="group" value="2015">
    <button type="button" class="btn btn-default" value="2015">2015</button>
  </div>
  <div class="btn-group btn-group-lg" role="group" value="2014">
    <button type="button" class="btn btn-default" value="2014">2014</button>
  </div>
  <div class="btn-group btn-group-lg" role="group" value="2013">
    <button type="button" class="btn btn-default" value="2013">2013</button>
  </div>
  <div class="btn-group btn-group-lg" role="group" value="2012">
    <button type="button" class="btn btn-default" value="2012">2012</button>
  </div>
</div>
<div class="btn-group btn-group-justified" role="group" aria-label="..." name="year" id="year" onclick="showYear(this.value)" class="form-control">
  <div class="btn-group btn-group-lg" role="group" value="2011">
    <button type="button" class="btn btn-default" value="2011">2011</button>
  </div>
  <div class="btn-group btn-group-lg" role="group" value="2010">
    <button type="button" class="btn btn-default" value="2010">2010</button>
  </div>
  <div class="btn-group btn-group-lg" role="group" value="2009">
    <button type="button" class="btn btn-default" value="2009">2009</button>
  </div>
  <div class="btn-group btn-group-lg" role="group" value="2008">
    <button type="button" class="btn btn-default" value="2008">2008</button>
  </div>
</div>
<div class="btn-group btn-group-justified" role="group" aria-label="..." name="year" id="year" onclick="showYear(this.value)" class="form-control">
    <div class="btn-group btn-group-lg" role="group" value="2007">
        <button type="button" class="btn btn-default" value="2007">2007</button>
    </div>
  <div class="btn-group btn-group-lg" role="group" value="2006">
        <button type="button" class="btn btn-default" value="2006">2006</button>
    </div>
  <div class="btn-group btn-group-lg" role="group" value="2005">
        <button type="button" class="btn btn-default" value="2005">2005</button>
    </div>
   <div class="btn-group btn-group-lg" role="group" value="2004">
        <button type="button" class="btn btn-default" value="2004">2004</button>
    </div>
</div>
<div class="btn-group btn-group-justified" role="group" aria-label="..." name="year" id="year"onclick="showYear(this.value)" class="form-control">
    <div class="btn-group btn-group-lg" role="group" value="2003">
        <button type="button" class="btn btn-default" value="2003">2003</button>
    </div>
   <div class="btn-group btn-group-lg" role="group" value="2002">
        <button type="button" class="btn btn-default" value="2002">2002</button>
    </div>
    <div class="btn-group btn-group-lg" role="group" value="2001">
        <button type="button" class="btn btn-default" value="2001">2001</button>
    </div>
    <div class="btn-group btn-group-lg" role="group" value="2000">
        <button type="button" class="btn btn-default" value="2000">2000</button>
    </div>
</div>

</form>
</table>

<div class="container-fluid" id="txtHint"><b></b></div>

2015
2014
2013
2012
2011
2010
2009
2008
2007
2006
2005
2004
2003
2002
2001
2000
此页面顶部有一个脚本,用于处理和传递以下内容:

<script>
    function showYear(str) {
        if (str == "") {
            document.getElementById("txtHint").innerHTML = "";
            return;
        } else { 
            if (window.XMLHttpRequest) {
                // code for IE7+, Firefox, Chrome, Opera, Safari
                xmlhttp = new XMLHttpRequest();
            } else {
                // code for IE6, IE5
                xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
            }
            xmlhttp.onreadystatechange = function() {
                if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
                    document.getElementById("txtHint").innerHTML = xmlhttp.responseText;
                }
            }
            xmlhttp.open("GET","getYear.php?year="+str,true);
            xmlhttp.send();
        }
    }
    </script>

功能展示年(str){
如果(str==“”){
document.getElementById(“txtHint”).innerHTML=“”;
返回;
}否则{
if(window.XMLHttpRequest){
//IE7+、Firefox、Chrome、Opera、Safari的代码
xmlhttp=新的XMLHttpRequest();
}否则{
//IE6、IE5的代码
xmlhttp=新的ActiveXObject(“Microsoft.xmlhttp”);
}
xmlhttp.onreadystatechange=函数(){
if(xmlhttp.readyState==4&&xmlhttp.status==200){
document.getElementById(“txtHint”).innerHTML=xmlhttp.responseText;
}
}
open(“GET”,“getYear.php?year=“+str,true”);
xmlhttp.send();
}
}
下面是php:

<html>

<body>

<div class="container-fluid"> <!-- Table Headers -->
<table class="table table-hover table-responsive">
    <thead>
        <tr>
            <th>Series:</th><th>Title:</th><th>Date:</th><th>Type:</th><th>House Location:</th><th>Housemates:</th>
            <br>
        </tr>
    </thead>      
</div>

<?php
$date = intval($_GET['year']);

include('dbconnect.php');

$sql ="SELECT * FROM tasks WHERE YEAR(date) = '$date' ";

$result = mysql_query($sql);

if (!$result)

echo "An error occurred: ".mysql_error();

else

while ($row=mysql_fetch_assoc($result))
 {

    $taskid = $row['taskid'];

    echo '<tr>';
    echo '<td>';

    echo '<button type="button" name="delete_row" id="delete_row" class="close">';
    echo '<a href="taskResult.php?id='. $taskid .'">';
    echo '<span title="View" aria-hidden="true" class="glyphicon glyphicon-search">';
    echo '</span>';
    echo '<span class="sr-only">';
    echo 'View';
    echo '</span>';
    echo '</button>';
    echo '</a>';
    echo '</td>';
    echo "<td>" . $row['title'] . "</td>";
    echo "<td>" . $row['date'] . "</td>";
    echo "<td>" . $row['type'] . "</td>";
    echo "<td>" . $row['houseLocation'] . "</td>";
    echo "<td>" . $row['housemates'] . "</td>";
    echo "</tr>";
}
echo "</table>";
mysql_close();
?>

系列:标题:日期:类型:房屋位置:室友:

目前我只在任何选择上打印表格标题


任何帮助都将不胜感激。这是一个非常小的项目,我是一个非常新的程序员

我首先想到的是,在sql中,您将数字与字符串进行比较

$sql ="SELECT * FROM tasks WHERE YEAR(date) = '$date' ;
通过将$date包装在引号内,它将成为一个字符串值。年(日期)返回的数字年份值永远不会与字符串值匹配

i、 e.2015!='2015’

在你的JS中:

xmlhttp
未定义。尝试在
xmlhttp
之前添加
var
,如:

var xmlhttp = new XMLHttpRequest(); 

else
块的第一行添加
var xmlhttp

并且您的
onclick
方法被添加到html中的错误div中,因为它应该添加到按钮中:

使用以下内容与您的HTML建立关系:

<table>
<div class="container-fluid">
<form>

<div class="btn-group btn-group-justified" role="group" aria-label="..." name="year" id="year"  class="form-control">
  <div class="btn-group btn-group-lg" role="group" value="2015">
    <button type="button" class="btn btn-default" value="2015" onclick="showYear(this.value)">2015</button>
  </div>
  <div class="btn-group btn-group-lg" role="group" value="2014">
    <button type="button" class="btn btn-default" value="2014" onclick="showYear(this.value)">2014</button>
  </div>
  <div class="btn-group btn-group-lg" role="group" value="2013">
    <button type="button" class="btn btn-default" value="2013" onclick="showYear(this.value)">2013</button>
  </div>
  <div class="btn-group btn-group-lg" role="group" value="2012">
    <button type="button" class="btn btn-default" value="2012" onclick="showYear(this.value)">2012</button>
  </div>
</div>
<div class="btn-group btn-group-justified" role="group" aria-label="..." name="year" id="year" class="form-control">
  <div class="btn-group btn-group-lg" role="group" value="2011">
    <button type="button" class="btn btn-default" value="2011" onclick="showYear(this.value)">2011</button>
  </div>
  <div class="btn-group btn-group-lg" role="group" value="2010">
    <button type="button" class="btn btn-default" value="2010" onclick="showYear(this.value)">2010</button>
  </div>
  <div class="btn-group btn-group-lg" role="group" value="2009">
    <button type="button" class="btn btn-default" value="2009" onclick="showYear(this.value)">2009</button>
  </div>
  <div class="btn-group btn-group-lg" role="group" value="2008">
    <button type="button" class="btn btn-default" value="2008" onclick="showYear(this.value)">2008</button>
  </div>
</div>
<div class="btn-group btn-group-justified" role="group" aria-label="..." name="year" id="year"  class="form-control">
    <div class="btn-group btn-group-lg" role="group" value="2007">
        <button type="button" class="btn btn-default" value="2007" onclick="showYear(this.value)">2007</button>
    </div>
  <div class="btn-group btn-group-lg" role="group" value="2006">
        <button type="button" class="btn btn-default" value="2006" onclick="showYear(this.value)">2006</button>
    </div>
  <div class="btn-group btn-group-lg" role="group" value="2005">
        <button type="button" class="btn btn-default" value="2005" onclick="showYear(this.value)">2005</button>
    </div>
   <div class="btn-group btn-group-lg" role="group" value="2004">
        <button type="button" class="btn btn-default" value="2004" onclick="showYear(this.value)">2004</button>
    </div>
</div>
<div class="btn-group btn-group-justified" role="group" aria-label="..." name="year" id="year" class="form-control">
    <div class="btn-group btn-group-lg" role="group" value="2003">
        <button type="button" class="btn btn-default" value="2003" onclick="showYear(this.value)">2003</button>
    </div>
   <div class="btn-group btn-group-lg" role="group" value="2002">
        <button type="button" class="btn btn-default" value="2002" onclick="showYear(this.value)">2002</button>
    </div>
    <div class="btn-group btn-group-lg" role="group" value="2001" >
        <button type="button" class="btn btn-default" value="2001" onclick="showYear(this.value)">2001</button>
    </div>
    <div class="btn-group btn-group-lg" role="group" value="2000">
        <button type="button" class="btn btn-default" value="2000" onclick="showYear(this.value)">2000</button>
    </div>
</div>

</form>
</table>

<div class="container-fluid" id="txtHint"><b></b></div>

2015
2014
2013
2012
2011
2010
2009
2008
2007
2006
2005
2004
2003
2002
2001
2000

这是一个好机会。可能就是这样。但这取决于mysql服务器使用的数据库引擎的严格程度。因此,“由年份(日期)返回的数字年份值永远不会与字符串值匹配”太强。很可能不会,除非您的数据库管理员将服务器设置为非常松散。@user2730024谢谢,这是一个小小的疏忽。我是白痴。我已经删除了单引号,仍然没有结果是的,所以我已经完全做到了(它需要小的调整,引号和额外的括号),但仍然只是得到没有结果的表格标题。。。(9)“未定义”很抱歉这么晚才回复,我只需要坐下来讨论这个问题!这工作做得很好!非常感谢你!!!
<table>
<div class="container-fluid">
<form>

<div class="btn-group btn-group-justified" role="group" aria-label="..." name="year" id="year"  class="form-control">
  <div class="btn-group btn-group-lg" role="group" value="2015">
    <button type="button" class="btn btn-default" value="2015" onclick="showYear(this.value)">2015</button>
  </div>
  <div class="btn-group btn-group-lg" role="group" value="2014">
    <button type="button" class="btn btn-default" value="2014" onclick="showYear(this.value)">2014</button>
  </div>
  <div class="btn-group btn-group-lg" role="group" value="2013">
    <button type="button" class="btn btn-default" value="2013" onclick="showYear(this.value)">2013</button>
  </div>
  <div class="btn-group btn-group-lg" role="group" value="2012">
    <button type="button" class="btn btn-default" value="2012" onclick="showYear(this.value)">2012</button>
  </div>
</div>
<div class="btn-group btn-group-justified" role="group" aria-label="..." name="year" id="year" class="form-control">
  <div class="btn-group btn-group-lg" role="group" value="2011">
    <button type="button" class="btn btn-default" value="2011" onclick="showYear(this.value)">2011</button>
  </div>
  <div class="btn-group btn-group-lg" role="group" value="2010">
    <button type="button" class="btn btn-default" value="2010" onclick="showYear(this.value)">2010</button>
  </div>
  <div class="btn-group btn-group-lg" role="group" value="2009">
    <button type="button" class="btn btn-default" value="2009" onclick="showYear(this.value)">2009</button>
  </div>
  <div class="btn-group btn-group-lg" role="group" value="2008">
    <button type="button" class="btn btn-default" value="2008" onclick="showYear(this.value)">2008</button>
  </div>
</div>
<div class="btn-group btn-group-justified" role="group" aria-label="..." name="year" id="year"  class="form-control">
    <div class="btn-group btn-group-lg" role="group" value="2007">
        <button type="button" class="btn btn-default" value="2007" onclick="showYear(this.value)">2007</button>
    </div>
  <div class="btn-group btn-group-lg" role="group" value="2006">
        <button type="button" class="btn btn-default" value="2006" onclick="showYear(this.value)">2006</button>
    </div>
  <div class="btn-group btn-group-lg" role="group" value="2005">
        <button type="button" class="btn btn-default" value="2005" onclick="showYear(this.value)">2005</button>
    </div>
   <div class="btn-group btn-group-lg" role="group" value="2004">
        <button type="button" class="btn btn-default" value="2004" onclick="showYear(this.value)">2004</button>
    </div>
</div>
<div class="btn-group btn-group-justified" role="group" aria-label="..." name="year" id="year" class="form-control">
    <div class="btn-group btn-group-lg" role="group" value="2003">
        <button type="button" class="btn btn-default" value="2003" onclick="showYear(this.value)">2003</button>
    </div>
   <div class="btn-group btn-group-lg" role="group" value="2002">
        <button type="button" class="btn btn-default" value="2002" onclick="showYear(this.value)">2002</button>
    </div>
    <div class="btn-group btn-group-lg" role="group" value="2001" >
        <button type="button" class="btn btn-default" value="2001" onclick="showYear(this.value)">2001</button>
    </div>
    <div class="btn-group btn-group-lg" role="group" value="2000">
        <button type="button" class="btn btn-default" value="2000" onclick="showYear(this.value)">2000</button>
    </div>
</div>

</form>
</table>

<div class="container-fluid" id="txtHint"><b></b></div>