当前位置: 首页 > 知识库问答 >
问题:

与$\u get一起使用时,文件\u get\u内容不显示任何内容

华谭三
2023-03-14

我在使用file\u get\u内容与$\u get组合时遇到问题。例如,我尝试使用文件\u get\u内容加载以下页面:

https://bing.com/?q=how 打领带

如果我像这样加载它,页面加载正常:

http://localhost/load1.php

<?
echo file_get_contents("https://bing.com/?q=how+to+tie+a+tie");
?>

然而,当我这样加载它时,我有问题:

http://localhost/load2.php?url=https//bing.com/?q=how打领带

<?
$enteredurl = $_GET["url"];
$page = file_get_contents($enteredurl);
echo $page;
?>

当我使用第二种方法加载时,我得到一个空白页。检查页面源不会返回任何内容。当我回声$enteredurl时,我得到“https://bing.com/?q=how打领带”。似乎“”的迹象不见了。

此外,装载http://localhost/load2.php?url=https://bing.com/?q=how 很好。网页出现了。

有人知道是什么导致了这个问题吗?

谢谢!

使现代化

尝试使用urlencode()来实现这一点。我有一个带有输入和提交字段的标准表单:

<form name="search" action="load2.php" method="post">
<input type="text" name="search" />
<input type="submit" value="Go!" />
</form>

然后更新load2。php URL:

<?
$enteredurl = $_GET["url"];
$search = urlencode($_POST["search"]);
if(!empty($search)) {
echo '<script type="text/javascript">window.location="load2.php?url=https://bing.com/?q='.$search.'";</script>';
}
?>

这里的某个地方代码被破坏了。$enteredurl仍然返回与以前相同的值。(https://bing.com/?q=how打领带)

共有1个答案

公西英叡
2023-03-14

你必须正确编码你的参数http://localhost/load2.php?url=https://bing.com/?q=how打领带应该是http://localhost/load2.php?urlhttps://bing.com/?q=how+to+tie+a+tie.在php中执行此操作或urlencode

<?
$enteredurl = $_GET["url"];
$search = urlencode($_POST["search"]);
if(!empty($search)) {
    $url = urlencode('https://bing.com/?q='.$search)
    echo '<script type="text/javascript">window.location="load2.php?url='.$url.'";</script>';
}
?>
 类似资料:
  • uGet 是使用 GTK+ 编写的开源文件下载管理器。

  • 我已经创建了一个索引。MAMP中的php页面。 我的索引。php的读取方式与下面的完全相同。我通过localhost:8888访问它。 然而,它并没有像我相信的那样从这个页面返回html源代码,而是返回http://stackoverflow.com 作为一个常规网页,就像你现在看到的网页一样。 我的MAMP使用PHP 5.5.10。user_agent,allow_url_fopen。 我很困惑

  • PHP/Apache2中的文件获取内容是从Facebook获取用户图片。直到最近,它一直运转良好。现在,它总是在一分钟后超时,在我的Apache2 error.log中有以下错误: PHP警告:文件\u获取\u内容(https://graph.facebook.com/999999999/picture?width=200):无法打开流:连接超时 下面是代码(我最近添加了$context以查看它是

  • 我读了建筑合成学的入门书和你好三角形章节,并决定加入LWJGL。当我第一次尝试后屏幕上没有任何东西时,我再次尝试从另一个GL 3.x教程移植一些C代码,但无济于事。 据我所知,我把所有部分放在一起,但屏幕仍然是黑色的。我理解这些概念,但我确信我在这里错过了一些简单的东西。 我已经尽可能简单地减少了这个。请注意,以下类使用此着色器帮助程序,并且从我所知道的情况来看,它按预期工作(除了缺少错误检查之外

  • 我有主要类别和子类别。 看猫。php?id=1页;(id=1为主要类别) 我还想显示子类别内容。 我的类别表: (如果sub=0,则表示这是主类别,否则为子类别) 我现在的问题是这样的,; 仅显示主类别内容,但不显示子类别内容。(cat.php?id=1) * 我想我必须再次连接类别表以获得子类别的ID。??? 当然,我需要一个新的查询。我需要得到并在同一页中列出。 我卡住了。