Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: формы
Форумы портала PHP.SU » » Вопросы новичков » формы

Страниц (1): [1]
 

1. Cobalt779 - 24 Марта, 2017 - 10:24:30 - перейти к сообщению
index.php
PHP:
скопировать код в буфер обмена
  1. <?
  2.   include 'secret.php';
  3.   foreach ($users as $user) {
  4.     if ($user['username'] == $_POST['login'] && $user['password'] == $_POST['password']){
  5.       $autorization = 'ЫЧ';
  6.       break;
  7.     } else {
  8.       $autorization = FALSE;
  9.     }
  10.   }
  11. ?>
  12. <!DOCTYPE html>
  13. <html lang="en">
  14. <head>
  15.         <meta charset="utf-8">
  16.         <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
  17.         <title>Форма авторизации</title>
  18.         <link rel="stylesheet" href="css/style.css">
  19. </head>
  20. <body>
  21.   <?
  22.  
  23.    
  24.   if ($autorization) {
  25.     echo "<div class='norm_div'><h1>Добро пожаловать на свою страницу ".$_POST['login']."</h1></div>";}
  26.   else {
  27.         ?>
  28.  
  29.   <form method="post" action="index.php" class="login">
  30.     <p>
  31.       <label for="login">Логин:</label>
  32.       <input type="text" name="login" id="login" value="">
  33.     </p>
  34.  
  35.     <p>
  36.       <label for="password">Пароль:</label>
  37.       <input type="password" name="password" id="password" value="">
  38.     </p>
  39.  
  40.     <p class="login-submit">
  41.       <button type="submit" class="login-button">Войти</button>
  42.     </p>
  43.     <!-- <p class="forgot-password"><a href="index.html">Забыл пароль?</a></p> -->
  44.  
  45.     <!-- <p class="forgot-password"><a href="index.html">Забыл пароль?</a></p> --><!-- <p class="forgot-password"><a href="index.html">Забыл пароль?</a></p> -->
  46.  
  47.   </form>
  48.   <?}
  49. ?>
  50. </body>
  51. </html>
  52.  






secret.php
PHP:
скопировать код в буфер обмена
  1. <?
  2.         $users = [
  3.                 '1' => [
  4.                 'username' => 'admin',
  5.                 'password' => 'admin',
  6.                 ],
  7.                 '2' => [  
  8.                 'username' => 'demo',
  9.                 'password' => 'demo',
  10.                 ],
  11.                 '3' => [
  12.         'username' => 'demonka',
  13.                 'password' => 'demonka',
  14.                 ]
  15.         ];
  16. ?>

форма работает а вот начинаю валидацию делать крашится
не судите строго
2. yaji2k - 24 Марта, 2017 - 14:49:34 - перейти к сообщению
ошибки какие нибудь выдает?
3. quad - 25 Марта, 2017 - 11:43:03 - перейти к сообщению
Cobalt779 пишет:
index.php
PHP:
скопировать код в буфер обмена
  1. <?
  2.   include 'secret.php';
  3.   foreach ($users as $user) {
  4.     if ($user['username'] == $_POST['login'] && $user['password'] == $_POST['password']){
  5.       $autorization = 'ЫЧ';
  6.       break;
  7.     } else {
  8.       $autorization = FALSE;
  9.     }
  10.   }
  11. ?>
  12. <!DOCTYPE html>
  13. <html lang="en">
  14. <head>
  15.         <meta charset="utf-8">
  16.         <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
  17.         <title>Форма авторизации</title>
  18.         <link rel="stylesheet" href="css/style.css">
  19. </head>
  20. <body>
  21.   <?
  22.  
  23.    
  24.   if ($autorization) {
  25.     echo "<div class='norm_div'><h1>Добро пожаловать на свою страницу ".$_POST['login']."</h1></div>";}
  26.   else {
  27.         ?>
  28.  
  29.   <form method="post" action="index.php" class="login">
  30.     <p>
  31.       <label for="login">Логин:</label>
  32.       <input type="text" name="login" id="login" value="">
  33.     </p>
  34.  
  35.     <p>
  36.       <label for="password">Пароль:</label>
  37.       <input type="password" name="password" id="password" value="">
  38.     </p>
  39.  
  40.     <p class="login-submit">
  41.       <button type="submit" class="login-button">Войти</button>
  42.     </p>
  43.     <!-- <p class="forgot-password"><a href="index.html">Забыл пароль?</a></p> -->
  44.  
  45.     <!-- <p class="forgot-password"><a href="index.html">Забыл пароль?</a></p> --><!-- <p class="forgot-password"><a href="index.html">Забыл пароль?</a></p> -->
  46.  
  47.   </form>
  48.   <?}
  49. ?>
  50. </body>
  51. </html>
  52.  






secret.php
PHP:
скопировать код в буфер обмена
  1. <?
  2.         $users = [
  3.                 '1' => [
  4.                 'username' => 'admin',
  5.                 'password' => 'admin',
  6.                 ],
  7.                 '2' => [  
  8.                 'username' => 'demo',
  9.                 'password' => 'demo',
  10.                 ],
  11.                 '3' => [
  12.         'username' => 'demonka',
  13.                 'password' => 'demonka',
  14.                 ]
  15.         ];
  16. ?>

форма работает а вот начинаю валидацию делать крашится
не судите строго
Здравствуйте, Вот смотри ты крутишь под масивные данные на цикле foreach, а где ты извлекаешь данные из основного массива где 1, 2, 3? тебе нужно сначала их извлекать а патом крутить и сравнивать!
(Добавление)
index.php (Отобразить)


secret.php (Отобразить)

Цитата:
Как-то так! Не когда не используйте короткие теги типо <? ?> а только <?php ?>

 

Powered by ExBB FM 1.0 RC1