{% else-1 %}
Обновить
* Тема закрыта!
1. [автор] (25 фев 2017, 14:40) [0/0] [0] [спам] [под]

И так. Есть картинка сайт/papka/pic/1.jpg
заходим и видим что она там есть.
Но картинку эту выводит файл img.php
/papka/img.php?name=1.jpg
и там маленький белый квадратик.
Добавлено 25.02.17 в 14:41:55:
<?php
$level = 0;
$folder_level = '';
while (!file_exists($folder_level . 'favicon.ico') && $level < 5) {
$folder_level .= '../';
++$level;
}
unset($level);
define('F', $folder_level);
if (isset($_GET['name'])) {$name = $_GET['name'];}else{$name = "";}
if (isset($_GET['prev'])) {$prev = $_GET['prev'];}else{$prev = 240;}
if (isset($_GET['dir'])) {$dir = $_GET['dir'];}else{$dir = 'group/pic/';}
if (preg_match('|^[a-z0-9_-/]+$|i', $dir) && preg_match('|^[a-z0-9_.-]+$|i', $name)) {
if (file_exists(F . $dir . '/' . $name)) {
$getim = getimagesize(F . $dir . '/' . $name);
if ($getim[2] == 1 || $getim[2] == 2 || $getim[2] == 3) {
$width = $getim[0];
$height = $getim[1];

if ($width > $prev || $height > $prev) {
$x_ratio = $prev / $width;
$y_ratio = $prev / $height;

if (($x_ratio * $height) < $prev) {
$tn_height = ceil($x_ratio * $height);
$tn_width = $prev;
} else {
$tn_width = ceil($y_ratio * $width);
$tn_height = $prev;
}
// -------------------------------//
if ($getim[2] == 2) {
$img = imagecreatefromjpeg(F . $dir . '/' . $name);
$dst = imagecreatetruecolor($tn_width, $tn_height);
imagecopyresampled($dst, $img, 0, 0, 0, 0, $tn_width, $tn_height, $width, $height);

header('content-type: image/jpeg');
header('Content-Disposition: filename="' . $name . '"');
imagejpeg ($dst, null, 75);
imagedestroy($img);
imagedestroy($dst);
}
// -------------------------------//
if ($getim[2] == 1) {
$img = imagecreatefromgif(F . $dir . '/' . $name);
$dst = imagecreatetruecolor($tn_width, $tn_height);

$colorTransparent = imagecolortransparent($img);
imagepalettecopy($img, $dst);
imagefill($dst, 0, 0, $colorTransparent);
imagecolortransparent($dst, $colorTransparent);
imagetruecolortopalette($dst, true, 256);

imagecopyresampled($dst, $img, 0, 0, 0, 0, $tn_width, $tn_height, $width, $height);

header('content-type: image/gif');
header('Content-Disposition: filename="' . $name . '"');
imagegif ($dst);
imagedestroy($img);
imagedestroy($dst);
}
// -------------------------------//
if ($getim[2] == 3) {
$img = imagecreatefrompng(F . $dir . '/' . $name);
$dst = imagecreatetruecolor($tn_width, $tn_height);

$colorTransparent = imagecolortransparent($img);
imagepalettecopy($img, $dst);
imagefill($dst, 0, 0, $colorTransparent);
imagecolortransparent($dst, $colorTransparent);
imagetruecolortopalette($dst, true, 256);

imagecopyresampled($dst, $img, 0, 0, 0, 0, $tn_width, $tn_height, $width, $height);

header('content-type: image/png');
header('Content-Disposition: filename="' . $name . '"');
imagepng ($dst);
imagedestroy($img);
imagedestroy($dst);
}
} else {
$filename = file_get_contents(F . $dir . '/' . $name);
header('Content-type: ' . $getim['mime']);
header('Content-Disposition: filename="' . $name . '"');
header('Content-Length: ' . strlen($filename));
echo $filename;
}
}
}
}

exit;

?>

2.
Netc * 0.13
(25 фев 2017, 14:46) [0/0] [0] [спам] [под]

RiDer™, ссылку на картинку в лс мне скинь.

3. [автор] (25 фев 2017, 15:14) [0/0] [0] [спам] [под]

Netc, денвер
Добавлено 25.02.17 в 15:15:20:
Шапку отредачил,не правильно записанной было

4.
Netc * 0.13
(25 фев 2017, 15:15) [0/0] [0] [спам] [под]

Тогда 25-ую строку смени вот на этот код
[code]<?php

if (preg_match('#^[a-z0-9-_/]+$#i', $dir) && preg_match('#^[a-z0-9_.-]+$#i', $name)) {

?>[/code]

5. [автор] (25 фев 2017, 15:23) [0/0] [0] [спам] [под]

Netc, Не помогло

6.
Netc * 0.13
(25 фев 2017, 15:26) [0/0] [0] [спам] [под]

RiDer™, я у себя на опен сервер проверил, всё работает, картинка выводится корректно.

7. [автор] (25 фев 2017, 15:29) [0/0] [0] [спам] [под]

Netc, Хм..а в чем тогда может быть причина?

8.
Netc * 0.13
(25 фев 2017, 15:31) [0/0] [0] [спам] [под]

RiDer™, в путях, либо ты не верно заменил строку. Скинь файл вывода изображений в ЛС.

9. [автор] (25 фев 2017, 17:18) [0/0] [0] [спам] [под]

Тема закрыта для обсуждения! *

10. (25 фев 2017, 17:46) [0/0] [0] [спам] [под]

Тему перенёс из подраздела Программирование в подраздел Бесполезные темы!*

  • 1 из 1
Подписаны: 0
Скачать тему | Файлы темы | Фильтр сообщений