質問編集履歴
7
あ
test
CHANGED
File without changes
|
test
CHANGED
@@ -27,8 +27,6 @@
|
|
27
27
|
|
28
28
|
|
29
29
|
コード自体の処理は単純で、アクセス度にカウントアップしてそれを表示されているだけです。
|
30
|
-
|
31
|
-
これを「3回目のアクセス」が表示された後→戻るボタンクリック→「2回目のアクセス」を表示させたいのです。
|
32
30
|
|
33
31
|
|
34
32
|
|
@@ -148,9 +146,11 @@
|
|
148
146
|
|
149
147
|
|
150
148
|
|
149
|
+
これを「3回目のアクセス」が表示された後→戻るボタンクリック→「2回目のアクセス」を表示させたり
|
150
|
+
|
151
|
+
以前の値を表示するにはどうすれば良いでしょうか?
|
151
152
|
|
152
153
|
|
153
|
-
どこが悪いのでしょうか?
|
154
154
|
|
155
155
|
|
156
156
|
|
6
あ
test
CHANGED
@@ -1 +1 @@
|
|
1
|
-
【cakePHP】【PHP】【セッション】ブラウザ
|
1
|
+
【cakePHP】【PHP】【セッション】ブラウザの「戻る」で有効期限切れ
|
test
CHANGED
File without changes
|
5
a
test
CHANGED
@@ -1 +1 @@
|
|
1
|
-
ブラウザで「戻る」で有効期限切れ
|
1
|
+
【cakePHP】【PHP】【セッション】ブラウザで「戻る」で有効期限切れ
|
test
CHANGED
File without changes
|
4
も
test
CHANGED
File without changes
|
test
CHANGED
@@ -5,6 +5,12 @@
|
|
5
5
|
セッションを使っていますが、ブラウザの戻るボタンクリックで
|
6
6
|
|
7
7
|
「ドキュメントが有効期限切れです」のエラーが出ます。
|
8
|
+
|
9
|
+
|
10
|
+
|
11
|
+
この問題はWeb開発では珍しくない問題のようで、header()を使った対処法が至る所で見つかりました。
|
12
|
+
|
13
|
+
クラスの先頭や、index()の先頭でheader()を行いましたが改善しませんでした。
|
8
14
|
|
9
15
|
|
10
16
|
|
@@ -20,11 +26,13 @@
|
|
20
26
|
|
21
27
|
|
22
28
|
|
23
|
-
コードは単純
|
29
|
+
コード自体の処理は単純で、アクセス度にカウントアップしてそれを表示されているだけです。
|
24
30
|
|
25
|
-
|
31
|
+
これを「3回目のアクセス」が表示された後→戻るボタンクリック→「2回目のアクセス」を表示させたいのです。
|
26
32
|
|
27
|
-
|
33
|
+
|
34
|
+
|
35
|
+
|
28
36
|
|
29
37
|
|
30
38
|
|
@@ -38,27 +46,21 @@
|
|
38
46
|
|
39
47
|
|
40
48
|
|
41
|
-
|
42
|
-
|
43
|
-
|
49
|
+
/*セッションテスト*/
|
44
|
-
|
45
|
-
|
46
50
|
|
47
51
|
class TestsController extends AppController {
|
48
52
|
|
49
53
|
|
50
54
|
|
51
|
-
/**
|
52
55
|
|
53
|
-
* Components
|
54
|
-
|
55
|
-
*
|
56
|
-
|
57
|
-
* @var array
|
58
|
-
|
59
|
-
*/
|
60
56
|
|
61
57
|
public $components = array('Session');
|
58
|
+
|
59
|
+
|
60
|
+
|
61
|
+
|
62
|
+
|
63
|
+
public function index() {
|
62
64
|
|
63
65
|
|
64
66
|
|
@@ -68,33 +70,9 @@
|
|
68
70
|
|
69
71
|
|
70
72
|
|
71
|
-
|
73
|
+
if($this->Session->check('count')){
|
72
74
|
|
73
|
-
|
75
|
+
|
74
|
-
|
75
|
-
*
|
76
|
-
|
77
|
-
* @return void
|
78
|
-
|
79
|
-
*/
|
80
|
-
|
81
|
-
public function index() {
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
session_start();
|
88
|
-
|
89
|
-
header('Expires:-1');
|
90
|
-
|
91
|
-
header('Cache-Control:');
|
92
|
-
|
93
|
-
header('Pragma:');
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
if($this->Session->check('count')){
|
98
76
|
|
99
77
|
$this->Session->write('count',$this->Session->read('count')+1);
|
100
78
|
|
@@ -102,7 +80,9 @@
|
|
102
80
|
|
103
81
|
|
104
82
|
|
83
|
+
|
84
|
+
|
105
|
-
|
85
|
+
$msg = $num."回目のアクセス";
|
106
86
|
|
107
87
|
|
108
88
|
|
@@ -110,9 +90,9 @@
|
|
110
90
|
|
111
91
|
else{
|
112
92
|
|
113
|
-
$this->Session->write('count', '
|
93
|
+
$this->Session->write('count', '1');
|
114
94
|
|
115
|
-
|
95
|
+
$msg = "1回目のアクセス";
|
116
96
|
|
117
97
|
}
|
118
98
|
|
@@ -120,7 +100,7 @@
|
|
120
100
|
|
121
101
|
|
122
102
|
|
123
|
-
|
103
|
+
$this->set('msg',$msg);
|
124
104
|
|
125
105
|
}
|
126
106
|
|
@@ -132,35 +112,37 @@
|
|
132
112
|
|
133
113
|
|
134
114
|
|
115
|
+
|
116
|
+
|
135
117
|
```
|
136
118
|
|
137
119
|
|
138
120
|
|
139
121
|
```view
|
140
122
|
|
123
|
+
|
124
|
+
|
141
|
-
<
|
125
|
+
<?php echo $msg ;?>
|
142
126
|
|
143
127
|
|
144
128
|
|
145
129
|
|
146
130
|
|
147
|
-
|
131
|
+
<form action="/tests" controller="Tests" method="post" accept-charset="utf-8">
|
148
132
|
|
149
133
|
|
150
134
|
|
151
|
-
<input type="submit" name="aaa[]" value="2"><br>
|
152
135
|
|
153
136
|
|
154
|
-
|
155
|
-
<input type="submit" name="
|
137
|
+
<input type="submit" name="btn" value="次へ">
|
156
|
-
|
157
|
-
|
158
138
|
|
159
139
|
|
160
140
|
|
161
141
|
|
162
142
|
|
163
143
|
</form>
|
144
|
+
|
145
|
+
|
164
146
|
|
165
147
|
```
|
166
148
|
|
3
b
test
CHANGED
File without changes
|
test
CHANGED
@@ -136,6 +136,38 @@
|
|
136
136
|
|
137
137
|
|
138
138
|
|
139
|
+
```view
|
140
|
+
|
141
|
+
<form action="/tests" controller="Tests" method="post" accept-charset="utf-8">
|
142
|
+
|
143
|
+
|
144
|
+
|
145
|
+
|
146
|
+
|
147
|
+
<input type="submit" name="aaa[]" value="1"><br>
|
148
|
+
|
149
|
+
|
150
|
+
|
151
|
+
<input type="submit" name="aaa[]" value="2"><br>
|
152
|
+
|
153
|
+
|
154
|
+
|
155
|
+
<input type="submit" name="aaa[]" value="3"><br>
|
156
|
+
|
157
|
+
|
158
|
+
|
159
|
+
|
160
|
+
|
161
|
+
|
162
|
+
|
163
|
+
</form>
|
164
|
+
|
165
|
+
```
|
166
|
+
|
167
|
+
|
168
|
+
|
169
|
+
|
170
|
+
|
139
171
|
どこが悪いのでしょうか?
|
140
172
|
|
141
173
|
|
2
あ
test
CHANGED
File without changes
|
test
CHANGED
@@ -37,14 +37,6 @@
|
|
37
37
|
<?php
|
38
38
|
|
39
39
|
|
40
|
-
|
41
|
-
session_start();
|
42
|
-
|
43
|
-
header('Expires:-1');
|
44
|
-
|
45
|
-
header('Cache-Control:');
|
46
|
-
|
47
|
-
header('Pragma:');
|
48
40
|
|
49
41
|
|
50
42
|
|
@@ -91,6 +83,14 @@
|
|
91
83
|
|
92
84
|
|
93
85
|
|
86
|
+
|
87
|
+
session_start();
|
88
|
+
|
89
|
+
header('Expires:-1');
|
90
|
+
|
91
|
+
header('Cache-Control:');
|
92
|
+
|
93
|
+
header('Pragma:');
|
94
94
|
|
95
95
|
|
96
96
|
|
1
a
test
CHANGED
File without changes
|
test
CHANGED
@@ -11,6 +11,12 @@
|
|
11
11
|
以下を参考にheader()を施しましたが、改善しません。
|
12
12
|
|
13
13
|
[[PHP]「Webページの有効期限が切れています」と表示された時の対策](http://isket.jp/%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0/php%E3%81%A7%E3%80%8Cweb%E3%83%9A%E3%83%BC%E3%82%B8%E3%81%AE%E6%9C%89%E5%8A%B9%E6%9C%9F%E9%99%90%E3%81%8C%E5%88%87%E3%82%8C%E3%81%A6%E3%81%84%E3%81%BE%E3%81%99%E3%80%8D%E3%81%A8%E8%A1%A8%E7%A4%BA/)
|
14
|
+
|
15
|
+
|
16
|
+
|
17
|
+
[session_start()→POST遷移→戻る→有効期限切れ を防ぐ](http://qiita.com/mgng/items/ae3c4c07f920a5e6e2ed)
|
18
|
+
|
19
|
+
|
14
20
|
|
15
21
|
|
16
22
|
|