[help]Регистрация пользователя в ipb или в какие таблицы идет запись?

Статус
В этой теме нельзя размещать новые ответы.

lopotorius

Создатель
Регистрация
8 Апр 2008
Сообщения
31
Реакции
2
В общем такая проблема.Хочу сделать общую регистрацию сайта с ипб.ПРоблема в том что я не знаю в какие таблицы форума ipb идет запись данных.
ibf_members - туда точно идет
ibf_members_extra
а еще куда?
и еще вопрос-в какой таблице и в каком ряде хранятся пароли пользователей?\
версия форума предположим 2.1.*
и еще вопрос-в какой таблице какое поле отвечает за активацию аккаунта
 
и еще вопрос-в какой таблице и в каком ряде хранятся пароли пользователей?\
пас идет в таком виде md5+salt и лежит он в members_converge(это на моем 2,3,5, как у тебя не знаю) столбцы converge_pass_hash и converge_pass_salt
 
как понять hash+salt?непонятно.Можете на примере пхпкода показать как это?это типа юзер вводит пароль и происходит проверка
if (md5($password)==md5($hash+$salt)){
пароль верный}else{
пароль неверный}
так?

Добавлено через 2 минуты
Лучше если вы покажете мне какие сикуэл запросы нужно провести что бы пользователь с логином test паролем pass
мейлом max@mail.ru стал зарегенным и активированным на форуме..Думаю вы поняли меня.Помогите пожалуйста.Много времени у вас это не отнимет

Добавлено через 11 минут
еще вопрос-как мне получить этот hash и salt из пароля который я введу пре регистрации?там как то мд5 режется?

Добавлено через 18 минут
ДАже я лучше так сделаю.Выложу кусок кода из скрипта регистрации который у меня юзера добавляет.Если видите явные ошибки то укажите на них пожалуйста
PHP:
//Creating ipb user
$qid="SELECT MAX(id) AS id FROM ibf_members";
$byby=MYSQL_QUERY($qid); 
$row=mysql_fetch_row($byby);
    $id=$row[0]+1;
$urip = getenv("REMOTE_ADDR");
$pass=md5($password);
$query = "INSERT INTO ibf_members(id,name,mgroup,email,ip_address, member_login_key) VALUES('$id', '$login', '3', '$email', '$urip', '$pass')";
$result = MYSQL_QUERY($query);      			
$query = "INSERT INTO ibf_members_converge(converge_id,converge_email, converge_joined, converge_pass_hash, converge_pass_salt) VALUES('$id','$email','','$pass', '$]i~p',)";
$result = MYSQL_QUERY($query);
$query = "INSERT INTO ibf_members_extra(id) VALUES('$id')";
$result = MYSQL_QUERY($query);
 
Люди помогите.перекопал несколько интеграций но все равно генерация пароля работает неверно
========================
Версия ipb 2.3.5
========================
PHP:
//Creating ipb user
			$qid="SELECT MAX(id) AS id FROM ibf_members";
      $byby=MYSQL_QUERY($qid); 
      $row=mysql_fetch_row($byby);
      $id=$row[0]+1;
			$urip = getenv("REMOTE_ADDR");
			$login="mihas";
			$email="mihey@mail.ru";
			$password=md5('111111');	
			
      $table_prefix="ibf_";
			
      
       
                   
      function generate_auto_log_in_key($len=60) {
      $pass = generate_password_salt( 60 );
      return md5($pass);
      }
			
			

      
      function generate_password_salt($len = 5) {
       $salt = '';
		
        for ( $i = 0; $i < $len; $i++ )
      {
			$num   = rand(33, 126);
			
			if ( $num == '92' )
			{
				$num = 93;
			}
			
			$salt .= chr( $num );
      }
		
		return $salt;
      }
      
      function generate_compiled_passhash($salt, $md5_once_password) {
		return md5( md5( $salt ) . $md5_once_password );
	}
           
		
      $member_login_key = generate_auto_log_in_key();
      $forum_salt = generate_password_salt(5);
      $passhash = md5($password );
      #$passhash = generate_compiled_passhash( $forum_salt, $password );
      #$passhash = md5($hashpasswd );
      $forum_password=$passhash;
			$time = time();
			$key_exp = time() + 604800;
			$result = MYSQL_QUERY("INSERT INTO ".$table_prefix."members (id, name, mgroup, email, joined, language, member_login_key, members_display_name, allow_admin_mails, time_offset, hide_email, dst_in_use, members_l_username, member_login_key_expire) VALUES ($id, '$login', '3', '$email', '$time', 'ru', '$member_login_key',  '$login', '1', '3', '1', '1', '$login','$key_exp')");
      $result = MYSQL_QUERY("INSERT INTO ".$table_prefix."members_converge (converge_id, converge_email, converge_joined, converge_pass_hash, converge_pass_salt) VALUES ($id, '$email', '$time', '$forum_password', '$forum_salt')");
      $result = MYSQL_QUERY("INSERT INTO ".$table_prefix."member_extra (id) VALUES ($id)");
====================
Неправильно генерица прароль.Тут возможно нужно просто строки местами переставить или удалить и все заработает.Пожалуйста помогите
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху