[Помощь]
2 ответов134 просмотровСейчас просматривают: 1
· 31.03.2009, 11:33
Всем привет, у меня такая проблема как мне сделать чтобы при регистрации письмо не отправлялось на мыло а сразу регистрировался?
ЧТО некто незнает как изменить?
0
· 31.03.2009, 18:15
в файле registration.php замени:
Код
// добавление акка в темповую бд
else{
$reg_pass = mysql_escape_string(base64_encode(pack('H*', sha1($_REQUEST["l2password"]))));
$reg_pass_nondecoded = mysql_escape_string($_REQUEST["l2password"]);
$reg_answ = mysql_escape_string($_REQUEST["l2answer"]);
$reg_question = mysql_escape_string($_REQUEST["l2question"]);
$reg_hash = md5(time().$reg_login.rand());
$dbl->sql_query("INSERT INTO `accounts_temp` VALUES ('$reg_login', '$reg_pass', '$reg_email', '$reg_answ', '$reg_question', UNIX_TIMESTAMP(), '$reg_hash')");
$sql_error = $dbl->sql_error();
// отправка мыла
if($sql_error["code"]==0){
$tpl->load_template($tpldir.'/lineage/mail_registration.tpl');
$tpl->set('{reg_login}', $reg_login);
$tpl->set('{reg_pass}', $reg_pass_nondecoded);
$tpl->set('{reg_question}', $reg_question);
$tpl->set('{reg_answ}', $reg_answ);
$tpl->set('{home_url}', $config['http_home_url']);
$tpl->set('{reg_hash}', $reg_hash);
$tpl->compile('mail_registration');
$mess = $tpl->result["mail_registration"];
include_once ENGINE_DIR.'/classes/mail.class.php';
$mail = new dle_mail ($config);
$mail->send($reg_email, 'Подтверждние регистрации '.$config['home_title'], $mess);
$lineage .= "<center>Поздравляем, Вы успешно зарегистрировали аккаунт!<br>На Ваш e-mail выслано подтверждение регистрации.</center><br />";
InsertLogRecord($reg_login, 'account registration');
}
else{
$lineage = "<div class='warning center'>Неизвестная ошибка, попробуйте еще раз!</div><br />";
$lineage.= "<center><a href='".GetURL($_link,"registration")."'>назад</a></center>";
}
}
}
//активация
elseif($_action == "activate"){
$activate_hash = mysql_escape_string($_REQUEST["activate_hash"]);
if($dbl->sql_numrows($dbl->sql_query("SELECT * FROM accounts_temp WHERE reg_hash='".$activate_hash."' LIMIT 1")) == 0) $lineage .= "<center>Аккаунт не найден!</center>";
else{
$query = $dbl->sql_query("SELECT * FROM accounts_temp WHERE reg_hash='".$activate_hash."' LIMIT 1");
$account_array = $dbl->sql_fetchrow($query);
$dbl->sql_query("INSERT INTO `accounts` (login, password, access_level, email) VALUES ('".$account_array['login']."', '".$account_array['password']."', 0, '".$account_array['email']."')");
$dbl->sql_query("INSERT INTO `accounts_questions` (login, question, answer) VALUES ('".$account_array['login']."', '".$account_array['question']."', '".$account_array['answer']."')");
$sql_error = $dbl->sql_error();
$dbl->sql_query("DELETE FROM `accounts_temp` WHERE reg_hash='".$activate_hash."' LIMIT 1");
$sql_error = $dbl->sql_error();
if ($sql_error["code"]==0) {
$lineage = "<center>Поздравляем, аккаунт успешно активирован! Приятной игры.</center><br />";
$lineage .= "<center><a href='".GetURL($_link,"account")."'>на страницу авторизации</a></center>";
InsertLogRecord($account_array['login'], 'account activation');
}
else{
$reg_pass = mysql_escape_string(base64_encode(pack('H*', sha1($_REQUEST["l2password"]))));
$reg_pass_nondecoded = mysql_escape_string($_REQUEST["l2password"]);
$reg_answ = mysql_escape_string($_REQUEST["l2answer"]);
$reg_question = mysql_escape_string($_REQUEST["l2question"]);
$reg_hash = md5(time().$reg_login.rand());
$dbl->sql_query("INSERT INTO `accounts_temp` VALUES ('$reg_login', '$reg_pass', '$reg_email', '$reg_answ', '$reg_question', UNIX_TIMESTAMP(), '$reg_hash')");
$sql_error = $dbl->sql_error();
// отправка мыла
if($sql_error["code"]==0){
$tpl->load_template($tpldir.'/lineage/mail_registration.tpl');
$tpl->set('{reg_login}', $reg_login);
$tpl->set('{reg_pass}', $reg_pass_nondecoded);
$tpl->set('{reg_question}', $reg_question);
$tpl->set('{reg_answ}', $reg_answ);
$tpl->set('{home_url}', $config['http_home_url']);
$tpl->set('{reg_hash}', $reg_hash);
$tpl->compile('mail_registration');
$mess = $tpl->result["mail_registration"];
include_once ENGINE_DIR.'/classes/mail.class.php';
$mail = new dle_mail ($config);
$mail->send($reg_email, 'Подтверждние регистрации '.$config['home_title'], $mess);
$lineage .= "<center>Поздравляем, Вы успешно зарегистрировали аккаунт!<br>На Ваш e-mail выслано подтверждение регистрации.</center><br />";
InsertLogRecord($reg_login, 'account registration');
}
else{
$lineage = "<div class='warning center'>Неизвестная ошибка, попробуйте еще раз!</div><br />";
$lineage.= "<center><a href='".GetURL($_link,"registration")."'>назад</a></center>";
}
}
}
//активация
elseif($_action == "activate"){
$activate_hash = mysql_escape_string($_REQUEST["activate_hash"]);
if($dbl->sql_numrows($dbl->sql_query("SELECT * FROM accounts_temp WHERE reg_hash='".$activate_hash."' LIMIT 1")) == 0) $lineage .= "<center>Аккаунт не найден!</center>";
else{
$query = $dbl->sql_query("SELECT * FROM accounts_temp WHERE reg_hash='".$activate_hash."' LIMIT 1");
$account_array = $dbl->sql_fetchrow($query);
$dbl->sql_query("INSERT INTO `accounts` (login, password, access_level, email) VALUES ('".$account_array['login']."', '".$account_array['password']."', 0, '".$account_array['email']."')");
$dbl->sql_query("INSERT INTO `accounts_questions` (login, question, answer) VALUES ('".$account_array['login']."', '".$account_array['question']."', '".$account_array['answer']."')");
$sql_error = $dbl->sql_error();
$dbl->sql_query("DELETE FROM `accounts_temp` WHERE reg_hash='".$activate_hash."' LIMIT 1");
$sql_error = $dbl->sql_error();
if ($sql_error["code"]==0) {
$lineage = "<center>Поздравляем, аккаунт успешно активирован! Приятной игры.</center><br />";
$lineage .= "<center><a href='".GetURL($_link,"account")."'>на страницу авторизации</a></center>";
InsertLogRecord($account_array['login'], 'account activation');
}
на
Код
else{
$reg_pass = mysql_escape_string(base64_encode(pack('H*', sha1($_REQUEST["l2password"]))));
$reg_pass_nondecoded = mysql_escape_string($_REQUEST["l2password"]);
$reg_answ = mysql_escape_string($_REQUEST["l2answer"]);
$reg_question = mysql_escape_string($_REQUEST["l2question"]);
$dbl->sql_query("INSERT INTO `accounts` (login, password, access_level, email)
VALUES ('$reg_login', '$reg_pass', 0, '$reg_email')");
$dbl->sql_query("INSERT INTO `accounts_questions` (login, question, answer)
VALUES ('$reg_login', '$reg_question', '$reg_answ')");
$sql_error = $dbl->sql_error();
if ($sql_error["code"]==0) {
$lineage = "<center>Поздравляем, Вы успешно зарегистрировали аккаунт! Приятной игры.</center><br />";
$lineage .= "<center><a href='".GetURL($_link,"account")."'>на страницу авторизации</a></center>";
InsertLogRecord($reg_login, 'account registration');
}
$reg_pass = mysql_escape_string(base64_encode(pack('H*', sha1($_REQUEST["l2password"]))));
$reg_pass_nondecoded = mysql_escape_string($_REQUEST["l2password"]);
$reg_answ = mysql_escape_string($_REQUEST["l2answer"]);
$reg_question = mysql_escape_string($_REQUEST["l2question"]);
$dbl->sql_query("INSERT INTO `accounts` (login, password, access_level, email)
VALUES ('$reg_login', '$reg_pass', 0, '$reg_email')");
$dbl->sql_query("INSERT INTO `accounts_questions` (login, question, answer)
VALUES ('$reg_login', '$reg_question', '$reg_answ')");
$sql_error = $dbl->sql_error();
if ($sql_error["code"]==0) {
$lineage = "<center>Поздравляем, Вы успешно зарегистрировали аккаунт! Приятной игры.</center><br />";
$lineage .= "<center><a href='".GetURL($_link,"account")."'>на страницу авторизации</a></center>";
InsertLogRecord($reg_login, 'account registration');
}
и все, регайся без активации...
0
Тема закрыта для ответов

