【发布时间】:2015-06-18 09:12:17
【问题描述】:
大家好,我正在尝试查找网站上注册会员的最近生日,并将查询结果存储到会话中,以便下次不需要执行查询,以减少页面加载时间和服务器加载
我有这个代码
if(!isset($_SESSION['dob']) || $_SESSION['dob'] =='' ){
$frndlist=$_SESSION['friendlist']; //comma seperated list of friends
$CurrMOnth= date('m'); // this month
$BirthDLAST0n=date('d', strtotime(' - 7 day'));
$BirthDGRATEn=date('d', strtotime(' + 7 day'));
$GEttheBIrthdaYS=mysqli_query($connection,"select id,name,dob from members
where (id IN ($frndlist)) and (MONTH(dob) = '$CurrMOnth') and
(DAY(dob) > '$BirthDLAST0n' and DAY(dob) < '$BirthDGRATEn' )
order by dob desc limit 10");
$_SESSION['dob']=$GEttheBIrthdaYS;}else{
$GEttheBIrthdaYS=$_SESSION['dob'];
}
while($theBdaYSreYAr90=mysqli_fetch_array($GEttheBIrthdaYS)){ //print }
但这里的问题是查询的结果存储到会话中,但它永远不会被 mysqli_fetch_array 接受它说错误。 这是问题,因为我试图将对象存储到会话中 是否有任何替代方法可以将结果存储到某些东西中,以便不需要再次执行相同的查询......
而且生日脚本也不好,它没有显示出生日期在几个月的最后或开始的人的生日。
请告诉我如何将查询结果存储到会话或 cookie 中 由于 cookie 存储的尺寸非常小,我不认为 cookie 是一个好的选择。
【问题讨论】:
标签: php session cookies mysqli