[Ayuda]  Bridge con un cms "poco usual"
Buenas noches a todos: Soy nuevo por aquí, escribiendo me refiero, y la primera vez que lo hago es para hacer una consulta, ya que yo por mi mismo l...

Buenas noches a todos:

Soy nuevo por aquí, escribiendo me refiero, y la primera vez que lo hago es para hacer una consulta, ya que yo por mi mismo lo he dado por imposible he buscado mil formas y maneras para realizar esto, pero no lo consigo de ninguna manera, mi situación es la siguiente:

Estoy montando una comunidad de juegos la cual consta de una web con un cms llamado azer cms, (que o creo que nadie lo conocerá jeje) un foro que por supuesto es mybb (antes era phpbb) y un servidor de juegos, y el tema es el siguiente... los usuarios al crearse una cuenta en la web (en el dichoso azer cms) automaticamente les crea una cuenta en el servidor de juegos con los mismos datos, y antes al tener phpbb y dicho cms tener integración pues también la creaba en el foro, osea un 3 en 1 , el problema es que con mybb no tiene esa opción de integración, entonces he estado intentando dos cosas:

Primero he intentado modificar el "functions.php" del cms en cuestión que es donde tiene la integración con phpbb la he intentado modificar para mybb, pero no he sido capaz, incluso he creado dentro de db de mybb en la tabla de mybb_users las columnas que faltaban, pero no ahí manera al intentar ejecutar un registro se queda en blanco y no crea la cuenta ni en la web, ni en el foro ni en ningún sitio... a continuación pondré el fragmento de código que he creado, por si alguien me puede detectar los errores, igualmente entendería perfectamente qué a esto no se diera soporte, ya que no tiene que ver directamente con MyBB, pero por si acaso lo pongo:
    {
      $forum = $query("SELECT active, path FROM $db_s.forum_prop WHERE active='1' LIMIT 1")or die(mysql_error());
      $active = $num($forum);
      
      switch($active)
      {
      case 1:
        while($path = $array($forum))
        {
          $path = $path['path'];
        
        $pulldata = mysql_query("SELECT `account`.`username`, `mybb_users`.`username`, `mybb_users`.`username_clean` FROM `$db_a`.`account`, `$db_f`.`mybb_users` WHERE `account`.`username` = '$username' OR `mybb_users`.`username` = '$username' OR `mybb_users`.`username_clean` = '$username_clean'")or die(mysql_error());
        $pull = $row($pulldata);
        if($pull[0] == "$username" || $pull[1] == "$username"  || $pull[2] == "$username_clean")
        {
          return"The username '<font color=\"#90cf5d\">{$username}</font>' is already in use.";
        }
        else
        {
          define('IN_mybb', true);
        
          global $mybb_root_path, $phpEx, $user, $db, $config, $cache, $template;
        
          $mybb_root_path = "{$path}/";  // Your path here 
          $phpEx = substr(strrchr(__FILE__, '.'), 1); 
          include($mybb_root_path . 'index.' . $phpEx);

          // Start session management 
          $user->session_begin(); 
          $auth->acl($user->data); 
          $user->setup(); 

          require($mybb_root_path .'usercp.php'); 

          // Do a check if username is allready there, same for email, otherwhise a nasty error will occur 
          $user_row = array(
          'username'         => $username,
          'username_clean'   => $username,
          'user_password'      => mybb_hash($password),
          'user_pass_convert'   => 0,
          'user_email'      => strtolower($email),
          'user_email_hash'   => crc32(strtolower($email)) . strlen($email),
          'group_id'         => 2,
          'user_timezone' => '1.00', 
          'user_dst' => 0, 
          'user_lang' => 'en', 
          'user_type' => '0', 
          'user_actkey' => '', 
          'user_dateformat' => 'd M Y H:i', 
          'user_style' => 1, 
          'user_regdate' => time(),
          );
          $mybb_user_id = user_add($user_row);
          
          if($mybb_user_id == true)
          {
            //Encrypt Password With Salty Sha1
            $password = sha1(strtoupper($username) . ":" . strtoupper($password));
            $password = strtoupper($password);
        
            //Set Staff_Id
            $staff = rand(100000000, 900000000);
        
            //Creation Complete
            $sql = $query("INSERT INTO $db_a.account (username, sha_pass_hash, email, expansion, acp, staff_id) VALUES ('$username', '$password', '$email', '$expansion', '0', '$staff')")or die(mysql_error());
        
            //Print Success
            return'The account \'<font color="#90cf5d">'.$username.'</font>\' ha sido creada!<br/>
            Enlace de ayuda: <a href="?page=connect">Guia de conexion</a>';
          }
        }}
      break;
      case 0:
        $get_user = $query("SELECT username FROM $db_a.account WHERE username='$username'")or die(mysql_error());
        $got_user = $num($get_user);
      
        //Username Is Taken
        if($got_user == 1)
        {
          return"El nombre '<font color=\"#90cf5d\">{$username}</font>' ya esta en uso.";
        }
        else
        {
           //Encrypt Password With Salty Sha1
          $password = sha1(strtoupper($username) . ":" . strtoupper($password));
          $password = strtoupper($password);
        
          //Set Staff_Id
          $staff = rand(100000000, 900000000);
        
          //Creation Complete
          $sql = $query("INSERT INTO $db_a.account (username, sha_pass_hash, email, expansion, acp, staff_id) VALUES ('$username', '$password', '$email', '$expansion', '0', '$staff')")or die(mysql_error());
        
          //Print Success
          return'La cuenta \'<font color="#90cf5d">'.$username.'</font>\' Ha sido creada!<br/>
          Enlace de ayuda: <a href="?page=connect">Guia de conexion</a>';
        break;
        }
      } 
    }

