我需要使用cURL从一个iframe发送数据到另一个。我的代码是: php curl从一个iframe发送数据到另一个iframe
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>New Web Project</title>
</head>
<body>
<form action="postback.php" method="POST">
<input type="hidden" name="variable" value="send"/>
<input type="submit" />
</form>
<iframe name="test" src="postback.php" width="200" height="200"></iframe>postback
<iframe name="test2" src="replay.php" width="200" height="200"></iframe>replay
</body>
</html>
和两个I帧代码: 回传IFRAME:
<?php
if (isset($_POST["variable"])){
$var1 = $_POST["variable"];
$url = 'http://localhost/xss/replay.php';
$ch = curl_init($url);
$parameters = 'variable2='.$var1;
//curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $parameters);
curl_exec($ch);
curl_close($ch);
}
else echo 'w8';
?>
重播的iframe:
<?php
if (isset($_POST["variable2"])){
$var1 = $_POST["variable2"];
echo $var1;
}
else echo 'w8';
?>
在这种情况下,我得到谢胜利IFRAME(重播响应.php)到新页面,而不是打印变量2来隔离iframe。我该如何改变它?我会补充说,我不能使用JavaScript/AJAX/jQuery等。只有服务器端脚本
如果我明白你问的问题可能是你期望从第一个iframe中的卷曲通话内容影响的事实第二个。但在通话中,您正在使用该脚本的完全独立的实例,而不是它所显示的实例。 – mishu 2012-02-20 10:45:48
是的,它正是我想要做的。我想在iframe1中触发按钮并在iframe2中看到结果(echo)。问题可能是,每个iframe都在不同的域上。 – Krystian 2012-02-20 10:52:56
你会在curl调用中得到第二个url的输出。所以你不需要一个不同的iframe,只需要在第一个(也是唯一的iframe)中显示其初始状态并在调用之后显示curl响应 – mishu 2012-02-20 11:04:09