K
K
Kirill Zhulin2017-03-02 23:28:21
PHP
Kirill Zhulin, 2017-03-02 23:28:21

Uploading an avatar to the site?

I can't understand what is the error in the implementation of uploading an avatar to the site for the user?
PLEASE, HELP! ANYONE)))
MYSQL -> db\table = users
column -> ava (where the name should be written in the table)
id(user) -> id_user(I have)
load.php :

<?php

if(empty($_FILES['filename']) && $_FILES['filename']['size'] > 1100*1100)
{
    print( '<span style="color:red;">Объем файла превышает 15 килобайт или файл не удалось принять!</span><br>');
}

elseif (is_uploaded_file($_FILES['filename']['tmp_name']))
{
    $imginfo = getimagesize(realpath($_FILES['filename']['tmp_name']));
    if ($imginfo[2] == '1' || $imginfo[2] == '2' || $imginfo[2] == '3')
    {
        if ($imginfo[0] == '1000' && $imginfo[1] == '1000')
        {
            if ($imginfo[2] == '1')
            {
                $im = imagecreatefromgif(realpath($_FILES['filename']['tmp_name']));
                $w = imagesx($im);
                $h = imagesy($im);
                $w_new=1000;
                $h_new=1000;
                $im_mini = imagecreate($w_new, $h_new);
                imagecopyresized($im_mini, $im, 0, 0, 0, 0, $w_new, $h_new, $w, $h);
                if ($im && $im_mini)
                {
                    imagejpeg($im, $_SERVER['DOCUMENT_ROOT'].'../ava/'.$_SESSION['id_user'].'.jpg', 90);
                    imagejpeg($im_mini, $_SERVER['DOCUMENT_ROOT'].'../avatars/mini_'.$_SESSION['id_user'].'.jpg', 90);
                    imagedestroy($im);
                    imagedestroy($im_mini);
                    $sql = mysql_query("UPDATE users SET ava='".$_SESSION['id_user'].".jpg' WHERE id='".$_SESSION['id_user']."'");
                    if ($sql)
                    {
                        print( '<span style="color:green;">Аватар успешно загружен!</span><br>');
                    }
                }
                else print( '<span style="color:red;">Загруженный вами файл не является изображением!</span><br>');

            }
            elseif ($imginfo[2] == '2')
            {
                $im = imagecreatefromjpeg(realpath($_FILES['filename']['tmp_name']));
                $w = imagesx($im);
                $h = imagesy($im);
                $w_new=1000;
                $h_new=1000;
                $im_mini = imagecreate($w_new, $h_new);
                imagecopyresized($im_mini, $im, 0, 0, 0, 0, $w_new, $h_new, $w, $h);
                if ($im && $im_mini)
                {
                    imagejpeg($im, $_SERVER['DOCUMENT_ROOT'].'../avatars/'.$_SESSION['id_user'].'.jpg', 90);
                    imagejpeg($im_mini, $_SERVER['DOCUMENT_ROOT'].'../avatars/mini_'.$_SESSION['id_user'].'.jpg', 90);
                    imagedestroy($im);
                    imagedestroy($im_mini);
                    $sql = mysql_query("UPDATE users SET ava='".$_SESSION['id_user'].".jpg' WHERE id='".$_SESSION['id_user']."'");
                    if ($sql)
                    {
                        print( '<span style="color:green;">Аватар успешно загружен!</span><br>');
                    }
                }
                else print( '<span style="color:red;">Загруженный вами файл не является изображением!</span><br>');

            }
            elseif ($imginfo[2] == '3')
            {
                $im = imagecreatefrompng(realpath($_FILES['filename']['tmp_name']));
                $w = imagesx($im);
                $h = imagesy($im);
                $w_new=1000;
                $h_new=1000;
                $im_mini = imagecreate($w_new, $h_new);
                imagecopyresized($im_mini, $im, 0, 0, 0, 0, $w_new, $h_new, $w, $h);
                if ($im && $im_mini)
                {
                    imagejpeg($im, $_SERVER['DOCUMENT_ROOT'].'../ava/'.$_SESSION['id_user'].'.jpg', 90);
                    imagejpeg($im_mini, $_SERVER['DOCUMENT_ROOT'].'../ava/mini_'.$_SESSION['id_user'].'.jpg', 90);
                    imagedestroy($im);
                    imagedestroy($im_mini);
                    $sql = mysql_query("UPDATE users SET ava='".$_SESSION['id_user'].".jpg' WHERE id='".$_SESSION['id_user']."'");
                    if ($sql)
                    {
                        print('<span style="color:green;">Аватар успешно загружен!</span><br>');
                    }
                }
                else print('<span style="color:red;">Загруженный вами файл не является изображением!</span><br>');
            }
        }
        else print('<span style="color:red;">Изображение должно иметь размеры 100x100!</span><br>');
    }
    else print('<span style="color:red;">Не верный тип файла!<br>Поддерживаемые типы: jpg, png</span><br>');
}
else print('<span style="color:red;">Возникла ошибка при загрузке изображения! Попробуйте снова.</span><br>'); 
?>

<form enctype="multipart/form-data" method="post" action="load.php">
                    <table>
                        <tr><td>Изображение</td><td><input name="filename" type="file" /></td></tr>
                        <tr align="center"><td colspan="2"><input type="submit" name="send" value="Загрузить" /></td></td></tr>
                    </table>
                </form>

Answer the question

In order to leave comments, you need to log in

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question