Привет, мне нужна помощь с этим. Я создал php-скрипт, который я запускаю из копии и вставки в узел как php-код. Мне нужен путь к файлу для обработки файла, как я использую «\birds\birds.xml». Я не хочу указывать путь к файлу, вместо этого я думаю, как создать простую небольшую форму с кнопкой обзора и выбрать файл, а затем отправить его с помощью кнопки отправки. Сохраните путь к файлу в переменной.
Как запросить браузер входных файлов у пользователя в Drupal 7
Ответы (1)
Насколько я понял, кнопка просмотра предназначена для клиентской части (веб-браузера).
Кнопка обзора на стороне клиента
В нем есть 2 части:
- Форма загрузки HTML
- Скрипт обработки PHP
HTML [форма]
<form enctype="multipart/form-data" action="submit-script.php" method="POST">
Choose a file to upload: <input name="uploadedfile" type="file" />
<input type="submit" value="Upload File" />
</form>
PHP [submit-script.php]
$fileName = $_FILES['uploadedfile']['name'];
$target_path = "uploads/";
$target_path = $target_path . basename($fileName);
if(move_uploaded_file($_FILES['uploadedfile']['tmp_name'], $target_path)) {
echo "The file ". basename( $_FILES['uploadedfile']['name']). " uploaded";
} else{
echo "Unable to upload!";
}
Кнопка обзора на стороне сервера
Однако, если вы хотите нажать кнопку просмотра и просмотреть сервер, вам придется самостоятельно реализовать кнопку просмотра с помощью ajax или сделать процесс многоэтапным.
Ajax-Way
- При нажатии кнопки открывается модальное окно с просмотром каталогов
- В сети существует множество сценариев просмотра каталогов с открытым исходным кодом. Вот некоторые из них: простой файловый браузер сервера, fileNice - более изящное решение...
- После того, как вы нажмете «ОК» в модальном окне, перед закрытием окна установите некоторый скрытый ввод в родительском файле для выбранного файла (используя javascript). Например. window.parent.selectedFile.value ="выбранный файл"
- Как только вы сохраните в своей основной форме. Захватите «selectedFile» из POST и сделайте то, что вам нужно.
Способ без использования Ajax
Для этого вам понадобится несколько форм (на разных страницах). Первая форма будет иметь браузер файлов (см. шаг 2 в Ajax-Way), сохраните выбранный файл в скрытых полях. После перехода во 2-ю форму установите значение в другие скрытые поля... запросите дополнительную информацию (при необходимости, если нет, вы можете пропустить 2-ю форму). После отправки делайте то, что вам нужно...
person
Alex
schedule
31.08.2010