-2

パスに変数を正しく渡すにはどうすればよいですか? photos.php?fname=マレリーナ

<?php
foreach(glob('.$_GET["fname"]./*.*') as $filename){
     echo $filename;
 }
?>
4

2 に答える 2

1

まず、このディレクトリをサーバー上の任意の場所に置きたい場合 (つまり、セキュリティ上の問題がある場合) を除いて、ユーザーが a に入力できないようglob()にしてください。

文字列連結を使用...

$_GET["fname"] . '/*.*'

...または中括弧付きの二重引用符。

"{$_GET[fname]}/*.*"
于 2012-12-30T23:36:02.230 に答える
0

あなたが使用することができます:

<?php
foreach(dirname(__file__).glob(".$_GET[fname]/*.*") as $filename){
     echo $filename;
 }
?>

また:

<?php
foreach(dirname(__file__).glob($_GET["fname"].'/*.*') as $filename){
     echo $filename;
 }
?>

ただし、ファイル「../」を要求すると、親ディレクトリが明らかになることに注意してください。したがって、「..」のファイル名を確認して、これらを削除するか、エラーを出力することができます...

于 2012-12-30T23:39:06.360 に答える