質問編集履歴

3

追記

2016/03/22 04:29

投稿

Z-TALBO
Z-TALBO

スコア525

test CHANGED
File without changes
test CHANGED
@@ -218,40 +218,108 @@
218
218
 
219
219
 
220
220
 
221
- ---------------------------
221
+ ------------------------------
222
222
 
223
223
  [追記]
224
224
 
225
- 回答ありござます
226
-
227
- 検証してみての結果です。
228
-
229
- if ($year//////の部分を
230
-
231
-
232
-
233
- if ($day != @$data['day'] && $data)
234
-
235
- てみ時の表示です。
236
-
237
- 上段の部分変更した場合
238
-
239
- ○○さん 出勤 3/19 9:00
240
-
241
- 実働:-94617600
242
-
243
- ○○さん 休入 3/19 12:00
244
-
245
- 実働: 9467600
246
-
247
- このような感じになってしまいました。
248
-
249
- とりあえず、date('H:i', $jitsudo)で表示を変えてみましたが、ちょっとよくわからない感じの時間がズラズラと出てしまいます。。。
250
-
251
- 上記の場合
252
-
253
- 実働:17:00
254
-
255
- 実働:12:00
256
-
257
- といったように一行ずつ出てきます。
225
+ 本当に理解力乏しく、、、いろいろやってみているのですが、結局まくかず、、、こちらに追記させてください。。
226
+
227
+
228
+
229
+ ```PHP
230
+
231
+ $data = []; // $dataっていう配列の初期化
232
+
233
+ $jitsudo = 0; // $jitsudoの初期値?
234
+
235
+ if ($day = @data['day'] && $data) { // もも、$dayがdata['day']と$dataだっ
236
+
237
+ $jitsudo = 計算 // $jitsudoに計算式入れる。
238
+
239
+ $data = []; // 配列の初期化
240
+
241
+ }
242
+
243
+
244
+
245
+ $data['year'] = $year;
246
+
247
+ $data['month'] = $month;
248
+
249
+ $data['day'] = $day;
250
+
251
+ $data[$row['dakoku']] = $time; // dakokuにmktimeした$timeを?
252
+
253
+
254
+
255
+ if ($jitsudo) : // もし$jitsudoがあったら
256
+
257
+ ?>
258
+
259
+ <tr>
260
+
261
+ <td colspan="4">実働:<?= $jitsudo; ?></td> // 実働表示
262
+
263
+ </tr>
264
+
265
+ <?php
266
+
267
+ $jitsudo = 0;
268
+
269
+ endif;
270
+
271
+ ?>
272
+
273
+ <tr>
274
+
275
+ <td><?= h($row['name']); ?></td> // 名前表示
276
+
277
+ <td><?= h($row['dakoku']); ?></td> // 打刻の種別
278
+
279
+ <td><?= h($month) . '/' . h($day); ?></td> // 月/日
280
+
281
+ <td><?= h($hour) . ':' . h($minutes); ?></td> // 時:分
282
+
283
+ </tr>
284
+
285
+ <?php
286
+
287
+ endwhile;
288
+
289
+ $jitsudo = 計算
290
+
291
+ ?>
292
+
293
+ <tr>
294
+
295
+ <td colspan="4">実働:<?= $jitsudo; ?></td> // 実働表示
296
+
297
+ </tr>
298
+
299
+ <?php
300
+
301
+ $jitsudo = 0;
302
+
303
+ endif;
304
+
305
+ ?>
306
+
307
+ ```
308
+
309
+ 流れとして
310
+
311
+ while内に計算と表示があって、while抜けてから最後の計算って流れなんですが、
312
+
313
+ while内では無いようにしたりとかしたり、してみたのですが、、、
314
+
315
+ どうなっているのか、よくわからなくなってしまい、、、、
316
+
317
+ 手が詰まりました。。。。
318
+
319
+
320
+
321
+ 待機のことなどは、特にあれば良いななので、ここでは実働の表示だけで大丈夫です。
322
+
323
+
324
+
325
+ レベルが低く申し訳ありません。。。

2

修正

2016/03/22 04:29

投稿

Z-TALBO
Z-TALBO

スコア525

test CHANGED
File without changes
test CHANGED
@@ -226,26 +226,32 @@
226
226
 
227
227
  検証してみての結果です。
228
228
 
229
+ if ($year//////の部分を
230
+
231
+
232
+
229
- 1.if ($day = $data['day'] && $data)にしてみた
233
+ if ($day != @$data['day'] && $data)
230
-
234
+
231
- そのまましてしまったので、その後に表示用の$dayが表示されなくなった
235
+ しての表示です
236
+
232
-
237
+ 上段の部分を変更した場合
238
+
233
-
239
+ ○○さん 出勤 3/19 9:00
240
+
234
-
241
+ 実働:-94617600
242
+
235
- 2.上記の現象時、実働の部分に関しては一番下にだけ表示された
243
+ ○○さん 休入 3/19 12:00
244
+
236
-
245
+ 実働: 9467600
246
+
237
- しかし、時間は全然違時間になっていました。
247
+ このよな感じになってしまいました。
238
-
239
-
240
-
241
- 3.1のif文を後に持ってきたら、当然表示用の$dayが表示され、実働の部分も一つだけ表示されましたが、計算結果としては違うものでした。
248
+
242
-
243
-
244
-
245
- 4.わがままかもしれませんが、、、
246
-
247
- 間違っていたいうことすが、その日1日分の実働が表示される事に関ては表示されほういい思ってで、その表示はそのままで、最後に合計が出るようにてみたのでが、、、
249
+ りあえず、date('H:i', $jitsudo)で表示を変えてみましたが、ちょっよくわからな感じ時間ズラズラと。。。
250
+
248
-
251
+ 上記の場合
252
+
249
-
253
+ 実働:17:00
254
+
250
-
255
+ 実働:12:00
256
+
251
- 一応、ろいろ並び替えてみたりとかやてみましが、、、このような感じです。
257
+ いったように一行ずつ出てきます。

1

検証結果

2016/03/19 09:02

投稿

Z-TALBO
Z-TALBO

スコア525

test CHANGED
File without changes
test CHANGED
@@ -215,3 +215,37 @@
215
215
  難しい内容かもしれませんが、どうかアドバイスいただけますでしょうか?
216
216
 
217
217
  よろしくお願い致します。
218
+
219
+
220
+
221
+ ---------------------------
222
+
223
+ [追記]
224
+
225
+ 回答ありがとうございます。
226
+
227
+ 検証してみての結果です。
228
+
229
+ 1.if ($day = $data['day'] && $data)にしてみた
230
+
231
+ そのまましてしまったので、その後に表示用の$dayが表示されなくなった。
232
+
233
+
234
+
235
+ 2.上記の現象時、実働の部分に関しては一番下にだけ表示された
236
+
237
+ しかし、時間は全然違う時間になっていました。
238
+
239
+
240
+
241
+ 3.1のif文を後に持ってきたら、当然表示用の$dayが表示され、実働の部分も一つだけ表示されましたが、計算結果としては違うものでした。
242
+
243
+
244
+
245
+ 4.わがままかもしれませんが、、、
246
+
247
+ 間違っていたということですが、その日1日分の実働が表示される事に関しては表示されたほうがいいと思っているので、その表示はそのままで、最後に合計が出るようにしてみたいのですが、、、
248
+
249
+
250
+
251
+ 一応、いろいろ並び替えてみたりとかやってみましたが、、、このような感じです。