Vlastní registrace i do phpBB

19. Prosinec 2008

Pokud potřebujete převést stávající databázi uživatelů do tabulky uživatelů patřící phpBB a umožnit tak pouze jedno přihlašování pro vaše stránky i fórum, pak si přečtěte tento návod: Hromadné přidávání uživatelů ze souboru.

Aby vše proběhlo hladce, použijeme funkci add_user(), kterou používá phpBB pro registraci nových uživatelů.

Záleží na nastavení phpBB, co je vyžadováno při registraci, ale nám nyní stračí jen jméno, heslo a email. Tyto data jsou v našem příkladě uložena v proměnných. $_GET["username"], $_GET["pwd"], $_GET["email"].

Všechna data musíme samozřejmě před vložením zkontrolovat a ošetřit (není součástí tohoto článku). Myslím tím maximální délku nicku, minimální délku hesla, složitost hesla, zda je email platný a funkční atp…

Základ php souboru s registrací bude vypadat asi takto:

// phpBB inicializace
define('IN_PHPBB', true); // základní kostanta
$phpbb_root_path = "./forum/"; // cesta k fóru
$phpEx = "php"; // koncovky php souborů


include($phpbb_root_path . "common." . $phpEx);
include($phpbb_root_path . "includes/functions_user." . $phpEx);
$arrTime = getdate();
$unixTime = strtotime($arrTime["year"] . “-” . $arrTime["mon"] . “-” . $arrTime["mday"] . ” ” . $arrTime["hours"] . “:” . $arrTime["minutes"] . “:” . $arrTime["seconds"]);


$user_row = array(
'username'              => $_GET["username"],
‘user_password’         => phpbb_hash($_GET["pwd"]),
‘user_email’            => $_GET["email"],
‘group_id’              => (int) 2,
‘user_timezone’         => (float) 0,
‘user_dst’              => “0″,
‘user_lang’             => “cs”,
‘user_type’             => 0,
‘user_actkey’           => “”,
‘user_ip’               => $_SERVER["REMOTE_HOST"],
‘user_regdate’          => $unixTime,
‘user_inactive_reason’  => 0,
‘user_inactive_time’    => 0
);


$user_id = user_add($user_row);

Na konci získáváme uživatelovo id ($user_id) pro párování s tabulkami, které jsme vytvořili a používáme my.

Hlavní zdroj: Automated member registration for phpBB

Dále:

Rubriky: phpBB | Štítky: ,

1 komentář

  1. Schmutzka

    Velmi nápomocné návody, děkuji :-)

Napsat komentář