Предположим, что база данных у нас есть. Попробуем авторизоваться, используя данные из БД.
Создадим простейшую HTML форму авторизации
Результат
Код формы авторизации… LoginForm.php
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 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 |
<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <!-- Always force latest IE rendering engine (even in intranet) & Chrome Frame Remove this if you use the .htaccess --> <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> <title>LoginForm2</title> <meta name="description" content=""> <meta name="author" content="YellowFriend"> <meta name="viewport" content="width=device-width; initial-scale=1.0"> <!-- Replace favicon.ico & apple-touch-icon.png in the root of your domain and delete these references --> <link rel="shortcut icon" href="/favicon.ico"> <link rel="apple-touch-icon" href="/apple-touch-icon.png"> </head> <body> <div> <header> <h1 style="text-align: left">LoginForm</h1> </header> <nav> <p> <a href="/">Home</a> </p> <p> <a href="/contact">Contact</a> </p> </nav> <div> <!--Логин форма--> <form class="myform" style="width: 500px; border: 1px red; margin: auto;" action="http://myphpproject.ru/authorization.php" method="POST"> <div style="padding: 10px;">Логин: <span style="float: right;"><input name="login" size="50" type="text" /></span></div> <div style="padding: 10px;">Пароль:<span style="float: right;"> <input name="password" size="50" type="text" /></span></div> <center><div style="position: relative; left: 70px;"><input name="submit_form" type="submit" value="Отправить" /></div></center> </form> <?php echo "Wow! It is PHP here !!!"; ?> </div> <footer> <p> © Copyright by Panteleev Stas (elGringo) </p> </footer> </div> </body> </html> |
Скрипт авторизации authorization.php
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 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 |
<?php //---------------------------------Пишем функцию авторизации---------------------- function CheckLoginPassowrdInDB($Login,$Password){ //Подключаемся к базе данных $dbHost='localhost';// чаще всего это так, но иногда требуется прописать ip адрес базы данных $dbName='coffeetest_db';// название вашей базы $dbUser='coffeetest_user';// пользователь базы данных $dbPass='coffeetest_password';// пароль пользователя $mysqli = new mysqli($dbHost, $dbUser, $dbPass,$dbName ); /* ProcedureStyle проверка соединения */ if (mysqli_connect_errno()) { echo "<br><b>ProcedureStyle. Подключение невозможно</b>: ".mysqli_connect_error(); } else {echo "<br><b>Procedure Style</b>. Соединение с базой $dbName данных успешно установлено ";}; //Делаем запрос пользователей $sql_select="SELECT * FROM `coffeetest_db`.`users`"; //$result=mysqli_query($mysqli, $sql_select); ($result = $mysqli->query($sql_select)); //Проверяем авторизацию $row = mysqli_fetch_array($result); // << Получаем первый ряд в массив //Проходим циклом по выборке и проверяем пару логин-пароль do { if ( ($Login==$row['Login']) && (($Password==$row['Password'])) ) { //echo "<br>".$row['Login']; //echo "<br>".$row['Password']; return true; break; } else return false; } while($row = mysqli_fetch_array($result)) ; }; //CheckLoginPassowrdInDB //---------------------------------Применяем нашу функцию проверки логина пароля---------------------- //Получаем логин пароль, отправленные из формы или др. прилолжения $Login=trim($_REQUEST['login']); $Password=trim($_REQUEST['password']); if ( CheckLoginPassowrdInDB($Login,$Password) ) {echo "<br><br><b>Результат авторизации:</b> Пара $Login $Password совпадает. Вход может быть выполнен";} else { echo "<br><br><b>Результат авторизации:</b> Пара $Login $Password не совпадает. Вход не может быть выполнен"; } ?> |