Здравствуйте. Есть примерно следующая форма для загрузки файла: HTML: <form enctype="multipart/form-data" action="<?php echo ($final_path); ?>" method="POST" > <input type="hidden" name="MAX_FILE_SIZE" value="<?php echo ($max_file_size); ?>"> <input type="file" name="fupload" size="20"> <p> <br><br> <input type="submit" value="Upload File"> <br> </form> Если во второй строке value возвращает то что нужно, то action из первой строки просто дописывает в ссылку <?php echo ($final_path); ?> (а ведь должен всего-навсего подставить значение переменной $final_path, где хранится относительный путь к файлу) Что я делаю не так? как мне заставить форму отправлять файлы в папку по адресу, задаваемому из переменной $final_path ?
value="<?php echo ($max_file_size); ?>" нужно <?php echo '<input type="hidden" name="MAX_FILE_SIZE" value="'.$max_file_size.'">'; ?>
Почему? CandyHolic PHP: <?php $final_path = '/var/www/elkaz/php-trash/32.php'; $max_file_size = 20000; ?> HTML: <form enctype="multipart/form-data" action="<?=$final_path?>" method="POST" > <input type="hidden" name="MAX_FILE_SIZE" value="<?=$max_file_size?>"> <input type="file" name="fupload" size="20"> <p> <br><br> <input type="submit" value="Upload File"> <br> </form>
Elkaz: Потому что это: "<?=$max_file_size?>" - интерпретируется как литерал. Теги <?php (<? - если в настройках разрешен) и ?> нужно вынести ЗА кавычки.
heapKiller, тебе когда в следующий раз эту траву предложат заяви: "отрицательный литерал! отрицательный литерал!". upd а) ты перебил переменную; б) чтобы закидывать файл в нужную директорию следует писать PHP: <?php move_uploaded_file($_FILES['fupload']['tmp_name'], $final_path); Атрибут action напрявляет запрос на страницу указаную в action.
как по мне лучше проверять размер файла на стороне сервера и указывать там ему размер а не в форме клиента
Можно и там и там (чтобы при попытке загрузить файл, больший чем можно, клиенту сразу выскочило сообщение об ошибке и ему не пришлось ждать перезагрузки страницы). Однако на стороне сервера проверять надо обязательно, иначе любой желающей сможет свою собственную форму на html сделать, указать ваш скрипт в action и загрузить Вам файл какой вздумается!