电影中心 精品软件 联系我们

 找回密码
 立即注册

QQ登录

只需一步,快速开始

Close
查看: 1992|回复: 0

关于Lht_CV2.0_0103 团购导航程序的报错修改

[复制链接]
发表于 2011-1-24 03:38:16 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
+ e/ ~) p4 _. J9 b) P8 u  x
byLht_CV2.0_0103
4 N: a& }8 O1 H6 g" a5 e" D! aPHPUP info: MySQL Query Error
( A" ~8 X( l: _6 D+ C2 fTime: 2011-1-22 2:18pm
- m- @  g! b) G, c6 e* }7 kScript:5 O( ~9 y& h7 F. W1 K6 E
SQL: select * from `tuan369`.`tuan369_object` where 1 and type = ‘spike’ and 1295677090 > starttime and 1295677090 < endtime order by localtion limit' X6 K% Z  y5 B# T, S5 f
Error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ” at line 1: D1 @" h5 [7 m8 a' C
Errno.: 1064
3 z; w) ^# S4 d+ @! U
以上错误在没有关闭phperror的时候,你访问首页会在偶然的时间产生(这个时间时候缓存时间限制的)。0 J2 \5 _& D, N+ k
很显然这是一个语法错误mysql的语法在limit后面没有增加限制数量。4 d! I2 j- I- X6 [1 U$ }
问题出现的页面时在 inc/common.inc.php 中
" Q  T6 P4 d/ ]6 W8 ?通过检查这个文件我们可以看到这样的代码
- C3 f% X" j0 b
if(!checkfile(“object_side”,1800))   //检查缓存文件的时间是不是超过了1800秒
7 V- t6 M$ s4 b, ~! X{ //如果超过5 D2 @9 T$ u) x  q7 Y* E  U7 I6 o
$time = time(); $ @! B" P" j( o
$query=$db->query(“select * from “.tname(‘object’).” where 1 and type = ‘spike’ and $time > starttime and $time < endtime order by localtion limit “.$GLOBALS['setting']['object_sidenum']);   //问题就出在这一句,很显然这里的$GLOBALS['setting']['object_sidenum']没有设置 后台有设置的地方。但是没有设置的时候这里就会出错。我现在没有搞懂如何将变量放进globals里面去的。这里不管他6 q6 p7 s  w5 _+ [& H7 Y4 z
. s( p# N/ w+ [0 I9 R8 f
while($rows=$db->fetch_array($query))# b- _6 ~# a; Y! l
{
" _* x+ d, q# ~- Q0 h. E  $object_side[]=$rows;3 u: d; J4 ~$ I  x7 F
}+ t: J# T- F+ u7 r: I
    " C$ v4 W' @8 K# ]1 R
write(‘object_side’,$object_side);//缓存超时的时候写入缓存
( V: ^* F7 w- K! r% E' N8 R}2 Z& b+ H( }- H
else  //没有超时则 读取缓存文件。
* u* j( d8 p% }% d3 ]/ n; Y{
* e) y. E& P0 R# L$ B, p. Z: F $object_side=read(“object_side”);/ o8 G" T8 m! R9 ^' j
}
0 R% q. i+ P1 g' C! _3 u
这里很简单我的说明语句也已经指出了问题的所在。
2 i9 I8 o  a0 l" O. ^9 i关键就在与$GLOBALS['setting']['object_sidenum']这个变量+ s# O4 Z6 e/ @; m2 T! K( \
而在index.php

& s+ J3 X+ }  B- r<?php
# ^' n: T2 s/ s# v6 G8 R: Y$ x$ ksession_start(); 5 n. M  o4 w, N2 R% c& d! E9 J
set_time_limit(1000);5 }( B- j! V/ N2 {  s
if(!is_file(str_replace(“\\”,’/',dirname(__FILE__)).’/data/config.inc.php’))2 i9 i) L0 ^% m2 D5 ^5 v$ Z, L" Z) {
{
' ], ~: {4 I( z  g/ X7 b0 L echo ‘<SCRIPT LANGUAGE=”JavaScript”>
* `' H7 f3 G$ w( Q/ i. C <!–& J% b8 u9 R/ e  A
  window.location=”install/index.php”;, T3 ~, G  g3 k9 }6 J
//–>
7 {" W- K- `9 f2 o6 } </SCRIPT>’;5 m6 ]/ Y7 y5 w  m7 \
exit;
) B. V, F5 b3 h8 P8 Y; W* a& G}# Y  k7 U; k8 k9 Q
require(‘inc/common.inc.php’);( J0 [% H- O* c. o
//……………………省略代码

) n& H. |  g5 {0 C在引入common.inc.php文件之前没有看到有关导入globals的信息。所以我不能够确定他正确的被导入了。这里不讨论这个导入问题。
+ z3 x/ D3 e/ Z7 w在不设置相应变量的时候解决办法是增加 红色代码

: d6 ~  Y$ H8 H* ]+ L4 dif(!checkfile(“object_side”,1800))* c6 L* c; j) M, F" y8 I' M
{ 7 v" j9 s$ o+ U2 l) N( {5 g( y
   if(!$GLOBALS['setting']['object_sidenum'])$GLOBALS['setting']['object_sidenum']=10;
% f) [2 ~$ u% A, J6 n6 z( S$ i
$time = time();
" ?/ y, U- V) X& ` $query=$db->query(“select * from “.tname(‘object’).” where 1 and type = ‘spike’ and $time > starttime and $time < endtime order by localtion limit “.$GLOBALS['setting']['object_sidenum']);  S" ]6 _+ ?8 x) {( [8 ~

# J" w3 k2 N7 d while($rows=$db->fetch_array($query))2 ?% c+ n' R5 Y# _
{! j( z- y0 h+ O5 G
  $object_side[]=$rows;
5 M( B# e& K' T- X' {8 o }
( l7 S% ]+ r9 w5 \8 C+ w) h1 k, A    ; v) Q% @/ k# R# ]* ^5 _
write(‘object_side’,$object_side);
8 N; ]: F% `7 g! s! {6 I$ s}1 A) V1 c5 v  D/ u2 U2 U: Z
else
. I7 t$ Z; L# Q# x$ e: }" s+ g- C{
3 D# Y) v/ X) j6 }/ G0 Q $object_side=read(“object_side”);
5 E- @* H" G, ]. R. w/ W}

# A. V5 f$ w: o7 u5 B给该变量定义一个值。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|手机版|Archiver|帮助|古城IT技术联盟 ( 鲁ICP备06030014号 )

GMT+8, 2024-5-8 10:01 , Processed in 0.139057 second(s), 10 queries , Gzip On, Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表