質問編集履歴

2

各ドメインのDNSレコード設定を追記いたします。

2020/02/17 03:03

投稿

Keisuke1130
Keisuke1130

スコア5

test CHANGED
File without changes
test CHANGED
@@ -68,6 +68,40 @@
68
68
 
69
69
 
70
70
 
71
+ //0217追記
72
+
73
+ 各ドメインのDNSレコード設定を追記いたします。
74
+
75
+ ・ファイルサーバのドメイン(カゴヤサーバ)
76
+
77
+ DNSレコードの設定:特にされていないようです。カゴヤ側の設定の「DNS設定」を確認しましたが、「DNSレコード設定は設定されていません。」という表示になります。
78
+
79
+
80
+
81
+ ・メールサーバのドメイン(さくらサーバ)
82
+
83
+ @/NS/ns1.dns.ne.jp.
84
+
85
+ @/NS/ns1.dns.ne.jp.
86
+
87
+ @/A/210.224.185.54
88
+
89
+ @/MX/10 @
90
+
91
+ @/AAAA/2403:3a00:201:18:210:224:185:54
92
+
93
+ @/TXT/"v=spf1 a:www2444.sakura.ne.jp mx ~all"
94
+
95
+ www/CNAME/@
96
+
97
+ mail/CNAME/@
98
+
99
+ ftp/CNAME/@
100
+
101
+
102
+
103
+
104
+
71
105
  ///0214追記
72
106
 
73
107
  ソースを追記いたします。

1

ソースを追記しました。メール送信部分のソースを抜粋しております。

2020/02/17 03:03

投稿

Keisuke1130
Keisuke1130

スコア5

test CHANGED
File without changes
test CHANGED
@@ -65,3 +65,193 @@
65
65
 
66
66
 
67
67
  よろしくお願いいたします。
68
+
69
+
70
+
71
+ ///0214追記
72
+
73
+ ソースを追記いたします。
74
+
75
+ 下記はメールを送信するphpで、フォームのプログラムをまとめているphp内に書かれている記述の一部です。
76
+
77
+ mail_to_adminは管理者用、mail_to_clientはユーザーへの自動返信用です。
78
+
79
+ class「Mail」をフォームの送信完了phpで宣言、
80
+
81
+ その後、同じくフォームの送信完了php内で、mail_to_adminとmail_to_clientの二つのメソッドにアクセスしています。
82
+
83
+
84
+
85
+ ```php
86
+
87
+ <?
88
+
89
+ class Mail extends Field{
90
+
91
+ public function __construct(){
92
+
93
+ parent::__construct();
94
+
95
+ }
96
+
97
+
98
+
99
+ private function h($string): string{
100
+
101
+ return htmlspecialchars($string, ENT_QUOTES, 'UTF-8');
102
+
103
+ }
104
+
105
+
106
+
107
+ //mailヘッダー
108
+
109
+ private function mail_head($from){
110
+
111
+ $headers = '';
112
+
113
+ $headers = "MIME-Version: 1.0\n";
114
+
115
+ $headers .= "From: <$from>\n";
116
+
117
+ return $headers;
118
+
119
+ }
120
+
121
+
122
+
123
+ //管理者用mail
124
+
125
+ public function mail_to_admin(): void{
126
+
127
+ //初期設定
128
+
129
+ $encode = "UTF-8";
130
+
131
+ $host = gethostname() ?? '取得できませんでした。';
132
+
133
+ $ip = $this->h($_SERVER['REMOTE_ADDR']) ?? '取得できませんでした。';
134
+
135
+ $ref = $this->h($_POST['ref']) ?? null;
136
+
137
+ $id = $this->h($_COOKIE['Key']) ?? null;
138
+
139
+
140
+
141
+ //送信先
142
+
143
+ $to = 'admin@address.jp';
144
+
145
+
146
+
147
+ //ヘッダ
148
+
149
+ $hd = '';
150
+
151
+ if(isset($_POST['mail'])){
152
+
153
+ $hd = $this->mail_head($_POST['mail']);
154
+
155
+ }else {
156
+
157
+ $hd = $this->mail_head('mail@mailserver.jp');
158
+
159
+ }
160
+
161
+ $hd .= "Reply-To: mail@mailserver.jp\n";
162
+
163
+ $hd .= "Content-Type:text/plain;charset=iso-2022-jp\nX-Mailer: PHP/".phpversion();
164
+
165
+
166
+
167
+ //題名
168
+
169
+ $title = $this->h($_POST['mtitle']);
170
+
171
+
172
+
173
+ //本文
174
+
175
+ $text = $this->make_context();
176
+
177
+ $text .= PHP_EOL.'送信された日時:'.date('Y年m月d日 H時i分s秒').PHP_EOL;
178
+
179
+ $text .= '送信者のIPアドレス:'.$ip.PHP_EOL;
180
+
181
+ $text .= '送信者のホスト名:'.$host.PHP_EOL;
182
+
183
+ $text .= 'ユニークID:'.$id.PHP_EOL;
184
+
185
+ $text .= '問い合わせのページURL:'.$ref;
186
+
187
+ $text = mb_convert_encoding($text,"JIS",$encode);
188
+
189
+
190
+
191
+ //メール送信(送信先, 題名, 本文, ヘッダ)
192
+
193
+ mail($to, $title, $text, $hd);
194
+
195
+ }
196
+
197
+
198
+
199
+ //ユーザー用mail
200
+
201
+ public function mail_to_client(): void{
202
+
203
+ //初期設定
204
+
205
+ $encode = "UTF-8";
206
+
207
+
208
+
209
+ //送信先
210
+
211
+ $to = $_POST['mail'] ?? null;
212
+
213
+ if(!$to) die;
214
+
215
+
216
+
217
+ //題名
218
+
219
+ $mtitle = $this->h($_POST['mtitle']);
220
+
221
+ $title = "=?iso-2022-jp?B?".base64_encode(mb_convert_encoding($mtitle,"JIS",$encode))."?=";
222
+
223
+
224
+
225
+ //本文
226
+
227
+ $text = $this->make_context();
228
+
229
+ $text .= "\n送信日時:".date( "Y/m/d (D) H:i:s", time() )."\n";
230
+
231
+ $text = mb_convert_encoding($text,"JIS",$encode);
232
+
233
+
234
+
235
+ //ヘッダ
236
+
237
+ $from = 'mail@mailserver.jp';
238
+
239
+ $hd = "From: ".$from;
240
+
241
+ $hd .= "\nReply-To: ".$from;
242
+
243
+ $hd .= "\nContent-Type: text/plain;charset=iso-2022-jp\nX-Mailer: PHP/".phpversion();
244
+
245
+
246
+
247
+ //メール送信(送信先, 題名, 本文, ヘッダ)
248
+
249
+ mail($to, $title, $text, $hd);
250
+
251
+ }
252
+
253
+ }
254
+
255
+ ?>
256
+
257
+ ```