Перейти к контенту
  • 0

Код безопасности при регистрации


22157

Вопрос

Не нашел похожей темы...

При регистрации нужно вводить код безопасности, предназначенный от регистрации спам-ботов, вместо картинок с цифрами ничего не выводится, просто чисел не видно, gd стоит (галерея работает), ставлю обработку не через гд а обычно все равно не работает, пока без кода... в чем может быть проблема ?

2.1.7

Ссылка на комментарий
Поделиться на других сайтах

Рекомендуемые сообщения

  • 0

Да с хостингом нет проблем, серваки собственные, php 4 стоит+gd

На одном серваке не работает, на втором работает хорошо....

Просто интересно так какова конфигуряция php должна быть для корректной работы ?

Ссылка на комментарий
Поделиться на других сайтах

  • 0

Если не отображается надо смотреть

а) создается ли временный код

б) получается ли временный код

в) если он получается то почему не выводятся цифры

Ссылка на комментарий
Поделиться на других сайтах

  • 0
Если не отображается надо смотреть

а) создается ли временный код

б) получается ли временный код

в) если он получается то почему не выводятся цифры

а) да создается

б) да

в) права стоят на фаилы цифр 777, но почему не отображаются не понимаю :D Вот и хочу узнать что отвечает за их вывод ?

 

Вместо картинок написано code bit и включите эту картинку, нажимая на картинку любую открыть вижу на белом листе GIF89a

Ссылка на комментарий
Поделиться на других сайтах

  • 0
Если не отображается надо смотреть

а) создается ли временный код

б) получается ли временный код

в) если он получается то почему не выводятся цифры

Можно чуть-чуть по-подробнее как это делается? :D

Ссылка на комментарий
Поделиться на других сайтах

  • 0
function show_gif_img()

 

в ipsclass.php

 

как выглядит?

 

/source/ipsclass.php

 

По поиску function show_gif_img() не найдено ничего , по поиску function show_gif_img, найдена строка:

 

function show_gif_img($this_number="")
{
	$numbers = array( 0 => 'R0lGODlhCAANAJEAAAAAAP////4BAgAAACH5BAQUAP8ALAAAAAAIAA0AAAIUDH5hiKsOnmqSPjtT1ZdnnjCUqBQAOw==',
					  1 => 'R0lGODlhCAANAJEAAAAAAP////4BAgAAACH5BAQUAP8ALAAAAAAIAA0AAAIUjAEWyMqoXIprRkjxtZJWrz3iCBQAOw==',
					  2 => 'R0lGODlhCAANAJEAAAAAAP////4BAgAAACH5BAQUAP8ALAAAAAAIAA0AAAIUDH5hiKubnpPzRQvoVbvyrDHiWAAAOw==',
					  3 => 'R0lGODlhCAANAJEAAAAAAP////4BAgAAACH5BAQUAP8ALAAAAAAIAA0AAAIVDH5hiKbaHgRyUZtmlPtlfnnMiGUFADs=',
					  4 => 'R0lGODlhCAANAJEAAAAAAP////4BAgAAACH5BAQUAP8ALAAAAAAIAA0AAAIVjAN5mLDtjFJMRjpj1Rv6v1SHN0IFADs=',
					  5 => 'R0lGODlhCAANAJEAAAAAAP////4BAgAAACH5BAQUAP8ALAAAAAAIAA0AAAIUhA+Bpxn/DITL1SRjnps63l1M9RQAOw==',
					  6 => 'R0lGODlhCAANAJEAAAAAAP////4BAgAAACH5BAQUAP8ALAAAAAAIAA0AAAIVjIEYyWwH3lNyrQTbnVh2Tl3N5wQFADs=',
					  7 => 'R0lGODlhCAANAJEAAAAAAP////4BAgAAACH5BAQUAP8ALAAAAAAIAA0AAAIUhI9pwbztAAwP1napnFnzbYEYWAAAOw==',
					  8 => 'R0lGODlhCAANAJEAAAAAAP////4BAgAAACH5BAQUAP8ALAAAAAAIAA0AAAIVDH5hiKubHgSPWXoxVUxC33FZZCkFADs=',
					  9 => 'R0lGODlhCAANAJEAAAAAAP////4BAgAAACH5BAQUAP8ALAAAAAAIAA0AAAIVDA6hyJabnnISnsnybXdS73hcZlUFADs=',
					);

	@header("Content-Type: image/gif");
	echo base64_decode($numbers[ $this_number ]);
	exit();
}

 

