前端php页面

<?php
if(isset($_GET['id'])){
$id=$_GET['id'];
}
include('data/conn.php');
$sqls="select count from activity where id=$id";
$results=mysqli_query($link,$sqls);
$row=mysqli_fetch_assoc($results);
$ip= $_SERVER['REMOTE_ADDR'];
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<link rel="stylesheet" href="css/saveclick.css" type="text/css" />
<script type="text/javascript" src="js/jquery.js"></script>
<title>分享收集花瓣</title>
</head>
<body>
<div class="content">
<div class="word-2"></div>
<div class="ticket"></div>
<div class="count" id="count"><?php echo $row['count'] ?></div>
<div class="font">花瓣数量</div>
<div style="float: right;" onclick="collect();">
<div class="huaban"></div>
<div class="font ft-1" >送TA花瓣</div>
</div>
<div class="st" style="display:none;"><?php echo $id ?></div>
<div class="ip" style="display:none;"><?php echo $ip;?></div> </div>
</body>
<script type="text/javascript">
function collect(){
var id=$('.st').text();
var count=$("#count").text();
var ip=$('.ip').text();
$.post('data/data-count.php',{"id":id,"ip":ip},function(data){
if(count>=){
alert("攒花成功了,赶紧截图帮TA发到天甲网络微信公众号领奖去吧!");
window.location.href="ticket1.php";
}else{
if(data['msg']==){
alert("你已经送过TA花瓣了,分享到朋友圈让其他小伙伴一起为TA送花!");
}else if(data['msg']==){
alert('送TA花瓣失败了,请重新送花!');
}else{
alert("送花成功,赶紧分享到朋友圈喊其他小伙伴一起为TA送花吧!");
$("#count").html(parseInt(count)+);
}
} },'JSON'); }
</script>
</html>

数据库连接mysqli

<?php
$link=mysqli_connect('localhost','root','','38activity');
mysqli_query($link,"SET NAMES 'utf8'");
?>

后台处理数据页面实现计数更新以及ip防止重复记录

<?php
include('conn.php');
$id=$_POST['id'];
$ip=$_POST['ip'];
$ip_sql=mysqli_query($link,"select ip from ip where aid=$id and ip='$ip' ");
$count=mysqli_num_rows($ip_sql);
if($count==){ //没有投票
$sql="update activity set count=count+1 where id=$id" ;
mysqli_query($link,$sql);
$sql_in = "insert into ip(ip,aid) values ('$ip','$id')";
mysqli_query($link,$sql_in);
if(mysqli_insert_id($link)>){
$arr['msg'] = ;
$arr['success'] = '投票成功,谢谢您的参与';
echo json_encode($arr);
}else{
$arr['msg'] = ;
$arr['success'] = '操作失败,请重试';
echo json_encode($arr);
}
}else{
$arr['msg'] = ;
$arr['success'] = '您已经投票过了';
echo json_encode($arr);
}

数据库表

完整的ajax请求投票点赞功能的实现【数据库表一(票数)表二(ip限制重复投票)】的更多相关文章

  1. ajax请求锁屏功能

    我们有时候在进行ajax请求的时候希望页面不允许点击,等请求结束之后才可以进行点击,那么可以写: $(".cloudos-container").ajaxStart($.block ...

  2. php + ajax实现 帖子点赞功能

    知识: 一.首先页面需要加载jquery框架 二.ajax常用参数解释: ①.type:传输数据方式,get或者post ②.url:处理数据的PHP脚本 ③.data:传输的数据索引及值,值用js获 ...

  3. 较简单的用ajax修改和添加功能(链接数据库)

    修改和添加关于数据库的信息,可以用于任何的添加和修改 这些数据库和前面的随笔数据库是一样的 一.显示出数据库中的信息 (1)显示的效果也可以是用bootstrap的标签页显示(前面一定要引入boots ...

  4. 原生js发送ajax请求

    堕落了一阵子了,今天打开博客,发现连登录的用户名和密码都不记得了.2016年已过半,不能再这么晃荡下去了. 参加了网易微专业-前端攻城狮 培训,目前进行到大作业开发阶段,感觉举步维艰.但是无论如何,不 ...

  5. 从零开始学 Web 之 Vue.js(四)Vue的Ajax请求和跨域

    大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...

  6. js ajax请求传token

    js  ajax请求传token 方法一: headers: { Authorization: "BasicAuth " + token } 方法二: beforeSend: fu ...

  7. jQuery实现的分页功能,包括ajax请求,后台数据,有完整demo

    一:需求分析 1)需要首页,末页功能 2)有点击查看上一页,下一页功能 3)页码到当前可视页码最后一页刷新页面 二:功能实现思路 也是分为三部分处理 1)点击首页,末页直接显示第一页或者最后一页内容, ...

  8. ajax点赞功能

  9. BBS(第一天)项目之 注册功能实现通过forms验证与 前端ajax请求触发查询数据库判断用户是否存在的功能实现

    1.BBS项目之注册功能通过forms验证 from django import forms from blog.models import User from django.contrib.auth ...

随机推荐

  1. SWIFT--文档地址

    APPLE官方: https://developer.apple.com/library/prerelease/content/documentation/Swift/Conceptual/Swift ...

  2. zabbix3.0安装教程

    一.Zabbix介绍 zabbix 简介 Zabbix 是一个高度集成的网络监控解决方案,可以提供企业级的开源分布式监控解决方案,由一个国外的团队持续维护更新,软件可以自由下载使用,运作团队靠提供收费 ...

  3. ubuntu14.04 安装配置JDK1.7

    1,下载jdk-7u45-linux-x64.tar.gz 网址:http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downlo ...

  4. Ubuntu14.04下MySQL的安装

    1.输入 sudo apt-get install mysql-server 2.继续执行后,需要设定MySQL密码. 3.再次输入密码. 4.之后就安装成功了,输入mysql -u root -p进 ...

  5. [转]Java日期时间使用总结

    原文地址:http://lavasoft.blog.51cto.com/62575/52975/ 一.Java中的日期概述   日期在Java中是一块非常复杂的内容,对于一个日期在不同的语言国别环境中 ...

  6. tomcat报错

    错误日志如下: 十月 10, 2016 10:44:57 上午 org.apache.catalina.core.StandardWrapperValve invoke严重: Servlet.serv ...

  7. Maven-常用命令

    mvn archetype:create :创建 Maven 项目 mvn compile :编译源代码 mvn deploy 发布项目 mvn test-compile :编译测试代码 mvn te ...

  8. jquery-jsrender使用

      JsRender是一款基于jQuery的JavaScript模版引擎 特点: · 简单直观 · 功能强大 · 可扩展的 · 快如闪电 jsrender使用比较简单,本文简单结束一些常用的 使用过程 ...

  9. U盘装系统详细教程

    相信有的朋友去电脑城组装电脑的时候,会看见装机人员安装系统不再需要光驱,而插入U盘安装系统,U盘安装系统方便了许多,电脑光驱容易坏,使用寿命短,一般老电脑的光驱都不怎么好使,而U盘就不需要光驱就能安装 ...

  10. Too many connections解决方案

    原因:  my.ini 中设定的并发连接数太少或者系统繁忙导致连接数被占满. 连接数超过了 MySQL 设置的值,与 max_connections 和 wait_timeout  都有关. wait ...