|
| |
|
|
| |
для: SnooPI
(21.02.2007 в 03:07)
| | | а какой результат получиться, если вместо exit(), использовать "эху"? | |
| |
|
|
| |
|
|
| |
для: cheops
(21.02.2007 в 03:01)
| | | А мне надо не на пару сек, а сразу, как загрузилась страница регистрации :) | |
| |
|
|
| |
|
|
| |
для: SnooPI
(21.02.2007 в 02:59)
| | | Если вам нужно пару секунд, то измените блок
<?php
echo "<HTML><HEAD>
<META HTTP-EQUIV='Refresh' CONTENT='0; URL=users.php'>
</HEAD></HTML>";
?>
|
на
<?php
echo "<HTML><HEAD>
<META HTTP-EQUIV='Refresh' CONTENT='2; URL=users.php'>
</HEAD></HTML>";
?>
|
| |
| |
|
|
| |
|
|
| |
для: cheops
(21.02.2007 в 02:53)
| | | Ок, в след.раз большие коды буду прикреплять....
Мне надо чтобы сразу при открытии страцины были копирайты...а так они появляются либо после того как нажал "регистрация" на пару сек, и лио после ошибки :) | |
| |
|
|
| |
|
|
| |
для: SnooPI
(21.02.2007 в 02:41)
| | | Потому что либо останавливается работа скрипта при помощи exit() либо скрип уходит на переадресацию, последний блок следует переписать так
<?php
if(mysql_query($query))
{
// Осуществляем перезагрузку страницы,
// чтобы сбросить POST-данные
echo "Регистрация успешно завершена";
include "copyright.php";
echo "<HTML><HEAD>
<META HTTP-EQUIV='Refresh' CONTENT='0; URL=users.php'>
</HEAD></HTML>";
}
else
{
include "copyright.php";
exit("Ошибка при добавлении данных - ".mysql_error());
}
?>
|
PS Такие здоровые листинги лучше прикреплять в виде файла, иначе тема быстро разрастается и в неё заглядывает мало народу, следовательно и шанс получить ответ резко уменьшается. | |
| |
|
|
| |
|
|
| |
для: retsoul
(21.02.2007 в 02:45)
| | | Зайди на мой сайт и на сраницу регистрации....видишь , снизу нет копирайтов которые я на самом деле инклюду в файле | |
| |
|
|
| |
|
|
| |
для: SnooPI
(21.02.2007 в 02:41)
| | | > Почему нет инклюды последней, а именно include "copyright.php" ?
не совсем понятно в чём вопрос :) | |
| |
|
|
| |
|
|
| |
для: cheops
(21.02.2007 в 02:35)
| | | Чтобы не мусорить новыми темами, не могли бы вы мне тут ответить на вопрос? :)
Вот мой файл регистр.пхп
<?php include "header.php";?>
<script type="text/javascript" src="check.js"></script>
<table class=body width=250>
<form method=post>
<tr><td>Имя:<small> (Латинскими)</small></td></tr><tr><td><input type=text name=name maxlength="15"></td></tr>
<tr><td>Пароль:<br><input type=password name=pass id=pass onkeyup="javascript:pass_check();"></td><td width=20> </td>
<td>Повторите пароль:<br><input type=password name=repass id=repass onkeyup="javascript:pass_check();"></td>
<td id=image></td></tr>
<tr><td>E-mail:</td></tr><tr><td><input type=text id=email onkeyup="javascript:email_check();" name=email></td></tr>
<tr><td>Icq:</td></tr><tr><td><input type=text name=icq id=icq onkeyup="javascript:icq_check();" maxlength="9"></td></tr>
<tr><td >Сайт: <small>(без "http://")</small></td></tr><tr><td><input type=text name=url></td></tr>
<tr><td align=right><input class=button type=submit title="Регистрация" id="but" value='Регистрация'></td></tr>
</form>
</table>
<?php
// Обработчик HTML-формы
/////////////////////////////////////////////////
// 1. Блок проверки правильности ввода данных
/////////////////////////////////////////////////
// Удаляем лишние пробелы
$_POST['name'] = trim($_POST['name']);
$_POST['pass'] = trim($_POST['pass']);
$_POST['repass'] = trim($_POST['repass']);
//Ставим слешы перед кавычками
$_POST['name'] = addslashes($_POST['name']);
$_POST['pass'] = addslashes($_POST['pass']);
$_POST['repass'] = addslashes($_POST['repass']);
$_POST['url'] = addslashes($_POST['url']);
$_POST['icq'] = addslashes($_POST['icq']);
// Проверяем, правильно ли заполнены обязательные поля
$error = array("Поле 'Имя' не заполнено",
"Поле 'Пароль' не заполнено",
"Пожалуйста, повторите пароль",
"Пароли не совпадают",
"Недопустимый логин.<br>",
"Имя должно содержать только латинские буквы!!!",
"Поле 'ICQ' должно содержать от 5 до 9 цифр",
"Длина ICQ номера должна быть от 5 до 9 цифр",
"Длина ICQ номера должна быть не больше 9 цифр",
"Поле 'E-mail' должно соответствовать формату billy@microsoft.com",
"Такое имя уже зарегистрировано!!!",
"Такой e-mail уже имеется в базе данных!!!",
"С вашего IP-адреса уже производилась регистрация");
if(empty($_POST['name']))
exit();
if(empty($_POST['name']))
exit ($error[0]);
if(empty($_POST['pass']))
exit($error[1]);
if(empty($_POST['repass']))
exit($error[2]);
if($_POST['pass'] != $_POST['repass'])
exit($error[3]);
// Проверяем на кол-во символов
if( in_array( strtolower($_POST['name']), array("mysql","apache","guest","root","admin","nobody","ftp","Isis","SnooPI","ftp")))
exit ($error[4]);
if(!preg_match("|^[-0-9a-z_]+$|i",
$_POST['name']))
exit($error[5]);
if(!empty($_POST['icq'])){
if(!preg_match("|^[\d]+$|", $_POST['icq']))
{
exit($error[6]);
}
if( strlen($_POST['icq']) < 5 || strlen($_POST['icq']) > 9)
exit($error[7]);
}
// Если введен e-mail, проверяем его на соответствие
if(!empty($_POST['email']))
{
if(!preg_match("|^[-0-9a-z_]+@[-0-9a-z_]+\.[a-z]{2,6}$|i",
$_POST['email']))
{
exit($error[9]);
}
}
if (!get_magic_quotes_gpc())
{
$_POST['name'] = mysql_escape_string($_POST['name']);
$_POST['pass'] = mysql_escape_string($_POST['pass']);
$_POST['email'] = mysql_escape_string($_POST['email']);
$_POST['url'] = mysql_escape_string($_POST['url']);
$_POST['icq'] = mysql_escape_string($_POST['icq']);
}
/////////////////////////////////////////////////
// 2. Блок проверки имени на уникальность
/////////////////////////////////////////////////
// Устанавливаем соединение с базой данных
require_once("config.php");
// Проверяем, не было ли переданное имя зарегистрировано ранее
$query = "SELECT COUNT(*) FROM users WHERE name = '$_POST[name]'";
$usr = mysql_query($query);
if(!$usr)
exit("Ошибка - ".mysql_error());
$total = mysql_result($usr, 0);
if($total > 0)
{
exit($error[10]);
}
// Проверяем, не был ли e-mail зарегистрирован ранее
$query = "SELECT COUNT(*) FROM users WHERE email = '$_POST[email]'";
$usr = mysql_query($query);
if(!$usr)
exit("Ошибка - ".mysql_error());
$total = mysql_result($usr, 0);
if($total > 0)
{
exit($error[11]);
}
$ip = $_SERVER['REMOTE_ADDR'];
$query = "SELECT COUNT(*) FROM users WHERE ip = '$ip'";
$usr = mysql_query($query);
if(!$usr)
exit("Ошибка - ".mysql_error());
$total = mysql_result($usr, 0);
if($total > 0 && $ip != '89.169.133.209')
{
exit($error[12]);
}
///////////////////////////////
/////////////////////////////////////////////////
// 3. Блок регистрации пользователя
/////////////////////////////////////////////////
// Формируем и выполняем SQL-запрос на
// добавление нового пользователя
$_POST['pass'] = md5($_POST['pass']);
$query = "INSERT INTO users
VALUES(NULL,
'$_POST[name]',
'$_POST[pass]',
'$_POST[email]',
'$_POST[url]',
'$_POST[icq]',
'$ip',
'0')";
if(mysql_query($query))
{
// Осуществляем перезагрузку страницы,
// чтобы сбросить POST-данные
echo "Регистрация успешно завершена";
echo "<HTML><HEAD>
<META HTTP-EQUIV='Refresh' CONTENT='0; URL=users.php'>
</HEAD></HTML>";
} else exit("Ошибка при добавлении данных - ".mysql_error());
?>
<?php include "copyright.php"; ?>
|
Вопрос:
Почему нет инклюды последней, а именно include "copyright.php" ??
Пробовал куда только можно вставить...все равно нету !!!!
Хотя был вариант, но тогда сообщения о ошибках пишутся под копирайтами и их не видно ) | |
| |
|
|
| |
|
|
| |
для: SnooPI
(21.02.2007 в 02:32)
| | | Под новые вопросы лучше заводить новые темы. | |
| |
|
|
| |
|
|
| |
для: retsoul
(21.02.2007 в 02:27)
| | | оО спасибо вам большое !!!!!!!
Биг респект ))
А вот проблемка))
куки....как сделать куки при авторизации | |
| |
|
|
|