Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何在不加载浏览器的情况下获取其他页面的内容_Php_Jquery_Asp Classic - Fatal编程技术网

Php 如何在不加载浏览器的情况下获取其他页面的内容

Php 如何在不加载浏览器的情况下获取其他页面的内容,php,jquery,asp-classic,Php,Jquery,Asp Classic,上下文: 另一个网站中有一个包含搜索表单的asp页面。使用搜索值提交此表单后,页面将在iframe中显示搜索结果 问题: 我想在我的页面中使用返回的结果,而不在浏览器中加载该页面。我已获得其他网站管理员的许可。我知道php和jQuery。我应该如何进行 示例: asp包含一个包含和提交按钮的表单。表单提交给自己,结果名称、出生日期和标记以表格格式返回到iframe中 注意事项: 我有一个与相同的页面,提交后将使用上述asp页面,获取详细信息并显示在我的页面中。最简单的方法: 使用jQuery通过

上下文:
另一个网站中有一个包含搜索表单的
asp
页面。使用搜索值提交此表单后,页面将在iframe中显示搜索结果

问题:
我想在我的页面中使用返回的结果,而不在浏览器中加载该页面。我已获得其他网站管理员的许可。我知道php和jQuery。我应该如何进行

示例: asp包含一个包含
和提交按钮的表单。表单提交给自己,结果名称、出生日期和标记以表格格式返回到iframe中

注意事项:
我有一个与
相同的页面,提交后将使用上述
asp
页面,获取详细信息并显示在我的页面中。

最简单的方法:

  • 使用jQuery通过AJAX将页面提交到本地PHP文件
  • 当本地PHP文件收到请求时,对远程页面执行curlpost请求并获取结果
  • 在本地PHP脚本中返回这些结果,以便AJAX请求可以使用这些结果
  • 您的ajax请求现在具有远程内容,所以只需使用jQuery将它们推送到文档中即可
  • 最简单的方法:

  • 使用jQuery通过AJAX将页面提交到本地PHP文件
  • 当本地PHP文件收到请求时,对远程页面执行curlpost请求并获取结果
  • 在本地PHP脚本中返回这些结果,以便AJAX请求可以使用这些结果
  • 您的ajax请求现在具有远程内容,所以只需使用jQuery将它们推送到文档中即可

  • 您应该使用AJAX来执行此任务。它在不重新加载页面的情况下加载数据的特定部分。关于什么是ajax的更多信息是

    您应该使用ajax来执行此任务。它在不重新加载页面的情况下加载数据的特定部分。关于什么是ajax的更多信息是

    您最好的选择是使用。要在不同的域中实现这一点,您需要启用跨域支持。这在jQuery中非常简单:

    $.support.cors = true; // enable cross domain support
    
    现在,您可以向另一个域发出请求。当然,该域上的服务器也必须接受跨域请求。;)

    选项1-HTTP GET&JSONP

    正如Twisted1919所指出的,如果要发出HTTP GET请求,必须使用jsonp。如果您不熟悉jsonp,那么需要阅读一点来理解这个概念。但是jQuery对此有很好的支持(如中所述)

    选项2-HTTP POST


    如果使用HTTPPOST发出请求,只需使用jQuery.post()即可。启用cros域后,服务器将立即接受您的请求。

    您最好的选择是使用。要在不同的域中实现这一点,您需要启用跨域支持。这在jQuery中非常简单:

    $.support.cors = true; // enable cross domain support
    
    现在,您可以向另一个域发出请求。当然,该域上的服务器也必须接受跨域请求。;)

    选项1-HTTP GET&JSONP

    正如Twisted1919所指出的,如果要发出HTTP GET请求,必须使用jsonp。如果您不熟悉jsonp,那么需要阅读一点来理解这个概念。但是jQuery对此有很好的支持(如中所述)

    选项2-HTTP POST


    如果使用HTTPPOST发出请求,只需使用jQuery.post()即可。启用cros域后,服务器将立即接受您的请求。

    这太复杂了。您只需要jQuery来执行ajax调用。即使是对不同服务器的呼叫。@FriederikeS-不,你不能像你说的那样做。您无法对远程域执行ajax请求(当然,这并不容易)。您可以做的是jsonp请求,但是该服务器应该为jsonp回调提供正确的响应,所以是的,我的回答仍然有效并且容易做到。是的,您有一个观点。如果您使用的是HTTP GET,那么您还必须使用jsonp来仅使用jQuery。困难总是取决于开发人员的知识但是:对于HTTPPOST,您不需要使用jsonp。您可以向另一个域发出请求。然后另一个域必须决定是否允许跨域请求。这太复杂了。您只需要jQuery来执行ajax调用。即使是对不同服务器的呼叫。@FriederikeS-不,你不能像你说的那样做。您无法对远程域执行ajax请求(当然,这并不容易)。您可以做的是jsonp请求,但是该服务器应该为jsonp回调提供正确的响应,所以是的,我的回答仍然有效并且容易做到。是的,您有一个观点。如果您使用的是HTTP GET,那么您还必须使用jsonp来仅使用jQuery。困难总是取决于开发人员的知识但是:对于HTTPPOST,您不需要使用jsonp。您可以向另一个域发出请求。然后,另一个域必须决定是否允许跨域请求。