powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / (PHP) Форма логина
18 сообщений из 18, страница 1 из 1
(PHP) Форма логина
    #32962430
DenisUA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Уважаемые! вот такое вопрос:
Вот мой код на странице входа
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
if ($lgn = '' | $pwd = '')
{
print "<br><br>
<form action=$PHP_SELF method=\"post\" name=\"Âîéòè\" id=\"Log in form\">
 <p> </p><p> </p>
 <table width=\"30%\" border=\"0\" align=\"center\">
   <tr>
     <td align=right class=manager>Èìÿ ïîëüçîâàòåëÿ:</td>
     <td><input name=\"lgn\" type=\"text\" id=\"lgn\" class=edit></td>
   </tr>
   <tr>
     <td align=right class=manager>Ïàðîëü: </td>
     <td><input name=\"pwd\" type=\"password\"  id=\"pwd\" class=edit></td>
   </tr>
   <tr valign=\"bottom\">
     <td height=\"40\"><div align=\"center\"></div></td>
     <td height=\"40\"><div align=\"center\"><input type=\"submit\" name=\"Submit\" value=\"Âîéòè\" class=btnOk></div></td>
   </tr></table></div>
</form>";
}
else
{
$strconnect = 'localhost:D:\HelpDesk\DB\HelpDesk.GDB';
if (!($db=ibase_connect($strconnect, 'sysdba', 'masterkey')))
   die('Ошибка при подключении: ' .  ibase_errmsg());

 $sql_login  = 'SELECT USERNAME,PASS,ADMINSTATUS FROM USERS WHERE USERNAME = :'.$lgn.' and PASS =:'.$pwd;
 $cursor = ibase_query($sql_login);
  if (!(ibase_fetch_row($cursor)))
   {
    print 'Ошибка в запросе';
    print $sql_login;
   }
    {
     print 'OK';
    }
}

не могу понять почему даже не показывает форму для ввода имени пользоавтеля и пароля, вроде все делаю по порядку: вывожу форму если пароль и логин пустые иначе делаю подключени и один запрос с параметрами...
подскажите что не так делаю?
...
Рейтинг: 0 / 0
(PHP) Форма логина
    #32962473
Фотография ScareCrow
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
  <?  error_reporting(E_ALL);
