Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /var/www/xxx89/data/www/XxX-xXx. ru/newserver.php on line 85
Также не приходит письмо с подтверждением!
Файл обработчик
PHP:
скопировать код в буфер обмена
скопировать код в буфер обмена
- <?PHP
- require 'config/connect_db.php';
- require 'config/config.php';
- // Обрезаем переменные до длины, указанной в параметре maxlength тега input
- // Обрезаем лишние пробелы
- //Сравнение суммы на картинке
- if ($pr != $myrow["sum"]) {$pr="";}
- // Проверяем, заполнены ли обязательные поля
- $error = '';
- if ( empty( $passw ) ) $error = $error.'<li class="error_text">не заполнено поле "Пароль"</li>'."\n";
- if ( empty( $confirm ) ) $error = $error.'<li class="error_text">не заполнено поле "Подтвердите пароль"</li>'."\n";
- if ( empty( $email ) ) $error = $error.'<li class="error_text">не заполнено поле "Адрес e-mail"</li>'."\n";
- // Проверяем, не слишком ли короткий пароль
- $error = $error.'<li class="error_text">длина пароля должна быть не меньше 4 символов</li>'."\n";
- if ( empty( $pr ) ) $error = $error.'<li class="error_text">Вы не ввели сумму, либо ввели ее неправильно!</li>'."\n";
- // Проверяем, совпадают ли пароли
- $error = $error.'<li class="error_text">не совпадают пароли</li>'."\n";
- // Проверяем поля формы на недопустимые символы
- $error = $error.'<li class="error_text">поле "Имя" содержит недопустимые символы</li>'."\n";
- $error = $error.'<li class="error_text">поле "Пароль" содержит недопустимые символы</li>'."\n";
- $error = $error.'<li class="error_text">поле "Подтвердите пароль" содержит недопустимые символы</li>'."\n";
- // Проверяем корректность e-mail
- $error = $error.'<li class="error_text">поле "Адрес e-mail" должно соответствовать формату somebody@somewhere.ru</li>'."\n";
- // Проверка корректного ICQ
- $error = $error.'<li class="error_text">поле "ICQ" содержит недопустимые символы</li>'."\n";
- // Проверяем корректность URL домашней странички
- if ( !empty( $url ) and !preg_match( "#^(http:\/\/)?(www.)?[0-9a-z\-\.]+\.[a-z]{2,6}\/?$#i", $url ) )
- $error = $error.'<li class="error_text">поле "Домашняя страничка" должно соответствовать формату http://www.homepage.ru</li>'."\n";
- // Выясняем не зарегистрировано ли уже это имя
- // Возможно три ситуации, которые необходимо предотвратить:
- // 1. Вводится ник, полностью совпадающий с уже существующим
- // 2. Вводится уже существующий кирилический ник, в котором
- // одна или несколько букв заменены на латинские
- // 3. Вводится уже существующий латинский ник, в котором
- // одна или несколько букв заменениы на кирилические
- // Массив кирилических букв
- // Массив латинских букв
- // Заменяем русские буквы латинскими
- // Заменяем латинские буквы русскими
- // Формируем SQL-запрос
- $query = "SELECT * FROM users
- $error = $error.'<li class="error_text">пользователь с логином "'.$new_name.'" уже зарегистрирован. Пожалуйста, выберите другой логин.</li>'."\n";
- $query = "SELECT * FROM users
- $error = $error.'<li class="error_text">пользователь с адресом "'.$email.'" уже зарегистрирован. Пожалуйста, введите другой.</li>'."\n";
- // Если были допущены ошибки при заполнении формы - перенаправляем посетителя на страницу регистрации
- $_SESSION['addNewUserForm']['error'] = '<p class="errorMsg"><strong>При заполнении формы были допущены ошибки:</strong></p>'."\n".'<ul class="errorMsg">'."\n".$error.'</ul>'."\n";
- $_SESSION['addNewUserForm']['name'] = $name;
- $_SESSION['addNewUserForm']['passw'] = $passw;
- $_SESSION['addNewUserForm']['email'] = $email;
- $_SESSION['addNewUserForm']['icq'] = $icq;
- $_SESSION['addNewUserForm']['url'] = $url;
- $_SESSION['addNewUserForm']['sum'] = $pr;
- }
- //Добавляет к введёному урлу http://
- // Уникальный код для активации учетной записи
- // Все поля заполнены правильно - продолжаем регистрацию
- $query = "INSERT INTO users
- (
- name,
- passw,
- email,
- icq,
- url,
- puttime,
- last_visit,
- activation
- )
- VALUES
- (
- NOW(),
- NOW(),
- '".$code."'
- );";
- // Посылаем письмо пользователю с просьбой активировать учетную запись
- $headers = "From: ".$_SERVER['SERVER_NAME']." <'Support@опролап.ru'>\n";
- $headers = $headers."Content-type: text/html; charset=\"windows-1251\"\n";
- $headers = $headers."Return-path: <'Support@лрпопрол.ru'>\n";
- $message = '<p style="font-family:Verdana; font-size:14px; color:2f2f2f;">Добро пожаловать на сайт <strong>'.$_SERVER['SERVER_NAME'].'</strong>!</p>'."\n";
- $message = $message.'<p style="font-family:Verdana; font-size:14px; color:2f2f2f;">Пожалуйста обязательно сохраните это письмо. Параметры вашей учётной записи таковы:</p>'."\n";
- $message = $message.'<p style="font-family:Verdana; font-size:14px; color:2f2f2f;"><strong>Логин:</strong> '.$name.'<br/><strong>Пароль:</strong> '.$passw.'</p>'."\n";
- $message = $message.'<p style="font-family:Verdana; font-size:14px; color:2f2f2f;">Для активации вашей учетной записи перейдите по ссылке:</p>'."\n";
- $link = 'http://'.$_SERVER['SERVER_NAME'].'/activation.php?code='.$code;
- $message = $message.'<p style="font-family:Verdana; font-size:14px; color:2f2f2f;"><a href="'.$link.'">Активировать учетную запись</a></p>'."\n";
- $message = $message.'<p style="font-family:Verdana; font-size:14px; color:2f2f2f;">Не забывайте свой пароль: он хранится в нашей базе в зашифрованном виде, и мы не сможем вам его выслать. Если вы всё же забудете пароль, то свяжитесь со службой поддержки сайта, вам вышлют новый пароль.</p>'."\n";
- $message = $message.'<p style="font-family:Verdana; font-size:14px; color:2f2f2f;">Спасибо за то, что зарегистрировались на нашем сайте.</p>'."\n";
- $subject = 'Регистрация на сайте '.$_SERVER['SERVER_NAME'];
- echo "<HTML><HEAD><TITLE>Register</TITLE>
- <META HTTP-EQUIV='Refresh' CONTENT='7; URL=http://рп.ru/.php'>
- <table align='center'
- style='width:50%; margin-top:250px; text-align:center; border:1px solid #2f2f2f;
- background-color:#f6f6f6; font-family:Verdana; font-size:14px; color:2f2f2f;
- padding:15px 0px 15px 0;'>
- <tr>
- <td>
- <p>Уважаемый(ая) <strong>".$name."</strong>,<br>
- На Ваш e-mail выслано письмо с просьбой подтвердить регистрацию.
- Чтобы завершить регистрацию и активировать учетную запись, зайдите
- по ссылке, указанной в письме.</p>
- </td>
- </tr>
- </table>
- </head></html>";
- ?>