Я конфиг страница Я создаю в PHP, я использовал код, я нашел, чтобы создать раскрывающийся список из найденных файлов в папкеПочему у меня нет дублирующих рабочих функций?
<?php
$folder = '../Pic/Upload';
echo '<select name="sabpic">'."\n".
dropdown(image_filenames($folder), @$_POST['image']).
'</select>'."\n".'</br></br>';
function image_filenames($dir)
{
$handle = @opendir($dir)
or die("I cannot open the directory '<b>$dir</b>' for reading.");
$images = array();
while (false !== ($file = readdir($handle)))
{
if (eregi('\.(jpg|gif|png)$', $file))
{
$images[] = $file;
}
}
closedir($handle);
return $images;
}
function dropdown($options_array, $selected = null)
{
global $sabpicname;
$return = null;
foreach($options_array as $option)
{
$return .= '<option value="'.$option.'"'.
(($option == $sabpicname) ? ' selected="selected"' : null).
'>'.$option.'</option>'."\n";
}
return $return;
}
?>
Теперь это прекрасно работает для «выбора изображения для САБ» и когда страница загружается, считывает значение в $ sabpicname и выбирает эту опцию по умолчанию, как ожидалось.
Я предположил, что я мог бы взять ту же самую функцию и изменить $ sabpicname до $ sickpicname и он будет работать так же, но выбрать значение, которое содержится в переменной вместо ..
<?php
echo '<select name="sickpic">'."\n".
dropdown(image_filenames($folder), @$_POST['image2']).
'</select>'."\n".'</br></br>';
function dropdown_sick($options_array, $selected = null)
{
global $sickpicname;
$return2 = null;
foreach($options_array as $option2)
{
$return2 .= '<option value="'.$option2.'"'.
(($option2 == $sickpicname) ? ' selected="selected"' : null).
'>'.$option2.'</option>'."\n";
}
return $return2;
}
?>
Но независимо от того, что Кажется, что я делаю это, второе раскрывающееся меню все еще берет выбранное значение, которое хранится в $ sabpicname, а не $ sickpicname, но из того, что я вижу, теперь это отдельная функция и не ссылается на переменную $ sabpicname atall, это не работая, поэтому я, очевидно, чего-то не хватает.
Надеюсь, что кто-то может осветить какой-то свет на то, что я делаю неправильно.
где вы называете ' dropdown_sick'? Код, который вы предоставляете, вызывает функцию 'drop down'? –
Почему бы не передать его в качестве параметра, а просто иметь одну рутину? –
Im совершенно новый для php, поэтому я не слишком уверен, как это сделать? – Karl