Reputation: 18029
I want to post to an external php file and get the result. It a php that i have hosted in my server online. I want the static page in my localhost post by ajax and load the html in a div. But I'm not able to do this.
$.post("http://www.site.com/index.php", { font: "panchami", input: "hi" } );
Is there anything wrong in this?
Upvotes: 0
Views: 3585
Reputation: 449425
The Same Origin Policy prevents Ajax calls to external domains.
Popular workarounds include
iframe
insteadGet
as shown in @Alex's answer depending on what your use case is.
Upvotes: 3
Reputation: 1278
This kind of request is dangerous, it is called a Cross-Site request and is forbidden by most browsers. If you look in your error console you should see a message to that effect.
If you really have no alternative then you can consider using iframes, the src attribute can be outside the current domain and you can parse the information using javascript.
Hope that helps :)
Upvotes: 0
Reputation: 100331
Javascript doesn't allow cross domain requests.
What you can do is a PHP file on your server that reads the contents of the other site:
<?php echo file_get_contents($_REQUEST['url']); ?>
Then make requests to your file, like so:
$.post("proxy.php?url=external_url", ...);
Upvotes: 2