<? require("connection.php"); ?>
<? require("tools.php"); ?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>按发布人+时间搜索全站文章</title>
<? if($addedit_subed!="true"){ //********************** ?>
<script language="JavaScript" src="check.js"></script>
<script LANGUAGE="javascript">
<!--
function add_onsubmit(add) {
//if (!checkvalue(add.title,0,0,1,"标题")) return false;
//if (!checkvalue(add.writer,0,0,1,"发布人")) return false;
}
//-->
</SCRIPT>
<? } //*************************************************?>
<style type="text/css">
<!--
body,td,th {font-size: 12px;}
-->
</style></head>
<body bgcolor="#FFFFFF">
<? require("top.inc"); ?>
<form method=GET action=renaiask_list.php name=add LANGUAGE=javascript onSubmit="return add_onsubmit(this)">
<div align=center>
<table width=562 border=0 align="center" cellpadding=0 cellspacing=1>
<tr>
<td>
发布人:
<select name="writer" size=1 class=fstyle>
<option value="">请选择</option>
<option value="123">123</option>
<option value="456">456</option>
<option value="admin">admin</option>
</select>
选择时间:
<select name=YYYY onChange="YYYYDD(this.value)">
<option value="">请选择 年</option>
</select>
<select name=MM onChange="MMDD(this.value)">
<option value="">选择 月</option>
</select>
<select name=DD>
<option value="">选择 日</option>
</select>
<script language="JavaScript">
<!--
function YYYYMMDDstart()
{
MonHead = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];//先给年下拉框赋内容
var y = new Date().getFullYear();
for (var i = (y-30); i < (y+30); i++) //以今年为准,前30年,后30年
document.add.YYYY.options.add(new Option(" "+ i +" 年", i));//赋月份的下拉框
for (var i = 1; i < 13; i++)
document.add.MM.options.add(new Option(" " + i + " 月", i));document.add.YYYY.value = y;
document.add.MM.value = new Date().getMonth() + 1;
var n = MonHead[new Date().getMonth()];
if (new Date().getMonth() ==1 && IsPinYear(YYYYvalue)) n++;
writeDay(n); //赋日期下拉框Author:meizz
document.add.DD.value = new Date().getDate();
}
if(document.attachEvent)
window.attachEvent("onload", YYYYMMDDstart);
else
window.addEventListener('load', YYYYMMDDstart, false);
function YYYYDD(str) //年发生变化时日期发生变化(主要是判断闰平年)
{
var MMvalue = document.add.MM.options[document.add.MM.selectedIndex].value;
if (MMvalue == ""){ var e = document.add.DD; optionsClear(e); return;}
var n = MonHead[MMvalue - 1];
if (MMvalue ==2 && IsPinYear(str)) n++;
writeDay(n)
}
function MMDD(str) //月发生变化时日期联动
{
var YYYYvalue = document.add.YYYY.options[document.add.YYYY.selectedIndex].value;
if (YYYYvalue == ""){ var e = document.add.DD; optionsClear(e); return;}
var n = MonHead[str - 1];
if (str ==2 && IsPinYear(YYYYvalue)) n++;
writeDay(n)
}
function writeDay(n) //据条件写日期的下拉框
{
var e = document.add.DD; optionsClear(e);
for (var i=1; i<(n+1); i++)
e.options.add(new Option(" "+ i + " 日", i));
}
function IsPinYear(year)//判断是否闰平年
{ return(0 == year%4 && (year%100 !=0 || year%400 == 0));}
function optionsClear(e)
{
e.options.length = 1;
}
//-->
</script>
<input type=submit value="提交" name=B1 class=fstyle>
</td>
</tr>
</table>
</div>
</form>
<? require("bottom.inc"); ?>
</body>
</html>
读取的时间格式是:1275633295
如何能准确的按日期搜索出我想要搜索的文章呢?
我这样加了一句 没有反应啊
指教哦 真的非常感谢了啦
问题解决我立即给分哦
$time = strtotime($str); //这才是时间戳$sql="select * from dede_archives where senddate>$time";
//大于OR小于,根据你的需要,当然加上其他条件like,什么的你自己加
<form method=GET action=renaiask_list.php name=add LANGUAGE=javascript onSubmit="return add_onsubmit(this)">
<select name="writer" size=1>
<option value="">请选择</option>
<option value="admin">admin</option>
<option value="123">123</option>
<option value="456">456</option>
</select><select name="senddate" id="senddate" size=1>
<option value="">请选择</option>
<option value="<? echo strtotime("2010-06-04 14:34:55");?>">2010年6月4日</option>
</select>
<input type=submit value="提交" name=B1 class=fstyle>
我写成这样都没有办法搜索到我想要的文章
这是为什么啊?
<? echo strtotime("2010-06-04 14:34:55");?> 这个时间读出来是:1275633295
是和我数据库的senddate字段中是一样的呀
为什么会搜索不出来呢?
再不行,不要搜索echo $sql;打印出语句,贴上来看看
这$sql注释掉,用上面3句替换,再试试看,有没有结果,时间上选早点,我不知道你都有那些数据
<? require("connection.php"); ?>
<? require("tools.php"); ?>
<? //require("checkpass.php"); ?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>按发布人+时间搜索全站文章</title>
<? if($addedit_subed!="true"){ //********************** ?>
<script language="JavaScript" src="check.js"></script>
<script LANGUAGE="javascript">
<!--
function add_onsubmit(add) {
//if (!checkvalue(add.title,0,0,1,"标题")) return false;
//if (!checkvalue(add.writer,0,0,1,"发布人")) return false;
}
//-->
</SCRIPT>
<? } //*************************************************?>
<style type="text/css">
<!--
body,td,th {font-size: 12px;}
-->
</style></head>
<body bgcolor="#FFFFFF"><?php
//$timestamp = "1275272026";
//$timestamp = preg_replace( "/(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})/ ", "\\1-\\2-\\3 \\4:\\5:\\6 ",$timestamp); //格式化成标准日期格式
//$timestamp = strtotime($timestamp); //转化成unix时间戳 ?><? require("top.inc"); ?>
<form method=GET action=renaiask_list.php name=add LANGUAGE=javascript onSubmit="return add_onsubmit(this)">
<?
$str = $_GET['DD'] . '-' . $_GET['MM'] . '-' . $_GET['YYYY'];
$time = strtotime($str); //时间戳$sql="select * from dede_archives where senddate>$time";
?>
<div align=center>
<table width=562 border=0 align="center" cellpadding=0 cellspacing=1>
<tr>
<td>
发布人:
<select name="writer" size=1 class=fstyle>
<option value="">请选择</option>
<option value="123">123</option>
<option value="456">456</option>
<option value="admin">admin</option>
</select>
选择时间:
<select name=YYYY id=senddate onChange="YYYYDD(this.value)">
<option value="">请选择 年</option>
</select>
<select name=MM onChange="MMDD(this.value)">
<option value="">选择 月</option>
</select>
<select name=DD>
<option value="">选择 日</option>
</select>
<script language="JavaScript">
<!--
function YYYYMMDDstart()
{
MonHead = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];//先给年下拉框赋内容
var y = new Date().getFullYear();
for (var i = (y-30); i < (y+30); i++) //以今年为准,前30年,后30年
document.add.YYYY.options.add(new Option(" "+ i +" 年", i));//赋月份的下拉框
for (var i = 1; i < 13; i++)
document.add.MM.options.add(new Option(" " + i + " 月", i));document.add.YYYY.value = y;
document.add.MM.value = new Date().getMonth() + 1;
var n = MonHead[new Date().getMonth()];
if (new Date().getMonth() ==1 && IsPinYear(YYYYvalue)) n++;
writeDay(n); //赋日期下拉框Author:meizz
document.add.DD.value = new Date().getDate();
}
if(document.attachEvent)
window.attachEvent("onload", YYYYMMDDstart);
else
window.addEventListener('load', YYYYMMDDstart, false);
function YYYYDD(str) //年发生变化时日期发生变化(主要是判断闰平年)
{
var MMvalue = document.add.MM.options[document.add.MM.selectedIndex].value;
if (MMvalue == ""){ var e = document.add.DD; optionsClear(e); return;}
var n = MonHead[MMvalue - 1];
if (MMvalue ==2 && IsPinYear(str)) n++;
writeDay(n)
}
function MMDD(str) //月发生变化时日期联动
{
var YYYYvalue = document.add.YYYY.options[document.add.YYYY.selectedIndex].value;
if (YYYYvalue == ""){ var e = document.add.DD; optionsClear(e); return;}
var n = MonHead[str - 1];
if (str ==2 && IsPinYear(YYYYvalue)) n++;
writeDay(n)
}
function writeDay(n) //据条件写日期的下拉框
{
var e = document.add.DD; optionsClear(e);
for (var i=1; i<(n+1); i++)
e.options.add(new Option(" "+ i + " 日", i));
}
function IsPinYear(year)//判断是否闰平年
{ return(0 == year%4 && (year%100 !=0 || year%400 == 0));}
function optionsClear(e)
{
e.options.length = 1;
}
//-->
</script>
<input type=submit value="提交" name=B1 class=fstyle>
</td>
</tr>
</table>
</div>
</form>
<? require("bottom.inc"); ?>
</body>
</html>
<? require("tools.php"); ?>
<? //require("checkpass.php"); ?>
<?
$search = "";if($writer<>""){
if($search==""){
$search .= " WHERE ";
}else{
$search .= " AND ";
}
$search .= " writer = '" . $writer . "' ";
}if($senddate<>""){
if($search==""){
$search .= " WHERE ";
}else{
$search .= " AND ";
}
//$search .= " senddate = '" . $senddate . "' ";
$search .= " senddate = '" . $timestamp . "' ";
$senddate=$_GET["senddate"];
}$table="dede_archives";$sql="select * from " . $table . $search." order by id DESC";//请参考下面代码排序
//$sql="select * from " . $table . $search ." order by dtime DESC";//echo $sql;exit();$result=mysql_query($sql);$pagesize=100; //每页记录条数$result_num=mysql_num_rows($result);if($result_num<=0){
if($search==""){
$word="目前还没有记录!";
}else{
$word="没有查到符合条件的记录!";
}
}else{ $maxpage=ceil($result_num/$pagesize); if(is_long($page) or $page==""){
$page=1;
}else{
$page=(int)($page);
}
if($page<1){
$page=1;
}else if( $page>$maxpage){
$page=$maxpage;
}
mysql_data_seek($result,($page-1)*$pagesize);
$n=1;
}?>
<html><head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<link rel="stylesheet" href="style.css">
<title></title>
</head><body bgcolor="#FFFFFF" topmargin="0" leftmargin="0">
<? require("top.inc"); ?><? if($result_num<=0){ ?><center><BR><BR><? print($word); ?></center><? }else{ ?> <?
$str = $_GET['DD'] . '-' . $_GET['MM'] . '-' . $_GET['YYYY'];
$time = strtotime($str); //时间戳$sql="select * from dede_archives where senddate>$time";
?>
<table width="598" border="0" cellspacing="2" cellpadding="0" align="center">
<tr>
<td>共搜索到<font color="#FF0000"><? print($result_num); ?></font>条符合条件的信息</td>
</tr>
</table>
<table width="600" border="0" cellspacing="1" cellpadding="0" align="center">
<tr align=center bgcolor=#97D0FB>
<td><b>ID</b></td>
<td><b>标题</b></td>
<td><b>发布人</b></td>
<td><b>发表时间</b></td> </tr>
<? while($row = mysql_fetch_array($result)){ ?>
<tr bgcolor=#EEF8FD>
<td align=center><a href="renaiask_show.php?id=<? print($row["id"]); ?>"><? print(HtmlOut($row["id"])); ?></a></td>
<td align=center><? print(HtmlOut($row["title"])); ?></td>
<td align=center><? print(HtmlOut($row["writer"])); ?></td>
<!--<td align=center>< ? echo $senddate=date('Y-m-d H:i:s',(HtmlOut($row["senddate"]))); ?></td>-->
<td align=center><? echo $senddate=date('Y-m-d',(HtmlOut($row["senddate"]))); ?></td> </tr>
<? $n++;if(!($row = mysql_fetch_array($result)) || $n > $pagesize) break; ?>
<tr bgcolor=#D7EFFB>
<td align=center><a href="renaiask_show.php?id=<? print($row["id"]); ?>"><? print(HtmlOut($row["id"])); ?></a></td>
<td align=center><? print(HtmlOut($row["title"])); ?></td>
<td align=center><? print(HtmlOut($row["writer"])); ?></td>
<td align=center><? echo $senddate=date('Y-m-d',(HtmlOut($row["senddate"]))); ?></td> </tr><? $n++;if($n > $pagesize) break;} ?>
</table>
<? LastNextPage($maxpage,$page,"width=100% ","<p align=center class=font2>"); ?><? } ?>
<? require("bottom.inc"); ?>
</body>
</html>
能加我的QQ么?我的QQ:86861014
$str = $_GET['DD'] . '-' . $_GET['MM'] . '-' . $_GET['YYYY'];
$time = strtotime($str); //时间戳$sql="select * from dede_archives where senddate>$time";
接下来要修改的地方
// $search .= " senddate = '" . $timestamp . "' ";//这句前面加上//,然后在后面添加
$str = $_GET['DD'] . '-' . $_GET['MM'] . '-' . $_GET['YYYY'];
$time = strtotime($str);$search .= " senddate >" . $time;//说明,我看原来语句,时间条件用的是=,按说这个字段不应该是个时间戳,我建议你先看看基础吧,共同学习
//
我按照你说的做了
能搜出文章内容了,但是会把所有日期的全部搜出来
还有什么地方需要修改么?
能加我的QQ么?86861014 谢谢
把文章其中一篇这个数值改小了,再测试一下
是这吗?
我把文章时间改成2009-07-13 15:50:48了
像这样直接写option中的value值,不通过js传值的下拉框,也搜索不出文章 超级郁闷啊
类型:int(10)
属性:UNSIGNED
Null:否
默认:0这是我的senddate字段设置请问我要怎么改啊?
怎么改小 把什么改小啊?
请指教 谢谢
难道是改这个长度值么?