Заливаем картинку, лепим водяной знак..

Seredniy
На сайте с 17.03.2008
Offline
251
688

Может что уже 6 утра, а я еще не ложился, но голова не соображает. Если я загружаю картинку на сервер, потом на эту же картинку "леплю" водяной знак, пытаюсь сохранить(ну что бы новая картинка с водяным знаком заменила обычную) с тем же именем, но не получается.... вместо того что бы заменить файл оно дает "левое" имя новому файлу. что делать?))


if($_FILES["filename"]["size"] > 1024*3*1024)
{
echo ("Размер файла превышает три мегабайта");
exit;
}
if(copy($_FILES["filename"]["tmp_name"],
"./".$_FILES["filename"]["name"]))
{
echo("Файл успешно загружен <br>");
echo("Характеристики файла: <br>");
echo("Имя файла: ");
echo($_FILES["filename"]["name"]);
echo("<br>Размер файла: ");
echo($_FILES["filename"]["size"]);
echo("<br>Каталог для загрузки: ");
echo($_FILES["filename"]["tmp_name"]);
echo("<br>Тип файла: ");
echo($_FILES["filename"]["type"]);
} else {
echo("Ошибка загрузки файла");
}
$img=$_FILES["filename"]["name"];

// Добавляем водяной знак, что б ему...
$logo = "znak.png";

$logo_w_h = getimagesize($logo);
$getimg_w_h = getimagesize($img);

$logo=imagecreatefrompng($logo);
$img=imagecreatefromjpeg($img);

imagecopy($img,
$logo,
$getimg_w_h[0]-$logo_w_h[0],
$getimg_w_h[1]-$logo_w_h[1],
0,
0,
$logo_w_h[0],
$logo_w_h[1]);

imagejpeg($img, "$img.jpg","100");

imagedestroy($img);
imagedestroy($logo);

Seredniy добавил 09.01.2009 в 07:05

или вообще, может можно как-то на лету добавить знак? что бы не заморачиваться...

Wordpress и другие CMS: правки, настройка, верстка и натяжка шаблонов, разработка сайтов "под ключ" (/ru/forum/1008050)
ПЗ
На сайте с 10.10.2006
Offline
92
#1

$img=$_FILES["filename"]["tmp_name"];

Автомобили в России (http://www.autobb.ru/). Спецтехника BIZ - вся строительная, дорожная, коммунальная техника (http://www.spectehnika.biz/) и другая спецтехника в одном месте.
Polimer
На сайте с 01.09.2006
Offline
84
#2

$img=$_FILES["filename"]["name"]; //здесь оно еще имя (строка)

$img=imagecreatefromjpeg($img); //здесь оно уже не имя, не строка

imagejpeg($img, "$img.jpg","100"); //потому здесь и набор символов

правильнее было бы:

$img_name=$_FILES["filename"]["name"];

$img=imagecreatefromjpeg($img_name);

imagejpeg($img, "$img_name.jpg","100");

Программные решения для бизнеса. (http://frontsoft.ru/) На заказ. Дорого.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий