1

ネットワークの中断がない限り、うまく機能する PHP サイトがあります。ユーザー、特に iPad やラップトップで、長時間 (おそらく 1 時間程度) データを送信せずにログインしてサイト内で作業するユーザーに問題があります。彼らは大量のメモを入力し、送信するとログオン画面に送られ、その時間に作業した内容が失われます。私は汚いルックスに慣れてきました... 私の調査によると、Cookie を使用すると問題が解決する可能性があります。セキュリティは大きな懸念事項ではないため、Cookie 内にユーザー名とハッシュ化されたパスワードを保存することは大きな脅威ではありません。しかし、私はクッキーを扱ったことがなく、実際にどこから始めればよいかわかりません。私の目標は、すべてのユーザーがログインし、テキスト領域に入力を開始し、建物内を移動できるようにすることです。おそらく、インターネット接続を切断して再接続し、エラーなしでフォームを送信できるようになるでしょう. 何か案は?前もって感謝します...

4

1 に答える 1

1

インターネット接続や Wifi AP の変更とは関係なく、セッションの有効期限が切れているようです。

PHP でデフォルトの PHP セッションの有効期限を変更するか、php.ini 設定を変更します。

ini_set("session.cookie_lifetime","3600"); //an hour

デフォルトのセッション ハンドラは、クライアントにセッション ID Cookie を設定することによって機能します。ページ要求ごとに、セッション ID が送信されます。セッションが期限切れになると、Cookie が削除されるため、クライアントにはログイン画面が表示されます。

これは、デフォルトの PHP セッション ハンドラーを使用していることを前提としています (あなたは言いませんでした)。それが問題でない場合は、コードに問題があることを示しています。たとえば、IP アドレスを比較してセッション ハイジャックを防止しようとしている場合です (ユーザーが AP から AP に移動すると変化します)。

于 2012-11-08T16:54:38.337 に答える