Не выводится изображение капчи

12
S
На сайте с 27.01.2010
Offline
45
1419

Добрый день, на сайте Не выводится изображение капчи. Какие то ощибки в скрипте не могу понять,подскажите плиз....

скрипт капчи

<?php

/** Вывод изображения каптчи
* @author [DM]
* @copyright 2011
* @url http://netvam.ru
*/
@ini_set('display_errors', 0);
@error_reporting(E_ALL & ~E_NOTICE);
//-------------------------------------------------------------------------------------
session_start();
//-------------------------------------------------------------------------------------
class w_graph_elements {

private function hex_to_rgb($hex, $def) {
if(substr($hex,0,1) == '#') $hex = substr($hex,1);
if(strlen($hex) == 3) { $hex = substr($hex,0,1).substr($hex,0,1).
substr($hex,1,1).substr($hex,1,1).substr($hex,2,1).substr($hex,2,1); }
$rgb = $def;
if(strlen($hex) != 6) { return $rgb; }
$rgb['R'] = hexdec(substr($hex,0,2));
$rgb['G'] = hexdec(substr($hex,2,2));
$rgb['B'] = hexdec(substr($hex,4,2));
print_r ($rgb);
return $rgb;
}//hex_to_rgb

function PaintImage($bordercolor, $bgcolor, $linescolor, $textcolor, $width=61, $height=20, $size=4) {
$bordercolor = @$this->hex_to_rgb($bordercolor, array('R'=>195,'G'=>204,'B'=>206));
$bgcolor = @$this->hex_to_rgb($bgcolor, array('R'=>241,'G'=>243,'B'=>244));
$linescolor = @$this->hex_to_rgb($linescolor, array('R'=>194,'G'=>194,'B'=>133));
$textcolor = @$this->hex_to_rgb($textcolor, array('R'=>4,'G'=>82,'B'=>148));
$text = 'error';
if (isset($_GET['tim']) && ($_GET['tim'] != '')) {
$text = ($_SESSION["sendnumb".$_GET['tim']] != '') ? $_SESSION["sendnumb".$_GET['tim']] : $text;
}
$width = (!$width || !@is_numeric($width)) ? 61 : $width;
$height = (!$height || !@is_numeric($height) || ($height < 10)) ? 20 : $height;
$size = (!$size || !@is_numeric($size)) ? 4 : $size;
$img = imagecreate($width, $height);//create inage
@imagecolorallocate($img, $bgcolor['R'], $bgcolor['G'] ,$bgcolor['B']);
$rectcolor = imagecolorallocate($img, $bordercolor['R'], $bordercolor['G'] ,$bordercolor['B']);
@imagerectangle($img, 0, 0, $width-1, $height-1, $rectcolor); //rect act
$textcolor = imagecolorallocate($img, $textcolor['R'], $textcolor['G'] ,$textcolor['B']);
$textcolor_sub = imagecolorallocate($img, $linescolor['R'], $linescolor['G'] ,$linescolor['B']);
for ($i=3; $i<=$width-2; $i+=3) {
@imageline($img, $i, 3, $i, $height-4, $textcolor_sub);//lines paint
}
$min_y = 5;
$max_y = ($height - $min_y * 2) - imagefontheight($size);
$x = 3;
$x_step = @imagefontwidth($size);
for ($i=0; $i<=strlen($text)-1; $i++) {
$ch = $text[$i];
$y = rand($min_y, $max_y);
@imagechar($img, $size, $x, $y, $ch, $textcolor);
$x+=$x_step;
if ($x > $width - $x_step) { break; }
}
//@imagestring($img, 3, 5, 3, $text, $textcolor);//paint code
@imagepng($img); //out
@imagedestroy($img); //free
}//PaintImage

}//w_graph_elements
//-------------------------------------------------------------------------------------
$gr = new w_graph_elements();
$gr->PaintImage($_GET['br'], $_GET['bg'], $_GET['ln'], $_GET['tx'], $_GET['w'], $_GET['h'], $_GET['s']);
//-------------------------------------------------------------------------------------
/* Copyright (с) 2011 netvam.ru */
?>
png capcha_cr.png
LEOnidUKG
На сайте с 25.11.2006
Offline
1774
#1

А там PNG...

ну как минимум не вижу:

header("Content-Type: image/x-png");

А ещё как вы выводите в картинку то?

✅ Мой Телеграм канал по SEO, оптимизации сайтов и серверов: https://t.me/leonidukgLIVE ✅ Качественное и рабочее размещение SEO статей СНГ и Бурж: https://getmanylinks.ru/ ✅ Настройка и оптимизация серверов https://getmanyspeed.ru/
S
На сайте с 27.01.2010
Offline
45
#2

вот вывод капчи в register.tpl

<td align="left" valign="bottom" style="width: 66px">

<img class="captcha_img" src="{$smarty.const.W_SITEPATH}img/cptch.php?tim=q&ln=DDDDDD&br=FFFFFF&bg=FFFFFF&h=23">

</td>

сайт youfrog.ru/register

LEOnidUKG
На сайте с 25.11.2006
Offline
1774
#3

из код php уберите:

print_r ($rgb);

R
На сайте с 18.12.2009
Offline
92
#4

URL ващей картинки:

http://youfrog.ru/img/cptch.php?tim=q&ln=DDDDDD&br=FFFFFF&bg=FFFFFF&h=23

Выше Вам уже ответили.

S
На сайте с 27.01.2010
Offline
45
#5

убрал print_r ($rgb); все тоже ...

---------- Добавлено 19.08.2013 в 14:43 ----------

путь прописал полный

http://youfrog.ru/img/cptch.php?tim=q&ln=DDDDDD&br=FFFFFF&bg=FFFFFF&h=23

не помогает... сильно закалдованая капча😡

R
На сайте с 18.12.2009
Offline
92
#6
LEOnidUKG:

ну как минимум не вижу:
header("Content-Type: image/x-png");

Не наводит на мысли?

S
На сайте с 27.01.2010
Offline
45
#7

оно то понятно, только куда его пристроить не пойму

header("Content-Type: image/x-png");

R
На сайте с 18.12.2009
Offline
92
#8

До вывода информации на дисплей. В общем-то, можете в конце файла cptch.php прописать.

S
На сайте с 27.01.2010
Offline
45
#9

прописал в конце скрипта до закрывающего тега

header("Content-Type: image/x-png");

?>

теперь вот что выдает

png 2013-08-19_151107.png
IL
На сайте с 20.04.2007
Offline
435
#10

img class="captcha_img" src="/http://youfrog.ru/img/cptch.php?tim=q&ln=DDDDDD&br=FFFFFF&bg=FFFFFF&h=23">

* в изображении всё равно ошибка есть.

... :) Облачные серверы от RegRu - промокод 3F85-3D10-806D-7224 ( http://levik.info/regru )
12

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