Php 如何通过GET正确使用变量?
如何将变量正确地传递到路径? photos.php?fname=MARERINAPhp 如何通过GET正确使用变量?,php,Php,如何将变量正确地传递到路径? photos.php?fname=MARERINA <?php foreach(glob('.$_GET["fname"]./*.*') as $filename){ echo $filename; } ?> 首先,不要让用户输入到glob()中,除非您希望此目录可能位于服务器上的任何位置,即存在安全问题 使用字符串连接 $_GET["fname"] . '/*.*' …或带大括号的双引号 "{$_GET[fname]}/*.*" 您可
<?php
foreach(glob('.$_GET["fname"]./*.*') as $filename){
echo $filename;
}
?>
首先,不要让用户输入到glob()
中,除非您希望此目录可能位于服务器上的任何位置,即存在安全问题
使用字符串连接
$_GET["fname"] . '/*.*'
…或带大括号的双引号
"{$_GET[fname]}/*.*"
您可以使用:
<?php
foreach(dirname(__file__).glob(".$_GET[fname]/*.*") as $filename){
echo $filename;
}
?>
或:
但请记住,请求文件“./”将显示父目录。因此,您可以检查文件名中的“.”并删除这些内容或打印错误…您能告诉我怎么做吗?@Kaoukkos:手册会告诉您怎么做,就像您的PHP book.303在PHP
标记中发布一样,您不能执行基本的字符串连接吗?@LightnessRacesinOrbit是的!
<?php
foreach(dirname(__file__).glob($_GET["fname"].'/*.*') as $filename){
echo $filename;
}
?>