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:
Código:
{
$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.