如何将数据从aspx发送到php页面

时间:2011-12-23 09:33:27

标签: c# php

到目前为止,我已经使用了这段代码。当我将数据从aspx发送到aspx时,它正在工作。

但是在aspx到php的情况下它不起作用.....

protected void Button1_Click(object sender, EventArgs e)
{
    RemotePost myremotepost = new RemotePost();
    myremotepost.Url = "http://172.16.126.32/Riyas/marggroup.com/get-current-openings.php";
    myremotepost.Add("field1", TextBox1.Text);
    myremotepost.Post();
}
public class RemotePost
{
    private System.Collections.Specialized.NameValueCollection Inputs = new System.Collections.Specialized.NameValueCollection();


    public string Url = "";
    public string Method = "post";
    public string FormName = "form1";

    public void Add(string name, string value)
    {
        Inputs.Add(name, value);
    }

    public void Post()
    {
        System.Web.HttpContext.Current.Response.Clear();

        System.Web.HttpContext.Current.Response.Write("<html><head>");

        System.Web.HttpContext.Current.Response.Write(string.Format("</head><body onload=\"document.{0}.submit()\">", FormName));
        System.Web.HttpContext.Current.Response.Write(string.Format("<form name=\"{0}\" method=\"{1}\" action=\"{2}\" >", FormName, Method, Url));
        for (int i = 0; i < Inputs.Keys.Count; i++)
        {
            System.Web.HttpContext.Current.Response.Write(string.Format("<input name=\"{0}\" type=\"hidden\" value=\"{1}\">", Inputs.Keys[i], Inputs[Inputs.Keys[i]]));
        }
        System.Web.HttpContext.Current.Response.Write("</form>");
        System.Web.HttpContext.Current.Response.Write("</body></html>");

        System.Web.HttpContext.Current.Response.End();
    }
}

在php的情况下,我使用此代码:

<script runat="server">

    function formload()
    {
         alert("its working");  
        if(Request.Form["field1"] != null ){
            alert("its working");
            Response.Write("field1 : " + Request.Form["field1"] + "</br>");
        }
        if(Request.Form["field2"] != null ){
            Response.Write("field2 : " +Request.Form["field2"] + "</br>");
        }
    }
    </script>
    </head>
<body onload="JavaScript:formload()">
<script language="JavaScript">// change to text/javascript or even remove, no effect
window.onload = function() {
  formload();
};
</script>
</body>

我的目标是我想将数据从aspx发送到不在查询字符串中的PHP。

3 个答案:

答案 0 :(得分:1)

修改您的php脚本以包含下面给出的代码并查看它是否有效。除了给定的两行之外,你不需要任何其他东西。

<?php

print_r($_POST);

答案 1 :(得分:0)

如果不在查询字符串中,为什么不将其作为POST数据发送呢?

答案 2 :(得分:0)

...有趣

在onload函数中,你正在调用formload(),这是一个服务器端函数,不是吗?

这是不正确的,在客户端网站上,您应该只调用客户端网站的javascript函数。

如果你想将信息发布到另一台服务器,无论是php / asp.net / jsp。

只需使用表格......

在你的remotepost类的Post函数中,你没有发布到你的远程服务器...只是生成一些html标签,并在页面加载功能中,自动提交表单,

这不好,但应该有用。

首先纠正第一个问题,然后看看它是怎么回事。