Вопрос только один. Как проверить отправил ли пользователь файл?
Пока проверка так:
if(isset($_FILES['userfile'])){
...
}
Но! Когда файл не отправляю то ошибка:
Warning: copy() [function.copy]: Filename cannot be empty in C:\wamp\www\admin\pages\edit.php on line 21
Как я понял скрипт смотрит не на то, что передан файл, а то, что в форме был элемент file? И поэтому условие выполняется? тогда такой вопрос: как выполнить проверку? :(
Спустя 13 минут, 8 секунд (18.05.2011 - 07:17) kirik написал(а):
if(file_exists($_FILES['userfile']['tmp_name'])) {
move_uploaded_file($_FILES['userfile']['tmp_name'], '/path/to/move/to.ext');
}
Спустя 5 минут, 41 секунда (18.05.2011 - 07:23) XCross написал(а):
kirik, огромное спасибо.
права доступа настраивать через htaccess или же
?
права доступа настраивать через htaccess или же
chmod (Путь до файла, '0***' );
?
Спустя 2 минуты, 39 секунд (18.05.2011 - 07:25) kirik написал(а):
Цитата (kmaks @ 18.05.2011 - 00:23) |
права доступа настраивать через htaccess или же |
Какие права доступа? То что ты написал - это разные вещи.
Спустя 16 минут, 1 секунда (18.05.2011 - 07:41) XCross написал(а):
Чтение, запись, выполнение
Спустя 42 минуты, 22 секунды (18.05.2011 - 08:24) kirik написал(а):
Цитата (kmaks @ 18.05.2011 - 00:41) |
Чтение, запись, выполнение |
Тогда chmod
Спустя 4 минуты, 39 секунд (18.05.2011 - 08:29) linker написал(а):
kmaks
Нахрена нужны права доступа, все закаченные файлы и так имеют права пользователя, под которым работает веб-сервер. Других и не надо. Если ты хочешь запретить доступ к файлам через веб, то это другая песня и делается именно через .htaccess. В папку с файлами кладешь этот файлик и пишешь туда
Нахрена нужны права доступа, все закаченные файлы и так имеют права пользователя, под которым работает веб-сервер. Других и не надо. Если ты хочешь запретить доступ к файлам через веб, то это другая песня и делается именно через .htaccess. В папку с файлами кладешь этот файлик и пишешь туда
deny from all, если конечно настройки веб-сервера позволят.
Спустя 20 минут, 32 секунды (18.05.2011 - 08:49) XCross написал(а):
Гуд. Тогда можно не парится насчет загруженных php-файлов(скриптов)?
Спустя 2 минуты, 40 секунд (18.05.2011 - 08:52) kirik написал(а):
Цитата (kmaks @ 18.05.2011 - 01:49) |
Гуд. Тогда можно не парится насчет загруженных php-файлов(скриптов)? |
Ни то ни другое не спасёт от этого. Нужно не давать загружать скрипты.
Спустя 2 минуты, 29 секунд (18.05.2011 - 08:54) XCross написал(а):
пока так сделал:
$up_file=pathinfo(....);
$extens=array('php','js','html');
if(!in_array($up_file['extension'],$extens)){
...
}
else{
unlink(...);
}
Спустя 1 час, 18 минут, 29 секунд (18.05.2011 - 10:13) silius написал(а):
if($_FILES['file']['size'] > 0)
{
if($_FILES['file']['type'] == 'image/pjpeg' ||
$_FILES['file']['type'] == 'image/gif' ||
$_FILES['file']['type'] == 'image/jpeg' ||
$_FILES['file']['type'] == 'image/png')
{
echo 'Файл подходит!';
}
else
{
echo 'Файл не подходит!';
}
}
else
echo 'Файл не выбран!';
image/png - mime тип, их много, выбирай которые тебе нужны
Спустя 19 минут, 54 секунды (18.05.2011 - 10:33) XCross написал(а):
Да проверка то устраивает. Меня интерсует как запретить запуск файлов, которые находятся в этой директории да и вообще запретить просмотр каталога.
http://31.163.6.31/images/
понял про что я?
Вдруг script.php переименуют в script.jpg? Незнаю может и не запустится но все-таки.
http://31.163.6.31/images/
понял про что я?
Вдруг script.php переименуют в script.jpg? Незнаю может и не запустится но все-таки.
Спустя 6 минут, 32 секунды (18.05.2011 - 10:39) silius написал(а):
ааа, сори, не втупил.
можно попробывать перед заливкой chmod выставлять соответствующий, а после заливки выставлять ограничения
можно попробывать перед заливкой chmod выставлять соответствующий, а после заливки выставлять ограничения
Спустя 8 минут, 41 секунда (18.05.2011 - 10:48) XCross написал(а):
Все. Спасибо. Гуд.
Ща всем плюсиков наставлю
Ща всем плюсиков наставлю
Спустя 4 минуты, 30 секунд (18.05.2011 - 10:52) linker написал(а):
chmod(), как я сказал не поможет, если к файлу имеет право доступа веб-сервер, то любой запрос извне выполнит скрипт. Закрывают через .htaccess, вот только тогда через веб достучаться будет нельзя и картинки не будут отображаться на страницах. Конвертация поможет в один тип, например jpeg.
Спустя 3 минуты, 4 секунды (18.05.2011 - 10:55) XCross написал(а):
linker, как думаешь хватит этого:
1)При загрузке проверка формата.
2)Установка прав доступа
?Я думаю, что вполне. Хотя наверное, ошибаюсь.
А с .htaccess будут только дополнительные ежики.
1)При загрузке проверка формата.
2)Установка прав доступа
?Я думаю, что вполне. Хотя наверное, ошибаюсь.
А с .htaccess будут только дополнительные ежики.
Спустя 3 минуты, 11 секунд (18.05.2011 - 10:59) linker написал(а):
1) Проверить формат
2) Конвертнуть в JPG, например
Права, еще раз повторяю не помогут. Либо все имеют права доступа к файлам, либо никто.
2) Конвертнуть в JPG, например
Права, еще раз повторяю не помогут. Либо все имеют права доступа к файлам, либо никто.
Спустя 5 минут, 54 секунды (18.05.2011 - 11:04) XCross написал(а):
хм. еще кое-что вспомнил. Может переименовывать файлы? Скажам так...
$path='../images/';
$file_ext=pathinfo($path.$_FILES['userfile']['name']);
$extens=array('php','js','html');
if(!in_array($file_ext['extension'],$extens)){
rename($path.$_FILES['userfile']['name'], $path. md5($_FILES['userfile']['name']).'.'.$file_ext);
}
else{
unlink($path.$_FILES['userfile']['name']);
}
Спустя 45 секунд (18.05.2011 - 11:05) kirik написал(а):
Про безопасную загрузку изображений:
http://habrahabr.ru/blogs/php/44610/
http://habrahabr.ru/blogs/php/44615/
http://habrahabr.ru/blogs/php/44610/
http://habrahabr.ru/blogs/php/44615/
Спустя 23 часа, 4 минуты, 50 секунд (19.05.2011 - 10:10) Кузюм не пафосный написал(а):
Цитата (kirik @ 18.05.2011 - 04:17) |
if(file_exists($_FILES['userfile']['tmp_name'])) { |
У меня проблема.
<input type='file' name='uploadPicture1' />
if(file_exists($_FILES['uploadPicture1']['tmp_name'])) {
echo "Изображение есть";
}
И белая страница. В чём может быть проблема? Файл загружаю в несколько килобайт, так что проблема явно не в размере файла.
Спустя 7 минут, 59 секунд (19.05.2011 - 10:18) kirik написал(а):
<form method="post" enctype="multipart/form-data">
<input type='file' name='uploadPicture1' />
</form>
Спустя 36 минут, 36 секунд (19.05.2011 - 10:55) Кузюм не пафосный написал(а):
идиото, deleting post
_____________
Обмен Ukash на WebMoney