PHP |
<?php session_start(); include("include/user_register/functions.inc.php"); include_once("include/connectdb.php"); include('include/user_register/uni-auth.php'); ?> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML><HEAD><TITLE>Виртуальная футбольная лига - VSOL</TITLE> <META http-equiv=Content-Type content="text/html; charset=windows-1251"><LINK media=screen href="index.css" type=text/css rel=stylesheet> <META content="MSHTML 6.00.6000.16448" name=GENERATOR> <script language="javascript"> <!-- required = new Array("nick", "pass", "rpass", "mail", "komanda"); required_show = new Array("введите свой Логин!", "введите свой Пароль!","подтвердите свой Пароль!","введите свой E-mail!","введите название основной команды во ВСОЛе!");
function sendform() {
var i, j;
for(j=0; j<required.length; j++) { for (i=0; i<document.forms[0].length; i++) { if (document.forms[0].elements[i].name == required[j] && document.forms[0].elements[i].value == "" ) { alert('Будьте бдительны: ' + required_show[j]); document.forms[0].elements[i].focus(); return false; } } }
return true; }
//-->
</script> </HEAD> <BODY> <DIV class=bl id=bl-top>ВСОЛ Daily - футбольная новостная лента on-line менеджера - www.virtualsoccer.ru </DIV> <DIV class=bl id=bl-head> <TABLE> <TBODY> <TR> <TH noWrap align=left width=280><A href="index.php"><B>ВСОЛ Daily</B><BR>футбольная новостная лента</A> </TH> <TD align=middle width="100%"></TD> <TD noWrap align=right width=180>/ RSS /</TD></TR></TBODY></TABLE></DIV> <DIV class=bl style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; BACKGROUND: #fff; PADDING-BOTTOM: 5px; PADDING-TOP: 5px; TEXT-ALIGN: left"> <DIV style="FLOAT: right; MARGIN-RIGHT: 5px"></DIV> <B>Главред: <span style="color : red">TOK</B></span><br> <?php if(USER_LOGGED) { if(!check_user($UserID)) logout(); echo $UserName; echo '<h4><a href="?logout"><i> Выход</i></a></h4>'; }?> </DIV> <!--//================================================--> <DIV class=bl id=bl-main> <TABLE> <TBODY> <TR> <TD id=tb-main-c> <!--//================================================================--> <center> <div id="div-regForm"> <div class="form-title">РЕГИСТРАЦИЯ</div> <?php if(!$_POST['do'] OR $_POST['do'] =='') { //Генерируем шестизначный ключ для капчи if($_SESSION['uid'] =='') { $_SESSION['uid'] = mt_rand(100000,999999); } echo '<div class="form-sub-title">Зарегистрируйся и наслаждайся!!!</div> <form id="regForm" action="forma_register.php" method="post" onsubmit="return sendform();"> <table> <tbody> <tr> <td><label for="name">Ваш логин:</label></td> <td><div class="input-container"><input name="nick" id="nick" type="text" /></div></td> </tr> <tr> <td><label for="password">Пароль:</label></td> <td><div class="input-container"><input name="pass" id="pass" type="password" /></div></td> </tr> <tr> <td><label for="password2">Подтвердите пароль:</label></td> <td><div class="input-container"><input name="rpass" id="rpass" type="password" /></div></td> </tr> <tr> <td><label for="email">Ваш Email:</label></td> <td><div class="input-container"><input name="mail" id="mail" type="text" /></div></td> </tr> <tr> <td><label for="komanda">Имя основной команды во ВСОЛе:</label></td> <td><div class="input-container"><input name="komanda" id="komanda" type="text" /></div></td> </tr> <tr> <td><img src="img/capcha/capcha.php?sid='.$_SESSION['uid'].'"/></td> <td><div class="input-container"><input name="sid" id="sid" type="text" value="" /></div></td> </tr> <tr> <td> </td> <td><input name="do" type="submit" class="Button" value="Помчались..." /></td> </tr> </tbody> </table> </form>'; } //Если данные отправлены if($_POST['do'] !='') { //Начинаем проверять входящие данные if($_POST['sid'] == $_SESSION['uid']) {
//Создаем запрос к базе для проверки существования Пользователя
$nick = $_POST['nick']; mysql_query("SELECT * FROM users WHERE nick='".strtolower($nick)."'"); //Проверка результата запроса
if(mysql_affected_rows()==0) { //Проверка ввведенных паролей
if($_POST['pass'] !='' AND $_POST['rpass'] !='' AND $_POST['pass'] === $_POST['rpass']){ //Проверяем на валидность электронный адрес if(checkmail($_POST['mail']) !== -1) {
//Осуществляем регистарацию //Генерируем uniq_id $uniq_id = md5($_SERVER['REMOTE_ADDR'].$_SERVER['HTTP_USER_AGENT'].mktime()); $pass = $_POST['pass']; $email = $_POST['mail']; $komanda = $_POST['komanda']; //Создаем запрос для записи данных в БД $r = "INSERT INTO users(nick, password, email, komanda, uniq_id, status, last_date, date) VALUES('".strtolower($nick)."','".md5($pass)."','".$email."','".$komanda."','".$uniq_id."',0,'".date("dmY")."','".date("dmY")."')"; mysql_query ($r) or die (mysql_error());
//После запроса отправляем письмо юзеру, для активации аккаунта if($r) {
// Для отправки e-mail в виде HTML устанавливаем необходимый mime-тип и кодировку $headers = 'MIME-Version: 1.0' . "\r\n"; $headers .= 'Content-type: text/html; charset=windows-1251' . "\r\n";
// Откуда пришло $headers .= 'From: Сайт www.daily-vsol.hut.ru' . "\r\n";
//Здесь укажите электронный адрес, куда будут уходить сообщения $mailto = $email; $subject = "Подтверждение регистарции на сайте"; $message = 'Для активации аккаунта пройдите по следующей ссылке <a href="http://www.daily-vsol.hut.ru/forma_register.php? activation='.$uniq_id.'" target="_blank">http://www.daily-vsol.hut.ru/forma_register.php?activation='.$uniq_id.'</a>'; $message .= 'или скопируйте ссылку в окно ввода адреса браузера и нажмите enter.'; //Отправляем сообщение if(sendmail($mailto,$subject,$message,$headers) !== FALSE) { echo 'Регистрация завершена, на введеный Вами e-mail было отправлено сообщение для активации аккаунта'; } else {echo 'Регистрация невозможна: Повторите запрос позднее';} } else {echo 'Регистрация невозможна: Повторите запрос позднее';} } else {echo 'Регистрация невозможна: Электронный адрес должен соответствовать шаблону <b>name@domen.com</b><br/><a href="forma_register.php"/>назад</a>';}
} else {echo 'Регистрация невозможна: Введенные пароли не совпадают<br/><a href="forma_register.php"/>назад</a>';}
} else { echo 'Регистрация невозможна: Пользователь с таким именем уже существует<br/><a href="forma_register.php"/>назад</a>';}
session_destroy(); } else { echo 'Регистрация невозможна: код подтверждения введен не верно<br/><a href="forma_register.php"/>назад</a>';}
} //Модуль отвечающий за активацию аккаунта
if($_GET['activation'] AND $_GET['activation']!='') {
$uniq_id = $_GET['activation']; //Создаем запрос $r=@mysql_query("UPDATE users SET status=1 WHERE uniq_id='".$uniq_id."' AND status=0"); if($r) {echo '<h2>Ваша учетная запись активирована.</h2><br/> Теперь вы можете войти на сайт используя данные
указанные при регистрации. <a href="index.php">На главную</a>';}
else {echo 'Активация невозможна: профиль уже активирован';}
}?>
</center> <!--//================================================================--> </TD> <TD id=tb-main-r> <?php if(USER_LOGGED) { //тут ничего не нано } else { echo '<DIV class=menu> <H4></H4><A href="forma_register.php">Регистрация</A> / <A href="#">Забыли?</A><BR> <TABLE width=200 align=center> <FORM class=flog action="'; echo $_SERVER['PHP_SELF']; echo '" method=post> <TBODY> <TR> <TD>Логин</TD> <TD colSpan=2><INPUT style="WIDTH: 100%" name="user"></TD></TR> <TR> <TD>Пароль</TD> <TD colSpan=2><INPUT style="WIDTH: 100%" type=password name="pass"></TD></TR> <TR> <TD></TD> <TD><INPUT class=inp_ch id=inp_ch_id type=checkbox name=l-rem></TD> <TD><LABEL for=inp_ch_id>Запомнить</LABEL></TD></TR> <TR> <TD align=right colSpan=3><INPUT style="FONT-WEIGHT: bold; FONT-SIZE: 10px" type=submit value=ВОЙТИ name="login"> </TD></TR></FORM></TBODY></TABLE></DIV>';}?> <DIV class=menu> <H4></H4> <UL> <LI><A href="index.php"><font size="+3">ВСОЛ Daily</font></A> <LI> <LI><A href="sigrannost.php">Сыгранность</A> <LI><A href="#">Форум</A> <LI><A href="files/HelpVSOL_v.1.5(1.93Mb).exe">Скачать HelpVSOL_v.1.5(1.93Mb)</A> </UL></DIV> </TD></TR></TBODY></TABLE></DIV> <DIV class=bl id=bl-sub> <TABLE> <TBODY> <TR> <TD noWrap></TD> <TH width="100%">2009 © <A href="#">VSOL Daily</A></TH></TR></TBODY></TABLE></DIV> |
Но появилась проблема. Если обновить страницу регистрации, вылазит
Warning:
mysql_result() [function.
mysql-result]: Unable to jump to row 0 on MySQL result index 6 in Z:\home\test1.ru\www\include\user_register\uni-auth.
php on line 56
Warning: Cannot modify header information - headers already sent by (output started at Z:\home\test1.ru\www\forma_register.
php:13) in Z:\home\test1.ru\www\include\user_register\uni-auth.
php on line 26
Если ещё раз обновить, всё нормально, и так дальше. Такое происходит тока на этой странице.
Читал на
phpfaq про header, не помогло мне.
Посоветуйте как избавится от этой беды?
Спустя 1 день, 23 часа, 41 минута, 1 секунда (15.10.2009 - 17:25) vagrand написал(а):
А ты не пробовал проверить результат который возвращает код:
mysql_query("SELECT `sid` FROM `".USERS_TABLE."` WHERE `uid`='$uid';")
?
Он знаеш ли и фолс может вернуть