Лимит на загружаемых фото на сайте
Пользователи, просматривающие топик: none
|
Зашли как: Guest
|
Имя |
Сообщение |
<< Старые топики Новые топики >> |
|
|
Лимит на загружаемых фото на сайте - 2011-11-30 21:55:34.010000
|
|
|
SunRise13
Сообщений: 20
Оценки: 0
Присоединился: 2011-05-08 00:19:59.966666
|
Привет всем вебмастерам, У меня есть сайт хостинг изображений,Есть у меня такая проблема,Сделал лимит для загрузка 5мб,все работает и нормально,Но есть большая проблема,Когда кто то загружает фото с большим pixel'ом ,пример 12000ч12000 сервер загружаеться и потом Internal server error Хочу код что бы ставил лимит для загружаемых фото на сайте по пикселей,на ширину и для на высоту Как могу делать этого?Сайт подготовлен с помощью CakePHP Вот код для загружаемых фото: … file_size_limit : "5 MB", file_types : "*.jpg;*.png", file_types_description : "Фото", file_upload_limit : 100, …
|
|
|
RE: Лимит на загружаемых фото на сайте - 2011-12-01 22:02:10.616666
|
|
|
heaven7
Сообщений: 134
Оценки: 5
Присоединился: 2007-12-29 20:49:38.910000
|
<?php
$photo_file = '/tmp/blablabla.jpg';
$size = @getimagesize($photo_file);
if (!$size) die('Недопустимый формат картинки');
$width = $size[0]; //ширина картинки
$height = $size[1]; //высота
if ($width>1024) die('Картика слишком широкая');
if ($height>768) die('Картика слишком высокая');
?>
|
|
|
RE: Лимит на загружаемых фото на сайте - 2011-12-02 21:05:40.530000
|
|
|
SunRise13
Сообщений: 20
Оценки: 0
Присоединился: 2011-05-08 00:19:59.966666
|
heaven7, спабибо за ответ,это кажеться не работал,потому что я использую CakePHP.буду добавит весь код,плз соедини кодов,я новичок не могу вот весь код для этого файла:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" version="-//W3C//DTD XHTML 1.1//EN" xml:lang="en"> <head> var progress = new FileProgress(file, this.customSettings.progressTarget); progress.setError(); progress.toggleCancel(false); switch (errorCode) { case SWFUpload.QUEUE_ERROR.FILE_EXCEEDS_SIZE_LIMIT: progress.setStatus("фото слишком большая."); this.debug("Error Code: File too big, File name: " + file.name + ", File size: " + file.size + ", Message: " + message); break; case SWFUpload.QUEUE_ERROR.ZERO_BYTE_FILE: case SWFUpload.QUEUE_ERROR.INVALID_FILETYPE: progress.setStatus("Invalid File Type."); this.debug("Error Code: Invalid File Type, File name: " + file.name + ", File size: " + file.size + ", Message: " + message); break; default: if (file !== null) { progress.setStatus("Unhandled Error"); } this.debug("Error Code: " + errorCode + ", File name: " + file.name + ", File size: " + file.size + ", Message: " + message); break; } } catch (ex) { this.debug(ex); } } //здесь было другие коды поэтому стерел //здесь было другие коды поэтому стерел //здесь было другие коды поэтому стерел
function uploadSuccess(file, serverData) { try { var progress = new FileProgress(file, this.customSettings.progressTarget); progress.setComplete(); progress.setStatus("<?php echo ucfirst(__('uploaded', true)) ?>."); progress.toggleCancel(false); } catch (ex) { this.debug(ex); } } function uploadError(file, errorCode, message) { try { var progress = new FileProgress(file, this.customSettings.progressTarget); progress.setError(); progress.toggleCancel(false); switch (errorCode) { case SWFUpload.UPLOAD_ERROR.HTTP_ERROR: progress.setStatus("Upload Error: " + message); this.debug("Error Code: HTTP Error, File name: " + file.name + ", Message: " + message); break; case SWFUpload.UPLOAD_ERROR.UPLOAD_FAILED: progress.setStatus("Upload Failed."); this.debug("Error Code: Upload Failed, File name: " + file.name + ", File size: " + file.size + ", Message: " + message); break; case SWFUpload.UPLOAD_ERROR.IO_ERROR: progress.setStatus("Server (IO) Error"); this.debug("Error Code: IO Error, File name: " + file.name + ", Message: " + message); break; case SWFUpload.UPLOAD_ERROR.SECURITY_ERROR: progress.setStatus("Security Error"); this.debug("Error Code: Security Error, File name: " + file.name + ", Message: " + message); break; case SWFUpload.UPLOAD_ERROR.UPLOAD_LIMIT_EXCEEDED: progress.setStatus("Upload limit exceeded."); this.debug("Error Code: Upload Limit Exceeded, File name: " + file.name + ", File size: " + file.size + ", Message: " + message); break; case SWFUpload.UPLOAD_ERROR.FILE_VALIDATION_FAILED: progress.setStatus("Failed Validation. Upload skipped."); this.debug("Error Code: File Validation Failed, File name: " + file.name + ", File size: " + file.size + ", Message: " + message); break;
var swfu; window.onload = function() { var settings = { flash_url : "<?php echo $this->webroot ?>swf/swfupload.swf", upload_url: "<?php echo $html->url('/photos/upload?PHPSESSID=' . session_id() . '&privacy=' . $_GET['privacy'], true) ?>", // Relative to the SWF file post_params: {}, file_size_limit : "8 MB", // лимит для фото file_types : "*.jpg;*.png;*.gif;*.bmp", file_types_description : "Photos or pictures", file_upload_limit : 100, file_queue_limit : 0, custom_settings : { progressTarget : "fsUploadProgress", cancelButtonId : "btnCancel" }, debug: false, // The event handler functions are defined in handlers.js file_queued_handler : fileQueued, file_queue_error_handler : fileQueueError, file_dialog_complete_handler : fileDialogComplete, upload_start_handler : uploadStart, upload_progress_handler : uploadProgress, upload_error_handler : uploadError, upload_success_handler : uploadSuccess, upload_complete_handler : uploadComplete, queue_complete_handler : queueComplete // Queue plugin event }; swfu = new SWFUpload(settings); }; </script> <?php endif ?> </head> <body> почему то не мог аккуратно писать коды,пожалуйста скачайте тут: http://www.share.az/lkle54b1nndu/test.txt.html
|
|
|
|
|