php处理我的关注和关注我的

关注是一个常见得模块,下面贴出一种简单的处理,如果要实现点击(加关注),文字变为(已关注),字体变色,点击(已关注),字体变为(加关注),变回原色,最好结合php定义一个class,在渲染模板时,就要查数据表进行判断,把class样式抛给模板,当然抛的只是一个class名,根据不同的class名给不同的样式

php代码:

query('set names utf8');$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);} 	catch (PDOException $e) {echo $e->getMessage();exit;}try {//$user_id = intval($_SESSION['user_id']);//判断是否登录,没有登录跳转到登录页$user_id=$_SESSION['user_id']=15;//暂时//$follow_id = intval($_REQUEST['follow_id']);$follow_id = 19;//暂时$result   = array('error' => 0, 'info' => '', 'data'=>'');if(empty($_SESSION['user_id'])){header('location:http://www.baidu.com');//也可以由模板js完成跳转}else{$sql = 'INSERT INTO `one` (`user_id`, `follow_id`, `follow_time`) VALUES ('.$user_id.','.$follow_id.','.time().') ON DUPLICATE KEY UPDATE follow_time='.time();//ON DUPLICATE KEY UPDATE只是MySQL的特有语法,并不是SQL标准语法! //这个语法适合用在需要判断记录是否存在,不存在则插入存在则更新的场景.在此防止多次关注插入记录$rows=$pdo->exec($sql);if($rows > 1){$result['error'] = 2;$result['info'] = '已经关注!';$result['data'] = $rows;}else{$result['error'] = 1;$result['info'] = '关注成功!';}}echo json_encode($result);} catch (Exception $e) {echo $e->getMessage();exit;}
html代码:



Document



点击关注



数据库设计: DROP TABLE IF EXISTS `test`;
CREATE TABLE `test` (
  `id` int(10) unsigned NOT NULL AUTO_INCREMENT, #自增id
  `user_id` mediumint(8) unsigned NOT NULL DEFAULT '0', #用户id
  `follow_id` mediumint(8) unsigned NOT NULL DEFAULT '0', #被关注用户的id
  `follow_time` int(11) unsigned NOT NULL DEFAULT '0', #关注时间
  PRIMARY KEY (`id`),                                                   #id为主键
  UNIQUE KEY `user_id` (`user_id`,`follow_id`)                         # 设置user_id、follow_id唯一,防止重复点击关注,重复添加数据
) ENGINE=MyISAM AUTO_INCREMENT=0 DEFAULT CHARSET=utf8;


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部