Модераторы: skyboy, MoLeX, Aliance, ksnk

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> проверочный код, не работает код проверки 
V
    Опции темы
hripun
Дата 15.4.2009, 18:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 59
Регистрация: 13.4.2009
Где: Краснадарский кра й

Репутация: нет
Всего: нет



Написал форму регистрации вставил код с циферками для проверки , но не могу сделать что бы проверял подленность кода(( любвые цифры вносиш и все равно регит(( что еще нужно ?


Код
 
<form method='post' action='register_new.php'>
           Логин:*<br>(до 16 символов)<br>
        <input type='text' name='username' size=20 maxlength=16><br>
                
           Ник:*<br>(до 16 символов)<br>
        <input type='text' name='usergame' size=20 maxlength=16><br>
           
           Пароль:*<br>(более 6 символов)<br>
        <input type='password' name='passwd' size=20 maxlength=16><br>
                         
           Ещё раз пароль:*<br>
        <input type='password' name='passwd2' size=20 maxlength=16><br>

        <?php $_SESSION["code"]=rand(1000, 99999);?>
               <p>Код проверки:*<br>
        
      &nbsp; &nbsp;&nbsp; &nbsp;&nbsp;<?php echo $_SESSION["code"];?><br>
      
           <input type="text" name="code"size=16> <br><br>                       
        <input type='submit' value='Регистрация'>
     </form>



register_new.php
Код

<?php
   // Включить файлы функций для данного приложения
   require_once('pak_fns.php');

  // Создать короткие имена переменных
  $email=$_POST['email'];
  $username=$_POST['username'];
  $passwd=$_POST['passwd'];
  $passwd2=$_POST['passwd2'];
   $code=$_POST['code'];
   
   // Запустить сеанс, который может потребоваться позже.
   // Его следует запустить сейчас, поскольку он должен
   // находиться перед заголовками.
   session_start();
 
   try
   {
     // Проверить, заполнены ли поля формы
     if (!filled_out($_POST))
     {
        throw new Exception('<h4>Вы не заполнили фору регистрации,<br> ' 
                            .'вернитесь и повторите попытку.
                            </h4><h4> <a href="register_form.php"><<Назад</a></h4>' );
    } 

?>     
      
<?php
     // Недопустимый адрес электронной почты
     if (!valid_email($email))
     {
    throw new Exception('<h4>Недопустимый адрес электронной почты.<br> Пожалуйста, '
                     .'вернитесь и повторите попытку.<h4> <a href="register_form.php"><<Назад</a></h4>');

     } 

     // Несовпадающие пароли 
     if ($passwd != $passwd2)
     {
        throw new Exception('<h4>Введенные пароли не совпадают.<br>Пожалуйста, ' 
                  .'вернитесь и повторите попытку.</h4><h4> <a href="register_form.php"><<Назад</a></h4>');
     }

     // Проверить длину пароля.
     if (strlen($passwd) < 1)
     {
        throw new Exception('<h4>Пароль должен иметь не менее 6 символов.<br> ' 
       .'Пожалуйста вернитесь и повторите попытку.</h4><h4> <a href="register_form.php"><<Назад</a></h4>');

     }

     // Проверить длину имени пользователя.
     if (strlen($username) > 16)
     {
        throw new Exception('<h4>Логин должен быть не более 16 символов.<br>' 
       .' Пожалуйста вернитесь  и повторите попытку.</h4><h4> <a href="register_form.php"><<Назад</a></h4>');

     }
     // Проверить подленность цифрового пароля.

        if ($_SESSION["code"]==$_POST["code"]) )
       {
        throw new Exception('<h4>Неправильно введен код проверки.<br>' 
       .' Пожалуйста вернитесь  и повторите попытку.</h4><h4> <a href="register_form.php"><<Назад</a></h4>');

       }

     // Предпринять попытку регистрации. Эта функция также
     // генерирует исключение.
     register($username,$usergame, $email, $passwd,$vozrast,$description,$pol);

     // Зарегистрировать переменную сеанса 
     $_SESSION['valid_user'] = $username;
     
     // Вывести ссылку на страницу, предназначенную для 
     // зарегистрированных пользователей
     do_html_header('<h4>Вы успешно зарегистрированы!</h4>');
     echo '<h4>Ваша регистрация прошла успешно.<br>


Это сообщение отредактировал(а) hripun - 15.4.2009, 19:00
PM MAIL ICQ   Вверх
NNaarreekk
Дата 15.4.2009, 19:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 768
Регистрация: 23.6.2007
Где: Армения

Репутация: 0
Всего: 3



Сделай:
Код

die($_SESSION["code"].'=='.$_POST["code"]);

и посмотри что выводит.

Если не совпадают а регистрация все равно идет,то $_POST["code"] замени на $code (Может Пост где-то меняется).
PM MAIL WWW   Вверх
hripun
Дата 15.4.2009, 19:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 59
Регистрация: 13.4.2009
Где: Краснадарский кра й

Репутация: нет
Всего: нет



попробовал :
Код

// Проверить подленность цифрового пароля.

        die($_SESSION["code"].'=='.$code
       {
        throw new Exception('<h4>Неправильно введен код проверки.<br>' 
       .' Пожалуйста вернитесь  и повторите попытку.</h4><h4> <a href="register_form.php"><<Назад</a></h4>');



И так :
Код

// Проверить подленность цифрового пароля.

        die($_SESSION["code"].'=='.$_POST["code"])
       {
        throw new Exception('<h4>Неправильно введен код проверки.<br>' 
       .' Пожалуйста вернитесь  и повторите попытку.</h4><h4> <a href="register_form.php"><<Назад</a></h4>');



Выводит только 
Parse error: parse error, unexpected T_THROW in T:\home\localhost\www\registr\register_new.php on line 68
PM MAIL ICQ   Вверх
enof
Дата 15.4.2009, 19:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 837
Регистрация: 23.1.2009
Где: Санкт-Петербург

Репутация: 30
Всего: 35



Цитата(hripun @  15.4.2009,  19:59 Найти цитируемый пост)
Написал форму регистрации

без знания синтаксиса языка? smile 
точку с запятой поставьте.

Это сообщение отредактировал(а) enof - 15.4.2009, 19:43
PM MAIL ICQ Skype   Вверх
hripun
Дата 15.4.2009, 19:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 59
Регистрация: 13.4.2009
Где: Краснадарский кра й

Репутация: нет
Всего: нет



Да знания очень слабые  по этому и спрашиваю совета!я только учусь всему . Смейся если хочеш ) мне не стыдно спрашивать то что не знаю smile .. а писал сидя с учебником в руках...
только не понял где запятую надо поставить(
PM MAIL ICQ   Вверх
bars80080
Дата 15.4.2009, 20:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 71
Всего: 315



так вот же, точка с запятой в конце
Код

die($_SESSION["code"].'=='.$_POST["code"]);

а здесь
Код

echo '<h4>Ваша регистрация прошла успешно.<br>

что за обрыв?
PM MAIL WWW   Вверх
enof
Дата 15.4.2009, 20:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 837
Регистрация: 23.1.2009
Где: Санкт-Петербург

Репутация: 30
Всего: 35



Цитата(hripun @  15.4.2009,  20:48 Найти цитируемый пост)
Смейся если хочеш )

Я не смеялся, а просто усомнился в том, что код был написан вами, ибо без знаний синтаксиса вообще-то это сложно. smile 
die() - функция(точнее языковая конструкция). В PHP каждая инструкция должна завершаться точкой с запятой, а так как выражение
Код

die($_SESSION["code"].'=='.$_POST["code"])

и является инструкцией, то нужно поставить ;

p.s.
Чтобы прочитать описание любой функции, нужно к адресу http://php.net/ добавить название функции.
http://php.net/die
PM MAIL ICQ Skype   Вверх
hripun
Дата 15.4.2009, 20:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 59
Регистрация: 13.4.2009
Где: Краснадарский кра й

Репутация: нет
Всего: нет



просто до конца код не вставлял ,думал не нужен ) вот что дальше 
Код

do_html_url('login.php', 
                 '<h4>Залогинтесь заного!</h4>');
     // Конец страницы
     do_html_footer(); 
 
   }
      


   catch(Exception $e)
   {
     do_html_header('Ошибка:');
     echo $e->getMessage();
     do_html_footer();
     exit;
   } 
?>


а точка с запятой там не чего не меняет 
с ; в конце вот такая ошибка 
Notice: Undefined index: code in T:\home\localhost\www\registr\register_new.php on line 66
==4324


Это сообщение отредактировал(а) hripun - 15.4.2009, 20:12
PM MAIL ICQ   Вверх
bars80080
Дата 15.4.2009, 20:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 71
Всего: 315



Цитата(hripun @  15.4.2009,  20:07 Найти цитируемый пост)
а точка с запятой там не чего не меняет  

странно, я думал даже при вырубленных ошибках такая синтаксическая ошибка вызовет фатальное завершение работы
PM MAIL WWW   Вверх
hripun
Дата 15.4.2009, 20:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 59
Регистрация: 13.4.2009
Где: Краснадарский кра й

Репутация: нет
Всего: нет



Просто ошибки меняются и всё ( а работать не хочет
PM MAIL ICQ   Вверх
enof
Дата 15.4.2009, 20:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 837
Регистрация: 23.1.2009
Где: Санкт-Петербург

Репутация: 30
Всего: 35



Какие ошибки?
PM MAIL ICQ Skype   Вверх
hripun
Дата 15.4.2009, 20:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 59
Регистрация: 13.4.2009
Где: Краснадарский кра й

Репутация: нет
Всего: нет



с таким кодом без кавычек
Код

die($_SESSION["code"].'=='.$_POST["code"])

пишет :
Parse error: parse error, unexpected '{' in T:\home\localhost\www\registr\register_new.php on line 67

с таким кодом
Код

die($_SESSION["code"].'=='.$_POST["code"]);


пишет :
Notice: Undefined index: code in T:\home\localhost\www\registr\register_new.php on line 66
==4324

Во как..
PM MAIL ICQ   Вверх
enof
Дата 15.4.2009, 20:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 837
Регистрация: 23.1.2009
Где: Санкт-Петербург

Репутация: 30
Всего: 35



session_start() ?
PM MAIL ICQ Skype   Вверх
hripun
Дата 15.4.2009, 20:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 59
Регистрация: 13.4.2009
Где: Краснадарский кра й

Репутация: нет
Всего: нет



не пойму вопроса..
PM MAIL ICQ   Вверх
enof
Дата 15.4.2009, 20:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 837
Регистрация: 23.1.2009
Где: Санкт-Петербург

Репутация: 30
Всего: 35



PM MAIL ICQ Skype   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.9385 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.