PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи

Страниц (5): « 1 2 [3] 4 5 »

> Найдено сообщений: 63
tsoi85 Отправлено: 05 Августа, 2011 - 21:10:40 • Тема: Загрузка нескольких файлов на сервер • Форум: HTTP и PHP

Ответов: 44
Просмотров: 28342
KuPbI4 пишет:
Так?
PHP:
скопировать код в буфер обмена
  1. if (Img_Resize($_FILES['file']['name'][$k]'.jpg', Img_Resize($_FILES['file']['name'][$k]'.jpg', $_FILES['file']['name'][$k]'_.jpg', 400, 100)) {
  2.     echo 'resize';
  3. }
  4. else {
  5.     echo 'no resize';
  6. }

Немного неверно.
Расширение файла дополнительно указывать не нужно, его уже содержит $_FILES['file']['name'][$k].

Как-нибудь так:
PHP:
скопировать код в буфер обмена
  1. foreach($_FILES['file']['name'] as $k=>$f) {
  2.   if (!$_FILES['file']['error'][$k]) {
  3.     if (is_uploaded_file($_FILES['file']['tmp_name'][$k])) {
  4.       if (move_uploaded_file($_FILES['file']['tmp_name'][$k], "../img/cars/".$_FILES['file']['name'][$k])) {
  5.         echo 'Файл: '.$_FILES['file']['name'][$k].' загружен.<br />';
  6.         if (Img_Resize('../img/cars/'.$_FILES['file']['name'][$k], '../img/cars/sm_'.$_FILES['file']['name'][$k], 400, 100)) {
  7.           echo 'resize';
  8.         }
  9.         else {
  10.           echo 'no resize';
  11.         }
  12.       }
  13.     }
  14.   }
  15. }

Обработанная копия имеет префикс: sm_.
tsoi85 Отправлено: 05 Августа, 2011 - 20:09:29 • Тема: Загрузка нескольких файлов на сервер • Форум: HTTP и PHP

Ответов: 44
Просмотров: 28342
KuPbI4 пишет:
Один вопрос остался, есть такой скрипт, который позволяет сжать картинку в заданный размер изображения, к примеру 400х400?!


PHP:
скопировать код в буфер обмена
  1.  
  2. # $src - Исходное изображение (.gif, .png, .jpg, .jpeg)
  3. # $dest - Сохраняемое изображение (.jpg)
  4. # $sidepx - Размер
  5. # $quality - Качество
  6.  
  7. function Img_Resize($src, $dest, $sidepx, $quality=90) {
  8.     if (!file_exists($src)) return false;
  9.     $size = getimagesize($src);
  10.     if ($size === false) return false;
  11.     $format = strtolower(substr($size['mime'], strpos($size['mime'], '/')+1));
  12.     $icfunc = "imagecreatefrom".$format;
  13.     if (!function_exists($icfunc)) return false;
  14.     $isrc = $icfunc($src);
  15.     $img['r_foto'] = (($size[0]>$size[1])?$size[0]/$sidepx:$size[1]/$sidepx);
  16.     $img['sizex'] = round($size[0]/$img['r_foto']);
  17.     $img['sizey'] = round($size[1]/$img['r_foto']);
  18.     $idest = imagecreatetruecolor($img['sizex'], $img['sizey']);
  19.     imagecopyresampled($idest, $isrc, 0, 0, 0, 0, $img['sizex'], $img['sizey'], $size[0], $size[1]);
  20.     imagejpeg($idest, $dest, $quality);
  21.     imagedestroy($isrc);
  22.     imagedestroy($idest);
  23.     return true;
  24. }
  25.  
  26. if (Img_Resize('./old.png', './uplfile/NEW.jpg', 400, 100)) {
  27.     echo 'resize';
  28. }
  29. else {
  30.     echo 'no resize';
  31. }
tsoi85 Отправлено: 05 Августа, 2011 - 19:23:00 • Тема: Загрузка нескольких файлов на сервер • Форум: HTTP и PHP

Ответов: 44
Просмотров: 28342
foreach - Специальный цикл перебора массивов
$k - В данном случае ключ файла
$f - Значение массива
http://www.php.su/learnphp/cs/?cycles#foreach


PHP:
скопировать код в буфер обмена
  1. foreach($_FILES['file']['name'] as $k=>$f) {
  2.   if (!$_FILES['file']['error'][$k]) {
  3.     if (is_uploaded_file($_FILES['file']['tmp_name'][$k])) {
  4.       if (move_uploaded_file($_FILES['file']['tmp_name'][$k], "../img/cars/".$_FILES['file']['name'][$k])) {
  5.         echo 'Файл: '.$_FILES['file']['name'][$k].' загружен.<br />';
  6.       }
  7.     }
  8.   }
  9. }
  10. $img1 = $_FILES['file']['name'][0];
  11. $img2 = $_FILES['file']['name'][1];
tsoi85 Отправлено: 05 Августа, 2011 - 19:03:03 • Тема: Загрузка нескольких файлов на сервер • Форум: HTTP и PHP

Ответов: 44
Просмотров: 28342
PHP:
скопировать код в буфер обмена
  1. foreach($_FILES['file']['name'] as $k=>$f) {
  2.   if (!$_FILES['file']['error'][$k]) {
  3.     if (is_uploaded_file($_FILES['file']['tmp_name'][$k])) {
  4.       if (move_uploaded_file($_FILES['file']['tmp_name'][$k], "../img/cars/".$_FILES['file']['name'][$k])) {
  5.         echo 'Файл: '.$_FILES['file']['name'][$k].' загружен.<br />';
  6.       }
  7.     }
  8.   }
  9. }
tsoi85 Отправлено: 29 Июля, 2011 - 00:55:27 • Тема: Перевод байтов в мегобайты и так далее. • Форум: Вопросы новичков

Ответов: 35
Просмотров: 3460
LIME, Да, abs вернёт 730988544, затем её обработаем FBytes().
И получаем результат, который (697.13 MB), а истинный размер файла 3563978752 б (3.32 GB).
Логичнее вернуть 0, чем некорректный размер вводящий в большее заблуждение.
tsoi85 Отправлено: 29 Июля, 2011 - 00:31:46 • Тема: Перевод байтов в мегобайты и так далее. • Форум: Вопросы новичков

Ответов: 35
Просмотров: 3460
А если файл имеет размер 3563978752 б, (3.32 GB) и filesize возвращает -730988544 б, (после abs: 697.13 MB).
tsoi85 Отправлено: 28 Июля, 2011 - 22:34:33 • Тема: Перевод байтов в мегобайты и так далее. • Форум: Вопросы новичков

Ответов: 35
Просмотров: 3460
LIME пишет:
tsoi85 не могли бы вы пояснить зачем эта строка?

Если $bytes по каким либо причинам, отрицательное число.
tsoi85 Отправлено: 28 Июля, 2011 - 18:10:31 • Тема: Перевод байтов в мегобайты и так далее. • Форум: Вопросы новичков

Ответов: 35
Просмотров: 3460
PHP:
скопировать код в буфер обмена
  1.  
  2. #$precision количество цифр после точки 1.23 MB
  3. function FBytes($bytes, $precision = 2) {
  4.     $units = array('B', 'KB', 'MB', 'GB', 'TB');
  5.     $bytes = max($bytes, 0);
  6.     $pow = floor(($bytes?log($bytes):0)/log(1024));
  7.     $pow = min($pow, count($units)-1);
  8.     $bytes /= pow(1024, $pow);
  9.     return round($bytes, $precision).' '.$units[$pow];
  10. }
  11.  
  12. $filename = 'files/Setup.exe';
  13. echo FBytes(filesize($filename));
tsoi85 Отправлено: 28 Июля, 2011 - 12:14:51 • Тема: обтекание картинки в CSS • Форум: HTML, Дизайн & CSS

Ответов: 3
Просмотров: 1313
Конечно есть, http://htmlbook[dot]ru/css/float
tsoi85 Отправлено: 27 Июля, 2011 - 18:01:44 • Тема: догрузить данные с аякс • Форум: HTTP и PHP

Ответов: 7
Просмотров: 3023
broshurkaplus, лучше сразу приучать себя делать по правилам. Улыбка
http://htmlbook[dot]ru/html/attr/id
tsoi85 Отправлено: 27 Июля, 2011 - 17:09:18 • Тема: догрузить данные с аякс • Форум: HTTP и PHP

Ответов: 7
Просмотров: 3023
Как-то так:
CODE (html):
скопировать код в буфер обмена
  1. <a class=a href="javascript:;" onclick="loadContent('.$ggg.'?id='.$id.', '.$id.')">всего ответов</a>


А также, у Вас идентификатор «id» div'а в который подгружается страница, содержит только цифры:


Идентификатор должен обязательно начинаться с латинского символа и может содержать в себе латинские буквы (A–Z, a–z), цифры (0–9), символ дефиса (-) и подчеркивания (_). Использование русских букв в именах идентификатора недопустимо.
tsoi85 Отправлено: 26 Июля, 2011 - 09:18:12 • Тема: Перемещение файлов по категориям • Форум: Напишите за меня, пожалуйста

Ответов: 3
Просмотров: 54
Небольшой пример:

PHP:
скопировать код в буфер обмена
  1. # Папка с файлами
  2. $old_dir = './old_dir/';
  3.  
  4. # Папка в которую перемещаем
  5. $new_dir = './new_dir/';
  6.  
  7. $dir=opendir($old_dir);
  8. $i=1;
  9. while (false !== ($file = readdir($dir))) {
  10.     if (is_file($old_dir.$file) && $file[0] != '.') {
  11.         if (!file_exists($new_dir.$file[0])) {
  12.             #Создаём папку по первому символу от названия
  13.            mkdir($new_dir.$file[0], 0755); #0777
  14.        }
  15.         rename($old_dir.$file, $new_dir.$file[0].'/'.$file);
  16.         echo $file.'<br />';
  17.     }
  18.     #Ограничиваем за один раз
  19.    if ($i==500) break;
  20.     $i++;
  21. }
  22. closedir($dir);
tsoi85 Отправлено: 14 Июля, 2011 - 16:49:01 • Тема: как отцентровать все (div'ы и контент вообще) другим DIV'ом? • Форум: HTML, Дизайн & CSS

Ответов: 6
Просмотров: 1835
margin: auto; - для div'ов которые требуется вывести по центру.

Пример:
Спойлер (Отобразить)


http://htmlbook[dot]ru/html/attr/id - атрибут id
tsoi85 Отправлено: 09 Июля, 2011 - 16:28:42 • Тема: Графика в php • Форум: Графика в PHP

Ответов: 35
Просмотров: 8474
LIME, да, вероятно поэтому была ошибка.

Расчитывает sprintf('%d',$score/$max*100) в пикселях от максимальной ширины блока (100px).
Процентная запись (sprintf('%02.1f',$score/$max*100)) выводится в title
tsoi85 Отправлено: 09 Июля, 2011 - 16:07:05 • Тема: Графика в php • Форум: Графика в PHP

Ответов: 35
Просмотров: 8474
LIME, спасибо, поправил Улыбка

Страниц (5): « 1 2 [3] 4 5 »
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB