كود PHP:
<?php
//------------------------------------------------------------------------------
//------------------------------------------------------------------------------
// #################################################################### ||
// # # ||
// # MySmartBB Version 1.1.2 # ||
// # http://www.MySmartBB.com # ||
// # Copyright (c) 2005 by MySmartBB team # ||
// # # ||
// # filename : register.php # ||
// # register new users # ||
// # # ||
// #################################################################### ||
//------------------------------------------------------------------------------
//------------------------------------------------------------------------------
/*************************************************************************/
/*************************************************************************/
define('NO_VISITOR',1);
define('NOT_IN_INDEX',0);
include('common.php');
/*************************************************************************/
/*************************************************************************/
if ($member_permission != 1)
{
if ($_GET['index'] == 1)
{
$SF->html_title_page('التسجيل - (Powered By MySmartBB)');
$Smarty->assign('path_bar','التسجيل');
$Smarty->display('path_bar.tpl');
if ($info_row['reg_close'] == 1)
{
$SF->error('المعذره .. التسجيل مغلق من قبل الاداره');
}
if ($info_row['reg_o'] == 1)
{
$mysbb_rules_query = $DB->sql_query("SELECT * FROM MySBB_emailmsgs where id='5'");
$mysbb_rules_row = $DB->sql_fetch_array($mysbb_rules_query);
$Smarty->assign_by_ref('mysbb_rules_row',$mysbb_rules_row);
$Smarty->display('register_page2.tpl');
}
else
{
$Smarty->display('register_page.tpl');
}
}
elseif ($_GET['index'] == 2)
{
$SF->html_title_page('التسجيل - (Powered By MySmartBB)');
$Smarty->assign('path_bar','التسجيل');
$Smarty->display('path_bar.tpl');
$Smarty->display('register_page.tpl');
}
elseif ($_GET['start'] == 1)
{
if ($_POST['T2'] != $_POST['T2B'])
{
$SF->error('المعذرة ، كلمتا المرور غير متطابقتان');
}
if ($_POST['T3'] != $_POST['T3B'])
{
$SF->error('المعذرة ، البريدان الإلكترونيان غير متطابقين');
}
if (!$SF->CheckEmail($_POST['T3']))
{
$SF->error('البريد الالكتروني غير صحيح');
}
$username = trim($_POST['T1']);
$password = trim($_POST['T2']);
$email_check = explode('@',$_POST['T3']);
$member_check = $DB->sql_num_rows($DB->sql_query("SELECT * FROM MySBB_member WHERE username='" . $username . "'"));
$mail_check = $DB->sql_num_rows($DB->sql_query("SELECT * FROM MySBB_member WHERE email='" . $_POST['T3'] . "'"));
$ubanned_check = $DB->sql_num_rows($DB->sql_query("SELECT * FROM MySBB_banned WHERE text='" . $_POST['T1'] . "' AND text_type='1'"));
$ebanned_check = $DB->sql_num_rows($DB->sql_query("SELECT * FROM MySBB_banned WHERE text='" . $_POST['T3'] . "' AND text_type='2'"));
$pbanned_check = $DB->sql_num_rows($DB->sql_query("SELECT * FROM MySBB_banned WHERE text='" . $SF->SafeSQL($email_check[1]) . "' AND text_type='3'"));
if (empty($username) or empty($password) or empty($_POST['T3']) or ($_POST['D1']))
{
$SF->error('يرجى تعبئة كافة المعلومات');
}
if (count($email_check) == 1)
{
$SF->error('يرجى كتابة بريدك الصحيح !');
}
if ($member_check > 0)
{
$SF->error('المعذره .. اسم المستخدم موجود مسبقاً');
}
if ($mail_check > 0)
{
$SF->error('المعذره .. البريد الالكتروني موجود مسبقاً');
}
if ($_POST['gender'] != 'm' and $_POST['gender'] != 'f')
{
$SF->error('خطأ , الجنس إما ذكر او انثى');
}
if ($ubanned_check > 0)
{
$SF->error('هذا الاسم ممنوع من التسجيل');
}
if ($ebanned_check > 0)
{
$SF->error('هذا البريد ممنوع من التسجيل');
}
if ($_POST['T1'] == 'زائر')
{
$SF->error('المعذره , لا يمكنك التسجيل بهذا الاسم !');
}
if ($pbanned_check > 0)
{
$SF->error('المعذره .. مزود البريد الذي تمتلكه ممنوع من التسجيل في المنتدى');
}
if (strlen($_POST['T1']) < $info_row['reg_less_num'])
{
$SF->error('عدد حروف إسم المستخدم أقل من (' . $info_row['reg_less_num'] . ')');
}
if (strlen($_POST['T1']) > $info_row['reg_max_num'])
{
$SF->error('عدد حروف اسم المستخدم أكبر من (' . $info_row['reg_max_num'] . ')');
}
if (strlen(trim($password)) > $info_row['reg_pass_max_num'])
{
$SF->error('عدد حروف كلمة المرور أكبر من (' . $info_row['reg_pass_max_num'] . ')');
}
if (strlen(trim($password)) < $info_row['reg_pass_min_num'])
{
$SF->error('عدد حروف كلمة المرور أقل من (' . $info_row['reg_pass_min_num'] . ')');
}
$registerdate = date('Y-m-d');
$insert = $DB->sql_query("INSERT INTO MySBB_member(id,username,password,email,user_gender,register_date,user_title,style) VALUES('NULL','".$username."','".md5($_POST['T2'])."','".$_POST['T3']."','".$SF->SafeSQL($_POST['gender'])."','".$registerdate."','عضو','" . $info_row['def_style'] . "')");
$id = $DB->sql_insert_id($insert);
$insertgroup = $DB->sql_query("INSERT INTO MySBB_membergroup(id,member_id,group_id) VALUES('NULL','" . $id . "','" . $info_row['def_group'] . "')");
if ($insert)
{
if ($info_row['def_group'] == 5)
{
$url = "http://{$HTTP_HOST}{$REQUEST_URI}";
$url = str_replace('register.php?start=1','',$url);
$s = $SF->random();
$url .= 'misc.php?active=1&m=' . $s;
$insert_req = $DB->sql_query("UPDATE MySBB_member SET active_number='$s' WHERE id='$id'");
$getmsg_query = $DB->sql_query("SELECT * FROM MySBB_emailmsgs WHERE id='4'");
$getmsg_row = $DB->sql_fetch_array($getmsg_query);
$text = $getmsg_row['text'];
$text = str_replace('[MySBB]username[/MySBB]',$_POST['T1'],$text);
$text = str_replace('[MySBB]url[/MySBB]',$url,$text);
$text = str_replace('[MySBB]board_title[/MySBB]',$info_row['title'],$text);
$SF->mail($_POST['T3'],$getmsg_row['title'],$text,$info_row['send_email']);
$SF->msg('تم ارسال رسالة طلب التفعيل إلى بريدك , يرجى مراجعة بريدك لتفعيل العضويه');
$SF->go_to('login.php?register_login=1&username=' . $_POST['T1'] . '&password=' . md5($_POST['T2']),2);
}
else
{
$SF->msg('تم التسجيل بنجاح , شكراً لك ! سوف يتم نقلك إلى الصفحه الرئيسيه و يمكنك تسجيل الدخول');
$SF->msg('<br><a href=login.php?register_login=1&username=' . $_POST['T1'] . '&password=' . md5($_POST['T2']).'>ملاحظة: إذا كان متصفحك لا يدعم الإنتقال التلقائي اضغط هنا</a>');
$SF->go_to('login.php?register_login=1&username=' . $_POST['T1'] . '&password=' . md5($_POST['T2']),2);
}
}
}
}
/*************************************************************************/
/*************************************************************************/
else
{
$SF->error('لقد قمت بالتسجيل و انت موجود في سجلاتنا !');
}
/*************************************************************************/
/*************************************************************************/
$Smarty->display('footer.tpl');
/*************************************************************************/
/*************************************************************************/
?>
بس المشكلة كيفـ يتم التطرق بالملف لأضافة اليوزر الجديد بالقاعدة بـ جدول Users