0

まず、私は PHP をまったく初めて使用しますが、これまでのところ、PHP で見た可能性が気に入っています。

わかりました、ここに私の問題があります。フォルダーを自動的にスキャンし、そのフォルダーのファイル名をドロップダウン メニューに表示するスクリプトがあります。

<?php
$dirname = "logs";
$dir = opendir($dirname);
echo '<select name="file2">';
echo '<option value="">Logfiles</option>';
while(false != ($file = readdir($dir)))
        {
            if(($file != ".") and ($file != ".."))
                {
        echo "<option value=".$file.">$file</option>";
                }
        }
                echo '</select>';
?>

これまでのところ、その部分はうまく機能しています。

次に、選択したファイルの内容を表示するコードを作成します。

<?php
$content = file("filenamehere");
$data = implode("<br>",$content);
echo $data;
?>

この部分だけでも問題なく動作します。

これら2つのスクリプトを結合したいと思います。これは私が完全に迷子になるところです。「filenamehere」として配置する変数のさまざまな組み合わせをすべて試しましたが、ドロップダウンボタンで選択したファイル名をエコーするドロップダウンから選択することしかできません。選択したファイルの内容を表示するコードの 2 番目の部分を実際に取得できませんでした。$content 変数に対して ("$file") などを試しましたが、何も起こりません。

もちろん、他の単一スクリプト ソリューションも素晴らしいでしょう。フォルダーをスキャンし、そのファイルをドロップダウンにリストし、ファイルを選択したらページに表示できるようにする必要があるだけです。

私はPHPの初心者なので、どんな助けでも大歓迎です。

乾杯。

4

1 に答える 1

0

すべてを1ページで実行していると想定しています。formドロップダウンの周りにタグをラップしselect、送信ボタンを追加しました

echo '<form name="displayfile" action="" method="POST">';
echo '<select name="file2">';
echo '<option value="">Logfiles</option>';
while(false != ($file = readdir($dir)))
        {
            if(($file != ".") and ($file != ".."))
                {
        echo "<option value=".$file.">$file</option>";
                }
        }
                echo '</select>';
echo '<input type="submit" value="display file" />';
echo '</form>';

第二部

<?php
    //file2 is the name of the dropdown
    $selectedfile = @$_POST['file2'];
    $content = file($selectedfile);
    $data = implode("<br>",$content);
    echo $data;

?>

お役に立てれば

于 2012-07-17T08:56:55.427 に答える