ایجاد تنظیمات برای قالب سایت
من یک پوشه دارم به اسم template و در داخل اون یک سری پوشه هست با نام های مختلف مثلا yellow,red,geen,blue , ... خوب اسم این پوشه ها به صورت خودکار در یک selectbox لیست شدن
میخوام کاری کنم که وقتی اسم پوشه ها داره لیست میشه هر کدوم از پوشه ها که اسمشون برابر با red بود در لیست نشون داده نشه
$path = '../template/' . $name[0];
$results = scandir($path);
foreach ($results as $result) {
if ($result === '.' or $result === '..') continue;
if (is_dir($path . '/' . $result)) {
//code to use if directory
echo '<option>';
print_r($result);
echo '</option>';
}
}
دوم میخوام کاری کنم که اگر کاربر مثلا red رو انتخاب کرد با زدن دکمه حذف کل پوشه red حذف بشه
حالا نمیدونم باید چکار کنم لطفا اگر کدی قرارمیدین تکه تکه برام توضیح بدین بفهمم چی به چیه و یاد بگیرم
پیش پیش ممنون
نقل قول: ایجاد تنظیمات برای قالب سایت
خب اول باید با دستور scandir همه محتویات پوشه رو بخونید،
بعدش اون نقطه و دونقطه ای که توی آرایه بازگردانده شده رو چون نیاز نداریم حذف می کنیم (current directory&parent directory) با استفاده از array_diff.
حالا باید چک کنیم که محتویات دریافت شده از نوع فایل مباشند چون شما فرمودید یک سری پوشه داریم ،دستور is_dir
بعد به ازای هر پوشه یه تگ option می سازیم که value اون هم باید دقیقا نام پوشمون باشه یعنی کلا تا اینجای کار میشه:
<?php
$path = 'temp';
$results = scandir($path);
$results = array_diff($results, array('.', '..'));
?>
<form action="delete_directory.php" method="get">
<select name="folder_name">
<?php
foreach ($results as $result) {
if (is_dir($path . '/' . $result)) {
//if directory not a file
echo '<option value="'.$result.'">'.$result.'</option>';
}
}
?>
</select>
<button>delete</button>
</form>
اما بریم سراغ فایل delete_directory.php که قراره پوشه مورد نظر رو حذف کنه:
<?php
$folder_name=$_GET['folder_name'];
rmdir('temp/'.$folder_name);
?>
دستور rmdir هم که مشخصه برای حذف یه دایرکتوری هستش.
نقل قول: ایجاد تنظیمات برای قالب سایت
البته اگر مطموئنید که همه محتویات پوشه temp از نوع فولدر هستند و نه فایل،دیگه نیاز به شرط is_dir نیست اون رو به خاطر اطمینان نوشتم فقط.