I have a site music at http://music.abc.com and i will install forum phpbb3 at http://music.abc.com/forum/
AT music.abc.com (i call music site) i have a data to store user like media_user with this field:
Code: Select all
CREATE TABLE IF NOT EXISTS `media_user` (
`user_id` int(5) NOT NULL auto_increment,
`user_name` varchar(50) NOT NULL default '',
`user_diachi` varchar(500) NOT NULL,
`user_password` varchar(50) NOT NULL default '',
`user_new_password` varchar(15) NOT NULL default '',
`user_email` varchar(100) default NULL,
`user_sex` char(1) NOT NULL default '0',
`user_hide_info` varchar(32) NOT NULL default '',
`user_regdate` varchar(12) NOT NULL default '',
`user_level` tinyint(1) NOT NULL default '1',
`user_playlist_id` varchar(20) NOT NULL default '',
`user_online` tinyint(1) NOT NULL default '0',
`user_ip` varchar(15) NOT NULL default '',
`user_identifier` varchar(32) default NULL,
`user_timeout` varchar(12) default NULL,
`user_lastvisit` varchar(12) NOT NULL default '',
`user_ten` varchar(255) NOT NULL,
PRIMARY KEY (`user_id`)
Code: Select all
<?php
if (!defined('IN_MEDIA')) die("Hacking attempt");
if ($isLoggedIn) {
echo "<center><b>Bạn đã đăng nhập</b></center>";
exit();
}
if ($_POST['reg']) {
$warn = '';
$name = m_htmlchars(stripslashes(trim(urldecode($_POST['name']))));
$diachi = m_htmlchars(stripslashes(trim(urldecode($_POST['diachi']))));
$ten = m_htmlchars(stripslashes(trim(urldecode($_POST['ten']))));
$pwd = md5(stripslashes(urldecode($_POST['pwd'])));
$email = stripslashes(trim(urldecode($_POST['email'])));
$sec_num = $_POST['sec_num'];
$sex = ($_POST['sex'])?$_POST['sex']:1;
//doc chuoi ngau nhien
$f = fopen("verify.txt", "r");
$f1 = fread($f, 6);
if ($f1 != $sec_num) $warn .= "Xin loi, Ma bao mat ban nhap vao khong dung !<br>";
fclose($f);
if ($mysql->num_rows($mysql->query("SELECT user_id FROM ".$tb_prefix."user WHERE user_name = '".$name."'"))) $warn .= "<b><font color=red>Tài khoản này đã có người sử dụng</font></b><br>";
if (!m_check_email($email)) $warn .= "<b><font color=red>Email không hợp lệ</font></b><br>";
elseif ($mysql->num_rows($mysql->query("SELECT user_id FROM ".$tb_prefix."user WHERE user_email = '".$email."'"))) $warn .= "<b><font color=red>Email này đã có người sử dụng</font></b><br>";
if ($warn) echo "<b>Lỗi</b> : <br>".$warn;
else {
$playlist_id = m_random_str(20);
// Cai cu con de lai $mysql->query("INSERT INTO ".$tb_prefix."user (user_name,user_diachi,user_ten,user_password,user_email,user_sex,user_regdate,user_playlist_id) VALUES ('".$name."','".$diachi."','".$ten."','".$pwd."','".$email."','".$sex."',NOW(),'".$playlist_id."')");
//End o day
if (m_get_config('sendmailconfirm'))
{
$xacnhan = rand(0,10000000000000);
$web_email = m_get_config('web_email');
$title = $webTitle." : Kich hoat tai khoan";
$header = m_build_mail_header($email,$web_email);
$content = "Chao <b>".$name."</b>,<br>".
"De su dung het cac chuc nang cua tinhcaviet.com, ban phai kich hoat tai khoan cua minh. Hay nhan vao lien ket xac nhan ben duoi de hoan thanh. Lien ket xac nhan cua ban la: <a href='".$mainURL."/#Confirm,".$xacnhan."'> <b>".$mainURL."/#Confirm,".$xacnhan."</b></a> <br><br><br>".
"Cam on ban da ghe tham va tham gia www.tinhcaviet.com .<br><br><br>Ban Quản trị Tình Ca Việt <br><br>".
"<a href='".$mainURL."'><b>".$webTitle."</b></a>";
if ( mail($email,$title,$content,$header) ) {
$mysql->query("INSERT INTO ".$tb_prefix."user (user_name,user_diachi,user_ten,user_password,user_email,user_sex,user_regdate,user_playlist_id,user_confirm) VALUES ('".$name."','".$diachi."','".$ten."','".$pwd."','".$email."','".$sex."',NOW(),'".$playlist_id."','".$xacnhan."')");
}
else
{
echo 'Host không hỗ trợ gửi Mail';
}
}
else
{
$mysql->query("UPDATE ".$tb_prefix."online SET reg_check = '' WHERE ip ='".$ip."'");
$mysql->query("INSERT INTO ".$tb_prefix."user (user_name,user_password,user_email,user_sex,user_regdate,user_playlist_id,user_activated) VALUES ('".$name."','".$pwd."','".$email."','".$sex."',NOW(),'".$playlist_id."','1')");
}
}
exit();
}
$main = $tpl->get_tpl('register');
$tpl->parse_tpl($main);
?>
Code: Select all
<?php
if (!defined('IN_MEDIA')) die("Hacking attempt");
if ($isLoggedIn) {
echo "<center><b>Bạn đã đăng nhập</b></center>";
exit();
}
if ($_POST['login']) {
$warn = '';
$name = m_htmlchars(stripslashes(trim(urldecode($_POST['name']))));
$pwd = stripslashes(urldecode($_POST['pwd']));
$q = $mysql->query("SELECT user_id FROM ".$tb_prefix."user WHERE user_name = '".$name."' AND user_password = '".md5($pwd)."'");
if (!$mysql->num_rows($q)) {
if (m_check_random_str($pwd,15))
$q = $mysql->query("SELECT user_id FROM ".$tb_prefix."user WHERE user_name = '".$name."' AND (user_new_password = '".$pwd."' AND user_new_password != '')");
if (!$mysql->num_rows($q))
$warn .= "Username hoặc mật khẩu không chính xác<br>";
}
if ($warn) echo "<b>Lỗi</b> : <br>".$warn;
else {
$r = $mysql->fetch_array($q);
$_SESSION['user_id'] = $r['user_id'];
$salt = 'Nothing';
$identifier = md5($salt.IP.$r['user_id'].$salt);
$timeout = NOW + 2*60*60;
m_setcookie('USER', $identifier);
$mysql->query("DELETE FROM ".$tb_prefix."online WHERE sid = '".SID."'");
$mysql->query("UPDATE ".$tb_prefix."user SET user_online = 1, user_ip = '".IP."', user_identifier = '".$identifier."', user_timeout = '".$timeout."' WHERE user_id = '".$r['user_id']."'");
}
exit();
}
else {
$main = $tpl->get_tpl('login');
$tpl->parse_tpl($main);
}
?>
Code: Select all
<?php
if (!defined('IN_MEDIA')) die("Hacking attempt");
if (!$isLoggedIn) {
echo "<center><b>Bạn chưa đăng nhập</b></center>";
}
else {
$mysql->query("UPDATE ".$tb_prefix."user SET user_lastvisit = '".NOW."', user_identifier = '', user_timeout = '', user_ip = '', user_online = 0 WHERE user_id = '".$_SESSION['user_id']."'");
m_setcookie('INFO', '', false);
session_destroy();
}
?>
Code: Select all
function m_checkLogin(){
global $mysql, $tb_prefix;
$time_exit = NOW;
$mysql->query("UPDATE ".$tb_prefix."user SET user_lastvisit = user_timeout, user_identifier = '', user_timeout = '', user_ip = '', user_online = 0 WHERE user_timeout < ".$time_exit." AND user_timeout > 0");
if ($_COOKIE['USER']) {
$identifier = $_COOKIE['USER'];
$q = $mysql->query("SELECT user_identifier, user_id FROM ".$tb_prefix."user WHERE user_online = 1 AND user_ip = '".IP."' AND user_identifier = '".$identifier."'");
if ($mysql->num_rows($q)) {
$r = $mysql->fetch_array($q);
$_SESSION['user_id'] = $r['user_id'];
$mysql->query("UPDATE ".$tb_prefix."user SET user_timeout = ".(NOW + 2*60*60)." WHERE user_id = '".$_SESSION['user_id']."'");
$return = true;
}
else $return = false;
}
else $return = false;
if ($return == false) {
if ($_COOKIE['INFO']) m_setcookie('INFO', '', false);
unset($_SESSION['user_id']);
}
return $return;
}
Code: Select all
include('includes/functions.php');
include('includes/class_template.php');
$tpl =& new Template;
$isLoggedIn = m_checkLogin();
if ($_POST['reg']) {
include('register.php');
exit();
}
elseif ($_POST['login']) {
include('login.php');
exit();
}
elseif ($_POST['change_info'] && $isLoggedIn) {
include('user.php');
exit();
}
elseif ($_POST['forgot'] && $_POST['email']) {
include('user.php');
exit();
}
elseif ($_POST['reloadPlaylist']) {
include('playlist.php');
exit();
}
$value = array();
if ($url) {
$value = split(',',$url);
if (($value[0] != 'Download') && $_GET['url']) exit();
}
else {
// ONLINE
if (!$isLoggedIn) {
$num = $mysql->num_rows($mysql->query("SELECT sid FROM ".$tb_prefix."online WHERE sid = '".SID."'"));
if ($num == 0) $mysql->query("INSERT INTO ".$tb_prefix."online (timestamp, sid, ip) VALUES ('".NOW."', '".SID."', '".IP."')");
else $mysql->query("UPDATE ".$tb_prefix."online SET timestamp='".NOW."',ip='".IP."' WHERE sid='".SID."'");
}
// TEMPLATE
if (!$_COOKIE['MEDIA_TPL'] || $reset_tpl) {
$default_tpl = m_get_config('default_tpl');
m_setcookie('MEDIA_TPL', $default_tpl);
$_COOKIE['MEDIA_TPL'] = $default_tpl;
if ($reset_tpl) m_refresh();
}
if ($change_tpl) {
if ($tpl_name)
m_setcookie('MEDIA_TPL', $tpl_name);
m_refresh();
}
$month = date('m',NOW);
$current_month = m_get_config('current_month');
if ($month != $current_month) {
$mysql->query("UPDATE ".$tb_prefix."data SET m_viewed_month = 0, m_downloaded_month = 0");
$mysql->query("UPDATE ".$tb_prefix."config SET config_value = ".$month." WHERE config_name = 'current_month'");
}
}
if ($value[0] == 'Broken' && is_numeric($value[1])) {
$id = (int)$value[1];
$mysql->query("UPDATE ".$tb_prefix."data SET m_is_broken = 1 WHERE m_id = ".$id);
die(1);
}
//active nick to download
if (($value[0] == 'Download') && is_numeric($value[1]) && $value[2]) {
if (!$isLoggedIn && m_get_config('must_login_to_download')) {
header("Content-Disposition: attachment; filename = Ban_chua_dang_nhap.txt");
echo "Login to download music";
exit();
}
if (m_get_config('must_login_to_download'))
{
$userid = $_SESSION['user_id'];
if ($userid)
{
$tinhcavietnam = $mysql->query("SELECT * FROM ".$tb_prefix."user WHERE user_id IN (".$userid.")");
while ($tinhca = $mysql->fetch_array($tinhcavietnam)) {
$uractivated = $tinhca['user_activated'];
}
if ($isLoggedIn && !$uractivated) {
header("Content-Disposition: attachment; filename = Ban_chua_kich_hoat_tai_khoan.txt");
echo "Active members to download music";
exit();
}
}
}
//end here
if ($value[2] == m_encode($value[1])) {
$r = $mysql->fetch_array($mysql->query("SELECT m_url, m_is_local, m_is_local2 FROM ".$tb_prefix."data WHERE m_id = '".$value[1]."'"));
if ($r) {
$mysql->query("UPDATE ".$tb_prefix."data SET m_downloaded = m_downloaded + 1, m_downloaded_month = m_downloaded_month + 1 WHERE m_id = '".$value[1]."'");
if ($r['m_is_local'] == 1) {
$url = ($r['m_is_local'])?$mediaFolder.'/'.$r['m_url']:$r['m_url'];
}
else {$url = ($r['m_is_local2'])?$mediaFolder2.'/'.$r['m_url']:$r['m_url'];
}
header("Location: ".$url);
}
exit();
}
else { die('copyright here'); }
}
// -------------------
if (!in_array($value[0],array('Register','Login','Forgot_Password','Change_Info'))) {
$current_page =& $_SESSION['current_page'];
if ($current_page != $url) $_SESSION['last_page'] = $current_page;
$current_page = $url;
}
$_SESSION['current_tpl'] = $_COOKIE['MEDIA_TPL'];
....
if (in_array($value[0],array('List','Home','Top_Download','Top_Play')))
include('list.php');
///////////////
elseif ($value[0] == 'Play_Playlist')
include('playlist.php');
elseif ($value[0] == 'Register')
include('register.php');
elseif ($value[0] == 'Login')
include('login.php');
elseif ($value[0] == 'Logout')
include('logout.php');
elseif ($value[0] == 'Gift')
include('gift_receive.php');
elseif ($value[0] == 'Finishreg')
include('finishreg.php');
elseif (in_array($value[0],array('User','List_User','Change_Info','Forgot_Password','Confirm')))
include('user.php');
elseif ($value[0] == 'Play' && is_numeric($value[1])) {
if (!$isLoggedIn && m_get_config('must_login_to_play')) {
die("<b><center>Login to listen</center></b>");
}
if (m_get_config('must_login_to_play'))
{
$userid = $_SESSION['user_id'];
if ($userid)
{
$tinhcavietnam = $mysql->query("SELECT * FROM ".$tb_prefix."user WHERE user_id IN (".$userid.")");
while ($tinhca = $mysql->fetch_array($tinhcavietnam)) {
$uractivated = $tinhca['user_activated'];
}
if ($isLoggedIn && !$uractivated) {
die("<b><center>Login to listen</center></b>");
}
}
}
$q = $mysql->query("SELECT * FROM ".$tb_prefix."data WHERE m_id = '$value[1]'");
if (!$mysql->num_rows($q)) {
die("<center><b>This is invalid music id.</b></center>");
}
Now i want use this in phpbb3 forum user data. Prefix of data forum is phpbb_
and prefix for music data is media_
I think register.php file of music will dont user and only use phpbb3 forum register and when music site login, it will check at phpbb_users in phpbb forum data. Help me to creat a login file and check_login_funtions.
Please help me. Thank in advance