Добавим мыло пользователям в аккаунт

Короче говоря,многие админы мучаются большим количеством заявок на восстановление пароля.Многие решают проблему путём подключения х6 интерфейсов(которые я выложу позже).Правда,как я заметил,то в этом плагине(х6 интерфейсы),не было отправки пользователям в кипер их пароль..пришлось дописывать(спасибо nightspeaker\’у).

Не буду отходить от начатой темы.Выкладываю плагин на раздачу,т.к. он не так сильно ценится,но может кому понадобится.Короче говоря,многие админы мучаются большим количеством заявок на восстановление пароля.Многие решают проблему путём подключения х6 интерфейсов(которые я выложу позже).Правда,как я заметил,то в этом плагине(х6 интерфейсы),не было отправки пользователям в кипер их пароль..пришлось дописывать(спасибо nightspeaker\’у).

Не буду отходить от начатой темы.Выкладываю плагин на раздачу,т.к. он не так сильно ценится,но может кому понадобится.
Устанавливаем:
1.Сделаем SQL-запрос:

ALTER TABLE `tb_users` ADD `email` VARCHAR( 50 ) CHARACTER SET cp1251 COLLATE cp1251_general_ci NOT NULL AFTER `ip`;


2.Открываем progile.php и ищем:

$cpassword = $_POST["cpassword"];


Следом добавим:


$email = $_POST["email"];


Далее заменим в этом же файле строку:

      $user=uc($_SESSION["username"]);
      $queryb = "UPDATE tb_users SET password='$password', country='$country' WHERE username='$user'";
      mysql_query($queryb) or die(mysql_error());


на строку:


      $user=uc($_SESSION["username"]);
      $queryb = "UPDATE tb_users SET password='$password', email='$email', country='$country' WHERE username='$user'";
      mysql_query($queryb) or die(mysql_error());


Далее тут же ищем:


   <tr>
      <td width="150" align="left">

<label>Пароль еще раз:</label></p></td>
      <td width="250" align="left"><input type="password" size="25" maxlength="15" name="cpassword" value="" class="field" value="" tabindex="1"></td>
    </tr>


и добавляем после этого:

    <tr>
      <td width="150" align="left">

<label>E-Mail:</label></p></td>
      <td width="250" align="left"><input type="text" size="25" maxlength="150" name="email" value="" class="field" value="" tabindex="1"></td>
    </tr>


3.Открываем register.php
Ищем:

$referer=$_POST["referer"];


Добавляем следом:


$email=$_POST["email"];
  function emailtuc($mensaje)  
  {  
  if (preg_match("|[0-9a-z_]+@[0-9a-z_^.]+.[a-z]{2,3}|i", $mensaje))  
  {  
  return $mensaje;  
  }else{  
  echo "<img src="images/error.png" align="middle"> Ошибка. Проверьте правильность ввода";  
  include('footer.php');  
  exit();  
  }  
  }


Ниже найдём:


  if($username==NULL|$password==NULL|$cpassword==NULL|$wmid==NULL|$pemail==NULL)
  {
  echo "<img src="images/error.png" align="middle"> <b>Заполнены не все поля!!!</b>";
  }else{


И заменим на:


  if($username==NULL|$password==NULL|$cpassword==NULL|$wmid==NULL|$pemail==NULL|$email==NULL)
  {
  echo "<img src="images/error.png" align="middle"> <b>Заполнены не все поля!!!</b>";
  }else{


Потом после строки:

  if($country!="") {$country = tuc1($country);}
  $wmid = tuc1($wmid);


Добавим:


  $email=emailtuc($email);


Потом найдём кусок:


$joindate=date("d.m.Y");
$query = "INSERT INTO tb_users (username, password, ip, pemail, referer, country, joindate, wmid, buying) VALUES('$username','$password','$laip','$pemail','$referer','$country','$joindate','$wmid','$buying')";
mysql_query($query) or die(mysql_error());


Заменим его на:

$joindate=date("d.m.Y");
$query = "INSERT INTO tb_users (username, password, ip, pemail, referer, country, joindate, wmid, buying, email) VALUES('$username','$password','$laip','$pemail','$referer','$country','$joindate','$wmid','$buying','$email')";
mysql_query($query) or die(mysql_error());

$to = "$email";
$subject = "Регистрационные данные";
$message = 'Уважаемый '.$username.'! Благодарим Вас за регистрацию на <b>'.$_SERVER['HTTP_HOST'].'</b>.<br><br>
Ваши регистрационные данные:<br><br>
Дата регистрации:<b> '.$joindate.' </b><br>
Ваш логин:<b> '.$username.' <br></b>
Ваш пароль:<b> '.$password.' </b><br>
Ваш IP:<b> '.$laip.' </b><br>
Ваш WMID:<b> '.$wmid.' <br></b>
Ваш WMR:<b> '.$pemail.' <br></b>
Ваш e-mail:<b> '.$email.' <br></b>
Ваша страна:<b> '.$country.' <br></b>
Ваш реферер:<b> '.$referer.' <br><br></b>
<b>Пожалуйста, храните в безопасном месте Ваши логин и пароль.<br></b>
_ _ _ <br><br>
C уважением, автоматическая служба уведомлений.';

$headers = "Content-type: text/html; charset=windows-1251 rn";
$headers .= "From: AUTO-MAILER <admin@autowm.ru>rn";
mail($to, $subject, $message, $headers);  


Затем после строк:

<tr>
  <td width="150" align="left">

<label>Пароль еще раз:</label></p></td>
  <td width="250" align="left"><input type="password" size="25" maxlength="15" name="cpassword" autocomplete="off" class="field" value="" tabindex="1" /></td>
  </tr>

Добавим:

  <tr>
  <td width="150" align="left">

<label>Ваш E-Mail:</label></p></td>
  <td width="250" align="left"><input type="text" size="25" maxlength="50" name="email" autocomplete="off" class="field" value="" tabindex="1" /></td>
  </tr>


И всё.

Теперь мелкие дополнения.При желании можно в файле profile.php добавить значение параметра readonly=readonly.Для этого строку:


<input type="text" size="25" maxlength="150" name="email" value="" class="field" value="" tabindex="1">


Заменим на:


<input type="text" size="25" maxlength="150" readonly="readonly" name="email" value="" class="field" value="" tabindex="1">


Далее,если есть админы,коорые не меняли файлы register.php и profile.php,а также recoverpwd.php,то для них выкладываю архив с уже готовыми.
reg-mail.rar
Файл recoverpwd.php раскладывать не буду.Думаю,он меньше всего подвергается редактированию.Также для работы этого плагина необходимо учитывать,что на хосте должна работать функция mail().

Автор публикации

не в сети 14 лет

Alex

Комментарии: 0Публикации: 166Регистрация: 19-02-2011

Понравилась статья? Поделись в соц. сетях:

Похожие новости

Отправить комментарий

wpDiscuz
Авторизация
*
*
Регистрация
*
*
*
Генерация пароля