zoukankan      html  css  js  c++  java
  • 同步提交&异步提交

    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;
    }
    }
    }
    }




  • 相关阅读:
    VS2013使用scanf、gets及字符串函数编译报错error C4996: 'scanf': This function or variable may be unsafe. 原因及解决方案
    关于vs2013与office系列软件一起安装出现bug的情况描述以及解决办法——打开vs2013鼠标不动/动不了
    武汉华师驾校学车笔记_纪实
    vs2013由修改模式改为输入模式。
    解析:求最大公约数的“辗转相除法原理”
    关于scanf与scanf_s的区别,以及用scanf编译出错并且提示找不到可执行文件.exe的解决办法。
    [C编译器]在VS中编译调试C程序
    使用vs编译程序选择新建”空项目“与”win32控制台应用程序“的区别。
    AngularJS+Ionic开发-1.搭建开发环境
    PetaPoco源代码学习--3.Sql类
  • 原文地址:https://www.cnblogs.com/liyiyong/p/6135590.html
Copyright © 2011-2022 走看看