【问题标题】:Get data from url in php [duplicate]从php中的url获取数据[重复]
【发布时间】:2018-11-29 10:24:08
【问题描述】:

可以这样说吗:

<?php echo $_GET['p']; ?>

这里面:

<?php include("vars.txt"); 
echo"".$title.""; ?>

其实我想获取文件名? (例如:vars.txt)来自 URL。谁能告诉我怎么做?

【问题讨论】:

  • 在google上搜索时发现这个,你应该做的:phpeasystep.com/phptu/27.html这是你需要的吗? SO 不是谷歌,网上有很多关于 GET 的教程
  • 为什么我的代码没有显示?

标签: php get


【解决方案1】:

如果你有一个 $url

$url = "http://example.com/file/vars.txt";

并且想要在屏幕上显示文本“文件名:vars.txt”,那么您可以使用下面的代码来做到这一点

$filename = basename($url);
echo "Filename $filename";

编辑答案:

您尝试做的事情可能非常危险,因为任何人都可以从您的服务器中选择任何文件以包含在您的页面中并让您的网站被黑客入侵,为了使这更加安全,您可以执行以下操作

<?php
$files = array(
   "vars" => "vars.txt",
   "vars2" => "vars2.txt",
   "some-other-file" => "vars3.txt"
); 

if( $_GET['p'] && isset( $files[ $_GET['p'] ] ) {
    echo file_get_contents( $files[ $_GET['p'] ] );
}
?>

然后当你输入像http://example.com/?p=vars 这样的 URL 时,vars.txt 的内容就会打印在屏幕上。

【讨论】:

  • 你能把完整的脚本发给我吗?我是 php 新手。谢谢
  • 我需要更多详细信息来帮助您,您能告诉我您从哪里获得 URL(在我的示例中为“example.com/file/vars.txt"”)吗?
  • 我想从 url 获取文件名并想在 include('file.txt') 中使用该文件。网址将是example.com/index.php?p=file
  • 我想从 url 获取文件名,并想在 include('file.txt') 中使用该文件,而不是 file.txt。网址将是example.com/index.php?p=vars。所以 php 代码会显示 include('vars.txt')。谢谢
  • 谢谢先生。它工作得更好。并感谢您使用安全脚本的回答。非常感谢。 ?
【解决方案2】:

是的,你可以把它放在那里。 代码如下:

<phpinclude($_GET[“p”]);
echo “”.$title.””; ?>

网址将类似于 example.com/file?p=vars.txt

【讨论】:

  • 谢谢先生,它正在工作。 ?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-09-05
  • 1970-01-01
  • 2014-01-14
  • 2018-01-06
  • 1970-01-01
  • 2020-04-20
  • 2016-08-06
相关资源
最近更新 更多