我有一段代码(CURL),我可以从中提取这样的数据:
<?php
$url = "http://www.nu.nl/";
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$curl_scraped_page = curl_exec($ch);
curl_close($ch);
echo $curl_scraped_page;
?>
我还有一个带输入的HTML文件。我想用动态URL替换物理URL,因此将其设置为变量。变量应该是父文档中输入的值。所以php文件在iframe中回显。这可能吗?我已经谷歌搜索和搜索堆栈,但我只找到了这个答案:LINK我无法改变想要我想要的。 (我是PHP新手)
答案 0 :(得分:1)
您必须将PHP文件中的echo
行更改为:
echo base64_encode($curl_scraped_page);
您对$url
的分配:
$url = $_POST['url'];
使用这个jQuery(如果你愿意,你可以使用纯JavaScript,jQuery更适合使用):
$('#getPage')click(function() { //When the button "getButton" is clicked
//Make a POST request to your PHP file with the value of the textbox as the URL
$.post('myCURLPage.php', {url: $('#myTextInput').val()}, function(encodedData) {
//Set the iFrames "src" attribute to the base64 encoded HTML page returned from you r PHP script
$('#myiFrame').attr('src', 'data:text/html;base64,'+encodedData);
});
});
(这假设您的页面上有一个按钮,其ID设置为getPage
,ID为myiFrame
的iFrame和ID为myTextInput
的输入框<)< / p>
免责声明:我没有测试过这段代码,但从理论上说它应该可行。