Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> загрузка картинки, не получайтся 
:(
    Опции темы
rthsobakas
Дата 20.7.2009, 19:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Awaiting Authorisation
Сообщений: 562
Регистрация: 20.9.2007

Репутация: нет
Всего: -1



это типо скрипт отправки  картинки на сервак.

Код

<?php
include("../include/begin.php");
if ($_FILES['pix']['tmp_name']=="none")
  echo "фаил не загружен или размер больше 1мб";    
   else{
    $des=$_SERVER['DOCUMENT_ROOT'].$folder.'/upload/images/'.$_FILES['pix']['name'];
    $tmp=$_FILES['pix']['tmp_name'];
    move_uploaded_file($tmp,$des);
    echo $des.'<br>';
    echo $tmp.'<br>';
    echo "<a href= 'http://".$nameserver.'/upload/images/'.$_FILES['pix']['name']."'> http://".$nameserver.'/upload/images/'.$_FILES['pix']['name']." </a><br> Фаил загружен";
   }
?> 



А это форма отправки

Код

<form enctype='multipart/form-data' method='post' action='filesend.php'>
<input type='hidden' name='MAX_FILE_SIZE' value='10000000'>
Обзор:<input type='file' name='pix' size='60'>
 <input type='submit' name='upload' value='Отправить'>
</form>


результат такой

Цитата

/srv/www/sabakas/upload/images/29062009309.jpg
/tmp/phpvFf11Y
http://localhost/sabakas/upload/images/29062009309.jpg 
Фаил загружен

но ничерта нет в папке! Вопрос забыл написать. В чем касяк?

Это сообщение отредактировал(а) rthsobakas - 20.7.2009, 20:03
PM   Вверх
Veve
Дата 20.7.2009, 20:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 291
Регистрация: 1.1.2005
Где: Латвия, Рига

Репутация: 3
Всего: 13



Проверил у себя, код работает. Картинка в папке появляется. 
PM MAIL ICQ Skype MSN   Вверх
rthsobakas
Дата 20.7.2009, 20:28 (ссылка)    | (голосов:4) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Awaiting Authorisation
Сообщений: 562
Регистрация: 20.9.2007

Репутация: нет
Всего: -1



заработало. Тупые права доступа. В линуксе так вот всегда
PM   Вверх
rthsobakas
Дата 20.7.2009, 20:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Awaiting Authorisation
Сообщений: 562
Регистрация: 20.9.2007

Репутация: нет
Всего: -1



А вот ещё вопрос тогда, чтобы не зря. 
Код

<?php
require("../libs/lib.php");
include("../include/begin.php");
if ($_FILES['pix']['tmp_name']=="none")
  echo "фаил не загружен или размер больше 1мб";    
   else{
    $des=$_SERVER['DOCUMENT_ROOT'].$folder.'/upload/images/'.$_FILES['pix']['name'];
    $tmp=$_FILES['pix']['tmp_name'];
    move_uploaded_file($tmp,$des);
    echo $des.'<br>';
    echo $tmp.'<br>';
    echo "<a href= 'http://".$nameserver.'/upload/images/'.$_FILES['pix']['name']."'> http://".$nameserver.'/upload/images/'.$_FILES['pix']['name']." </a><br> Фаил загружен<br>";
    resize ($des, $size, $quality);
   }
?>


Добавил новую ф-ию.  Для изменения размера. То есть когда на сервак заливаю  картинку images и images2(для мелких) - 2 папки.


Код

// $filename string = 'img.jpg' - путь картинки
// $percent string = 300 - ширина уменьшенной копии картинки
// $quality string = 0-100 - качество изображения
function resize ($filename, $size = 300, $quality = 85){
    $dir = $_SERVER['DOCUMENT_ROOT'].$folder.'/upload/images2/'; // Адрес директории для сохранения картинки
    $ext = strtolower(strrchr(basename($filename), ".")); // Получаем формат уменьшаемого изображения
    $extentions = array('.jpg', '.gif', '.png', '.bmp'); // Определяем формат уменьшаемой картинки
    if (in_array($ext, $extentions)) {           
        $percent = $size; // Ширина изображения миниатюры
        list($width, $height) = getimagesize($fileaname); // Возвращает ширину и высоту картинки
        $newheight = $height * $percent;
        $newwidth = $newheight / $width; 
        $thumb = imagecreatetruecolor($percent, $newwidth);
        switch ($ext) {
            case '.jpg': $source = @imagecreatefromjpeg($filename); break;
            case '.gif': $source = @imagecreatefromgif($filename); break;
            case '.png': $source = @imagecreatefrompng($filename); break;
            case '.bmp': $source = @imagecreatefromwbmp($filename); break;
        }
        // php уменьшение изображения
        imagecopyresized($thumb, $source, 0, 0, 0, 0, $percent, $newwidth, $width, $height);
        // Создаем изображение
        switch ($ext) {
            case '.jpg': imagejpeg($thumb, $dir . $filename, $quality); // Для JPEG картинок
                         break;
            case '.gif': imagegif($thumb, $dir . $filename); // Для GIF картинки
                         break;
            case '.png': imagepng($thumb, $dir . $filename, $quality); // Для PNG картинок
                         break;
            case '.bmp': imagewbmp($thumb, $dir . $filename); // Для BMP картинки
                         break;
            }
    } else return 'typeError';
    @imagedestroy($thumb);
    @imagedestroy($source);
    return $filename;

} 


в папку images2  не заливается картинка. Тут права проставил. Дело в коде наверно. В чем касяк?
PM   Вверх
Photon
Дата 21.7.2009, 04:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Злобный программер
**


Профиль
Группа: Участник
Сообщений: 282
Регистрация: 27.2.2009
Где: Таганрог

Репутация: 10
Всего: 12



Код

list($width, $height) = getimagesize($fileaname);


Если был скопирован реальный код, то внимательно смотрим на имя переменной, переданной функции getimagesize


--------------------
With best regards..
PM MAIL ICQ Skype GTalk Jabber   Вверх
rthsobakas
Дата 21.7.2009, 09:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Awaiting Authorisation
Сообщений: 562
Регистрация: 20.9.2007

Репутация: нет
Всего: -1



Photon, ничего не изменилось.
Эта фи-я подключена require (../lib/lib.php).

Код

function resize ($filename, $size = 300, $quality = 85){
    $dir = $_SERVER['DOCUMENT_ROOT'].$folder.'/upload/images2/'; // Адрес директории для сохранения картинки
    $ext = strtolower(strrchr(basename($filename), ".")); // Получаем формат уменьшаемого изображения
    $extentions = array('.jpg', '.gif', '.png', '.bmp'); // Определяем формат уменьшаемой картинки
    if (in_array($ext, $extentions)) {           
        $percent = $size; // Ширина изображения миниатюры
        list($width, $height) = getimagesize($filename); // Возвращает ширину и высоту картинки
        $newheight = $height * $percent;
        $newwidth = $newheight / $width; 
        $thumb = imagecreatetruecolor($percent, $newwidth);
        switch ($ext) {
            case '.jpg': $source = @imagecreatefromjpeg($filename); break;
            case '.gif': $source = @imagecreatefromgif($filename); break;
            case '.png': $source = @imagecreatefrompng($filename); break;
            case '.bmp': $source = @imagecreatefromwbmp($filename); break;
        }
        // php уменьшение изображения
        imagecopyresized($thumb, $source, 0, 0, 0, 0, $percent, $newwidth, $width, $height);
        // Создаем изображение
        switch ($ext) {
            case '.jpg': imagejpeg($thumb, $dir . $filename, $quality); // Для JPEG картинок
                         break;
            case '.gif': imagegif($thumb, $dir . $filename); // Для GIF картинки
                         break;
            case '.png': imagepng($thumb, $dir . $filename, $quality); // Для PNG картинок
                         break;
            case '.bmp': imagewbmp($thumb, $dir . $filename); // Для BMP картинки
                         break;
            }
    } else return 'typeError';
    @imagedestroy($thumb);
    @imagedestroy($source);
 echo $dir.'<br>jjjjjjjjjjjjjjjjjjjjj';
echo $filename.'<br>kkkkkkkkkkkkkkkkkkkkk';

    return $filename;

} 

Добавил строки для вывода на экран в этой ф-ии. Но они не вывелись. 
результат такой

Цитата

/srv/www/sabakas/upload/images/29062009323.jpg
/tmp/phpkX0wWy
http://localhost/sabakas/upload/images/29062009323.jpg 
Фаил загружен


Может че то в коде(ф-ию скачал из инета)?
PM   Вверх
lelik133
Дата 21.7.2009, 09:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Awaiting Authorisation
Сообщений: 517
Регистрация: 5.2.2003
Где: Москва

Репутация: 5
Всего: 14



уберите везде @ и настройте вывод ошибок error_reporting(E_ALL)  
PM ICQ   Вверх
rthsobakas
Дата 21.7.2009, 10:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Awaiting Authorisation
Сообщений: 562
Регистрация: 20.9.2007

Репутация: нет
Всего: -1



Цитата

Fatal error: Call to undefined function imagecreatetruecolor() in

ошибка вылезла такая. Надо какую то библиотеку ставить дополнительно?
PM   Вверх
lelik133
Дата 21.7.2009, 10:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Awaiting Authorisation
Сообщений: 517
Регистрация: 5.2.2003
Где: Москва

Репутация: 5
Всего: 14



конечно, gd. посмотрите в phpinfo() есть она или нет.
PM ICQ   Вверх
rthsobakas
Дата 21.7.2009, 11:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Awaiting Authorisation
Сообщений: 562
Регистрация: 20.9.2007

Репутация: нет
Всего: -1



ухх поставил... Но на самом деле ф-ия карява немного.
Например
Тут надо указать тока его имя фаила
Код

imagewbmp($thumb, $dir . $filename); // Для BMP картинки


А тут  полный путь к фаилу
Код

list($width, $height) = getimagesize($filename);

 Но в процессе выполнения ф-ии $filename не меняется. => Ошибки  и ворнинги.

А в этой ГД библиотеке есть Может такая которая изменяется  размер картинки? То есть аналог предыдущей(что выше). Чтобы кода меньше было.

Это сообщение отредактировал(а) rthsobakas - 21.7.2009, 11:12
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0542 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.