回答編集履歴

1

調整

2023/08/10 02:52

投稿

yambejp
yambejp

スコア117678

test CHANGED
@@ -1,2 +1,41 @@
1
1
  hiddenでのデータ引き継ぎはデータの改竄のリスクが高いためセッションを利用するのが妥当です
2
2
 
3
+ # 参考
4
+ ```PHP
5
+ <?php
6
+ foreach(["confirm","modify","post","name","detail"] as $val){
7
+ $$val=filter_input(INPUT_POST,$val);
8
+ if(in_array($val,["name","detail"])){
9
+ ${"h_".$val}=htmlspecialchars($$val);
10
+ ${"v_".$val}=nl2br(${"h_".$val});
11
+ }
12
+ }
13
+ $style_data=$confirm?"display:none":"";
14
+ $txt_submit='<input type="submit" name="confirm" value="確認画面へ"><br>';
15
+ if($confirm) $txt_submit='<input type="submit" name="modify" value="修正">/<input type="submit" name="post" value="投稿する">';
16
+
17
+ if($post){
18
+ print "投稿されました";
19
+ exit;
20
+ }
21
+
22
+
23
+
24
+ print <<<output
25
+ <body style="background-color:#FFFFCC;">
26
+ <h1>トピックスの投稿</h1>
27
+ <form method="post" action="{$_SERVER['SCRIPT_NAME']}">
28
+ <div style="$style_data">
29
+ <label>投稿者名<input type="text" name="name" maxlength="5" value="$h_name"></label><br>
30
+ <label>内容<br>
31
+ <textarea name="detail" rows="5" colums="20" maxlength="200" placefolder="内容を記述してください。開業もそのまま表示されます.">
32
+ $h_detail</textarea></label>
33
+ </div>
34
+ output;
35
+ if($confirm){
36
+ print "{$v_name}<br>\n{$v_detail}<br>\n";
37
+ }
38
+ print <<<output
39
+ $txt_submit</form>
40
+ output;
41
+ ```