ini_set('display_errors', true
ini_set('html_errors', false); ?>
...
Рейтинг: 0 / 0
(PHP) Форма логина
    #32962485
Scey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В PHP проверка на равенство осуществляется с помощью операторов == и ===. А Вы используете оператор присваивания =. Его результатом является собственно присваиваемое значение, в данном случае пустая строка, без жесткой типизации эквивалент false.
В итоге
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
if (false | false)  // false!
{
// Отобразить форму
}
else
{
...
}
...
Рейтинг: 0 / 0
(PHP) Форма логина
    #32962514
DenisUA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо Scey, помогло...
и еще один вопрос...
как после логина переходить на другую страницу?
это наверно надо сделать в этом отрезке кода
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
if (!(ibase_fetch_row($cursor)))
   {
    print 'Нет записей';
    print $sql_login;
   }
    {
     print 'OK';
    }
тут я проверяю есть ли записи(если такой пользователь), и как после этого прей ти на следующую страницу?
...
Рейтинг: 0 / 0
(PHP) Форма логина
    #32962525
Фотография 4m@t!c
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не в тему, но.... DenisUA, выводить через print солидный кусок HTML-кода не есть хорошо.
----------------------------------------
Артисты не приехали, приехали цыгане
...
Рейтинг: 0 / 0
(PHP) Форма логина
    #32962566
Scey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Проще всего вместо
Код: plaintext
print 'OK';
в случае удачного входа сделать
Код: plaintext
include (<файл с нужной страницей>);
...
Еще вариант: форму входа сделать именно формой и задать у нее нужный action, а собственно проверку подключения и всего остального сделать уже на следующей странице.
...
Рейтинг: 0 / 0
(PHP) Форма логина
    #32962587
DenisUA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
24m@t!c, я попробовал....сделать вывод формы читсым хтмл-ом, тогда получаеться что в теге form в action ничего писать не надо? или опять в чем не прав?
...
Рейтинг: 0 / 0
(PHP) Форма логина
    #32962594
Фотография 4m@t!c
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
пример обработки формы
----------------------------------------
Артисты не приехали, приехали цыгане
...
Рейтинг: 0 / 0
(PHP) Форма логина
    #32962624
DenisUA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 4m@t!c
в твоем примере в action у формы пишеться <? echo $_SERVER['PHP_SELF'] ?>
это значит что обработка входа делается на той же странице, а как предать параметры входа (логин и пароль) на другую страницу?
то есть вот у меня акшин сейчас просто вот так выглядит action=Main.php
а как надо?
...
Рейтинг: 0 / 0
(PHP) Форма логина
    #32962657
Фотография 4m@t!c
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
передавать надо на ту страницу, которая производит авторизацию. Если нужно перенаправлять странцу, для это есть функция header
----------------------------------------
Артисты не приехали, приехали цыгане
...
Рейтинг: 0 / 0
(PHP) Форма логина
    #32962702
DenisUA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мне пока перенаправлять не надо, мне просто надо передать парамерты входа на другую страницу....как то сделать?
...
Рейтинг: 0 / 0
(PHP) Форма логина
    #32962758
DenisUA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вот сейчас попробовал сделть вот так
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
print "
<form action=Main.php?lgn=$lgn&pwd=$pwd method=\"post\" name=\"Âîéòè\" id=\"Log in form\">
 <p> </p><p> </p>
 <table width=\"30%\" border=\"0\" align=\"center\">
   <tr>
     <td align=right class=manager>Èìÿ ïîëüçîâàòåëÿ:</td>
     <td><input name=\"lgn\" type=\"text\" id=\"lgn\" class=edit></td>
   </tr>
   <tr>
     <td align=right class=manager>Ïàðîëü: </td>
     <td><input name=\"pwd\" type=\"password\"  id=\"pwd\" class=edit></td>
   </tr>
   <tr valign=\"bottom\">
     <td height=\"40\"><div align=\"center\"></div></td>
     <td height=\"40\"><div align=\"center\"><input type=\"submit\" name=\"Submit\" value=\"Âîéòè\" class=btnOk></div></td>
   </tr></table></div>
</form>";

открываеться страница Main.php но вот в таком виде
Main.php?lgn=&pwd=
то есть без параметров...почему?

попробовал вывод все формы на читом хтмле только в акшине написал <?php Main.php?lgn=$lgn&pwd=$pwd ?>
та же прблема? вроде бы все правильно делаю...почему не передаются параметры?
...
Рейтинг: 0 / 0
(PHP) Форма логина
    #32962808
*
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
*
Гость
...
Рейтинг: 0 / 0
(PHP) Форма логина
    #32962827
Фотография 4m@t!c
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
в атрибуте action указывается, тот скрипт, который обрабатывает данные формы.. В примере, что я дал это тот же скрипт... сли тебе надо другой скритп, пиши его имя... В чем проблема?
----------------------------------------
Артисты не приехали, приехали цыгане
...
Рейтинг: 0 / 0
(PHP) Форма логина
    #32962835
Scey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В action'е формы не нужно прописывать параметры. При submit'е они передадутся автоматически парами name=value методом, указанном в method формы.
...
Рейтинг: 0 / 0
(PHP) Форма логина
    #32962865
DenisUA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
фух...работает
я просто думал что эти параметры должны быть видны в строке адреса...а когда посмотрел через $_POST['pwd'] то все оказалось передаеться...
большое спасибо всем...
...
Рейтинг: 0 / 0
(PHP) Форма логина
    #32962872
Фотография 4m@t!c
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Прогугили два вопроса. "метод POST" и "метод GET"... Надйи, чем они отличаются, и сам ответь на вопросы, которые ты задавал...
----------------------------------------
Артисты не приехали, приехали цыгане
...
Рейтинг: 0 / 0
(PHP) Форма логина
    #32962928
DocAl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И всё ж таки, зачем это всё через print выдаётся?
...
Рейтинг: 0 / 0
18 сообщений из 18, страница 1 из 1
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / (PHP) Форма логина
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]