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

Отложенная регистрация, моментальная регистрация


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

Необходимость регистрации на разных ресурсах всего лишь ради того, чтобы оставить пару сообщений, просто задалбывает. OpenID - это конечно здорово, но далеко не у всех он есть.

 

В связи с этим возникла следующая идея: а почему бы нам регистрацию не отложить\ускорить? Суть в следующем..

 

1. Полностью разрешаем постинг для гостей.

2. В форму ответа добавляем поля:

  • Имя
  • Пароль (один раз, без звездочек)
  • email
  • Аватарка (форма загрузки)

3. Человек может заполнить только "Имя". При этом его имя запоминается в cookies, и его не нужно будет вводить повторно. На это имя записываются все оставленные человеком посты. Выглядит он при этом как обычный "Гость".

4. Человек может в любой момент заполнить "Пароль" (можно и сразу), и тут же стать полноценным пользователем. При этом все те посты, которые он написал до этого на правах "Гостя" подцепляются к свежесозданной учетной записи. Ничего не теряется.

5. Человек в любой момент может заполнить email и начать получать письма с форума. Может и никогда не заполнять.

6. Аватарку можно загрузить в любой момент. Даже гостю.

 

С минимальной защитой (не капча!), кол-во спама на форуме от таких модификаций не изменится. Даже наверняка наоборот сойдёт на нет. Дело в том, что спамерские программы расчитаны на обычную геморройную процедуру регистрации. Их нужно перенастраивать. Мало кто этим занимается на самом деле.

 

Может кто видел подобное? Или есть какие-то ценные мысли..

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

3. Человек может заполнить только "Имя". При этом его имя запоминается в cookies, и его не нужно будет вводить повторно. На это имя записываются все оставленные человеком посты. Выглядит он при этом как обычный "Гость".

Могут найтись "умники", которые утянут такие посты, захватив чужой ник подделкой куки. Надо думать, как сохранить за автором... Например, кроме куки сравнивать айпишники постов и регистрации.

 

 

4. Человек может в любой момент заполнить "Пароль" (можно и сразу), и тут же стать полноценным пользователем. При этом все те посты, которые он написал до этого на правах "Гостя" подцепляются к свежесозданной учетной записи. Ничего не теряется.

Вот это классная идея.

У меня разрешено писать гостям, и многие сначала пишут гостями, и лишь потом регистрируются.

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

Могут найтись "умники", которые утянут такие посты, захватив чужой ник подделкой куки. Надо думать, как сохранить за автором... Например, кроме куки сравнивать айпишники постов и регистрации.

С Ипами проблемно :D У многих динамические. Можно сделать сравнение хотя бы ОС и браузера.

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

Можно сделать сравнение хотя бы ОС и браузера.

Крайне мало.

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

куки - единственный вариант

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

посты также будут помечены этим ид

и если пользователь регится, и у него в куки есть этот ид, тогда подцепляются посты

таким образом, даже если он вводил разные имена, эти имена обновляются

 

если пользователь потерял эти куки с ид - не судьба

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

  • 4 недели спустя...

Сделал себе на "однушке" облегченную версию: гостевое имя запоминается в куках и предлагается при следующих постах в форуме и при регистрации.

 

Post.php

Перед

			// Make sure we have a "Guest" Name..

		if (!$ibforums->member['id'])
		{

добавил

			if(!$ibforums->member['id'])$std->my_setcookie('guest_name', $ibforums->input['UserName'], 1 );

 

Post.php (если используется форма быстрого ответа, то и в Topics.php)

Перед

		return $ibforums->member['id'] ? $this->html->nameField_reg() : $this->html->nameField_unreg( $ibforums->input['UserName'] );

добавил

		if( !$ibforums->input['UserName'] )$ibforums->input['UserName'] = $std->my_getcookie('guest_name');

 

Register.php

Перед

		$this->output	.= $this->html->ShowForm( array( 'TEXT'		=> $ibforums->lang['std_text'],
													  'RULES'	   => $ibforums->lang['click_wrap'],
													  'coppa_user'  => $coppa,
											 )	  );

добавил

		if( !$ibforums->input['UserName'] )$ibforums->input['UserName'] = $std->my_getcookie('guest_name');

проверять занятость имени поленился...

 

 

В объявления глобальных переменных функций добавил (где не было) $std

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

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

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

Гость
Ответить в этой теме...

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

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

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

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

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

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

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

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