Kajah User
Kajah User

Reputation: 591

How to send data from aspx to php page

so far i have used this code.It is working when i am sending the data from aspx to aspx.

But in case of aspx to php it is not working.....

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

In case of php i have use this code:

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

My aim is i want to send data from aspx to php not in the query string.

Upvotes: 0

Views: 1241

Answers (3)

Srisa
Srisa

Reputation: 1025

Modify your php script to contain the below given code and see if it works. You don't need anything else apart from the given two lines.

<?php

print_r($_POST);

Upvotes: 1

Johnny
Johnny

Reputation: 363

Interesting...

in the onload function, you are calling formload(), which is a server side function , isn't it?

this is not correct, on client site you should only call client site javascript function.

if you want to post information to another server, no matter it is php/asp.net/jsp.

simply use a form....

in the Post function of your remotepost class, you didn't post to your remote server... just generate some html tags, and in the page load function, submit the form automatically,

it is not nice, but should work.

correct first issue first, then see how it goes.

Upvotes: 0

Gaurav Gupta
Gaurav Gupta

Reputation: 5416

If not in the query string, why not send it as POST data instead?

Upvotes: 0

Related Questions