我有1个php页面正在做一些操作并将数据存储在2个变量中,现在我想将这些数据传递给另一个页面并且该页面位于jsp中。我不想点击任何地方,这意味着我的PHP将最后自动调用jsp页面。
请告诉我该怎么做。
谢谢, Manoj Singhal
答案 0 :(得分:3)
试试这个
<?php
$var1 = 'some_value';
$var2 = 'some_other_value';
header('Location: jsppage.jsp?var1='.$var1.'&var2='.$var2);
exit;
?>
您的值将在jsp脚本中通过request.getParameter("var1")
和request.getParameter("var2")
提供(可能是错误的,对jsp知之甚少)。
答案 1 :(得分:2)
将数据存储在文件或数据库中并执行:
header('Location: thejsp.jsp');
die();
然后让jsp
从该文件或数据库中检索数据。
您还可以通过GET或POST
执行一些curl
次请求传递数据
答案 2 :(得分:1)
假设您要在JSP上重用相同的请求参数:
如果是GET请求,请执行:
header('HTTP/1.1 302 Moved Temporarily');
header('Location: http://example.com/page.jsp?' . $_SERVER['QUERY_STRING']);
exit();
如果是POST请求,请执行:
header('HTTP/1.1 307 Temporary Redirect');
header('Location: http://example.com/page.jsp');
exit();
(使用307,客户端将重新应用POST请求,包括目标页面上的参数)
答案 3 :(得分:0)
您可以使用CURL从JSP页面获取数据,然后将其显示给您的PHP客户端。在这种情况下,您的客户端(浏览器)将在内部连接到您的JSP应用程序服务器,您可以通过URL传递数据。之后,将JSP输出用作PHP输出。
答案 4 :(得分:0)
这很简单:
<?php
/*
Prevent errors or output from spoiling the headers we're using later on.
Every output before the headers are posted will break the headers and fail.
*/
ob_start();
...your code...
$var1 = 'some_value';
$var2 = 'some_other_value';
...your code...
ob_end_clean();
/*
Make sure you url-encode your variables so they don't break!
*/
$location = 'http://www.yourdomain.com/yourtargetpage.jsp?';
$location .= 'var1='.url_encode($var1);
$location .= '&';
$location .= 'var2='.url_encode($var2);
/*
Redirect to $location,
Using a 301 redirect (not 302!),
With TRUE to replace default HTTP code with 301 code and redirect.
*/
header('Location: '.$location, 301, TRUE);
exit();
?>
现在,您所要做的就是将* url_decode *变为jsp页面中的变量并进行设置。