session_PHP チュートリアルを使用しない理由
在考虑session的问题上,我最终放弃了session: 最后我选择了myql的heap表来处理session,并且把session处理和online在线用户统计结合起来。 下面给出代码为我的一个实例(没提供其他的细节了,具体使用要相应修改) `sid` char( 32 ) NOT NULL ,
1、原本的session是使用文件来管理的。文件系统的好坏直接影响session的性能,尤其当有几K人同时在线的时候,尤其突出。解决方法有两个:数据库和文件(使用哈希路径)。
2、原有session的扩展性和可控制性不好。不利于结合我现有的系统。
3、在选用数据库的时候,我并没有选择sqlite,上次我测试sqlite效率在win xp上效率没有想象中的好。
/**
* 处理在线用户和对session的模拟
* CREATE TABLE `webqq_session` (
`uid` mediaint( 8 ) NOT NULL ,
`username` char( 80 ) NOT NULL ,
`ismember` tinyint( 1 ) NOT NULL ,
`logintime` int( 10) NOT NULL ,
`activetime` int( 10 ) NOT NULL ,
PRIMARY KEY ( `sid` )
) ENGINE = HEAP DEFAULT CHARSET = gb2312
* @author:feifengxlq
* @since:2006-10-23
* @copyright:http://www.phpobject.net
* 注: このファイルの使用は、Cookie フィルタリング、いくつかの基本関数とデータベース操作クラス
*/
class session
{
var $mysql;
var $cookie_id=webqq_sid;
var $session=array();
var $max_time=1200;/ /default minimum時間 20 分
function __construct()
{
$this->mysql=new module(TB_PREX._session);//外部サポートが必要
$this->start();
}
function start()
// Cookie がデータベース内に存在するかどうかを確認します
$sid=$ データベースに保存されます
詳細 (ここで s id =. $ 記号);
} else {
//データベースではありません
$ this-> create (); >mysql->delete(where activetime+.$this->max_time.<.time());
}
function register($name, $value,$update=false)
{
if(array_key_exists ($name,$this->session)){
レジストリ ($ name =) {
if (空 ($ name)) Return $ this-& gt; セッション;
if (array_key_exists ($ Natural, $ this-& gt; session)) {
RN $ this-& gt; セッション [$name];
//データベース内のセッション情報を更新します
function update()
{
$row[uid]=$this->session[uid];
$row[username]=$this->session[username] ; ;
$row[ismember]=" ;
$this->mysql->update($row,where sid=.$this->session[sid].); ------以下はプライベートメソッド-------------------------------------- -------- ------**/
function create()
getip() 関数は事前に定義する必要があります: 顧客の IP アドレスを取得します
setcookie($this->cookie_id,$sid,$nowtime+3600* 24); //デフォルトは24時間です
$ nowtime;
http://www.bkjia.com/PHPjc/508237.html
www.bkjia.com
true
http://www.bkjia.com/PHPjc/508237.html
技術記事
セッションの問題を検討したとき、私は最終的にセッションをあきらめました。 1. 元のセッションはファイルを使用して管理されていました。ファイル システムの品質は、特に数千人が一緒に作業している場合、セッションのパフォーマンスに直接影響します...

ホット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)

ホットトピック









フレックスレイアウトの紫色のスラッシュ領域に関する質問フレックスレイアウトを使用すると、開発者ツールなどの混乱する現象に遭遇する可能性があります(D ...

H5ページは、コードの脆弱性、ブラウザー互換性、パフォーマンスの最適化、セキュリティの更新、ユーザーエクスペリエンスの改善などの要因のため、継続的に維持する必要があります。効果的なメンテナンス方法には、完全なテストシステムの確立、バージョン制御ツールの使用、定期的にページのパフォーマンスの監視、ユーザーフィードバックの収集、メンテナンス計画の策定が含まれます。

JavaScriptはHTML5なしで実行できますか? JavaScriptエンジン自体は独立して実行できます。ブラウザ環境でJavaScriptを実行すると、コードをロードおよび実行するために必要な標準化された環境を提供するため、HTML5に依存します。 HTML5が提供するAPIと機能は、最新のJavaScriptフレームワークとライブラリにとって重要です。 HTML5環境がなければ、多くのJavaScript機能を実装が困難であるか、実装できません。

Safariでカスタムスタイルシートを使用することについてのディスカッション今日は、Safariブラウザ向けのカスタムスタイルシートのアプリケーションに関する質問について説明します。フロントエンド初心者...

H5ページの生産の利点には、軽量エクスペリエンス、積み込み速度、ユーザー保持の改善が含まれます。クロスプラットフォームの互換性、さまざまなプラットフォームに適応する必要はなく、開発効率を向上させます。柔軟性と動的な更新、監査が不要で、コンテンツの変更と更新が容易になります。ネイティブアプリよりも費用対効果の高い開発コスト。

ルートとしてMySQLにログインできない主な理由は、許可の問題、構成ファイルエラー、一貫性のないパスワード、ソケットファイルの問題、またはファイアウォール傍受です。解決策には、構成ファイルのBind-Addressパラメーターが正しく構成されているかどうかを確認します。ルートユーザー許可が変更されているか削除されてリセットされているかを確認します。ケースや特殊文字を含むパスワードが正確であることを確認します。ソケットファイルの許可設定とパスを確認します。ファイアウォールがMySQLサーバーへの接続をブロックすることを確認します。

BootstrapテーブルGarled Codeは、通常、ページエンコーディングがテーブルデータエンコーディングと矛盾しているためです。この問題を解決するには、それらが一貫していることを確認する必要があります。特定の手順には、ページとテーブルデータのエンコードのチェック、ページのエンコードの設定、およびエンコードの検証が含まれます。 UTF-8を使用する場合、サーバーもサポートする必要があります。解決できない場合は、JavaScriptエンコードライブラリを使用してみてください。

要素プラスでクラス名スタイルを正しく使用する方法は? Element-Plusを使用する過程で、多くの開発者が問題に遭遇します。
