[php] Новичкам: задаем вопросы

Discussion in 'PHP' started by _Great_, 26 May 2007.

Thread Status:
Not open for further replies.
  1. preda1or

    preda1or Member

    Joined:
    27 Oct 2008
    Messages:
    167
    Likes Received:
    96
    Reputations:
    6
    в последних версиях php - нет
     
    2 people like this.
  2. mff

    mff Elder - Старейшина

    Joined:
    12 Mar 2008
    Messages:
    2,074
    Likes Received:
    701
    Reputations:
    227
    MaTpOc http://forum.asechka.ru/showthread.php?t=97129&highlight=flisis
     
    1 person likes this.
  3. AlexV

    AlexV Elder - Старейшина

    Joined:
    29 Feb 2008
    Messages:
    173
    Likes Received:
    550
    Reputations:
    81
    Прошу подсказать что неверно. В общем на сайте при выборе рисунка и нажатии кнопки, этот рисунок должен закидываться в папку, код вот такой на обработке, но почему то ничего не происходит, чисто белый экран.

    Code:
    <?php
    $uploaddir=$_SERVER["DOCUMENT_ROOT"]."/uploads/";
    $uploadfile = $uploaddir . basename($_FILES['userfile']['name']);
    
    if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) {
      
    echo "Спасибо! Файл был успешно загружен, мы  свяжемся с вами";
    
    
    }
    ?>
    Добавил: Все уже неактуально. Разобрался с атрибутами.
     
    #7603 AlexV, 17 Jan 2009
    Last edited: 17 Jan 2009
    4 people like this.
  4. m0nsieur

    m0nsieur Elder - Старейшина

    Joined:
    8 Apr 2008
    Messages:
    223
    Likes Received:
    69
    Reputations:
    10
    Thx Gifts ушел править свои старые скрипты =)
     
    #7604 m0nsieur, 17 Jan 2009
    Last edited: 17 Jan 2009
  5. Gifts

    Gifts Green member

    Joined:
    25 Apr 2008
    Messages:
    2,494
    Likes Received:
    807
    Reputations:
    614
    m0nsieur Читайте ман - move_uploaded_file - сам проверяет, является ли этот файл загруженным на сервер
     
    _________________________
    1 person likes this.
  6. geforce

    geforce Member

    Joined:
    21 Aug 2008
    Messages:
    300
    Likes Received:
    26
    Reputations:
    -5
    Где взять скрипт обрезки изображения???
     
  7. mff

    mff Elder - Старейшина

    Joined:
    12 Mar 2008
    Messages:
    2,074
    Likes Received:
    701
    Reputations:
    227
    geforce, держи, разберёшся что к чему:

    PHP:
    $image "../images/photos/".$img_upload_name;
    $new_width новая ширина (относительно неё происходит ресайз)
    $target "newimg.jpg";

    function 
    resize($image$new_width$target) {
        if (
    file_exists($image))
        { 
            
    $image ImageCreateFromJPEG($image);
            
    $width Imagesx($image);
            
    $height Imagesy($image);
            
    $new_height = ($new_width $height) / $width ;
            
    $thumb ImageCreateTrueColor($new_width,$new_height);
            
    ImageCopyResampled($thumb$image0,0,0,0$new_width$new_height$width$height);
            
    ImageJPEG($thumb$target100);
            
    Imagedestroy($image);
        } 
    }
    resize($image167'../images/photos/small.jpg');
    resize($image436'../images/photos/medium.jpg');
    }
     
    1 person likes this.
  8. geforce

    geforce Member

    Joined:
    21 Aug 2008
    Messages:
    300
    Likes Received:
    26
    Reputations:
    -5
    НУЖЕН НЕМНОГО ДРУГОЙ СКРИПТ
    НАДА ЧТОБ НА КАРТИНКЕ МОЖНО БЫЛО ВЫДЕЛИТЬ ОПРЕДЕЛЁНУЮ ЧАСТЬ ПРИ НАЖАТИИ ДАЛЕЕ ОНА ОБРЕЗАЛАСЬ
     
  9. mff

    mff Elder - Старейшина

    Joined:
    12 Mar 2008
    Messages:
    2,074
    Likes Received:
    701
    Reputations:
    227
    хз, тут уже аяксом попахивает... Я тебе пример дал именно функции обрезки, а как там выделяться оно должно - хз... Переделай... :cool:
     
  10. Pashkela

    Pashkela Динозавр

    Joined:
    10 Jan 2008
    Messages:
    2,750
    Likes Received:
    1,044
    Reputations:
    339
    Я конечно дико извнияюсь, но это функция именно ресайза, как по английски и написано, обрезка - несколько другая операция
     
  11. mff

    mff Elder - Старейшина

    Joined:
    12 Mar 2008
    Messages:
    2,074
    Likes Received:
    701
    Reputations:
    227
    Pashkela, возможно...
     
  12. [Raz0r]

    [Raz0r] Elder - Старейшина

    Joined:
    25 Feb 2007
    Messages:
    425
    Likes Received:
    484
    Reputations:
    295
    http://letmegooglethatforyou.com/?q=php+snippet+crop+image

    Для jQuery есть специальный плагин - imgAreaSelect (http://odyniec.net/projects/imgareaselect/)
     
    #7612 [Raz0r], 18 Jan 2009
    Last edited: 18 Jan 2009
    1 person likes this.
  13. prescott

    prescott Elder - Старейшина

    Joined:
    28 Jul 2008
    Messages:
    132
    Likes Received:
    43
    Reputations:
    5
    1) если ты нажмешь на картинке и начнешь тянуть мышь для выделения некоторые браузеры будут тянуть полупрозрачную картинку за курсором. В качестве выхода вижу вычислять джаваскриптом при загрузке размер картинки и заменять ее на див, с бэкгроундом являющимся этой картинкой.
    2) Дальше проще, на onmousedown сохраняешь координаты курсора x1,y1, на onmouseup сохраняешь координаты x2,y2.
    3) Далее вычисляешь положение самого дива на странице, пусть координаты его верхнего левого угла будут x3,y3. Получаешь координаты обрезки на картинке путем вычисления разницы координат.
    4) Через DOM меняешь свойство бэкгроунд на <script.php?x1=111&y1=111&x2=111&y2=111>.
    5) Пишешь пхп скрипт который возвращает в браузер обрезанную картинку по координатам исходя из гет параметров.
    Дерзай =)
     
    #7613 prescott, 18 Jan 2009
    Last edited: 18 Jan 2009
  14. Pashkela

    Pashkela Динозавр

    Joined:
    10 Jan 2008
    Messages:
    2,750
    Likes Received:
    1,044
    Reputations:
    339
    http://us3.php.net/manual/en/function.imagecopy.php

    прямо там наглядный ПЕРВЫЙ ЖЕ пример с логотипом php и представлен:

    ДО

    [​IMG]

    ПОСЛЕ

    [​IMG]

    PHP:
    <?php
    // Create image instances
    $src imagecreatefromgif('php.gif');
    $dest imagecreatetruecolor(8040);

    // Copy
    imagecopy($dest$src0020138040);

    // Output and free from memory
    header('Content-Type: image/gif');
    imagegif($dest);

    imagedestroy($dest);
    imagedestroy($src);
    ?>
     
  15. geforce

    geforce Member

    Joined:
    21 Aug 2008
    Messages:
    300
    Likes Received:
    26
    Reputations:
    -5
    Размер выделения известен это размер стандартного аватара в форуме его нада как бы перетаскивать по изоброжению! А нет не у кого такого скрипта просто я в джава не варю!???
     
    1 person likes this.
  16. prescott

    prescott Elder - Старейшина

    Joined:
    28 Jul 2008
    Messages:
    132
    Likes Received:
    43
    Reputations:
    5
    Если не варишь в джава тем более стоит разобраться, добьешься реализации сам - удвоишь а то и утроишь свои познания. Задавай вопросы в чем загвоздка тут тебе точно помогут =)
     
    1 person likes this.
  17. astrologer

    astrologer Elder - Старейшина

    Joined:
    30 Aug 2007
    Messages:
    837
    Likes Received:
    267
    Reputations:
    59
    http://marqueetool.net/examples/send-cropped-image-coordinates-to-the-server/
     
    1 person likes this.
  18. geforce

    geforce Member

    Joined:
    21 Aug 2008
    Messages:
    300
    Likes Received:
    26
    Reputations:
    -5
    Как я понял нада на джава написать скрипт перемещения квадрата (див) и передовать переменые с кординатами е в пхп код для обрезки! Так?

    Допустим я знаю как осуществить в пхп обрезку!
    С чего начать в джава?
     
    1 person likes this.
  19. prescott

    prescott Elder - Старейшина

    Joined:
    28 Jul 2008
    Messages:
    132
    Likes Received:
    43
    Reputations:
    5
    Создай полупрозрачную png картинку нужного размера. Вставь ее на страницу со свойством display: none. На событие onload вешаешь функцию которая позиционирует ее поверх картинки. Типа так:

    HTML:
    <html>
    <head>
    <script>
    
    function gebi(el) {
    return document.getElementById(el);
    }
    
    // функция вычисляет координаты объекта
    function pos(el)
    {
       var r = { x: el.offsetLeft, y: el.offsetTop };
       if (el.offsetParent)
       {
           var tmp = pos(el.offsetParent);
           r.x += tmp.x;
           r.y += tmp.y;
       }
       return r;
    }
    
    // устанавливаем координаты для пнг картинки
    function setPos() {
    
    // вычислим координаты нашей авы
    var p=pos(gebi('kn'));
    
    // переместим картинку на эти же координаты
    gebi('kv').style.left=p.x;
    gebi('kv').style.top=p.y;
    
    // показываем ее
    gebi('kv').style.display='block';
    }
    </script>
    </head>
    <body onLoad='setPos();'>
    <img src='img/avafon.png' style='display: none; position: absolute; top: 0px; left: 0px;' id='kv'>
    Content Content Content Content<br>
    Content Content Content Content<img src='img/ava.jpg' id='kn'>
    </body>
    </html>
    
    Далее на событие onclick картинки вешаешь функцию, перемещающую пнг относительно курсора. Как перемещать картинки ты уже знаешь =)

    http://rapidshare.com/files/185136799/www.rar.html - пример с картинками
     
    #7619 prescott, 18 Jan 2009
    Last edited: 18 Jan 2009
  20. geforce

    geforce Member

    Joined:
    21 Aug 2008
    Messages:
    300
    Likes Received:
    26
    Reputations:
    -5
    А как зделать чтоб avafon.png можно было перетаскивать по ava.jpg ??
    И как добавить прозвачность в скрипте avafon???
     
Thread Status:
Not open for further replies.