<?php
include "conect.php";
if(isset($_POST['submit']))
{$login=$_POST['login'];
$name=$_POST['name'];
$family=$_POST['family'];
$pas=$_POST['pas'];
$repas=$_POST['repas'];
$mail=$_POST['mail'];
$url=$_POST['url'];
$inform=$_POST['inform'];
$gr=$_POST['gr'];
$mr=$_POST['mr'];
$dr=$_POST['dr'];
If (!$conect) {echo('Соединение с сервером не было установлено!<br>');}
$condb=mysql_select_db($dbname,$conect);
If (!$condb) {echo('Соединение с базой данных не было установлено!<br>');}
mysql_query("set character_set_client='windows-1251'");
mysql_query("set character_set_results='windows-1251'");
mysql_query("set collation_connection='windows-1251'");
$result=mysql_query("CREATE TABLE users
(id MEDIUMINT NOT NULL AUTO_INCREMENT,
login varchar(30),
name varchar(30),
family varchar(30),
Password varchar(20),
Mail varchar(20),
URL varchar(20),
Inform varchar(450),
YearB text,
MonthB text,
DayB text,
sid varchar(35),
PRIMARY KEY (id))",$conect);
if ($pas==$repas)
{
$sql="SELECT * FROM users WHERE Login='$login'";
$result=mysql_query($sql);
if (mysql_num_rows($result))
{echo ('
<center>
<div>
<center>
<br><strong>Ошибка! </strong><font color="#CC6666"><strong><br>Введенный вами логин уже существует! </strong></font>
</center>
<a href="index.php">Вернитесь назад</a> и попробуйте снова.
</div>
</center>');}
else
{$sql="INSERT INTO users VALUES('0', '$login', '$name', '$family', '$pas', '$mail', '$url', '$inform', '$gr', '$mr', '$dr', '')";
if (mysql_query($sql)) {echo ('<br>Пользователь успешно зарегистрирован! <a href="'.$site.'">Перейдите на главную страницу и авторизируйтесь!');}
else
{echo ('
<center>
<div>
<center>
<br><strong>Ошибка! </strong><font color="#CC6666"><strong><br>Ошибка при регистрации.</strong></font>
</center>
<a href="index.php">Вернитесь назад</a> и попробуйте снова.
</div>
</center>');}}
}
else
{echo ('
<center>
<div >
<center>
<br><strong>Ошибка! </strong><font color="#CC6666"><strong><br>Введенные вами пароли не совпадают!</strong></font>
</center>
<a href="index.php">Вернитесь назад</a> и попробуйте снова.
</div>
</center>');}
mysql_close($conect);}
?>
Спустя 1 день, 14 часов, 6 минут, 29 секунд (25.12.2010 - 04:19) PiratXXX написал(а):
denis79513
Я так понял это регистрация пользователей!?да?
1. Делай обработку $_POST.
Если ошибки отключены, то все норм, а если нет будет ошибки(использование переменных которые не определены) например вот так:
Notice: Undefined variable: name in Z:\home\localhost\www\dana\test.php on line 2
Обрабатывай так:
2. Зачем создавать тут же таблицу? Лично я создаю вручную, и заношу данные уже в готовую.
3. Такой запрос вижу впервой!)
Расскажи пож. как он у тебя вообще что-то зановит в БД?
Делай так:
4. Из все тогоже запроса,я понял что (выделенное значение это id)
Неправильно!
Давай рассуждать, это получается что каждый пользователь будет иметь id равный 0. Вопрос: зачем он тогда нужен!?)))
Тогда при создании таблици делай id AUTO_INCREMENT, ой а он утебя так и сделан.?сори!)
НО тогда получается что 0 (нолик), ты записываешь на место Логина!!! убери эту фичу...)))[/php]
5. Вот это сравнение:
делай так:
Я так понял это регистрация пользователей!?да?
1. Делай обработку $_POST.
Если ошибки отключены, то все норм, а если нет будет ошибки(использование переменных которые не определены) например вот так:
Notice: Undefined variable: name in Z:\home\localhost\www\dana\test.php on line 2
Обрабатывай так:
$login = (isset($_POST['login'])) ? $_POST['login'] : NULL;
$login = (get_magic_quotes_gpc()) ? (trim(strip_tags(mysql_real_escape_string(stripslashes($login))))) : (trim(strip_tags(mysql_real_escape_string($login)))) ;
2. Зачем создавать тут же таблицу? Лично я создаю вручную, и заношу данные уже в готовую.
3. Такой запрос вижу впервой!)
Расскажи пож. как он у тебя вообще что-то зановит в БД?
$sql="INSERT INTO users VALUES('0', '$login', '$name', '$family', '$pas', '$mail', '$url', '$inform', '$gr', '$mr', '$dr', '')";
Делай так:
$sql = "INSERT INTO `users` (`login`, `name`, `surname` и т.д.) VALUES ('".$login."', '".$name."', '".$surname."' и т.д.)";
4. Из все тогоже запроса,я понял что (выделенное значение это id)
$sql="INSERT INTO users VALUES('0', '$login', '$name', '$family', '$pas', '$mail', '$url', '$inform', '$gr', '$mr', '$dr', '')";
Неправильно!
Давай рассуждать, это получается что каждый пользователь будет иметь id равный 0. Вопрос: зачем он тогда нужен!?)))
Тогда при создании таблици делай id AUTO_INCREMENT, ой а он утебя так и сделан.?сори!)
НО тогда получается что 0 (нолик), ты записываешь на место Логина!!! убери эту фичу...)))[/php]
5. Вот это сравнение:
if ($pas==$repas)
делай так:
if ($pas===$repas)
Спустя 27 минут, 35 секунд (25.12.2010 - 04:47) inpost написал(а):
Сначала в мою подпись, и проходи всё по полочкам, потом в раздел: кодировки, там ответ на твой вопрос прикреплён от Твина.
Спустя 7 часов, 18 минут, 8 секунд (25.12.2010 - 12:05) denis79513 написал(а):
Цитата |
там ответ на твой вопрос прикреплён от Твина. |
Где? Это я поставил:
mysql_query("set character_set_client='windows-1251'");
mysql_query("set character_set_results='windows-1251'");
mysql_query("set collation_connection='windows-1251'");
И главное то что если что-то при реистрации пишешь на английском, заносится, а на русском, не то чтобы звездочками оно вообще не записывается. Чего еще не хватает?
Спустя 2 часа, 21 минута, 49 секунд (25.12.2010 - 14:27) sharki написал(а):
denis79513
Попробуй насильно конвертировать переменные в нужную тебе кодировку функцией iconcv();
например:
Как видишь первое занчение - это с какой кодировки, а второе в какую и третьим указывается переменная которая подвергается перекодировки.
Поиграйся с кодировками.
PiratXXX
Ты с ума сошел обрабатывать так переменные??? О_О
Попробуй насильно конвертировать переменные в нужную тебе кодировку функцией iconcv();
например:
$name = iconv("UTF-8", "windows-1251", "$name");
Как видишь первое занчение - это с какой кодировки, а второе в какую и третьим указывается переменная которая подвергается перекодировки.
Поиграйся с кодировками.
PiratXXX
Ты с ума сошел обрабатывать так переменные??? О_О
$login = (get_magic_quotes_gpc()) ? (trim(strip_tags(mysql_real_escape_string(stripslashes($login))))) : (trim(strip_tags(mysql_real_escape_string($login)))) ;
Спустя 13 минут, 36 секунд (25.12.2010 - 14:41) PiratXXX написал(а):
sharki
ну почти.)))
раньше у меня было разделено на два шага:
Ну если ты это имел ввиду.
Ну а потом решил объеденить. но всеравно сильно дофига места в коде занимает(ну у меня таким образом переменных 20 обработывается),
так что буду переделывать и в цикле обрабатывать.sharki
sharki
[/php]
А ище объясни пож. как у него вообще что-то может заносить. чет я не пойму.
ШО ЭТО ЗА ЗАПРОС? :o
ну почти.)))
раньше у меня было разделено на два шага:
if(get_magic_quotes_gpc()) {
$login = (stripslashes($login));
}
$login = (trim(strip_tags(mysql_real_escape_string($login))));
Ну если ты это имел ввиду.
Ну а потом решил объеденить. но всеравно сильно дофига места в коде занимает(ну у меня таким образом переменных 20 обработывается),
так что буду переделывать и в цикле обрабатывать.sharki
sharki
[/php]
А ище объясни пож. как у него вообще что-то может заносить. чет я не пойму.
ШО ЭТО ЗА ЗАПРОС? :o
$sql="INSERT INTO users VALUES('0', '$login', '$name', '$family', '$pas', '$mail', '$url', '$inform', '$gr', '$mr', '$dr', '')";
Спустя 10 минут, 29 секунд (25.12.2010 - 14:51) sharki написал(а):
он не дописан)
По идее твой запрос верный
А что ты хотел спросить то?))
По идее твой запрос верный
$sql = "INSERT INTO `users` (`login`, `name`, `surname` и т.д.) VALUES ('".$login."', '".$name."', '".$surname."' и т.д.)";
А что ты хотел спросить то?))
Спустя 7 часов, 31 минута, 45 секунд (25.12.2010 - 22:23) PiratXXX написал(а):
sharki
Я хотел спросить что ты имел ввиду, что я сошел с ума?
Я хотел спросить что ты имел ввиду, что я сошел с ума?
Спустя 59 минут, 49 секунд (25.12.2010 - 23:23) sharki написал(а):
PiratXXX
Имел введу что слишком много защит. strip_tags не желательно использовать, может я хочу ник <?sharki?> а он у тебя всё вырежит =)) почитай про защиту тут где то на форуме прикрепленная статья от twin'a
Имел введу что слишком много защит. strip_tags не желательно использовать, может я хочу ник <?sharki?> а он у тебя всё вырежит =)) почитай про защиту тут где то на форуме прикрепленная статья от twin'a
Спустя 1 день, 21 минута, 38 секунд (26.12.2010 - 23:44) PiratXXX написал(а):
sharki
а ты не хоти!)
мой сайт мои правила!
а ты не хоти!)
мой сайт мои правила!