Chinaunix首页 | 论坛 | 博客
  • 博客访问: 79337
  • 博文数量: 22
  • 博客积分: 486
  • 博客等级: 下士
  • 技术积分: 225
  • 用 户 组: 普通用户
  • 注册时间: 2011-07-15 21:30
文章分类

全部博文(22)

文章存档

2013年(2)

2012年(4)

2011年(16)

分类: 系统运维

2012-04-27 12:01:55

因近期项目人才网的需求,需要记录搜索关键字及搜索用户uid,因为后面要用到热门关键字和我的最近搜索功能,对于我这个初级菜鸟来说,这方面还是比较欠缺,在对记录搜索用户uid时遇到了一些麻烦,最终加入flag才能解决了这个麻烦。
考虑到这个问题比较典型,特记录以备后来查用,以下为此部分代码:

点击(此处)折叠或打开

  1. $keys=$_GET['key'];//获取关键字

  2. $sql = "select id,hits,uid from ".table('searchkey')." where `key` = '".$keys."'";

  3. $a=$db->getall($sql);

  4. if($a==""){

  5. $sqlgo = "INSERT INTO ".table('searchkey')." (`id`,`uid`,`key`,`hits`) VALUES ('','".$_SESSION['uid']."','".$keys."','1')"; //如果没有该关键词记录则插入一条记录

  6. }else{

  7. /*如果有记录则搜索次数加1,uid设计为字符串,将uid和目前用户uid逐一对比,存在则不变,不存在则加入目前用户uid*/

  8. $hi=$a[0]['hits']+1;

  9. $uidarr=explode(",",$a[0]['uid']);

  10. $flag=false;

  11. foreach ($uidarr as $key=>$value){

  12. if($_SESSION['uid']==$value){

  13. $flag=true;

  14. break;

  15. }

  16. }

  17. if(!$flag){

  18. $a[0]['uid']=$a[0]['uid'].",".$_SESSION['uid'];

  19. }

  20. $sqlgo = "update ".table('searchkey')." set `hits`=".$hi.",`uid`='".$a[0]['uid']."' where id = ".$a[0]['id']." and `key`='".$keys."'";

  21. }

  22. $db->query($sqlgo);





  23. //获取简历热搜关键字
  24. function get_resume_searchkeys($uid,$limi)
  25. {
  26.     global $db;
  27.     if($uid==0){
  28.     $whilesql = " ";
  29.     $ordersql = " order by hits desc ";
  30.     }else{
  31.     $whilesql = " where uid like '%".$uid."%'";
  32.     $ordersql = " order by time desc ";
  33.     }
  34.     $sql = "select * from ".table('searchkey').$whilesql.$ordersql." limit ".$limi." ";
  35.     return $db->getall($sql);
  36. }

阅读(1317) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~