ホームページ >バックエンド開発 >PHPチュートリアル >Mysql、PDO、php、およびブートストラップは、ログイン インターフェイスとバックグラウンド処理を作成します
前两天用php和Bootstrapt制作了一个登陆界面,其实这只是一个很简单的操作,但对于Bootstrapt新手来说并不显得轻松,因为Bootstrapt里面有一些新词汇,需要慢慢理解并逐渐应用,对于英语基础非常好的能够很快消化,基础稍微差点稍微折腾一番我觉得也能很快就熟练掌握的。废话不多说,先上界面代码。
header("Content-Type:text/html; charset=UTF-8");
?>
.myDialog{
width:35%;
margin:80px auto;
}
h3{
font-weight:bold;
text-align:center;
}
.modal-body{
font-size:15px;
}
ここではバックグラウンド操作を使用します。ファイル名は doLogin.php で、わかりやすいようにログイン インターフェイスに do を追加するだけです。
header("Content-Type: text/html; charset=UTF-");
@$ログイン= $_REQUEST['ログイン'];
@$password = $_REQUEST['パスワード'];
if(empty($login) || empty($パスワード)){
@$msg = "フォームが不完全です。確認して再入力してください";
include "login.php";
}
次に、ログインインターフェイスに挿入する必要があるデータはそれほど多くないので、私が使用するデータベースはmysqlです。 , 現在、ログイン名とパスワードを入力するだけで、ログイン認証機能を実行するだけです。ここで使用したファイル名は restaurant.php です。以下は私のコードです
存在する場合はデータベースを削除 restaurant;
データベースを作成 Restaurant charset=UTF8;
use restaurant;
create table user(
id int 主キー auto_increment,
login varchar(20) not null unique,
パスワード varchar (20 ) null ではありません
);
ユーザー(ログイン、パスワード)の値に挿入
('a', 'a ');
select * from user; コードでは、データベースを検証した後、ログイン名がデータベースに存在するかどうかを検証する必要があります。条件が true の場合は、パスワードが正しいかどうかを判断します。正しいので、検証作業は基本的に完了できます。
$pdo = new PDO('mysql:dbname=restaurant; charset=UTF8', 'root');
$stat = $pdo->prepare('ログイン、パスワードを選択ユーザーから wherelogin = :login');
$stat->execute(array('login'=>$login));
@$users = $stat-> ;fetch(PDO::FETCH_NAMED);
if(empty($users)){
@$msg = "ログインが存在しません";
include "login.php";
die;
@$ msg = "パスワード出力エラー";
include"login.php";
死ぬ
header('Location:main.php');
ここでもう一度言いますが、ユーザーが入力した情報とデータベースに保存されている情報が完全に一致した場合にのみ検証に合格したと言え、main.phpのページにジャンプします。しかしこのとき、たとえば、顧客が main.php ページに入った後、退屈を感じて終了してしまうという問題が発生します。ただし、顧客のセキュリティの観点から、このページにはログインした後にのみアクセスする必要があります。これが見つかりません。いわゆる履歴記録からユーザーのホームページに直接アクセスします。ここで、クライアントとブラウザ間のやり取りについて説明したいと思います。たとえば、中国工商銀行のホームページで個人情報を閲覧するとき、私たちはブラウザとやり取りしています。サーバーから送信されますが、一度個人ホームページからログアウトし、履歴から再度ログインすると機能しなくなります。これを行わないと不正アクセスと呼ばれます。理由は、ログイン名とパスワードが正常に検証された後、ログイン インターフェイスに入るまでの期間、ブラウザのセッション値がログアウトされるためです。セッション値は空になるため、以前に個人ページにログインしたくても機能しません。考えてみれば分かると思いますが、不正にログインするとセッション値が空になると当然個人ページには入れなくなります。そうでなければ、「ははは」としか言えません。長々と話しましたが、実際の目的は、main.php ページにジャンプする前に 2 行のコードを記述するだけです。 $_SESSION['userID'] = $user['id'];
次に、セッションの開始時にセッションを判断するという別のステップがあります。 main.phpページ 値が空かどうか、空の場合はアクセスできません session_start(); @$userID = $ _SESSION['userID']; if(empty($userID)){ $title = '重大な警告'; $message = 'ログインしていません使用するにはログインしてください'; $jumpUrl = 'login.php' include 'lib/message.php'; 最後に、セッションが空の場合は、ログイン ページに直接ジャンプできないことに注意する必要があります。プロンプトメッセージがあるはずです。プロンプトメッセージなので、コード量は少し多くなりますが、比較的シンプルで美しい、ハイエンドの Bootstrapt インターフェイスであるべきだと思います。 header("Content-Type: text/html; charset=UTF-8"); ?>
トラップテンプレート
< ;メタ http-equiv= "Content-Type" c/html; charset=UTF-8" charset="UTF-8" >
="ブートストラップ < ;/script>
< ;!-- [IE 9 の場合]>
div> ok、これは私が言うとおりの登录界面、それ实我も想う说,尼玛不就是1 つの登録インターフェイスには、非常に多くのコードが含まれており、どちらも役に立ちません。
以上、mysql、PDO、php、bootstrapt を介して、側面の内容を含む、登録インターフェースの追加後台処理を作成しました。PHP 教則に関心のある友人の助けになることを望みます。