Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: не работает Enter
 
 автор: Dmitry1988   (26.04.2010 в 12:33)   письмо автору
 
 

Здравствуйте, возникла проблема, я написал простенькую форму для подтверждения пароля и когда я нажимаю enter, то ничего не происходит, только если мышкой нажму на кнопку работет. Подскажите пожалуйсто почему так. Заранее благожарен.
Вот код:

<?php
        $error 
= array();
        
$error['pass'] = Не правильный пароль';
        if($_POST['
go']!=''){  
        $_ERR = '';
        $_page = '';    
        $password = isset($_POST['
pass'])?mysql_escape_string($_POST['pass']):NULL;
        $pass = md5($password);
        $r_password = $_POST['
right_pass'];
        $r_pass = md5($r_password);
        if($pass!=$r_pass OR $pass==''){$_ERR.=$error['
pass'];}
        elseif($_ERR!='')
          {
          $_page.='
<p style="color:red; text-align:center;">Error:&nbsp;'.$_ERR.'</p>';
          }
          elseif(!isset($_SESSION['
guest']))
          {
          $_SESSION['
guest'] = '26062010';
          header("Location: cz/index.php");
          }
        }
        ?>
        <?=$_page;?>             
        <form action="" method="POST">
        Heslo/пароль:<br><input type="password" name="pass"><br />
        <input type="hidden" name="right_pass" value="26062010">
        <input type="submit" name="go" value="Ok">
        </form>

  Ответить  
 
 автор: Dmitry1988   (26.04.2010 в 12:48)   письмо автору
 
   для: Dmitry1988   (26.04.2010 в 12:33)
 

Еще уточню, не работает только в Експлорере, во всех остальных браузерах работет

  Ответить  
 
 автор: sim5   (26.04.2010 в 13:17)   письмо автору
 
   для: Dmitry1988   (26.04.2010 в 12:48)
 

Вы лучше поясните каким боком это имеет отношение к РНР?
Форма отправляет не клавишей Enter, а кнопкой SUBMIT, и по нажатию Enter может произойти только в том случае, если эта кнопка к этому моменту получила фокус.

  Ответить  
 
 автор: Dmitry1988   (26.04.2010 в 14:41)   письмо автору
 
   для: sim5   (26.04.2010 в 13:17)
 

Извиняюсь просто не знал в какйо форум написать. Так в томто и дело что когда я начинаю писать пароль, то кнопка фокусируется, и нажимая на нее ничего не происходит, т.е. происходит, он вроде как переадрессовывается на другую страницу, но не создает сессию,

if($_ERR!='')
          {
          $_page.='<p style="color:red; text-align:center;">Error:&nbsp;'.$_ERR.'</p>';
          }
          else
          {
          $_SESSION['guest'] = '26062010';
          header("Location: cz/index.php");
          }

поэтому вылетает обратно на страницу с паролем(у меня сверху прописан иф для этого).
Странно то что не работает только в Еxplorerе в остальных браузерах все работает как надо.

  Ответить  
 
 автор: sim5   (26.04.2010 в 14:53)   письмо автору
 
   для: Dmitry1988   (26.04.2010 в 14:41)
 

Атрибут action формы заполните аброкадаброй и проверьте - отправляется или нет.
http://www.graffity.biz/kb/form_submit_by_enter/
И почитайте о tabindex, а то не ровен час сведете с ума пользователей своих.

P.S. У вас в коде баги.

  Ответить  
 
 автор: Dmitry1988   (26.04.2010 в 15:19)   письмо автору
 
   для: sim5   (26.04.2010 в 14:53)
 

Спасибо за ссылочку, интересный сайт.
Вбил аброкадабру, все отправляется при нажатие энтра.

А где у меня скрываются баги? -(

  Ответить  
 
 автор: sim5   (26.04.2010 в 15:34)   письмо автору
 
   для: Dmitry1988   (26.04.2010 в 15:19)
 

НУ вот, а вы уважемого сэра Билла сразу вините. Ищите проблемы у себя.
А в коде своем (что здесь выставлен) внимательно посмотрите на подсветку - должны заметить в чем у вас проблема.

  Ответить  
 
 автор: Dmitry1988   (26.04.2010 в 15:42)   письмо автору
 
   для: sim5   (26.04.2010 в 15:34)
 

нашел,кавычку случайно удалил)
Значит буду сейчас искать в чес ошибка..
Спасибо за советы

  Ответить  
 
 автор: sim5   (26.04.2010 в 15:43)   письмо автору
 
   для: Dmitry1988   (26.04.2010 в 15:42)
 

одна кавычка пропущена, одна лишняя - зачем числовые значения обрамлять в кавычки?

  Ответить  
 
 автор: Dmitry1988   (26.04.2010 в 16:33)   письмо автору
 
   для: sim5   (26.04.2010 в 15:43)
 

убрал!
я тут пришел к тому, что если добавить хоть один инпут текстовый, то все работает нормально.
Т.е. одного инпута с паролем Эксплореру не хватает,чтобы работал энтер, нужен хотябы один текстовый инпут.
Решил эту пробему просто добавив инпут и убрав границы. -)

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования