同步提交&异步提交

1.在数据库提交点赞和踩的功能的时候

可以采取两种方法

a 同步提交

httprequest


b   异步提交

xmlhttprequest


Json  格式 :

javascript 的一个子集,是轻量级的数据交换格式

{}括号起来的一个集合,是一个集合对象

 

而{属性名:属性 }的格式

通常正确的格式是
{id=1,name='张三',age:18 }

join的数组表示形式

["java","javascript","vb"]

或:

[{id=1,name='zhangsan',age:18},....]

//在jquer中 $.ajax({


url:‘/testajax.ashx';
type:'post'
data:{"zan","zan"};
dataTyPe:"text";


});//利用json格式


实例:

点赞功能 异步提交:

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title></title>
<script src="Scripts/jquery-3.1.1.js"></script>
</head>
<body>
<video src="3.mp4" autoplay="autoplay" controls="controls"></video>
<p>
<input type="button" value="赞" id="zancunt"/><span id="zan"></span>
<input type="button" value="踩" id="caicunt" /><span id="cai"></span>
</p>
<script type="text/javascript">
$("#zancunt").click(function () {

 

$.ajax({

url: '/Handler1.ashx',
type: 'post',
data: { 'zancunt': "zancunt" },
datatype: 'text',
success: function (result) {

 

$("#zan").text(result);


}


})


})
</script>
</body>
</html>

 

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Data;
using System.Data.SqlClient;
using System.Configuration;

namespace WebApplication19
{
public class SqlHelper
{
private static readonly string connString = ConfigurationManager.ConnectionStrings["connStr"].ConnectionString;
public static int ExecuteNonQuery(string sql,params SqlParameter[] parameters )
{
using (SqlConnection conn = new SqlConnection(connString))
{
conn.Open();
using (SqlCommand cmd = new SqlCommand(sql, conn))
{
cmd.Parameters.AddRange(parameters);
return cmd.ExecuteNonQuery();
}
}
}
public static object ExecuteScalar(string sql, params SqlParameter[] parameters)
{
using (SqlConnection conn = new SqlConnection(connString))
{
conn.Open();
using (SqlCommand cmd = new SqlCommand(sql, conn))
{
cmd.Parameters.AddRange(parameters);
return cmd.ExecuteScalar();
}
}
}
public static DataTable ExecuteDataTable(string sql, params SqlParameter[] parameters)
{
DataSet set = new DataSet();
using (SqlConnection conn = new SqlConnection(connString))
{
conn.Open();
using (SqlCommand cmd = new SqlCommand(sql, conn))
{
if (parameters!=null)
{
cmd.Parameters.AddRange(parameters);
}
SqlDataAdapter adapter = new SqlDataAdapter(cmd);
adapter.Fill(set);
return set.Tables[0];
}
}
}
}
}

<?xml version="1.0" encoding="utf-8"?>

<!--
有关如何配置 ASP.NET 应用程序的详细信息,请访问
http://go.microsoft.com/fwlink/?LinkId=169433
-->

<configuration>
<system.web>
<compilation debug="true" targetFramework="4.5" />
<httpRuntime targetFramework="4.5" />
</system.web>
<connectionStrings>
<add name="connStr" connectionString="server=.;database=video;uid=sa;pwd=123"/>
</connectionStrings>

</configuration>

 

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Data;

namespace WebApplication19
{
/// <summary>
/// Handler1 的摘要说明
/// </summary>
public class Handler1 : IHttpHandler
{

public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "text/html";
string zan = context.Request["zancunt"];
string cai = context.Request["caicunt"];
if (!string.IsNullOrEmpty(zan))
{


SqlHelper.ExecuteNonQuery("update [video].[dbo].[Table_1] set zan=zan+1");
int zancunt=Convert.ToInt32(SqlHelper.ExecuteScalar("select * from [video].[dbo].[Table_1]"));
context.Response.Write(zancunt);





}
}

public bool IsReusable
{
get
{
return false;
}
}
}
}




转载于:https://www.cnblogs.com/liyiyong/p/6135590.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值