WEB技术论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

搜索
热搜: ASP asp.net php
查看: 391|回复: 0
打印 上一主题 下一主题

asp.net 在CS文件中如何POST表单提交,StringBuilder

[复制链接]

534

主题

541

帖子

2044

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
2044
跳转到指定楼层
楼主
发表于 2018-1-3 02:13:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Security.Cryptography;
using System.Text;
using System.Collections;
using System.Collections.Specialized;
using System.Data;
using System.Data.SqlClient;
using MySql.Data.MySqlClient;
using System.Configuration;
using System.Data.Common;
using System.Text.RegularExpressions;


namespace GamePay
{
    public partial class _Default : System.Web.UI.Page
    {
      private static string AllpayUrl = "https://www.2asp.cn/Cashier/AioCheckOut";//正式

   
        protected void Page_Load(object sender, EventArgs e)

        {
            string constr = "User Id=root;Host=127.0.0.1;Database=mall;password=66520";//数据库连接
            MySqlConnection mycn = new MySqlConnection(constr);
            mycn.Open();
            
            MySqlCommand mycm = new MySqlCommand("select a.Id,a.ShopName,a.Userid,a.RegionFullName,
            a.OrderStatus,a.ProductTotalAmount,a.OrderDate,a.OrderType,b.* from himall_orders as a,
            himall_orderitems as b where b.orderid=a.id and a.id=" + Request.QueryString["orderid"].ToString(), mycn);
            
            MySqlDataReader msdr = mycm.ExecuteReader();
           if (msdr.Read())
            {
                if (msdr.HasRows)
                {
                    string num=msdr.FieldCount.ToString();


                    string money = msdr.GetInt32(5).ToString();

            SortedDictionary<string, string> testStr = new SortedDictionary<string, string>();
   
            testStr.Add("MerchantTradeNo", msdr.GetString(0)+"DH" + new Random().Next(0, 999).ToString());
            testStr.Add("MerchantTradeDate", DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss"));

            testStr.Add("ReturnURL", "http://192.168.1.100/receive.aspx");
     
            testStr.Add("RelateNumber", msdr.GetString(0) + "DH" + new Random().Next(0, 999).ToString());

            testStr.Add("CustomerName", HttpUtility.UrlEncode(msdr.GetString(1)));

            string str = string.Empty;
            string str_pre = string.Empty;
            foreach (var test in testStr)
            {
                str += string.Format("&{0}={1}", test.Key, test.Value);
            }
            
            str_pre += "HashKey=rVFOgTEmWCdvvq6b" + str + "&HashIV=Zy48yy98M9kmOwdB";

            string urlEncodeStrPost = HttpUtility.UrlEncode(str_pre);
            string ToLower = urlEncodeStrPost.ToLower();

            MD5 md5Hasher = MD5.Create();
            byte[] data = md5Hasher.ComputeHash(Encoding.Default.GetBytes(ToLower));
            StringBuilder sBuilder = new StringBuilder();
            for (int i = 0; i < data.Length; i++)
            {
                sBuilder.Append(data[i].ToString("X2"));//MD5碼 大小寫
            }
            string sCheckMacValue = sBuilder.ToString();
            testStr.Add("CheckMacValue", sCheckMacValue);

            System.Text.StringBuilder sb = new System.Text.StringBuilder();

            sb.Append("<html><body>").AppendLine();
            sb.Append("<form name='allpayTradeTest'  id='allpayTradeTest' action='" + AllpayUrl + "' method='POST'>").AppendLine();
            foreach (var aa in testStr)
            {
                sb.Append("<input type='hidden' name='" + aa.Key + "' value='" + aa.Value + "'>").AppendLine();
            }

            sb.Append("</form>").AppendLine();
             sb.Append("<script> var theForm = document.forms['allpayTradeTest'];  if (!theForm) { theForm = document.allpayTradeTest; }
             theForm.submit(); </script>").AppendLine();
            sb.Append("<html><body>").AppendLine();
         
            Response.Write(sb.ToString());
            Response.End();
                }
            }
           msdr.Close();
           mycn.Close();
        }
    }
}
爱仿站的中年人
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

|手机版|码农集营 ( ) 深圳龙岗交友群

GMT+8, 2018-11-7 18:27 , Processed in 0.078283 second(s), 23 queries .

Powered by 码农集营 X3.4

快速回复 返回顶部 返回列表