За последние 24 часа нас посетили 37378 программистов и 7917 роботов. Сейчас ищут 1887 программистов ...

Как объединить поле выбора и таблицу?

Тема в разделе "PHP для новичков", создана пользователем Dmti, 15 янв 2023.

  1. Dmti

    Dmti Новичок

    С нами с:
    21 апр 2022
    Сообщения:
    13
    Симпатии:
    0
    Можно или нет такое объединение таблицы и поля select и если можно то как это сделать

    Код (Text):
    1.         <form   method="get" enctype="multipart/form-data"> <!-- создаем форму                    -->
    2.             <select name="lunch[]"
    3.                     multiple
    4.                     style = "padding:5px "
    5.                     size="<?php echo $count; ?>">    <!-- Размер окна выбора по количеству файлов в папке -->
    6. <p>
    7.     <?php                      
    8.                 echo '<table border="1"> "\n"';
    9.                 foreach ($files as $file){                        //имя файла
    10.                     $fileseze = convert_bytes(filesize($file)); //размер файла в байтах
    11.                     //echo "<option value=$file>$file $fileseze</option>\n";    //и записываем её в очередную строку
    12.                     echo "<tr><option value=$file><td>$file</td> <td>$fileseze</td></option></tr>";    //и записываем её в очередную ячейку
    13.                 }
    14.                 echo '</table>';
    15.     ?>
    16.             </select><br />                                    <!--  -->
    17.         <input type="file" name="lunch[]" size="10"><br />
    18.         <input type="submit" value ="Загрузить" name="ActionChoice">            <!--  -->
    19.         <input type="submit" value ="Отправить" name="ActionChoice">            <!--  -->
    20.         </form>    
     
  2. Reken

    Reken Активный пользователь

    С нами с:
    4 июл 2019
    Сообщения:
    200
    Симпатии:
    5
    Можно, но у Вас путаница в коде, и отступов нет...Вы используете метод "get", а при отправке формы принято использовать "post". Так же у Вас обе кнопки "Загрузить" и "Отправить" выполняют одно и тоже действие, и к тому же отсутствует action, куда Вы форму отправляете?
     
  3. Dmti

    Dmti Новичок

    С нами с:
    21 апр 2022
    Сообщения:
    13
    Симпатии:
    0
    Здесь приведен не весь код а только форма. Метод get правильно мне нужен именно он. Кнопки делают разное одна присылает "Загрузить" другая "Отправить" Форма отправляет методом get в другой файл, который здесь не показан так как не нужен, а нужно ткнуть носом почему таблица не отображается в поле Select.
     
  4. miketomlin

    miketomlin Старожил

    С нами с:
    9 авг 2016
    Сообщения:
    3.861
    Симпатии:
    656
    Файлы нельзя загрузить методом GET.
    --- Добавлено ---
    То полная фигня. Короче нельзя так делать. Внутри select должны быть option. Используйте всплывающее окошко и т.п., если хотите в виде таблицы оформить.
    --- Добавлено ---
    Можно просто: file.txt - 100KB, file.txt (100KB) и т.п.
     
  5. Dmti

    Dmti Новичок

    С нами с:
    21 апр 2022
    Сообщения:
    13
    Симпатии:
    0
    Форма работает как надо и присылает то что нужно, в поле селект выводит все как надо, но не могу выводимые поля обрамить линиями, чисто дизайн. Хотел использовать таблицу чисто для внешнего оформления.
     
  6. miketomlin

    miketomlin Старожил

    С нами с:
    9 авг 2016
    Сообщения:
    3.861
    Симпатии:
    656
    Ну, значит игнорится у тебя method="get". Ты физически не можешь загрузить файлы методом GET. Речь о работе input type="file", если чЁ, т.е. о загрузке на сервер.
     
  7. Dmti

    Dmti Новичок

    С нами с:
    21 апр 2022
    Сообщения:
    13
    Симпатии:
    0
    Я не гружу файлы я отсылаю массив названий файлов в функцию в другом файле и говорю функции что сделать с массивом.
     
  8. miketomlin

    miketomlin Старожил

    С нами с:
    9 авг 2016
    Сообщения:
    3.861
    Симпатии:
    656
    Нафига тогда input type="file" (и enctype="multipart/form-data")?
    --- Добавлено ---
    Действия запускать тоже нужно не GET'ом, если это не получение данных на клиент.
    --- Добавлено ---
    Например, типичная ламерская ошибка – удаление GET'ом.
     
  9. Dmti

    Dmti Новичок

    С нами с:
    21 апр 2022
    Сообщения:
    13
    Симпатии:
    0
    Подскажите лучше в оформлении как мне строки в поле вывести в виде таблицы.
     
  10. miketomlin

    miketomlin Старожил

    С нами с:
    9 авг 2016
    Сообщения:
    3.861
    Симпатии:
    656
    Самое вменяемое – использовать чекбоксы внутри таблицы.
    --- Добавлено ---
    Названия файлов можно оформить при помощи label'ов к чекбоксам ;)
     
  11. Dmti

    Dmti Новичок

    С нами с:
    21 апр 2022
    Сообщения:
    13
    Симпатии:
    0
    Вот пример кода где таблица визуально не как себя не проявляет а мне бы хотелось иметь возможность выделять отдельно как по именам так и по размеру, а не челиком строку. И визуально чтобы таблица отрисовывалась.
    Код (Text):
    1. <select name="lunch[]"
    2.  
    3. <p>
    4.     <?php                    
    5.                 echo '<table border="1"> "\n"';
    6.  
    7.                 //Перечисляем массив имен файлов для вывода в таблицу
    8.                 foreach ($files as $file){  
    9.                      
    10.                     $fileseze = convert_bytes(filesize($file)); //размер файла в байтах
    11.  
    12.                     //и записываем всё в очередную строку но в разные столбцы
    13.                     echo "<tr><option value=$file><td>$file</td> <td>$fileseze</td></option></tr>";  
    14.                 }
    15.                 echo '</table>'; // таблица что есть что нету не как не проявляется
    16.     ?>
    17. </select><br />  
     
    #11 Dmti, 1 фев 2023
    Последнее редактирование: 1 фев 2023
  12. miketomlin

    miketomlin Старожил

    С нами с:
    9 авг 2016
    Сообщения:
    3.861
    Симпатии:
    656
    Говорю, замени select multiple чекбоксами, если хочешь таблицу.