function ReturnSearchAllSql($add) { global $public_r, $class_r; //关闭 if (empty($public_r['openschall'])) { printerror("SchallClose", '', 1); } //关键字 $keyboard = RepPostVar2($add['keyboard']); if (!trim($keyboard)) { printerror('EmptySchallKeyboard', '', 1); } $strlen = strlen($keyboard); if ($strlen < $public_r['schallminlen'] || $strlen > $public_r['schallmaxlen']) { printerror('SchallMinKeyboard', '', 1); } $returnr['keyboard'] = ehtmlspecialchars($keyboard); $returnr['search'] = "&keyboard=" . $keyboard; //字段 $field = (int) $add['field']; if ($field) { $returnr['search'] .= "&field=" . $field; } if ($field == 1) { if ($public_r['schallfield'] != 1) { printerror('SchallNotOpenTitleText', '', 1); } $sf = "title,infotext"; } elseif ($field == 2) { if ($public_r['schallfield'] == 3) { printerror('SchallNotOpenTitle', '', 1); } $sf = "title"; } elseif ($field == 3) { if ($public_r['schallfield'] == 2) { printerror('SchallNotOpenText', '', 1); } $sf = "infotext"; } else { $sf = ReturnSearchAllField(0); } $where = ''; //栏目 $classid = RepPostVar($add['classid']); if ($classid) { $returnr['search'] .= "&classid=" . $classid; if (strstr($classid, ",")) { $son_r = sys_ReturnMoreClass($classid, 1); $where .= '(' . $son_r[1] . ') and '; } else { $classid = (int) $classid; $where .= $class_r[$classid][islast] ? "classid='{$classid}' and " : ReturnClass($class_r[$classid][sonclass]) . ' and '; } } //关键字 if (strstr($keyboard, ' ')) { $andkey = ''; $keyr = explode(' ', $keyboard); $kcount = count($keyr); for ($i = 0; $i < $kcount; $i++) { if (strlen($keyr[$i]) < $public_r['schallminlen']) { continue; } $kb = SearchAllChangeChar($keyr[$i]); //转码 $kb = SearchReturnSaveStr($kb); $kb = RepPostVar2($kb); if (!trim($kb)) { continue; } $where .= $andkey . "MATCH(" . $sf . ") AGAINST('" . $kb . "' IN BOOLEAN MODE)"; $andkey = ' and '; } if (empty($where)) { printerror('SchallMinKeyboard', '', 1); } } else { $keyboard = SearchAllChangeChar($keyboard); //转码 $keyboard = SearchReturnSaveStr($keyboard); $keyboard = RepPostVar2($keyboard); if (!trim($keyboard)) { printerror('EmptySchallKeyboard', '', 1); } $where .= "MATCH(" . $sf . ") AGAINST('" . $keyboard . "' IN BOOLEAN MODE)"; } $returnr['where'] = $where; return $returnr; }
} $pagetitle = $tagname; $pagekey = $tagname; $pagedes = $tagname; $classimg = $public_r[newsurl] . 'e/data/images/notimg.gif'; $url = "<a href='" . ReturnSiteIndexUrl() . "'>" . $fun_r['index'] . "</a> > " . $fun_r['TagsInfoList'] . " > " . $tagname; $pageecms = 1; $pageclassid = 0; $have_class = 1; //栏目 $trueclassid = 0; $classid = $_GET['classid']; if ($classid) { $classid = RepPostVar($classid); if (strstr($classid, ',')) { $son_r = sys_ReturnMoreClass($classid, 1); $trueclassid = $son_r[0]; $add .= ' and (' . $son_r[1] . ')'; } else { $trueclassid = intval($classid); if ($class_r[$trueclassid][islast]) { $add .= " and classid='{$trueclassid}'"; $have_class = 0; } else { $add .= ' and ' . ReturnClass($class_r[$trueclassid][sonclass]); } $pageclassid = $trueclassid; $GLOBALS['navclassid'] = $trueclassid; } if (empty($class_r[$trueclassid][tbname])) { printerror('ErrorUrl', '', 1);
function espace_ReturnBqQuery($classid, $line, $enews = 0, $do = 0, $ewhere = '', $eorder = '') { global $empire, $dbtbpre, $public_r, $class_r, $class_zr, $fun_r, $class_tr, $emod_r, $etable_r, $userid, $eyh_r; $userid = (int) $userid; if ($enews == 24) { $query_first = substr($classid, 0, 7); if (!($query_first == 'select ' || $query_first == 'SELECT ')) { return ""; } $classid = RepSqlTbpre($classid); $sql = $empire->query1($classid); if (!$sql) { echo "SQL Error: " . ReRepSqlTbpre($classid); } return $sql; } if ($enews == 0 || $enews == 1 || $enews == 2 || $enews == 9 || $enews == 12 || $enews == 15) { if (strstr($classid, ',')) { $son_r = sys_ReturnMoreClass($classid, 1); $classid = $son_r[0]; $where = $son_r[1]; } else { if ($class_r[$classid][islast]) { $where = "classid='{$classid}'"; } else { $where = ReturnClass($class_r[$classid][sonclass]); } } $tbname = $class_r[$classid][tbname]; $mid = $class_r[$classid][modid]; $yhid = $class_r[$classid][yhid]; } elseif ($enews == 6 || $enews == 7 || $enews == 8 || $enews == 11 || $enews == 14 || $enews == 17) { echo "Error:Change to use e:indexloop"; return false; } elseif ($enews == 25 || $enews == 26 || $enews == 27 || $enews == 28 || $enews == 29 || $enews == 30) { if (strstr($classid, ',')) { $son_r = sys_ReturnMoreTT($classid); $classid = $son_r[0]; $where = $son_r[1]; } else { $where = "ttid='{$classid}'"; } $mid = $class_tr[$classid][mid]; $tbname = $emod_r[$mid][tbname]; $yhid = $class_tr[$classid][yhid]; } $query = " where userid='{$userid}' and ismember=1"; if ($enews == 0) { $query .= ' and (' . $where . ')'; $order = 'newstime'; $yhvar = 'bqnew'; } elseif ($enews == 1) { $query .= ' and (' . $where . ')'; $order = 'onclick'; $yhvar = 'bqhot'; } elseif ($enews == 2) { $query .= ' and (' . $where . ') and isgood>0'; $order = 'newstime'; $yhvar = 'bqgood'; } elseif ($enews == 9) { $query .= ' and (' . $where . ')'; $order = 'plnum'; $yhvar = 'bqpl'; } elseif ($enews == 12) { $query .= ' and (' . $where . ') and firsttitle>0'; $order = 'newstime'; $yhvar = 'bqfirst'; } elseif ($enews == 15) { $query .= ' and (' . $where . ')'; $order = 'totaldown'; $yhvar = 'bqdown'; } elseif ($enews == 3) { $order = 'newstime'; $tbname = $public_r[tbname]; $mid = $etable_r[$tbname][mid]; $yhvar = 'bqnew'; $yhid = $etable_r[$tbname][yhid]; } elseif ($enews == 4) { $order = 'onclick'; $tbname = $public_r[tbname]; $mid = $etable_r[$tbname][mid]; $yhvar = 'bqhot'; $yhid = $etable_r[$tbname][yhid]; } elseif ($enews == 5) { $query .= ' and isgood>0'; $order = 'newstime'; $tbname = $public_r[tbname]; $mid = $etable_r[$tbname][mid]; $yhvar = 'bqgood'; $yhid = $etable_r[$tbname][yhid]; } elseif ($enews == 10) { $order = 'plnum'; $tbname = $public_r[tbname]; $mid = $etable_r[$tbname][mid]; $yhvar = 'bqpl'; $yhid = $etable_r[$tbname][yhid]; } elseif ($enews == 13) { $query .= ' and firsttitle>0'; $order = 'newstime'; $tbname = $public_r[tbname]; $mid = $etable_r[$tbname][mid]; $yhvar = 'bqfirst'; $yhid = $etable_r[$tbname][yhid]; } elseif ($enews == 16) { $order = 'totaldown'; $tbname = $public_r[tbname]; $mid = $etable_r[$tbname][mid]; $yhvar = 'bqdown'; $yhid = $etable_r[$tbname][yhid]; } elseif ($enews == 18) { $order = 'newstime'; $tbname = $classid; $mid = $etable_r[$tbname][mid]; $yhvar = 'bqnew'; $yhid = $etable_r[$tbname][yhid]; } elseif ($enews == 19) { $order = 'onclick'; $tbname = $classid; $mid = $etable_r[$tbname][mid]; $yhvar = 'bqhot'; $yhid = $etable_r[$tbname][yhid]; } elseif ($enews == 20) { $query .= ' and isgood>0'; $order = 'newstime'; $tbname = $classid; $mid = $etable_r[$tbname][mid]; $yhvar = 'bqgood'; $yhid = $etable_r[$tbname][yhid]; } elseif ($enews == 21) { $order = 'plnum'; $tbname = $classid; $mid = $etable_r[$tbname][mid]; $yhvar = 'bqpl'; $yhid = $etable_r[$tbname][yhid]; } elseif ($enews == 22) { $query .= ' and firsttitle>0'; $order = "newstime"; $tbname = $classid; $mid = $etable_r[$tbname][mid]; $yhvar = 'bqfirst'; $yhid = $etable_r[$tbname][yhid]; } elseif ($enews == 23) { $order = 'totaldown'; $tbname = $classid; $mid = $etable_r[$tbname][mid]; $yhvar = 'bqdown'; $yhid = $etable_r[$tbname][yhid]; } elseif ($enews == 25) { $query .= ' and (' . $where . ')'; $order = 'newstime'; $yhvar = 'bqnew'; } elseif ($enews == 26) { $query .= ' and (' . $where . ')'; $order = 'onclick'; $yhvar = 'bqhot'; } elseif ($enews == 27) { $query .= ' and (' . $where . ') and isgood>0'; $order = 'newstime'; $yhvar = 'bqgood'; } elseif ($enews == 28) { $query .= ' and (' . $where . ')'; $order = 'plnum'; $yhvar = 'bqpl'; } elseif ($enews == 29) { $query .= ' and (' . $where . ') and firsttitle>0'; $order = 'newstime'; $yhvar = 'bqfirst'; } elseif ($enews == 30) { $query .= ' and (' . $where . ')'; $order = 'totaldown'; $yhvar = 'bqdown'; } //优化 $yhadd = ''; if (!empty($eyh_r[$yhid]['dosbq'])) { $yhadd = ReturnYhSql($yhid, $yhvar); if (!empty($yhadd)) { $query .= ' and ' . $yhadd; } } //不调用 if (!strstr($public_r['nottobq'], ',' . $classid . ',')) { $notbqwhere = ReturnNottoBqWhere(); if (!empty($notbqwhere)) { $query .= ' and ' . $notbqwhere; } } //图片信息 if (!empty($do)) { $query .= " and ispic=1"; } //附加条件 if (!empty($ewhere)) { $query .= ' and (' . $ewhere . ')'; } //中止 if (empty($tbname)) { echo "ClassID=<b>" . $classid . "</b> Table not exists.(DoType=" . $enews . ")"; return false; } //排序 $addorder = empty($eorder) ? $order . ' desc' : $eorder; $query = 'select ' . ReturnSqlListF($mid) . ' from ' . $dbtbpre . 'ecms_' . $tbname . $query . ' order by ' . $addorder . ' limit ' . $line; $sql = $empire->query1($query); if (!$sql) { echo "SQL Error: " . ReRepSqlTbpre($query); } return $sql; }
function sys_ReturnTogQuery($type, $id, $line, $classid = '', $mid = '') { global $empire, $public_r, $class_r, $class_zr, $navclassid, $dbtbpre, $class_tr, $emod_r; if ($type == 'tags') { $idf = 'tagid'; $orderf = 'newstime'; $table = $dbtbpre . 'enewstagsdata'; } else { $idf = 'spid'; $orderf = 'newstime'; $table = $dbtbpre . 'enewssp_2'; } $where = strstr($id, ',') ? "{$idf} in ({$id})" : "{$idf}='{$id}'"; //栏目 if ($classid) { if (strstr($classid, ',')) { $son_r = sys_ReturnMoreClass($classid, 1); $classid = $son_r[0]; $add = $son_r[1]; } else { if ($classid == 'selfinfo') { $classid = $navclassid; } if ($class_r[$classid][islast]) { $add = "classid='{$classid}'"; } else { $add = ReturnClass($class_r[$classid][sonclass]); } } $where .= ' and (' . $add . ')'; } //模型 if ($mid) { $where .= strstr($mid, ',') ? " and mid in ({$mid})" : " and mid='{$mid}'"; } $query = 'select classid,id from ' . $table . ' where ' . $where . ' order by ' . $orderf . ' desc limit ' . $line; $sql = $empire->query1($query); if (!$sql) { echo "SQL Error: " . ReRepSqlTbpre($query); } return $sql; }
function sys_ReturnTogQuery($type,$id,$line,$classid='',$mid='',$ewhere='',$eorder='',$selectf=''){ global $empire,$public_r,$class_r,$class_zr,$navclassid,$dbtbpre,$class_tr,$emod_r; if($type=='tags')//TAGS { $idf='tagid'; $orderf='newstime desc'; $table=$dbtbpre.'enewstagsdata'; } elseif($type=='zt')//专题 { $idf='ztid'; $orderf='newstime desc'; $table=$dbtbpre.'enewsztinfo'; } elseif($type=='ztc')//专题子类 { $idf='cid'; $orderf='newstime desc'; $table=$dbtbpre.'enewsztinfo'; } elseif($type=='sql')//SQL查询 { $query_first=substr($id,0,7); if(!($query_first=='select '||$query_first=='SELECT ')) { return ''; } $id=RepSqlTbpre($id); $sql=$empire->query1($id); if(!$sql) { echo'SQL Error: '.ReRepSqlTbpre($id); } return $sql; } else//碎片 { $idf='spid'; $orderf='newstime desc'; $table=$dbtbpre.'enewssp_2'; } $where=strstr($id,',')?"$idf in ($id)":"$idf='$id'"; //栏目 if($classid) { if(strstr($classid,','))//多栏目 { $son_r=sys_ReturnMoreClass($classid,1); $classid=$son_r[0]; $add=$son_r[1]; } else { if($classid=='selfinfo')//显示当前栏目信息 { $classid=$navclassid; } if($class_r[$classid][islast]) { $add="classid='$classid'"; } else { $add=ReturnClass($class_r[$classid][sonclass]); } } $where.=' and ('.$add.')'; } //模型 if($mid) { $where.=strstr($mid,',')?" and mid in ($mid)":" and mid='$mid'"; } //附加sql条件 if(!empty($ewhere)) { $where.=' and ('.$ewhere.')'; } //排序 if(!empty($eorder)) { $orderf=$eorder; } $query='select classid,id'.$selectf.' from '.$table.' where '.$where.' order by '.$orderf.' limit '.$line; $sql=$empire->query1($query); if(!$sql) { echo'SQL Error: '.ReRepSqlTbpre($query); } return $sql; }