Регистрация пользователей.

#
Регистрация пользователей.
Подскажите как отправляются письма для подтверждения регистрации? Нам приходят письма такого типа (не известный отправитель), хочу поправить header письма.
d-sant.com
Модератор
#
Re: Регистрация пользователей.
Отправляет метод SendRegistInf(). Чтобы разобраться в причине нужен текст ошибки и заголовки письма.
#
Re: Регистрация пользователей.
В ТДС Пользователи сайта -> Регистрация

Следующий код, в которм я никак не вижу этот метод.

<?
$SiteUsers = new SiteUsers();

/* XSL шаблоны */
$xsl_letter = to_str($GLOBALS['LA']['xsl_letter']);
$xsl_registration = to_str($GLOBALS['LA']['xsl_registration']);

/* Идентификатор текущего пользователя */
$site_users_id = $SiteUsers->GetCurrentSiteUser();

/* Если пользователь авторизирован, то показываем ему его анкетные данные, иначе страницу регистрации */
if ($site_users_id)
{
   $title = 'Анкетные данные';

   /* удаление значения дополнительного свойства типа "файл" */
   if (isset($_GET['delete_value_property']))
   {
      $SiteUsers->SetValueExtraProperty($site_users_id, '',
      array('id' => to_int($_GET['delete_value_property']),
      'delete' => true));
   }
}
else
{
   $title = 'Регистрация пользователя';
}

# Добавляем/редактируем информацию о пользователе
if (isset($_POST['add_user']))
{
   /* пароль необязателен при обновлении данных о пользователе */
   if (isset($_POST['site_users_login']) && ($site_users_id > 0 || isset($_POST['site_users_password'])) && isset($_POST['site_users_email']))
   {
      $param['site_users_login'] = to_str($_POST['site_users_login']);
      $param['site_users_password'] = to_str($_POST['site_users_password']);
      $param['site_users_email'] = to_str($_POST['site_users_email']);
      $param['site_users_name'] = to_str($_POST['site_users_name']);
      $param['site_users_surname'] = to_str($_POST['site_users_surname']);
      $param['site_users_patronymic'] = to_str($_POST['site_users_patronymic']);
      $param['site_users_phone'] = to_str($_POST['site_users_phone']);
      $param['site_users_fax'] = to_str($_POST['site_users_fax']);
      $param['site_users_site'] = to_str($_POST['site_users_site']);
      $param['site_users_icq'] = to_str($_POST['site_users_icq']);
      $param['site_users_country'] = to_str($_POST['site_users_country']);
      $param['site_users_postcode'] = to_str($_POST['site_users_postcode']);
      $param['site_users_city'] = to_str($_POST['site_users_city']);
      $param['site_users_address'] = to_str($_POST['site_users_address']);
      $param['site_users_company'] = to_str($_POST['site_users_company']);
      $param['subject'] = "Письмо активации пользователя";
      /* если пользователь авторизован */
      if ($site_users_id)
      {
         $param['site_users_confirmation'] = 1;
         /* обновляем данные о пользователе */
         $result = $SiteUsers->UpdateSiteUser($site_users_id, $param);

         $extra_property_value = isset($_POST['notify_theme_answer']) ? 1: 0;
         $param = array('name'=>'notify_theme_answer');
         $SiteUsers->SetValueExtraProperty($site_users_id, $extra_property_value, $param);

         if ($result > 0)
         {
            ?>
            <h1>Ваши анкетные данные успешно изменены</h1>
            <p>Если Ваш браузер поддерживает автоматическое перенаправление через 5 секунд Вы перейдете в <a href="../">кабинет пользователя</a>. Если Вы не хотите ждать перейдите по соответствующей ссылке.</p>
            
            <script language="JavaScript" type="text/javascript">
            <!--
            function set_location()
            {
               location="../";
            }
            setTimeout('set_location()', 5000);
            //-->
            </script>
            <?
         }
      }
      else
      {
         /* Начинаем проверку кода подтверждения */
         $Captcha = new Captcha();

         /* Если неправильно введен код подтверждения */
         if (!$Captcha->ValidCaptcha(to_str($_POST['captcha_key']),to_str($_POST['captcha_keystring'])))
         {
            $result = -5; /* Неправильно введен код подтверждения */
         }
         else
         {
            /* Группа по умолчанию */
            $param['site_users_group_id'] = $SiteUsers->GetDefaultGroup();
            $param['xslname'] = $xsl_letter;

            // добавляем пользователя
            $site_users_id = $result = $SiteUsers->InsertSiteUser($param);

            //$extra_property_value = isset($_POST['notify_theme_answer']) ? 1: 0;
            //$param = array('name'=>'notify_theme_answer');
            //$SiteUsers->SetValueExtraProperty($site_users_id, $extra_property_value, $param);

            if ($result > 0)
            {
            ?>
            <h1>Спасибо за регистрацию</h1>
            <p>Для продолжения работы необходимо подтвердить регистрацию Ваших данных.
            В Ваш адрес отправлено письмо, содержащее ссылку для подтверждения регистрации.</p>
            <p>Если Ваш браузер поддерживает автоматическое перенаправление через 10 секунд Вы перейдете на страницу <a href="../">идентификации пользователя</a>. Если Вы не хотите ждать перейдите по соответствующей ссылке.</p>
            <script language="JavaScript" type="text/javascript">
            <!--
            function set_location()
            {
               location="../";
            }
            setTimeout('set_location()', 10000);
            //-->
            </script>
            <?
            }
         }
      }

      /* Обновление/вставка прошли успешно */
      if ($result > 0)
      {
         /* Обновляем значения дополнительных свойств */
         $property_list = $SiteUsers->GetListExtraProperties($site_users_id);

         foreach ($property_list as $key => $value)
         {
            // Если передано значения поля дополнительного свойства
            if (isset($_POST[$value['site_users_extra_property_name']])
            || $value['site_users_extra_property_type'] == 'checkbox')
            {
               $SiteUsers->SetValueExtraProperty($site_users_id, to_str($_POST[$value['site_users_extra_property_name']]), array('id' => $value['site_users_extra_property_id']));

            }
            elseif (isset($_FILES[$value['site_users_extra_property_name']]))
            {
               $SiteUsers->SetValueExtraProperty($site_users_id, $_FILES[$value['site_users_extra_property_name']], array('id' => $value['site_users_extra_property_id']));
            }
         }

      }
      else
      {
         /*
         Таблица значений $result
         -5 -- Неправильно введен код подтверждения
         -3 -- Пользователь с таким логином зарегистрирован ранее
         -2 -- Пользователь с таким e-mail зарегистрирован ранее
         -1 -- Введен некорректный e-mail
         */

         $SiteUsers->ShowSiteUserRegistartion($site_users_id, $xsl_registration,
         array('error' => $result,
         'page_title' => $title));
      }
   }
   else
   {
      $error = -4; // Пожалуйста, задайте все обязательные параметры.

      $SiteUsers->ShowSiteUserRegistartion($site_users_id, $xsl_registration, array('error' => $error, 'page_title' => $title));
   }
}
else
{
   // выводим форму регистрации
   $SiteUsers->ShowSiteUserRegistartion($site_users_id, $xsl_registration, array('page_title' => $title));
}
?>



А на почту приходит название no address
d-sant.com
Модератор
#
Re: Регистрация пользователей.
Вы правы, явно метод вызывался в другой типовой. В данном случае он вызывается внутри InsertSiteUser()
#
Re: Регистрация пользователей.
А что делать не подскажете?
d-sant.com
Авторизация