Помощник
|
Проверка. Зарегистрирован ли пользователь... |
dimjan4
|
Сообщение
#1
|
||
|
|
||
|
|||
Galen |
20.7.2009, 19:02;
Ответить: Galen
Сообщение
#2
|
|
Что за ошибку возвращает? :)
|
|
|
Apay |
20.7.2009, 19:16;
Ответить: Apay
Сообщение
#3
|
|
после запроса сделайте вывод ошибки, например так[php]$q1 = mysql_query ("SELECT * FROM `users` WHERE name='$login'");
if( $q1 === false ) echo mysql_error();[/php] |
|
|
Galen |
20.7.2009, 21:06;
Ответить: Galen
Сообщение
#4
|
|
А мне больше нравится так:
[PHP]$query = mysql_query($sql, $connect) or die("Ошибка: ".mysql_error());[/PHP] |
|
|
dimjan4
|
Сообщение
#5
|
|
Возвращает следующие ошибки:
Notice: Undefined variable: sq1 in z:\home\stena\www\reg.php on line 89 Warning: mysql_num_fields(): supplied argument is not a valid MySQL result resource in z:\home\stena\www\reg.php on line 89 Пользователь с таким именем уже зарегистрирован! на самом деле пользователь не зарегистрирован! |
|
|
Apay |
20.7.2009, 21:20;
Ответить: Apay
Сообщение
#6
|
|
Galen, совсем запутал человека :)
пишите в вашем случае [php]$q1 = mysql_query("SELECT * FROM `users` WHERE name='$login'") or die("Ошибка: ".mysql_error());[/php] die лучше вообще поменьше пользоваться (зачем убивать скрипт?), лучше обработать ошибку и продолжить формирование странички, имхо когда она (страничка) из-за какого-то сбоя рисуется только наполовину - не есть гут. |
|
|
dimjan4
|
Сообщение
#7
|
|
Ошибка таже!
Вот код reg.php [PHP]<?php include "mysql_con.php"; ?> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html><head> <meta http-equiv="Content-Type" content="text/html; charset=windows-1251"> <title>Регистрация</title> <style> body {background-image:url("images/background_1.gif");color:#333333;font-family:Arial;} .mes { width:350px; height:200px; text-align:center; background-image:url("images/background-message.png"); background-repeat:no-repeat; padding-top:70px; font-weight:bold; } </style> </head> <body> <table width="98%" height="98%" border="0"> <tr> <td align="center" valign="middle" class="white" > <div class="mes"> <?php if (empty($_POST['signup']) or empty($_POST['email'])) { print "До чего докатились, уже форму заполнить не можем..."; } else { if (!eregi("^([A-Za-z0-9А])", $_POST['signup']) or $_POST['signup'] == "") { print "Имя должно состоять из латинский букв и/или цифр!"; } else { if(!preg_match('/^(([^<>()[\]\\.,;:\s@"\']+(\.[^<>()[\]\\.,;:\s@"\']+)*)|("[^"\']+"))@((\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\])|(([a-zA-Z\d\-]+\.)+[a-zA-Z]{2,}))$/', $email)) { //error print "email некорректен!"; } else { if (strlen($_POST['signup']) > 25 or strlen($_POST['signup']) < 4) { $size = strlen($_POST['signup']); print "Логин не должен быть больше 25 или меньше 4 символов...<br/> У тебя ". $size; } else { $login = $_POST['signup']; $email = $_POST['email']; //pass $arr = array ('a','b','c','d','e','f', 'g','h','i','j','k','l', 'm','n','o','p','r','s', 't','u','v','x','y','z', 'A','B','C','D','E','F', 'G','H','I','J','K','L', 'M','N','O','P','R','S', 'T','U','V','X','Y','Z', '1','2','3','4','5','6', '7','8','9','0'); // Генерируем пароль $pass = ""; for($i = 0; $i < 10; $i++) { // Вычисляем случайный индекс массива $index = rand(0, count($arr) - 1); $pass .= $arr[$index]; } //End Pass $activation_code = rand(100000,999999); registration ($login,$email,$pass,$activation_code); } } } } ///Start registration function registration ($login,$email,$pass,$activation_code) { $q1 = mysql_query("SELECT * FROM `users` WHERE name='$login'") or die("Ошибка: ".mysql_error()); if (mysql_num_fields ( $sq1) == "0") { $q2 = mysql_query ("SELECT * FROM `users` WHERE email='$email'"); if (mysql_num_fields( $sq2) == "0") { mails ($login,$email,$pass,$activation_code); } else { print "Пользователь с таким <b>e-mail</b> 'ом уже зарегистрирован!"; } } else { print "Пользователь с таким <b>именем</b> уже зарегистрирован!"; } } ?> <br><img src="images/load.gif" width="150px" height="13px" border="0"/> <br> Через 5 секунд Я перекину тебя на главную страницу. <script language="javascript1.2"> setTimeout('location.href="index.php"',5000); </script> </div> </td> </tr> </table> </body> </html> <?php function mails() { $site_name = "mysite"; $subj = $site_name." robot"; $text = "Здравствуйте. \n Вы зарегистрировались на сайте $site_name \n Данные для активации и дальнейшей работы:\n Логин: $login \n e-mail: $email\n Пароль: $pass\n Пароль для активации $activation_code (его запоминать не надо)\n С уважением, робот $site_name\n"; $mails = mail($email, $subj, $text); if (!$mails) { print "Произошла ошибка!"; } else { print "Проверь почту!"; } } ?>[/PHP] |
|
|
Galen |
20.7.2009, 22:03;
Ответить: Galen
Сообщение
#8
|
|
Вам же пишут что нет такой переменной. Вот здесь опечатка:
[php]$q1 = mysql_query("SELECT * FROM `users` WHERE name='$login'") or die("Ошибка: ".mysql_error()); if (mysql_num_fields ( $sq1) == "0")[/php] die лучше вообще поменьше пользоваться (зачем убивать скрипт?), лучше обработать ошибку и продолжить формирование странички Согласен - если есть нормальная обработка исключительной ситуации. А при разработке, имхо, лучше полный die :) |
|
|
dimjan4
|
Сообщение
#9
|
|
Спасибо! Я как то не заметил...но теперь проблема в следующем:
Мне пишет: Пользователь с таким именем уже зарегистрирован! но таблица users пуста! |
|
|
Apay |
20.7.2009, 23:06;
Ответить: Apay
Сообщение
#10
|
|
|
mysql_num_rows вместо mysql_num_fields
|
|
|
||
|
Похожие темы
Тема | Ответов | Автор | Просмотров | Последний ответ | |
---|---|---|---|---|---|
Проверка позиций сайтов в поисковых системах с помощью Positon.ru Мониторинг продвижения сайтов |
183 | Positon | 179472 | 12.4.2024, 8:32 автор: Positon |
|
Проверка качества прогона по трастовым сайтам, профилям, каталогам | 0 | bestweb20_mw | 1401 | 21.12.2017, 18:36 автор: bestweb20_mw |
|
Фейк вконтакте - лучшая фотомодель (проверка на валид, админка) | 0 | Quant | 2216 | 26.5.2017, 14:33 автор: Quant |
|
Чистим сайты от вирусов, рекомендации, проверка сервера на уязвимость! | 80 | Rxp | 56609 | 16.2.2017, 15:05 автор: Andro11 |
|
Чекер-сервис аккаунтов, проверка баз e-mail, профилей, блогов | 19 | KrisGuseva | 19023 | 30.7.2015, 3:05 автор: KrisGuseva |
Текстовая версия | Сейчас: 20.4.2024, 1:39 |