欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

php+jQuery+Ajax實現(xiàn)點贊效果的方法(附源碼下載)

 更新時間:2020年07月21日 08:52:09   作者:china_skag  
這篇文章主要介紹了php+jQuery+Ajax實現(xiàn)點贊效果的方法,結(jié)合實例形式詳細(xì)介紹了php結(jié)合jQuery的ajax無刷新提交實現(xiàn)點贊功能的具體步驟與相關(guān)技巧,需要的朋友可以參考下

本文實例講述了php+jQuery+Ajax實現(xiàn)點贊效果的方法。分享給大家供大家參考,具體如下:

數(shù)據(jù)庫設(shè)計

先準(zhǔn)備兩張表,pic表保存的是圖片信息,包括圖片對應(yīng)的名稱、路徑以及圖片“贊”總數(shù),pic_ip則記錄用戶點擊贊后的IP數(shù)據(jù)。

CREATE TABLE IF NOT EXISTS `pic` (
 `id` int(11) NOT NULL AUTO_INCREMENT,
 `pic_name` varchar(60) NOT NULL,
 `pic_url` varchar(60) NOT NULL,
 `love` int(11) NOT NULL DEFAULT '0',
 PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE IF NOT EXISTS `pic_ip` (
 `id` int(11) NOT NULL AUTO_INCREMENT,
 `pic_id` int(11) NOT NULL,
 `ip` varchar(40) NOT NULL,
 PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8

index.php

在index.php中,我們通過PHP讀取pic表中的圖片信息并展示出來,結(jié)合CSS,提升頁面展示效果。

<?php
	 include_once("connect.php");
	 $sql = mysqli_query($link,"select * from pic");
	 while($row=mysqli_fetch_array($sql)){
		 $pic_id = $row['id'];
		 $pic_name = $row['pic_name'];
		 $pic_url = $row['pic_url'];
		 $love = $row['love'];
	 ?>
   	<li><img src="./images/<?php echo $pic_url;?>" alt="<?php echo $pic_name;?>"><p><a href="#" title="贊" class="img_on" rel="<?php echo $pic_id;?>"><?php echo $love;?></a></p></li>
    <?php }?>

CSS中,我們將定義鼠標(biāo)滑向和離開紅心按鈕的動態(tài)效果,并定位按鈕的位置。

.list{width:760px; margin:20px auto}
.list li{float:left; width:360px; height:280px; margin:10px; position:relative}
.list li p{position:absolute; top:0; left:0; width:360px; height:24px; line-height:24px;
background:#000; opacity:.8;filter:alpha(opacity=80);}
.list li p a{padding-left:30px; height:24px; background:url(images/heart.png) no-repeat
4px -1px;color:#fff; font-weight:bold; font-size:14px}
.list li p a:hover{background-position:4px -25px;text-decoration:none}

jQuery代碼

當(dāng)用戶點擊自己喜歡的圖片上的紅心按鈕時,向后臺love.php發(fā)送ajax請求,請求響應(yīng)成功后,更新原有的數(shù)值

$(function(){
 $("p a").click(function(){
  var love = $(this);
  var id = love.attr("rel"); //對應(yīng)id
  love.fadeOut(300); //漸隱效果
  $.ajax({
   type:"POST",
   url:"love.php",
   data:"id="+id,
   cache:false, //不緩存此頁面
   success:function(data){
    love.html(data);
    love.fadeIn(300); //漸顯效果
   }
  });
  return false;
 });
});

love.php

后臺love.php接收前端的ajax請求,根據(jù)提交的圖片id值,查找IP表中是否已有該用戶ip的點擊記錄,如果有則告訴用戶已“贊過了”,反之,則進(jìn)行一下操作:

1、更新圖片表中對應(yīng)的圖片love字段值,將數(shù)值加1。
2、將該用戶IP信息寫入到pic_ip表中,用以防止用戶重復(fù)點擊。
3、獲取更新后的贊值,即贊該圖片的用戶總數(shù),并將該總數(shù)輸出給前端頁面。

include_once("connect.php");

$ip = get_client_ip();
$id = $_POST['id'];
if(!isset($id) || empty($id)) exit;

$ip_sql=mysqli_query($link,"select ip from pic_ip where pic_id='$id' and ip='$ip'");
$count=mysqli_num_rows($ip_sql);
if($count==0){
	$sql = "update pic set love=love+1 where id='$id'";
	mysqli_query($link,$sql);
	$sql_in = "insert into pic_ip (pic_id,ip) values ('$id','$ip')";
	mysqli_query($link,$sql_in);
	$result = mysqli_query($link,"select love from pic where id='$id'");
	$row = mysqli_fetch_array($result);
	$love = $row['love'];
	echo $love;
}else{
	echo "贊過了..";
}

我上傳的附件中 數(shù)據(jù)庫SQL 你可以直接建立test 數(shù)據(jù)庫UTF8編碼的,然后把SQL文件導(dǎo)入進(jìn)去。修改一下connect.php中數(shù)據(jù)庫的連接信息即可。

源文件點擊此處本站下載。

總結(jié):

其實就是發(fā)了一個ajax請求,比如你要贊一個商品。商品表肯定有一個計數(shù)的字段。你發(fā)一個請求過去把這個字段+1

該成功了就返回一個現(xiàn)在的數(shù)。然后把頁面改一下就成了

function Zan( goodsId, a ){
 $.post( "/goods/zan/"+goodsId, null,function( ret ){
   if( ret.status == 'ok' )
   $(a).html( ret.zannum);
   else
   alert( ret.data );
 },'json' );
}

希望本文所述對大家php程序設(shè)計有所幫助。

備注:腳本之家改寫了mysqli函數(shù)處理數(shù)據(jù)庫操作,以方便兼容PHP7開發(fā)環(huán)境

到此這篇關(guān)于php+jQuery+Ajax實現(xiàn)點贊效果的方法(附源碼下載)的文章就介紹到這了,更多相關(guān)php+jQuery+Ajax點贊效果內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 完美解決thinkphp唯一索引重復(fù)時出錯的問題

    完美解決thinkphp唯一索引重復(fù)時出錯的問題

    下面小編就為大家?guī)硪黄昝澜鉀Qthinkphp唯一索引重復(fù)時出錯的問題。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-03-03
  • PHP微信模板消息操作示例

    PHP微信模板消息操作示例

    這篇文章主要介紹了PHP微信模板消息操作方法,結(jié)合實例形式分析了php模板消息的定義與調(diào)用方法,需要的朋友可以參考下
    2017-06-06
  • PHP 遞歸效率分析

    PHP 遞歸效率分析

    PHP的遞歸效率一般認(rèn)為是低效的。大概一年前,我寫了一篇博文,對三種遍歷樹的方法進(jìn)行了比較,發(fā)現(xiàn)遞歸算法的效率最低。
    2009-11-11
  • 深入apache host的配置詳解

    深入apache host的配置詳解

    本篇文章是對apache host的配置進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-06-06
  • PHP strncasecmp字符串比較的小技巧

    PHP strncasecmp字符串比較的小技巧

    好象,大多時候,我們對于字符串的比較都是采用了 strtolower或者strtoupper之后,再判斷是否相等。
    2011-01-01
  • php中$_REQUEST、$_POST、$_GET的區(qū)別和聯(lián)系小結(jié)

    php中$_REQUEST、$_POST、$_GET的區(qū)別和聯(lián)系小結(jié)

    php中有$_request與$_post、$_get用于接受表單數(shù)據(jù),當(dāng)時他們有何種區(qū)別,什么時候用那種最好。
    2011-11-11
  • php實現(xiàn)ip白名單黑名單功能

    php實現(xiàn)ip白名單黑名單功能

    本文給大家分享了2個php用于實現(xiàn)黑白名單的實用函數(shù),分別是安全I(xiàn)P檢測函數(shù)和獲取客戶端IP函數(shù),注釋里解釋的非常清楚,這里我就不多廢話了。
    2015-03-03
  • php中防止惡意刷新頁面的代碼小結(jié)

    php中防止惡意刷新頁面的代碼小結(jié)

    惡意刷新就是不停的去刷新提交頁面,導(dǎo)致大量無效數(shù)據(jù)了,下面我們來總結(jié)一下php 防止惡意刷新頁面方法總結(jié)
    2012-10-10
  • PHP實現(xiàn)本地圖片轉(zhuǎn)base64格式并上傳

    PHP實現(xiàn)本地圖片轉(zhuǎn)base64格式并上傳

    這篇文章主要介紹了PHP實現(xiàn)本地圖片轉(zhuǎn)base64格式并上傳,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-05-05
  • php的4種常用運行方式詳解

    php的4種常用運行方式詳解

    這篇文章主要介紹了php的4種常用運行方式,CGI、FastCGI、APACHE2HANDLER和CLI,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-12-12

最新評論