Чуть ниже вижу приведен код вывода кода, через модуль пхп GD

 

	/*-------------------------------------------------------------------------*/
//
// Show GD created security image...
//
/*-------------------------------------------------------------------------*/

/**
* Show anti-spam bot GD image numbers
*
* @param	string	Number string
* @return	void
* @since	2.0
*/
function show_gd_img($content="")
{
	$content = '  '. preg_replace( "/(\w)/", "\\1 ", $content ) .' ';

	@header("Content-Type: image/jpeg");

	$tmp_x = 140;
	$tmp_y = 20;

	$image_x = 210;
	$image_y = 65;

	$circles = 3;

	if ( $this->vars['gd_version'] == 1 )
	{
		$tmp = imagecreate($tmp_x, $tmp_y);
		$im  = imagecreate($image_x, $image_y);
	}
	else
	{
		$tmp = imagecreatetruecolor($tmp_x, $tmp_y);
		$im  = imagecreatetruecolor($image_x, $image_y);
	}

	$white  = ImageColorAllocate($tmp, 255, 255, 255);
	$black  = ImageColorAllocate($tmp, 0, 0, 0);
	$grey   = ImageColorAllocate($tmp, 210, 210, 210 );

	imagefill($tmp, 0, 0, $white);

	for ( $i = 1; $i <= $circles; $i++ )
	{
		$values = array(
						0  => rand(0, $tmp_x - 10),
						1  => rand(0, $tmp_y - 3),
						2  => rand(0, $tmp_x - 10),
						3  => rand(0, $tmp_y - 3),
						4  => rand(0, $tmp_x - 10),
						5  => rand(0, $tmp_y - 3),
						6  => rand(0, $tmp_x - 10),
						7  => rand(0, $tmp_y - 3),
						8  => rand(0, $tmp_x - 10),
						9  => rand(0, $tmp_y - 3),
						10 => rand(0, $tmp_x - 10),
						11 => rand(0, $tmp_y - 3),
					 );

		$randomcolor = imagecolorallocate( $tmp, rand(100,255), rand(100,255),rand(100,255) );
		imagefilledpolygon($tmp, $values, 6, $randomcolor );
	}

	imagestring($tmp, 5, 0, 2, $content, $black);

Ссылка на комментарий
Поделиться на других сайтах

  • 0
А кто мне модет предоставить доступ к фтп форума?

к сожалению пока не могу, поробую решить этот вопрос с владельцами сервера

Ссылка на комментарий
Поделиться на других сайтах

  • 0

Можно это поподробней описать как ставить на версию 2.2.0

 

И вот тут мы начинаем радоваться, что IPB построен на классах, и тому что разработчики создали удачное ядро со вспомогательной функциональностью, а главное удачно раскидали все это по классам.

Итого работа по миграции состояла лишь в подключении класса и небольшом рефакторинге его методов и аттрибутов. В результате для генерации уникального кода:
$regid = $this->captcha->captcha_create_session();

проверки введенного значения с кодом:

if ( !$this->captcha->captcha_validate(trim(addslashes($ibforums->input['regid'])), $ibforums->input['reg_code']) ) {
$this->lost_password_start('err_reg_code');
return;
}

и, наконец, генерации картинки:
$this->captcha->captcha_show_image( trim(addslashes($ibforums->input['rc'])) );

Ссылка на комментарий
Поделиться на других сайтах

  • 0
на версии 2.2.0 оно уже стоит.

 

Там стоит код с буквами и цифрами, а нужен код решения уравнения =))

Ссылка на комментарий
Поделиться на других сайтах

Присоединиться к обсуждению

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

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить на вопрос...

×   Вы вставили отформатированный текст.   Удалить форматирование

  Допустимо не более 75 смайлов.

×   Ваша ссылка была автоматически заменена на медиа-контент.   Отображать как ссылку

×   Ваши публикации восстановлены.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Зарузка...
×
×
  • Создать...

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.