質問編集履歴
2
textareaのnameを単純なものにして、とりあえずデータを送信させようと修正しました。しかし、これでもデータが送信されておらず、困っております。
test
CHANGED
File without changes
|
test
CHANGED
@@ -16,6 +16,7 @@
|
|
16
16
|
```
|
17
17
|
<!-----------カレンダープログラム--------------->
|
18
18
|
<?php
|
19
|
+
var_dump($_POST['text_msg']); //追加
|
19
20
|
$ym = null;
|
20
21
|
$timestamp = null;
|
21
22
|
$today = null;
|
@@ -80,26 +81,27 @@
|
|
80
81
|
//str_repeat(文字列, 反復回数)
|
81
82
|
$week .= str_repeat('<td></td>', $youbi);
|
82
83
|
|
83
|
-
for($day = 1; $day <= $day_count; $day++, $youbi++){
|
84
|
+
for($day = 1; $day <= $day_count; $day++, $youbi++) {
|
84
85
|
|
85
86
|
$date = $ym . '-' . $day;
|
86
87
|
//それぞれの日付をY-m-d形式で表示例:2020-01-23
|
87
88
|
//$dayはfor関数のおかげで1日づつ増えていく
|
88
89
|
|
89
|
-
if($today == $date){
|
90
|
+
if($today == $date) {
|
90
91
|
//もしその日が今日なら
|
91
|
-
$week .= '<td class="today">' . $day . "<textarea
|
92
|
+
$week .= '<td class="today">' . $day . "<textarea name = 'text_msg'>" ;
|
92
|
-
}else{
|
93
|
+
} else {
|
93
94
|
//上2つ以外なら
|
95
|
+
//修正
|
94
|
-
$week .= '<td>' . $day . "<textarea
|
96
|
+
$week .= '<td>' . $day . "<textarea name = 'text_msg'>";
|
95
97
|
}
|
96
98
|
$week .= '</textarea>'.'</td>';
|
97
99
|
|
98
|
-
if($youbi % 7 == 6 || $day == $day_count){//週終わり、月終わりの場合
|
100
|
+
if($youbi % 7 == 6 || $day == $day_count) {//週終わり、月終わりの場合
|
99
101
|
//%は余りを求める、||はまたは
|
100
102
|
//土曜日を取得
|
101
103
|
|
102
|
-
if($day == $day_count){//月の最終日、空セルを追加
|
104
|
+
if($day == $day_count) {//月の最終日、空セルを追加
|
103
105
|
$week .= str_repeat('<td></td>', 6 - ($youbi % 7));
|
104
106
|
}
|
105
107
|
|
@@ -128,53 +130,45 @@
|
|
128
130
|
}
|
129
131
|
|
130
132
|
if (!empty(($_POST['update']))) {
|
131
|
-
|
133
|
+
//修正
|
132
|
-
for ($i =1; $i<=$day; $i++) {
|
133
|
-
if ($_POST["text_msg{$day}"] === $_POST["text_msg{$i}"]) {
|
134
|
-
|
134
|
+
$text_msg = preg_replace('/\A[\p{C}\p{Z}]++|[\p{C}\p{Z}]++\z/u', '',$_POST['text_msg']);
|
135
|
-
|
135
|
+
echo $text_msg;
|
136
|
-
break;
|
137
|
-
} else {
|
138
|
-
echo "できてないで";
|
139
|
-
}
|
140
|
-
}
|
141
|
-
}
|
142
|
-
|
143
|
-
|
144
|
-
if(empty($text_msg)){
|
136
|
+
if(empty($text_msg)){
|
145
|
-
$error_msg[] = '内容を入力してください。' ;
|
137
|
+
$error_msg[] = '内容を入力してください。' ;
|
146
|
-
}else{
|
147
|
-
$_SESSION['text_msg'] = $text_msg;
|
148
|
-
}
|
149
|
-
|
150
|
-
if(empty($error_msg)){
|
151
|
-
$pdo -> beginTransaction();
|
152
|
-
|
153
|
-
try{
|
154
|
-
// SQL作成
|
155
|
-
$stmt = $pdo->prepare("INSERT INTO msg_box (text_msg) VALUES ( :text_msg)");
|
156
|
-
|
157
|
-
// 値をセット
|
158
|
-
$stmt->bindParam( ':text_msg', $text_msg, PDO::PARAM_STR);
|
159
|
-
|
160
|
-
//sqlクエリの実行
|
161
|
-
$res = $stmt->execute();
|
162
|
-
|
163
|
-
//コミット
|
164
|
-
$res = $pdo->commit();
|
165
|
-
}catch(Exception $e){
|
166
|
-
$pdo -> rollBack();
|
167
|
-
}
|
168
|
-
if($res){
|
169
|
-
$_SESSION['success_msg'] = "書き込みに成功しました";
|
170
138
|
}else{
|
139
|
+
$_SESSION['text_msg'] = $text_msg;
|
140
|
+
}
|
141
|
+
|
142
|
+
if(empty($error_msg)){
|
143
|
+
$pdo -> beginTransaction();
|
144
|
+
|
145
|
+
try{
|
146
|
+
// SQL作成
|
147
|
+
$stmt = $pdo->prepare("INSERT INTO msg_box (text_msg) VALUES ( :text_msg)");
|
148
|
+
|
149
|
+
// 値をセット
|
150
|
+
$stmt->bindParam( ':text_msg', $text_msg, PDO::PARAM_STR);
|
151
|
+
|
152
|
+
//sqlクエリの実行
|
153
|
+
$res = $stmt->execute();
|
154
|
+
|
155
|
+
//コミット
|
156
|
+
$res = $pdo->commit();
|
157
|
+
}catch(Exception $e){
|
158
|
+
$pdo -> rollBack();
|
159
|
+
}
|
160
|
+
if($res){
|
161
|
+
$_SESSION['success_msg'] = "書き込みに成功しました";
|
162
|
+
}else{
|
171
|
-
$error_msg[] = "書き込みに失敗しました。";
|
163
|
+
$error_msg[] = "書き込みに失敗しました。";
|
172
|
-
}
|
164
|
+
}
|
173
|
-
$stmt = null;
|
165
|
+
$stmt = null;
|
174
|
-
header(
|
166
|
+
header('Location:[""]');
|
175
|
-
exit;
|
167
|
+
exit;
|
176
|
-
}
|
168
|
+
}
|
177
|
-
|
169
|
+
}else{
|
170
|
+
echo "データが送信されていない";
|
171
|
+
}
|
178
172
|
|
179
173
|
if( !empty($pdo)){
|
180
174
|
|
@@ -242,7 +236,7 @@
|
|
242
236
|
<body id="">
|
243
237
|
<div class="container">
|
244
238
|
<h3><a href="?ym=<?php echo $prev; ?>"><</a><?php echo $html_title; ?><a href="?ym=<?php echo $next; ?>">></a></h3>
|
245
|
-
<form action="
|
239
|
+
<form action="" method = "POST">
|
246
240
|
<table class="table table-bordered">
|
247
241
|
<tr>
|
248
242
|
<th>日</th>
|
1
ご指摘いただいたように、マークダウンの下にコードを描くように変更いたしました。教えていただき、ありがとうございます。
test
CHANGED
File without changes
|
test
CHANGED
@@ -10,6 +10,10 @@
|
|
10
10
|
|
11
11
|
|
12
12
|
### 該当のソースコード
|
13
|
+
|
14
|
+
|
15
|
+
ソースコード
|
16
|
+
```
|
13
17
|
<!-----------カレンダープログラム--------------->
|
14
18
|
<?php
|
15
19
|
$ym = null;
|
@@ -264,9 +268,5 @@
|
|
264
268
|
</html>
|
265
269
|
```ここに言語名を入力
|
266
270
|
|
267
|
-
|
271
|
+
|
268
|
-
|
269
|
-
|
272
|
+
|
270
|
-
```
|
271
|
-
|
272
|
-
|