[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Регистрация
shvedsd
Вот сама регистрация
<?php
include('head.php');
$page='register1.php';
pagelogs($user, $page, move);
?>
<!-- ---------------------------------------------------------------- -->
<?php
$gender=$_POST['gender'];
$name=$_POST['name'];
$age=$_POST['age'];
$nick=$_POST['nick'];

if (!$nick) $nick=$_POST['reguser'];

echo "<table bgcolor=#f1f1cc width=100%><tr><td>";

if (!$_POST['reguser']or!$_POST['regpass1']or!$_POST['regpass2']) {
echo "зарегся <a href=\"register1.php\">тут</a>, А то че не вписал данные все <br>";
} else {

$pass1=$_POST['regpass1'];
$pass2=$_POST['regpass2'];
$user=$_POST['reguser'];


if ($pass1 <> $pass2) {
echo "пароль на совпадает зарегся <a href=\"register1.php\">тут</a>заново";
} else {

$res=mysql_fetch_array(mysql_query("select id from users where user='".$user."'"));
if ($res) {
echo "Ваш ник ".$user." уже в базе данных<br>";
} else {
$pass3=sha1(md5($pass1)."Cool");
mysql_query("INSERT INTO users (user,password,rank, numfoto) VALUES ('".$user."','".$pass3."',5,1);");

if ($name) mysql_query("update users set name='$name'where user='".$user."';");
if ($nick) mysql_query("update users set nick='$nick' where user='".$user."';");
if ($age) mysql_query("update users set age='$age' where user='".$user."';");
if ($gender) mysql_query("update users set gender='$gender' where user='".$user."';");
mysql_query("update users set style='1' where user='".$user."';");

echo "Привет тебе, ".$user."! ты записан в нашу базу данных <br>";
echo "настоятельно рекомендуем проверить свой <a href=infome.php>профиль</a>!!!";

echo "<br><a href=\"index.php\">главная</a>";
$res=mysql_fetch_array(mysql_query("select id from users where user='".$user."'"));
$id=$res['id'];
setcookie('cckbest',($id*6-4)*6,time()+60*60*24*365);
$_SESSION['user']=$user;
}
}
}


echo "</td></tr></table>";


?>
<!-- ---------------------------------------------------------------- -->
<?php
include('foot.php');
?>


как можно сделать что бы нельзя было регистрировать ники и пароли с тегами и с пробелами
пробывал вставить это
//если логин и пароль введены,то обрабатываем их, чтобы теги и скрипты не работали
$user = stripslashes($user);
$user = htmlspecialchars($user);
$pass1 = stripslashes($pass1);
$pass1 = htmlspecialchars($pass1);
$pass2 = stripslashes($pass2);
$pass2 = htmlspecialchars($pass2);
//удаляем лишние пробелы
$user = trim($user);
$pass1 = trim($pass1);
$pass2 = trim($pass2);


не помогло



Спустя 25 минут (5.08.2011 - 17:35) Winston написал(а):
Чтобы разрешить регу только с буквами, цифрами и - в логине
можно проверку сделать
if(preg_match("#^[a-z0-9-]+$#iu", $user))
{
... код
}
else
exit('Логин содержит запрещенные символы');

Цитата (shvedsd @ 5.08.2011 - 17:10)
$user = stripslashes($user);
    $user = htmlspecialchars($user);
    $pass1 = stripslashes($pass1);
    $pass1 = htmlspecialchars($pass1);

Перед записью в базу эти манипуляции лишние. htmlspecialchars вызывать когда уже будешь логин на страницу выводить.

Спустя 8 минут, 46 секунд (5.08.2011 - 17:43) shvedsd написал(а):
а можно пожалуйста поподробней что куда именно записывать?

Спустя 11 часов, 41 минута, 57 секунд (6.08.2011 - 05:25) Druids написал(а):
Цитата (shvedsd @ 5.08.2011 - 14:43)
а можно пожалуйста поподробней что куда именно записывать?

Сделай проверку.
Если кнопка регистрации нажата то выполняется проверка, на ошибки, как уже написал Winston, если есть ошибки то выводи их на экран, а если нет ошибок то пишемся в базу и выводим сообщение.

Спустя 1 час, 3 минуты, 58 секунд (6.08.2011 - 06:29) YVSIK написал(а):
Попробуем привести ваш скрипт в удобночитаемый
Свернутый текст
<?php 
include ('head.php');
$page = 'register1.php';
pagelogs($user, $page, move);
?>
<!-- ---------------------------------------------------------------- -->
<?php $gender = $_POST['gender'];
$name = $_POST['name'];
$age = $_POST['age'];
$nick = $_POST['nick'];

if(!$nick)
{
$nick = $_POST['reguser'];
}
echo "<table bgcolor=#f1f1cc width=100%><tr><td>";

if(!$_POST['reguser'] or !$_POST['regpass1'] or !$_POST['regpass2'])
{
echo "зарегся <a href=\"register1.php\">тут</a>, А то че не вписал данные все <br>";
}
else
{
$pass1 = $_POST['regpass1'];
$pass2 = $_POST['regpass2'];
$user = $_POST['reguser'];

if($pass1 < > $pass2)
{
echo "пароль на совпадает зарегся <a href=\"register1.php\">тут</a>заново";
}
else
{
$res = mysql_fetch_array(mysql_query("select id from users where user='".$user."'"));

if($res)
{
echo "Ваш ник ". $user ." уже в базе данных<br>";
}
else
{
$pass3 = sha1(md5($pass1) ."Cool");
mysql_query("INSERT INTO users (user,password,rank, numfoto) VALUES ('".$user."','".$pass3."',5,1);");

if($name)
{
mysql_query("update users set name='$name'where user='".$user."';");
}

if($nick)
{
mysql_query("update users set nick='$nick' where user='".$user."';");
}

if($age)
{
mysql_query("update users set age='$age' where user='".$user."';");
}

if($gender)
{
mysql_query("update users set gender='$gender' where user='".$user."';");
}
mysql_query("update users set style='1' where user='".$user."';");
echo "Привет тебе, ". $user ."! ты записан в нашу базу данных <br>";
echo "настоятельно рекомендуем проверить свой <a href=infome.php>профиль</a>!!!";
echo "<br><a href=\"index.php\">главная</a>";
$res = mysql_fetch_array(mysql_query("select id from users where user='".$user."'"));
$id = $res['id'];
setcookie('cckbest', ($id * 6 - 4) * 6, time() + 60 * 60 * 24 * 365);
$_SESSION['user'] = $user;
}
}
}

echo "</td></tr></table>";
?>
<!-- ---------------------------------------------------------------- -->
<?php include ('foot.php');
?>

В--сё! ; теперь лучше; осталось добавить коментарии что и для чего служит;
только тогда будет понятно куда добавить что ты спросил;
Цитата
а можно пожалуйста поподробней что куда именно записывать?

Спустя 4 часа, 43 минуты, 40 секунд (6.08.2011 - 11:13) shvedsd написал(а):
я в этом не очень силён я даже не представляю что куда вводить=(

Спустя 4 часа, 10 минут, 27 секунд (6.08.2011 - 15:23) YVSIK написал(а):
Цитата
добавить коментарии что и для чего служит;

что тут сложного то?? прописываешь для каждой строки пояснение для чего служит такой-то оператор
как пример)) вот добавил в твой код коменты
<?php
include('head.php'); // подключение такого-то файла (head.php)
$page='register1.php'; // присвоение переменной $page значения register1.php
pagelogs($user, $page, move); // и так далее и в том-же духе))
?>

ну и как следствие повышаешь свои знания и и уровень :rolleyes:
Свернутый текст
чтоб не сидеть на месте достигнутом)) ; надо расширяться и двигаться к новым горизонтам!!

Спустя 58 минут, 40 секунд (6.08.2011 - 16:22) shvedsd написал(а):
("#^[a-z0-9-]+$#iu", $user)
какие тут он запрещает знаки писать?

Спустя 13 минут, 2 секунды (6.08.2011 - 16:35) YVSIK написал(а):
Свернутый текст
ТЬФУ ТЫЖ!! тебе про Фому а ты опять про Ерёму

так и буду из тебя вытягивать клещами что ты не понял
Цитата
я в этом не очень силён я даже не представляю что куда вводить=(


Ну что тут скажешь biggrin.gif Правила ведения переписки Правила форума читай потом задавай вопросы
Свернутый текст
пока не выучишь правила отвечать не буду))

интересно в чем ты силен?

Спустя 42 минуты, 32 секунды (6.08.2011 - 17:18) shvedsd написал(а):
да не я уже сделал просто
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.