@@ 88-114 (lines=27) @@ | ||
85 | } |
|
86 | ||
87 | // 確認ページ |
|
88 | public function confirm() |
|
89 | { |
|
90 | # 検証ルールを設定します。 |
|
91 | $this->_set_validation(); |
|
92 | ||
93 | # 検証をパスしなかった場合は、新規投稿ページを表示します。検証をパスした場合 |
|
94 | # は、投稿確認ページ(bbs_confirm)を表示します。 |
|
95 | if ($this->form_validation->run() == FALSE) |
|
96 | { |
|
97 | # 投稿されたIDのキャプチャを削除します。 |
|
98 | $this->_delete_captcha_data(); |
|
99 | ||
100 | $this->_show_post_page(); |
|
101 | } |
|
102 | else |
|
103 | { |
|
104 | $data = []; |
|
105 | $data['name'] = $this->input->post('name'); |
|
106 | $data['email'] = $this->input->post('email'); |
|
107 | $data['subject'] = $this->input->post('subject'); |
|
108 | $data['body'] = $this->input->post('body'); |
|
109 | $data['password'] = $this->input->post('password'); |
|
110 | $data['key'] = $this->input->post('key'); |
|
111 | $data['captcha'] = $this->input->post('captcha'); |
|
112 | $this->_load_view('bbs_confirm', $data); |
|
113 | } |
|
114 | } |
|
115 | ||
116 | # 投稿されたIDのキャプチャを削除します。 |
|
117 | private function _delete_captcha_data() |
|
@@ 259-290 (lines=32) @@ | ||
256 | } |
|
257 | ||
258 | # 投稿された記事をデータベースに登録します。 |
|
259 | public function insert() |
|
260 | { |
|
261 | # 検証ルールを設定します。 |
|
262 | $this->_set_validation(); |
|
263 | ||
264 | # 検証にパスしない場合は、新規投稿ページを表示します。 |
|
265 | if ($this->form_validation->run() == FALSE) |
|
266 | { |
|
267 | # 投稿されたIDのキャプチャを削除します。 |
|
268 | $this->_delete_captcha_data(); |
|
269 | ||
270 | $this->_show_post_page(); |
|
271 | } |
|
272 | else |
|
273 | { |
|
274 | # 検証にパスした場合は、送られたデータとIPアドレスをbbsテーブルに登録します。 |
|
275 | $data = []; |
|
276 | $data['name'] = $this->input->post('name'); |
|
277 | $data['email'] = $this->input->post('email'); |
|
278 | $data['subject'] = $this->input->post('subject'); |
|
279 | $data['body'] = $this->input->post('body'); |
|
280 | $data['password'] = $this->input->post('password'); |
|
281 | $data['ip_address'] = $this->input->server('REMOTE_ADDR'); |
|
282 | $this->db->insert('bbs', $data); |
|
283 | ||
284 | # 投稿されたIDのキャプチャを削除します。 |
|
285 | $this->_delete_captcha_data(); |
|
286 | ||
287 | # URLヘルパーのredirect()メソッドで記事表示ページにリダイレクトします。 |
|
288 | redirect('/bbs'); |
|
289 | } |
|
290 | } |
|
291 | ||
292 | # キャプチャの検証をするメソッドです。バリデーション(認証)クラスより呼ばれます。 |
|
293 | public function captcha_check($str) |