Bien lo segundo que he intentado, y esto si que tiene que ver directamente con MyBB es hacerlo al reves, es decir que desde el foro de MyBB se registren y mande los datos de registro a la tabla de la otra base de datos (que es la misma para la web y el servidor de juegos) y así se les crease la cuenta en los otro lados directamente, pero tampoco he tenido éxito... lo que intento está por encima de mi nivel, totalmente, y eso que lo he intentado durante horas, días y semanas... asi que pido disculpas si es algo básico y mi ignorancia lo ha pasado por alto

Un saludo, y espero que alguien me pueda ayudar a solventar esto seria un respiro increible.
Última modificación: 16 Nov, 2012, 8:38 pm por BGodlike.
¿has intentado hacer que tu registro no use ninguno de los 3 registros predefinidos (cms,mybb,server)?

Me explico, crear un registro,login externo a estos sistemas y que mediante sentencias llames a los archivos de configuracion de cada sistema de registro.
Ejemplo con wordress y login externo:
http://www.mybb-es.com/hilo-wordpress-login-externo
Pues no, a decir verdad no lo he probado, porque ni siquiera sabía de tal hazaña jeje, igualmente voy a probarlo y reporto el resultado por aquí, gracias sahashi

EDIT: No sirve, porque en ese código del enlace que dejaste no se especifica nada sobre crear esa misma cuenta que haces desde el registro externo en las otras tablas con otros campos, osea no se especifica la conversion, entiendo por lo poco que sé que el código que se necesita debe contener algo así como una llamada mediante mysql SELECT para seleccionar la cuenta que has creado desde el registro externo y luego la siguiente parte del código sería algo así como un mysql INSERT INTO y ahí poner los distintos cases, para que meta el registro en cada uno de los sitios, o algo así

Resumiendo: basicamente mi pregunta simplificada es ¿Cómo puedo hacer que los usuarios que se creen el foro y se metan en la tabla Mybb_users en la base de datos del "forum", se manden a la tabla accounts de la base de datos "auth"?
Última modificación: 17 Nov, 2012, 5:00 am por BGodlike.
Colaboradores
sahashi
This forum uses Lukasz Tkacz MyBB addons.