質問編集履歴

3

新たなPHPのソース追加

2018/03/06 08:43

投稿

tabonon
tabonon

スコア7

test CHANGED
File without changes
test CHANGED
@@ -30,8 +30,44 @@
30
30
 
31
31
  ログイン画面はすでにできております
32
32
 
33
+
34
+
35
+ こちらで似たほうな方法を調べて当てはめてみましたが動きませんでした
36
+
37
+ 何かが足りないのはわかります、ただ何が足りないのかわかりません。
38
+
39
+
40
+
33
41
  ```PHP
34
42
 
43
+ if(isset($_POST['checker'])){
44
+
45
+ if($_SESSION["username"] == '責任者'){
46
+
47
+ if(strpos($datalist[$i], '最高責任者')){
48
+
49
+ echo '<script type="text/javascript">alert("あなたは最高責任者ではありません。");</script>';
50
+
51
+ return false;
52
+
53
+ }
54
+
55
+ }
56
+
57
+
58
+
59
+ }
60
+
61
+ ```
62
+
63
+ 何を加えたら最高責任者以外は削除できない設定にできるのでしょうか?
64
+
65
+
66
+
67
+
68
+
69
+ ```PHP
70
+
35
71
  以下はPHPのコードです。
36
72
 
37
73
 

2

ソースコードのインデントの追加

2018/03/06 08:43

投稿

tabonon
tabonon

スコア7

test CHANGED
File without changes
test CHANGED
@@ -42,8 +42,6 @@
42
42
 
43
43
 
44
44
 
45
-
46
-
47
45
  require_once'../setUserData.php';
48
46
 
49
47
 
@@ -62,103 +60,99 @@
62
60
 
63
61
  <?php
64
62
 
65
- $file="data.csv";
63
+ $file = 'data.csv';
66
-
64
+
67
- $newdata=array();
65
+ $newdata = array();
68
-
66
+
69
- $datalist=array();
67
+ $datalist = array();
70
-
68
+
71
- $checks=array();
69
+ $checks = array();
72
-
70
+
73
- if($_SERVER["REQUEST_METHOD"]=="POST" && !empty($_POST)){
71
+ if ($_SERVER['REQUEST_METHOD'] == 'POST' && !empty($_POST)) {
74
-
72
+
75
- $checks=$_POST["checker"];
73
+ $checks = $_POST['checker'];
76
74
 
77
75
 
78
76
 
79
77
  //
80
78
 
81
- $fp=fopen($file,"r+");
79
+ $fp = fopen($file, 'r+');
82
-
80
+
83
- flock($fp,LOCK_EX);
81
+ flock($fp, LOCK_EX);
84
-
82
+
85
- $count=0;
83
+ $count = 0;
86
-
84
+
87
- while($data=fgetcsv($fp)){
85
+ while ($data = fgetcsv($fp)) {
88
-
86
+
89
- if(!in_array($count,$checks)){
87
+ if (!in_array($count, $checks)) {
90
-
88
+
91
- $newdata[]=$data;
89
+ $newdata[] = $data;
92
-
90
+
93
- }
91
+ }
94
-
92
+
95
- $count++;
93
+ ++$count;
96
-
94
+
97
- }
95
+ }
98
96
 
99
97
  //
100
98
 
101
- ftruncate($fp,0);
99
+ ftruncate($fp, 0);
102
-
100
+
103
- fseek($fp,0);
101
+ fseek($fp, 0);
104
-
105
-
106
-
102
+
103
+
104
+
107
- foreach($newdata as $list){
105
+ foreach ($newdata as $list) {
108
-
106
+
109
- fputcsv($fp,$list);
107
+ fputcsv($fp, $list);
110
-
108
+
111
- }
109
+ }
112
-
110
+
113
- flock($fp,LOCK_UN);
111
+ flock($fp, LOCK_UN);
114
-
112
+
115
- fclose($fp);
113
+ fclose($fp);
116
-
117
-
118
114
 
119
115
  }
120
116
 
121
117
  //
122
118
 
123
- $datalist=show($file);
119
+ $datalist = show($file);
124
-
125
-
126
-
127
-
128
-
120
+
121
+
122
+
129
- function show($filedata){
123
+ function show($filedata)
124
+
130
-
125
+ {
126
+
131
- $fp= fopen($filedata,"r");
127
+ $fp = fopen($filedata, 'r');
132
-
128
+
133
- $datas=array();
129
+ $datas = array();
134
-
130
+
135
- while ($data=fgetcsv($fp)) {
131
+ while ($data = fgetcsv($fp)) {
136
-
137
-
138
-
132
+
139
- list($username,$date,$title)=$data;
133
+ list($username, $date, $title) = $data;
140
-
134
+
141
- $list=array(
135
+ $list = array(
142
-
136
+
143
- "username"=>$username,
137
+ 'username' => $username,
144
-
138
+
145
- "date"=>$date,
139
+ 'date' => $date,
146
-
140
+
147
- "title"=>$title,
141
+ 'title' => $title,
148
142
 
149
143
  );
150
144
 
151
145
  //一行データをまとめる配列に追加する
152
146
 
153
- $datas[]=$list;
147
+ $datas[] = $list;
154
-
148
+
155
- }
149
+ }
156
-
150
+
157
- fclose($fp);
151
+ fclose($fp);
158
-
159
-
160
-
152
+
153
+
154
+
161
- return $datas;
155
+ return $datas;
162
156
 
163
157
  }
164
158
 
@@ -226,7 +220,7 @@
226
220
 
227
221
  </script>
228
222
 
229
- <p>ようこそ!<?php echo htmlspecialchars($_SESSION['username'],ENT_QUOTES); ?>さん!(<a href="../logout.php">ログアウト</a>)</p>
223
+ <p>ようこそ!<?php echo htmlspecialchars($_SESSION['username'], ENT_QUOTES); ?>さん!(<a href="../logout.php">ログアウト</a>)</p>
230
224
 
231
225
 
232
226
 
@@ -244,17 +238,17 @@
244
238
 
245
239
  <table>
246
240
 
247
- <?php for ($i=1; $i <count($datalist) ; $i++): ?>
241
+ <?php for ($i = 1; $i < count($datalist); ++$i): ?>
248
242
 
249
243
  <tr>
250
244
 
251
245
  <td><input type="checkbox" name="checker[]" value=<?php echo $i; ?> ></td>
252
246
 
253
- <td><?php echo $datalist[$i]["username"]; ?></td>
247
+ <td><?php echo $datalist[$i]['username']; ?></td>
254
-
248
+
255
- <td><?php echo $datalist[$i]["date"]; ?></td>
249
+ <td><?php echo $datalist[$i]['date']; ?></td>
256
-
250
+
257
- <td><?php echo $datalist[$i]["title"]; ?></td>
251
+ <td><?php echo $datalist[$i]['title']; ?></td>
258
252
 
259
253
  </tr>
260
254
 

1

PHPのコードの記述追加

2018/03/06 04:30

投稿

tabonon
tabonon

スコア7

test CHANGED
File without changes
test CHANGED
@@ -23,3 +23,257 @@
23
23
 
24
24
 
25
25
  のような感じになっており、ログインしている人物が責任者なら責任者のみの記事を消せるようにしたいのです。
26
+
27
+
28
+
29
+ 回答ありがとうございます。こちらを使用するのはほぼ初めてであるので不慣れなところが目立ってしまい申し訳ございません。
30
+
31
+ ログイン画面はすでにできております
32
+
33
+ ```PHP
34
+
35
+ 以下はPHPのコードです。
36
+
37
+
38
+
39
+ <?php
40
+
41
+ session_start();
42
+
43
+
44
+
45
+
46
+
47
+ require_once'../setUserData.php';
48
+
49
+
50
+
51
+ ?>
52
+
53
+
54
+
55
+ <?php
56
+
57
+ require_once'../log_in.php';
58
+
59
+ ?>
60
+
61
+
62
+
63
+ <?php
64
+
65
+ $file="data.csv";
66
+
67
+ $newdata=array();
68
+
69
+ $datalist=array();
70
+
71
+ $checks=array();
72
+
73
+ if($_SERVER["REQUEST_METHOD"]=="POST" && !empty($_POST)){
74
+
75
+ $checks=$_POST["checker"];
76
+
77
+
78
+
79
+ //
80
+
81
+ $fp=fopen($file,"r+");
82
+
83
+ flock($fp,LOCK_EX);
84
+
85
+ $count=0;
86
+
87
+ while($data=fgetcsv($fp)){
88
+
89
+ if(!in_array($count,$checks)){
90
+
91
+ $newdata[]=$data;
92
+
93
+ }
94
+
95
+ $count++;
96
+
97
+ }
98
+
99
+ //
100
+
101
+ ftruncate($fp,0);
102
+
103
+ fseek($fp,0);
104
+
105
+
106
+
107
+ foreach($newdata as $list){
108
+
109
+ fputcsv($fp,$list);
110
+
111
+ }
112
+
113
+ flock($fp,LOCK_UN);
114
+
115
+ fclose($fp);
116
+
117
+
118
+
119
+ }
120
+
121
+ //
122
+
123
+ $datalist=show($file);
124
+
125
+
126
+
127
+
128
+
129
+ function show($filedata){
130
+
131
+ $fp= fopen($filedata,"r");
132
+
133
+ $datas=array();
134
+
135
+ while ($data=fgetcsv($fp)) {
136
+
137
+
138
+
139
+ list($username,$date,$title)=$data;
140
+
141
+ $list=array(
142
+
143
+ "username"=>$username,
144
+
145
+ "date"=>$date,
146
+
147
+ "title"=>$title,
148
+
149
+ );
150
+
151
+ //一行データをまとめる配列に追加する
152
+
153
+ $datas[]=$list;
154
+
155
+ }
156
+
157
+ fclose($fp);
158
+
159
+
160
+
161
+ return $datas;
162
+
163
+ }
164
+
165
+ var_dump($datalist);
166
+
167
+ ?>
168
+
169
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
170
+
171
+ <html xmlns="http://www.w3.org/1999/xhtml">
172
+
173
+ <head>
174
+
175
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
176
+
177
+ <title>タイトル</title>
178
+
179
+ </head>
180
+
181
+ <link rel="stylesheet" type="text/css" href="../css2/style.css" media="screen">
182
+
183
+ <body>
184
+
185
+ <style type="text/css">
186
+
187
+ table{
188
+
189
+ border-collapse:collapse;
190
+
191
+ }
192
+
193
+ table td{
194
+
195
+ border:1px solid #ccc;
196
+
197
+ padding:5px;
198
+
199
+ }
200
+
201
+
202
+
203
+ </style>
204
+
205
+ <script type="text/javascript">
206
+
207
+
208
+
209
+ function RunConfirm() {
210
+
211
+
212
+
213
+ if ( confirm("実行しますか?") ) {
214
+
215
+ return true;
216
+
217
+ }
218
+
219
+ else {
220
+
221
+ return false;
222
+
223
+ }
224
+
225
+ }
226
+
227
+ </script>
228
+
229
+ <p>ようこそ!<?php echo htmlspecialchars($_SESSION['username'],ENT_QUOTES); ?>さん!(<a href="../logout.php">ログアウト</a>)</p>
230
+
231
+
232
+
233
+ <div class="box_b">
234
+
235
+ <p class="title">タイトル</p>
236
+
237
+ <br />
238
+
239
+ <div class="form">
240
+
241
+
242
+
243
+ <form method="post" action="" onSubmit="return RunConfirm()">
244
+
245
+ <table>
246
+
247
+ <?php for ($i=1; $i <count($datalist) ; $i++): ?>
248
+
249
+ <tr>
250
+
251
+ <td><input type="checkbox" name="checker[]" value=<?php echo $i; ?> ></td>
252
+
253
+ <td><?php echo $datalist[$i]["username"]; ?></td>
254
+
255
+ <td><?php echo $datalist[$i]["date"]; ?></td>
256
+
257
+ <td><?php echo $datalist[$i]["title"]; ?></td>
258
+
259
+ </tr>
260
+
261
+ <?php endfor; ?>
262
+
263
+ </table>
264
+
265
+ <input type="submit" name="send" value="送信">
266
+
267
+ </form>
268
+
269
+ <br /><br /><br /><br /><br /><br /><br />
270
+
271
+ </div>
272
+
273
+ </div>
274
+
275
+ </body>
276
+
277
+ </html>
278
+
279
+ ```