PHP . SU
Программирование на PHP, MySQL и другие веб-технологии
Страниц (17): В начало « ... 9 10 11 12 [13] 14 15 16 17 »
Найдено сообщений: 243
livote
Отправлено: 04 Ноября, 2012 - 19:25:29 • Тема: Warning: getimagesize() [function.getimagesize]: Filename cannot be empty in C:\openserver\domains\but\file.php on line 5 • Форум: Вопросы новичков
Ответов: 7 Просмотров: 686
не пойму почему эта ошибка.как я понял скрипт не загружает файл в переменную.вот код скрипта:
PHP:
скопировать код в буфер обмена
<?PHP
if ( $_POST [ "Submit" ] ) {
//Проверка, действительно ли загруженный файл является изображением
$imageinfo = getimagesize ( $_FILES [ "uploadimg" ] [ "tmp_name" ] ) ; if ( $imageinfo [ "mime" ] != "image/gif" && $imageinfo [ "mime" ] != "image/jpeg" && $imageinfo [ "mime" ] != "image/png" ) {
print "Загруженный файл не является изображением" ; die;
}
//Сохранение загруженного изображения с расширением, которое возвращает функция getimagesize()
//Расширение изображения
$mime = explode ( "/" , $imageinfo [ "mime" ] ) ; //Имя файла
$namefile = explode ( "." , $_FILES [ "uploadimg" ] [ "name" ] ) ; //Полный путь к директории
$uploaddir = "/img/" ;
//Функция, перемещает файл из временной, в указанную вами папку
if ( move_uploaded_file ( $_FILES [ "uploadimg" ] [ "tmp_name" ] , $uploaddir . $namefile [ 0 ] . "." . $mime [ 1
] ) ) { print "Изображение успешно загружено" ;
} else {
print "Произошла ошибка" ;
}
}
?>
<form name="upload" enctype="multipart/form-data" action="file.php" method="post">
<input type="hidden" name="MAX_FILE_SIZE" value="102400" />
<input type="file" name="uploadimg" />
<input type="submit" name="Submit">
</form>
почему это происходит
(Добавление)
как я понял файл из формы не грузится
livote
Отправлено: 03 Ноября, 2012 - 13:45:35 • Тема: почему изображение из формы не передаётся? • Форум: Вопросы новичков
Ответов: 8 Просмотров: 196
есть часть кода (загружает фото)низ не доработан.я его не выложу сюда.мне интересно другое....
PHP:
скопировать код в буфер обмена
if ( ! empty ( $_FILES [ 'foto1' ] [ 'tmp_name' ] ) ) {
if ( $imageinfo [ "mime" ] != "image/gif" && $imageinfo [ "mime" ] != "image/jpeg" && $imageinfo [ "mime" ] != "image/png" ) { $error ;
print "Не удаётся загрузить изображение." ; die;
}
{
echo 'Изображение не выбрано' ;
}
и html форма
вот толи я туплю..толи..в общем он пишет что изображение не выбрано.почему?!
(Добавление)
точнее не форма а её часть
livote
Отправлено: 03 Ноября, 2012 - 10:10:34 • Тема: Warning: imagecreatetruecolor() Warning: imagecopyresampled() Warning: imagejpeg() помогите решить • Форум: Вопросы новичков
Ответов: 3 Просмотров: 373
KingStar пишет: No such file or directory - перевести??? - Нет такого файла или каталога
Invalid image dimensions - перевести??? - Неверный размер изображения
дальше все вытекающие ошибки
ок.поковырялся - настроил более менее (хотя странно папки на серваке были)ну да ладно.только вот осталась одна ошибка:
Warning: imagecopyresampled(): supplied argument is not a valid Image resource in W:\domains\but\newop.php on line 127
livote
Отправлено: 03 Ноября, 2012 - 08:48:26 • Тема: Warning: imagecreatetruecolor() Warning: imagecopyresampled() Warning: imagejpeg() помогите решить • Форум: Вопросы новичков
Ответов: 3 Просмотров: 373
нашёл в инете скрипт загрузки картинки с созданием миниатюр
PHP:
скопировать код в буфер обмена
$f_err = 0 ; //вспомогательная переменная
'.jpg' ,
'.JPG' ,
'.jpeg' ,
'.gif' ,
'.bmp' ,
'.png'
) ; //поддерживаемые форматы загружаемых файлов
$max_size = 102400 ; //максимальный размер загружаемого файла (1000 Кило)
$fname = md5 ( $fname ) . $ext ; $path = 'img/img/' . $username . "_" . $fname ; //директория для загрузки
$path_mini = 'img/' ; //директория для загрузки миниатюры
$fname = $_FILES [ 'foto1' ] [ 'name' ] ;
$ext = substr ( $fname , strpos ( $fname , '.' ) , strlen ( $fname ) - 1
) ; //определяем тип загружаемого файла
//проверка на соответствие формата
$f_err ++;
$mess = '<p style="color:red;">Загружаемый файл не является картинкой</p>' ;
}
//проверка размера файла
if ( filesize ( $_FILES [ 'foto1' ] [ 'tmp_name' ] ) > $max_size ) { $f_err ++;
$mess = '<p style="color:red;">Размер загружаемой картинки превышает 1 Mb</p>' ;
}
//если файл успешно прошел проверку
//перемещаем его в заданную директорию из временной
if ( $f_err == 0) {
//путь к загруженному файлу
$source_src = $path . $fname ;
//создаем путь и имя миниатюры
$new_name = md5 ( $fname ) . $ext ; $resource_src = $path_mini . $username . "_" . $new_name ;
//получаем параметры загруженного файла
switch ( $params [ 2] ) {
case 1:
break ;
case 2:
break ;
}
//если высота больше ширины
//вычисляем новую ширину
if ( $params [ 1] > $params [ 0] ) {
$newheight = 250 ;
$newwidth = floor ( $newheight * $params [ 0
] / $params [ 1
] ) ; }
//если ширина больше высоты
//вычисляем новую высоту
if ( $params [ 1] < $params [ 0] ) {
$newwidth = 250 ;
$newheight = floor ( $newwidth * $params [ 1
] / $params [ 0
] ) ; }
//создаем миниатюру загруженного изображения
imagecopyresampled ( $resource , $source , 0
, 0
, 0
, 0
, $newwidth , $newheight , $params [ 0
] , $params [ 1
] ) ; // строка 127 imagejpeg ( $resource , $resource_src , 80
) ; //80 качество изображения ну иследовательно 128
//выводим сообщение
$mess = '<center><br><p style="color:green;">Изображение загружено !</p></center>' ;
$ok = 1 ;
}
не могу разобраться со следующими ошибками:
Warning: getimagesize(img/img/_d41d8cd98f00b204e9800998ecf8427ecodepages.png) [function.getimagesize]: failed to open stream: No such file or directory in W:\domains\but\newop.php on line 101
Warning: imagecreatetruecolor() [function.imagecreatetruecolor]: Invalid image dimensions in W:\domains\but\newop.php on line 126
Warning: imagecopyresampled(): supplied argument is not a valid Image resource in W:\domains\but\newop.php on line 127
Warning: imagejpeg(): supplied argument is not a valid Image resource in W:\domains\but\newop.php on line 128
Номера строк с ошибками подписаны в коде
livote
Отправлено: 02 Ноября, 2012 - 20:32:00 • Тема: Warning: Invalid argument supplied for foreach() in W:\domains\but\newop.php on line 91 что это • Форум: Вопросы новичков
Ответов: 2 Просмотров: 182
PHP:
скопировать код в буфер обмена
foreach ( $_FILES [ "pictures" ] [ "error" ] as $key => $error ) {
if ( $error == UPLOAD_ERR_OK) {
$tmp_name = $_FILES [ "pictures" ] [ "tmp_name" ] [ $key ] ;
$name = $_FILES [ "pictures" ] [ "name" ] [ $key ] ;
}
else
{
}
}
первая строка - это 91 строка в целиковом коде
в html формы выглядят так:
<td><input name='pictures[]' type="file"></td>
<td><input name='pictures[]' type="file"></td>
<td><input name='pictures[]' type="file"></td>
<td><input name='pictures[]' type="file"></td>
<td><input name='pictures[]' type="file"></td>
отправляю только 2 из 5 изображений.предусмотрено не всегда 5.может из-за этого?
livote
Отправлено: 02 Ноября, 2012 - 15:57:43 • Тема: можно ли сделать загрузку изображений из нескольких полей одним скриптом • Форум: Вопросы новичков
Ответов: 8 Просмотров: 245
[quote=KingStar]livote пишет: caballero пишет: а можно ли сделать, что бы при выводе ошибки выводился номер изображения по порядку(например, изображение 1 имеет не верный формат, изображение 2 не имеет нужной ширины и т.д.)?
в цикле, еще раз говорю, итерация - это и есть номер твоего изображения
(Добавление)
kappa а кросбраузерность не за...мучает ???
спасибо.попробую разобраться....
livote
Отправлено: 01 Ноября, 2012 - 19:11:20 • Тема: Является ли данный код безопасным для загрузки изображений • Форум: Вопросы новичков
Ответов: 1 Просмотров: 94
PHP:
скопировать код в буфер обмена
<?PHP
if ( $_POST [ "Submit" ] ) {
//Проверка, действительно ли загруженный файл является изображением
$imageinfo = getimagesize ( $_FILES [ "uploadimg" ] [ "tmp_name" ] ) ; if ( $imageinfo [ "mime" ] != "image/gif" && $imageinfo [ "mime" ] != "image/jpeg" && $imageinfo [ "mime" ] != "image/png" ) {
print "Загруженный файл не является изображением" ; die;
}
//Сохранение загруженного изображения с расширением, которое возвращает функция getimagesize()
//Расширение изображения
$mime = explode ( "/" , $imageinfo [ "mime" ] ) ; //Имя файла
$namefile = explode ( "." , $_FILES [ "uploadimg" ] [ "name" ] ) ; //Полный путь к директории
$uploaddir = "Z:/home/localhost/www/scripts/upload/" ;
//Функция, перемещает файл из временной, в указанную вами папку
if ( move_uploaded_file ( $_FILES [ "uploadimg" ] [ "tmp_name" ] , $uploaddir . $namefile [ 0 ] . "." . $mime [ 1
] ) ) { print "Изображение успешно загружено" ;
} else {
print "Произошла ошибка" ;
}
}
?>
<form name="upload" enctype="multipart/form-data" action="upload.php" method="post">
<input type="hidden" name="MAX_FILE_SIZE" value="102400" />
<input type="file" name="uploadimg" />
<input type="submit" name="Submit">
</form>
я не параноик, но всё же.мало ли что народу на сайте в голову взбредёт.мне интересно защитит ли этот код хотя бы от элементарных атак.профи,я думаю будет не до моего сайта
Страниц (17): В начало « ... 9 10 11 12 [13] 14 15 16 17 »
Powered by ExBB FM 1.0 RC1. InvisionExBB