私は現在ドロップリストを作成していますが、ドロップリストに .txt 拡張子ファイルのみを含めたいとしましょう.php .jpg などの他の拡張子やその他の拡張子はドロップリストに含まれません。できるだけ簡単にするにはどうすればよいですか?
もう 1 つの質問は、フォルダーに .txt 拡張子ファイルがない場合にエラー メッセージが表示されるという警告を表示することです。そのため、フォルダ内に .txt ファイルがない限り、他の .jpg .php またはその他のファイルがあっても、警告が表示されます。
私に手を貸してくれる人はいますか?
これは私が行ったことですが、最後に.txtのないドロップリストのみが表示されますが、ドロップリストには他のランダムファイルが表示されます。
if(!(is_dir("./aaa")))
{
die("Must create a folder first, sorry");
}
$lists = scandir("./aaa");
echo "<form action=\"./page2.php\" method=\"get\">";
echo "<select>";
foreach($lists as $list)
{
if(($list == ".") || ($list == ".."))
{
continue;
}
echo "<option value=\"";
echo basename($list,".txt");
echo "\">";
echo basename($list,".txt");
echo "</option>";
}
echo "</select>";
echo "</form>";
editted は $hasTxt で substr を追加しました
<?php
if(!(is_dir("./aaa")))
{
die("Must create a <strong>aaa</strong> folder first, sorry");
}
echo "<form action=\"./page2.php\" method=\"get\">";
echo "<select name=\"aaa\">";
$aaa_files = scandir("./aaa");
$hastxt = false;
foreach($aaa_files as $file_list)
{
if(($file_list == ".") || ($file_list == ".."))
{
continue;
}
if(strlen($file_list)>4 && strtolower(substr($file_list, -4))!='.txt')
{
continue;
}
else
{
$hastxt = true;
echo "<option value=\"";
echo basename($file_list,".txt");
echo "\">";
echo basename($file_list,".txt");
echo "</option>";
}
}
echo "</select>";
echo "<br/><input type=\"submit\">";
echo "</form>";
if($hastxt == false)
{
echo "Must create text files first, sorry";
die();
}
?>
これは、フォルダーに txt ファイルがない場合に、現在のスクリプトで発生することです。
これは、txtファイルがなくてももちろん矢印がない場合に私が実際に望んでいるものです