1

サーバー上のフォルダーに画像が存在する場合、ページに画像を追加するにはどうすればよいですか?

グラフィック デザイン作品のポートフォリオ サイトを構築しています。また、サーバー上のフォルダーに画像をアップロードするだけで、自動的にページに追加されるようにしたいので、新しい画像を追加するたびに html を物理的に編集する必要はありません。

これは可能ですか?もしそうなら、どのように?私はかなり速い学習者なので、それがどれほど複雑になるかはあまり気にしません.

4

4 に答える 4

1

次のようなものを使用できます。

    <?php

    $files = glob('folder/*.{jpg,png,gif}', GLOB_BRACE);
    foreach($files as $file) {
      echo "<img src='$file'>";
    }


    ?>
于 2012-10-17T16:06:34.713 に答える
1

これを試して:

$handle = opendir(dirname(realpath(__FILE__)).'/pictures/');
        while($file = readdir($handle)){
            if($file !== '.' && $file !== '..'){
                echo '<img src="pictures/'.$file.'" border="0" />';
            }
        }

このコードは非常に理解しやすいです。最初に変数「$handle」を定義します。この変数には、フォルダーの絶対パスへのハンドルが含まれます (絶対パスの方が安全だと思うので、常に絶対パスを使用します) dirname(realpath( FILE ) ) 現在のファイル (gallery.php) への絶対パスを返し、その末尾に /pictures/ を追加します。

次に、ディレクトリ内のすべてのファイルをループします。私が使用した単純な if ステートメントは、一部の関数が を返すのを防ぐためのものです。または..ファイル名として時々。次に、画像を標準のhtmlで表示します

于 2012-10-17T16:06:43.347 に答える
1

この疑似コードを使用します。

if (file_was_uploaded()) {
    update_page();
}

関数ではfile_was_uploaded、ファイルのアップロードを処理するコードを配置します。(成功した) ファイルのアップロードがあった場合は true を返します。

関数ではupdate_page、ページの更新を処理するコードを配置します。

于 2012-10-17T16:11:02.427 に答える
0

フォルダー内のファイル名を読み取ってから、各画像をページに表示できます。

<?php
$dir_path   = '/images';
$filenames = scandir($dir);
?>

<?php foreach($filenames as $filename): ?>
    <img src="<?=$filename;?>" alt="photo"/> <!-- and other HTML stuff -->
<?php endforeach; ?>
于 2012-10-17T16:07:37.053 に答える