构建网站:用户的登入认证_PHP
前面已经介绍了几个 php 的功能技巧,从现在开始就来充分利用组合这些技巧来构建一个强大的网站,以后会陆续地介绍一些高级和基本的技巧如何在网站中应用.
建立一个好的网站,用户登认证功能是必不可少的,同样的在这儿我只是介绍思路和做法,并不会添鸭式地一步一步的列出步骤.
首先需要一个可用来记录用户资料的数据库,其内容应当至少包括姓名和密码,自然根据需要可在数据库增加相应的字段.
为了使数据库有资料,必须要有个注册程序,通过注册用户可将资料存进数据库,注册程序的实现非常地简单,仅仅是发出存入数据库的指令,在这里就不再描述了,这里要提出的是,出于对用户资料安全的考虑,最好为用户的密码加密,还有数据库不应出现相同的姓名,否则会乱套.
下面介绍的重点是用户登入和登出的实现,用户登入的功能用 session 和 cookie 都能完成,我在这儿要介绍的是如何用 cookie 来完成这个功能的.
其实用户登入的整个过程理解起来很简单,程序将用户输入的姓名和密码与数据库存储的资料进行对比,数据库有此用户的资料就通过,没有则拒绝该用户通过.
来看看登入程序 login.php 的工作流程:
用户提交资料到 login,php,login.php 就会经过如下处理:
$passwd=md5($passwd);
$result=mysql_query("select * from user where name='$name' and passwd='$passwd'");
之所以密码要经过 md5 处理,是因为数据库存储的是经过 md5 加密过的密码,判断有无此用户存在,不存在或密码错误则给出些告警给该用户,存在此用户的资料的话,就可以将该用户的资料设置为 cookie 值,如下:
setcookie("cookiename",$name,time()+18000,"","/");
setcookie("cookiepasswd",$passwd,time()+18000,"","/");
如果担心用户因忘记登出而造成安全问题的话,就把时间设置去除:
setcookie("cookiename",$name,"","/");
setcookie("cookiepasswd",$passwd,"","/");
这样当用户关闭浏览器时,cookie 的设置就失效了,也就是说用户下一次来的时候,必须重新登入!虽然有了这个关闭浏览器就让 cookie 失效的安全功能,但还是需要一个用户登出的功能以策安全,登出功能也就是让记载用户资料的 cookie 失效的功能,完成这个功能很简单,只需要将时间置为 -1,并把 cookie 变量置空就行了:
logout.php:
setcookie('cookiename',"",time()-1,'/',"");
setcookie('cookiepasswd',"",time()-1,'/',"");
$cookiename="";
$cookiepasswd="";
这样一个完整的用户认证功能就完成了.

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











Hibernate ポリモーフィック マッピングは、継承されたクラスをデータベースにマップでき、次のマッピング タイプを提供します。 join-subclass: 親クラスのすべての列を含む、サブクラス用の別個のテーブルを作成します。 table-per-class: サブクラス固有の列のみを含む、サブクラス用の別個のテーブルを作成します。 Union-subclass: join-subclass と似ていますが、親クラス テーブルがすべてのサブクラス列を結合します。

Apple の最新リリースの iOS18、iPadOS18、および macOS Sequoia システムでは、さまざまな理由で紛失または破損した写真やビデオをユーザーが簡単に回復できるように設計された重要な機能が写真アプリケーションに追加されました。この新機能では、写真アプリのツール セクションに「Recovered」というアルバムが導入され、ユーザーがデバイス上に写真ライブラリに含まれていない写真やビデオがある場合に自動的に表示されます。 「Recovered」アルバムの登場により、データベースの破損、カメラ アプリケーションが写真ライブラリに正しく保存されない、または写真ライブラリを管理するサードパーティ アプリケーションによって失われた写真やビデオに対する解決策が提供されます。ユーザーはいくつかの簡単な手順を実行するだけで済みます

HTML はデータベースを直接読み取ることはできませんが、JavaScript と AJAX を通じて実現できます。この手順には、データベース接続の確立、クエリの送信、応答の処理、ページの更新が含まれます。この記事では、JavaScript、AJAX、および PHP を使用して MySQL データベースからデータを読み取る実践的な例を示し、クエリ結果を HTML ページに動的に表示する方法を示します。この例では、XMLHttpRequest を使用してデータベース接続を確立し、クエリを送信して応答を処理することで、ページ要素にデータを埋め込み、データベースを読み取る HTML の機能を実現します。

MySQLi を使用して PHP でデータベース接続を確立する方法: MySQLi 拡張機能を含める (require_once) 接続関数を作成する (functionconnect_to_db) 接続関数を呼び出す ($conn=connect_to_db()) クエリを実行する ($result=$conn->query()) 閉じる接続 ( $conn->close())

GateToken(GT)通貨とは何ですか? GT (GateToken) は、GateChain チェーンのネイティブ資産であり、Gate.io の公式プラットフォーム通貨です。 GT コインの価値は、Gate.io および GateChain エコロジーの発展と密接に関連しています。ゲートチェーンとは何ですか? GateChain は 2018 年に誕生し、Gate.io によって開始された新世代の高性能パブリック チェーンです。 GateChain は、ユーザーのオンチェーン資産のセキュリティを保護し、便利な分散トランザクション サービスを提供することに重点を置いています。 GateChain の目標は、エンタープライズレベルの安全で効率的な分散型デジタル資産ストレージ、配信、およびトランザクションのエコシステムを構築することです。ゲートチェーンにはオリジナルがあります

PHP でデータベース接続エラーを処理するには、次の手順を使用できます。 mysqli_connect_errno() を使用してエラー コードを取得します。 mysqli_connect_error() を使用してエラー メッセージを取得します。これらのエラー メッセージをキャプチャしてログに記録することで、データベース接続の問題を簡単に特定して解決でき、アプリケーションをスムーズに実行できるようになります。

Apple は、iOS17.5、iPadOS17.5、tvOS17.5、watchOS10.5、macOS Sonoma14.5 の開発者ベータ版の第 2 ラウンドをリリースしました。このうち iOS17.5 には Apple WebDistribution システムが導入されています。開発者は Apple Developer Center から新しいバージョンを入手でき、一般ユーザーは Apple Beta Software Program Web サイトから登録して公開テストに参加できます。新しいバージョンの内部バージョン番号は、iOS 17.5 および iPadOS 17.5 の場合は 21F5058e (21F5048f の代替)、21L5553e (tvOS 17.5 および HomePod ソフトウェア 17.5 の場合は 21L55 の代替) です。

Golang を使用してブラウザベースのアプリケーションを構築する Golang は JavaScript と組み合わせて、動的なフロントエンド エクスペリエンスを構築します。 Golang をインストールする: https://golang.org/doc/install にアクセスします。 Golang プロジェクトをセットアップします。 main.go というファイルを作成します。 GorillaWebToolkit の使用: HTTP リクエストを処理するための GorillaWebToolkit コードを追加します。 HTML テンプレートの作成: template サブディレクトリに、メイン テンプレートであるindex.html を作成します。
