質問編集履歴

2

実行したい内容を表示しました

2020/11/07 07:58

投稿

natlpush
natlpush

スコア32

title CHANGED
File without changes
body CHANGED
@@ -98,4 +98,22 @@
98
98
  open(IN,"$cf{tmpldir}/bbs.html") or error("open err: bbs.html");
99
99
  my $tmpl = join('',<IN>);
100
100
  close(IN);
101
+ ```
102
+
103
+ テンプレとして読み込んだファイルでPHPを実行したい
104
+ htmlファイル
105
+ ```ここに言語を入力
106
+ <?php
107
+ session_start();
108
+
109
+ // ログイン状態のチェック
110
+ if (!isset($_SESSION["USERID"])) {
111
+ header("Location: login.html");
112
+ exit;
113
+ }//if
114
+ ?>
115
+
116
+ <!doctype html>
117
+ <html lang="ja">
118
+ <head>
101
119
  ```

1

ファイルの中身を追記に示しました

2020/11/07 07:58

投稿

natlpush
natlpush

スコア32

title CHANGED
File without changes
body CHANGED
@@ -2,14 +2,100 @@
2
2
 
3
3
  具体的には、PHPのセッションを使い
4
4
 
5
- ログインの切り分け
5
+ - ログインの切り分け
6
- メニューの表示の分岐
6
+ - メニューの表示の分岐
7
- 名前の入力欄にあらかじめ入力
7
+ - 名前の入力欄にあらかじめ入力
8
8
 
9
9
  などがやりたいです。
10
10
 
11
11
 
12
12
 
13
- .htaccessを使い htmlファイルでphpやcgiを実行する方法はあるのですが、CGIプログラムの中でPHPが動かせるととても便利なのですが。
13
+ **.htaccess**を使い htmlファイルでphpやcgiを実行する方法はあるのですが、CGIプログラムの中でPHPが動かせるととても便利なのですが。
14
14
 
15
- よろしくお願いいたします。
15
+ よろしくお願いいたします。
16
+
17
+ ##追記
18
+
19
+ CGIのサイトは
20
+
21
+ https://www.kent-web.com/bbs/patio.html
22
+
23
+ patio.cgi
24
+ というプログラムがhtmlファイルを読み込んでいます(63行目)。
25
+ このhtmlにPHPを入れられれば動きそうなのですが、ソースがそのまま出てしまいます。
26
+
27
+ .htaccess
28
+ ```ここに言語を入力
29
+ AddType application/x-httpd-php .php .html
30
+
31
+ ```
32
+
33
+ patio.cgi(66行目まで)
34
+ ```ここに言語を入力
35
+ #!/usr/local/bin/perl
36
+
37
+ #┌─────────────────────────────────
38
+ #│ WEB PATIO : patio.cgi - 2019/11/10
39
+ #│ copyright (c) kentweb, 1997-2019
40
+ #│ http://www.kent-web.com/
41
+ #└─────────────────────────────────
42
+
43
+ # モジュール宣言
44
+ use strict;
45
+ use CGI::Carp qw(fatalsToBrowser);
46
+ use lib "./lib";
47
+ use CGI::Minimal;
48
+
49
+ # 設定ファイル認識
50
+ require "./init.cgi";
51
+ my %cf = set_init();
52
+
53
+ # データ受理
54
+ CGI::Minimal::max_read_size($cf{maxdata});
55
+ my $cgi = CGI::Minimal->new;
56
+ error('容量オーバー') if ($cgi->truncated);
57
+ my %in = parse_form($cgi);
58
+
59
+ # 認証モード
60
+ my %au = authent() if ($cf{authkey});
61
+
62
+ # 処理分岐
63
+ if ($in{read}) { read_log(); }
64
+ if ($in{edit}) { pwd_form(); }
65
+ if ($in{mode} eq 'form') { form_page(); }
66
+ if ($in{mode} eq 'find') { find_page(); }
67
+ if ($in{mode} eq 'note') { note_page(); }
68
+ if ($in{mode} eq 'past') { past_page(); }
69
+ bbs_list();
70
+
71
+ #-----------------------------------------------------------
72
+ # メニュー部表示
73
+ #-----------------------------------------------------------
74
+ sub bbs_list {
75
+ # アラーム数定義
76
+ my $alarm = int ($cf{m_max} * 0.9);
77
+
78
+ # ページ数
79
+ my $pg = $in{pg} || 0;
80
+
81
+ # スレッド表示
82
+ my ($i,@log);
83
+ open(IN,"$cf{nowfile}") or error("open err: $cf{nowfile}");
84
+ my $top = <IN>;
85
+ while (<IN>) {
86
+ $i++;
87
+ next if ($i < $pg + 1);
88
+ next if ($i > $pg + $cf{pgmax_now});
89
+
90
+ push(@log,$_);
91
+ }
92
+ close(IN);
93
+
94
+ # 繰越ボタン作成
95
+ my $page_btn = make_pgbtn($i,$pg,$cf{pgmax_now});
96
+
97
+ # テンプレート読込
98
+ open(IN,"$cf{tmpldir}/bbs.html") or error("open err: bbs.html");
99
+ my $tmpl = join('',<IN>);
100
+ close(IN);
101
+ ```