mysql (3)_PHP チュートリアルに基づいた BBS デザイン

WBOY
リリース: 2016-07-21 16:03:26
オリジナル
1124 人が閲覧しました

4.ユーザー モジュールの設計
基礎となるデータベースの場合、データベースを変更するために mysql の C API 関数が呼び出され、
特定の状態変数が内部的に保存されます (ユーザー名など、それとも上位層に任せるべきですか?)。上位層、
ユーザー管理インターフェイス。
Class UserManage {
private:
char myuserid[20]; // ログイン前は空のユーザー ID
time logintime // 滞在時間の計算にユーザーのログイン時間が使用されます
char loginhost[20]; // アップステーションの位置。

public:
int NewUser(char *userid, char *passwd);
新しいユーザーを作成し、それが既に存在するかどうかを確認します。
Firstlogintime、権限などはデフォルト値に設定されます。
int UserLogin( char *userid, char *passwd );
ユーザー ログイン、パスワードを確認、
int ChangePasswd( char *oldpasswd, char *newpasswd );
パスワードを変更するには、元のパスワードが一致している必要があります。
int ChangePriData( char *newname, char *newemail,
char *newaddr );
基本データ、名前、メールアドレス、アドレスを変更します。 。 。 。
int ModifyNumData( int addlogin, int addpost );
記事数、サイト訪問数などのデータを変更します。 。 。 。呼び出し元のオブジェクトに注意してください。
int UserLogout();
ユーザーのログアウト、lastlogin、staytime、loginhost などの変更

// 一般的なクエリコマンド
int QueryCommonData( const char * userid, int& loginnum,
char * username, int& postnum,
Time& lastlogin, char * lasthost );
ネチズンの基本情報をクエリします。

// 特権命令。関数は関数を完了する前に、まず権限を決定します。
int QueryPriData( const char * userid, char *email,
char *addr );
基本情報をクエリします。一般の人は自分自身のみを確認でき、権限を持つ人は他の人を確認できます。
int ModifyUserLevel( BOOL isAdd, unsigned long level);
ユーザー権限を変更します、
int ModifyUserId( char *newemail, char *newaddr );
ユーザーの基本データを変更します。
int ModifyUserNumdata(char *userid, int addlogin, int addpost);
ユーザーの記事番号とその他のデータを変更します。
int ModifyUserPasswd(char *userid, char *newpasswd);
ユーザーのパスワードを変更します。
}
上記の関数はそれぞれ、対応する SQL ステートメントを実行し、mysql データベースにアクセスします。
一般的な命令は特権命令として分類されるべきですか?権限チェックはこのレベルで行うべきですか、それとも前のレベルで行うべきですか?
これは、プログラムの明確さか、コードの単純さかという点に重点が置かれています。さらに、アクセス数も考慮する必要があります。上位サービス層も権限チェックを考慮しますか?


http://www.bkjia.com/PHPjc/316256.html

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/316256.html技術記事 4.ユーザー モジュールの設計 基盤となるデータベースの場合、mysql の C API 関数を呼び出してデータベースを変更し、特定の状態変数 (ユーザー名など) が内部的に保存され、完了は上位層に任されます...
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート