質問編集履歴

2

書式の改善

2021/06/29 19:40

投稿

kukkule
kukkule

スコア0

test CHANGED
File without changes
test CHANGED
@@ -36,528 +36,10 @@
36
36
 
37
37
  ```
38
38
 
39
- Route::get('/', 'AreaController@index')->name('area');
40
39
 
41
- Route::get('/area/{area_id}/{date}', 'AreaController@areaGirls');
42
-
43
- Route::get('/area/{area_id}', 'AreaController@areaGirls');
44
-
45
- Route::get('/api/getWorkingGirls', 'AreaController@areaGirlsJson');
46
40
 
47
41
  ```
48
42
 
49
43
  viewファイル(area_girls.blade.php)
50
44
 
51
45
  ```
52
-
53
- @extends('layouts.app')
54
-
55
-
56
-
57
- @section('content')
58
-
59
- <div class="container">
60
-
61
- <div class="row">
62
-
63
- <div class="d-grid gap-2 col-6 mx-auto text-center working-girl selected-btn">
64
-
65
- <a href="#" data-areas_id="{{ $areas_id }}" data-date="{{ \Carbon\Carbon::now()->isoFormat("YYYYMMDD") }}" class="btn btn-outline-days w-50 btn-lg btn-margin">{{ \Carbon\Carbon::now()->isoFormat("YYYY年MM月DD日(ddd)") }} (本日)</a>
66
-
67
- <a href="#" data-areas_id="{{ $areas_id }}" data-date="{{ \Carbon\Carbon::now()->addDays(1)->isoFormat("YYYYMMDD") }}" class="btn btn-outline-days w-50 btn-lg btn-margin">{{ \Carbon\Carbon::now()->addDays(1)->isoFormat("YYYY年MM月DD日(ddd)") }}</a>
68
-
69
- <a href="#" data-areas_id="{{ $areas_id }}" data-date="{{ \Carbon\Carbon::now()->addDays(2)->isoFormat("YYYYMMDD") }}" class="btn btn-outline-days w-50 btn-lg btn-margin">{{ \Carbon\Carbon::now()->addDays(2)->isoFormat("YYYY年MM月DD日(ddd)") }}</a>
70
-
71
- </div>
72
-
73
- </div>
74
-
75
- </div>
76
-
77
- </br>
78
-
79
- @if (isset($areas_name->areas_name))
80
-
81
- <button type="button" class="btn shop_btn btn-outline-days">
82
-
83
- <h1>{{ $areas_name->areas_name }}</h1>
84
-
85
- </button>
86
-
87
- @else
88
-
89
- <h1>店舗情報を取得できませんでした</h1>
90
-
91
- @endif
92
-
93
- </br>
94
-
95
- <div class="container">
96
-
97
- <div class="row">
98
-
99
- @foreach($work_girls as $work_girl)
100
-
101
- <div class="col-sm">
102
-
103
- <div class="card mb-5 mx-auto">
104
-
105
- <div class="area-girls-body card-body2">
106
-
107
- <a href="/casts/{{ $work_girl->id }}">
108
-
109
- @if ($work_girl->image_file_name == null)
110
-
111
- <img class="img-fluid mx-auto thumbnail-image ImgBox-Img" src="/images/no-photos.png">
112
-
113
- @else
114
-
115
- <img class="img-fluid mx-auto thumbnail-image ImgBox-Img" src="https://test/{{ $work_girl->image_file_name }}" alt="">
116
-
117
- @endif
118
-
119
- <p class="text-center mx-auto area-girls-name">{{ $work_girl->name }}</p>
120
-
121
- <p class="text-center mx-auto shop-image area-girls-shop"> {{ $work_girl->shop_name }}</p>
122
-
123
- <p class="text-center mx-auto clock"> {{ $work_girl->today_info }}</p>
124
-
125
- </a>
126
-
127
- </div>
128
-
129
- </div>
130
-
131
- </div>
132
-
133
- @endforeach
134
-
135
- </div>
136
-
137
- </div>
138
-
139
- <div id="res"></div>
140
-
141
- @endsection
142
-
143
-
144
-
145
- ```
146
-
147
- 共通関数(GirlsCommon.php)
148
-
149
- ```
150
-
151
- <?php
152
-
153
-
154
-
155
- namespace App\Common;
156
-
157
-
158
-
159
- use Illuminate\Support\Facades\DB;
160
-
161
- use App\Work;
162
-
163
-
164
-
165
- class GirlsCommon
166
-
167
- {
168
-
169
- public function __construct()
170
-
171
- {
172
-
173
- //
174
-
175
- }
176
-
177
-
178
-
179
- public function getWorkGirls($areas_id, $date = null) {
180
-
181
- $work_girls = DB::table('works')
182
-
183
- ->where('works.areas_id', $areas_id)
184
-
185
- ->join('work_days', 'works.girls_url', '=', 'work_days.girls_url')
186
-
187
- ->whereRaw('LENGTH(work_days.today_info) > 4')
188
-
189
- ->select([
190
-
191
- 'works.girls_url',
192
-
193
- 'works.id',
194
-
195
- 'works.name',
196
-
197
- 'works.shop_name',
198
-
199
- 'work_days.today_info',
200
-
201
- 'work_days.tommorow_info',
202
-
203
- 'work_days.day_after_tommorow_info',
204
-
205
- 'works.image_file_name',
206
-
207
- ])
208
-
209
- ->inRandomOrder()
210
-
211
- ->get($areas_id);
212
-
213
- // dd($work_girls);
214
-
215
-
216
-
217
- return $work_girls;
218
-
219
- }
220
-
221
-
222
-
223
- public function getWorkGirlsDate($areas_id, $date = null) {
224
-
225
-
226
-
227
- $date_change = '';
228
-
229
- if ($date === \Carbon\Carbon::now()->isoFormat("YYYYMMDD")) {
230
-
231
- $date_change = 'today';
232
-
233
- } elseif($date === \Carbon\Carbon::now()->addDays(1)->isoFormat("YYYYMMDD")) {
234
-
235
- $date_change = 'tommorow';
236
-
237
- } elseif($date === \Carbon\Carbon::now()->addDays(2)->isoFormat("YYYYMMDD")) {
238
-
239
- $date_change = 'day_after_tommorow';
240
-
241
- }
242
-
243
-
244
-
245
- \Log::debug(__METHOD__.' date :'.$date.' areas_id :'.$areas_id.
246
-
247
- ' date_change :'.$date_change);
248
-
249
-
250
-
251
- $obj = DB::table('works')
252
-
253
- ->where('works.areas_id', $areas_id)
254
-
255
- ->join('work_days', 'works.girls_url', '=', 'work_days.girls_url')
256
-
257
- ->when($date_change !== '', function($query) use ($date_change) {
258
-
259
- return $query->whereRaw('LENGTH(work_days.'. $date_change.'_info) > 4');
260
-
261
- })
262
-
263
- ->select([
264
-
265
- 'works.girls_url',
266
-
267
- 'works.id',
268
-
269
- 'works.name',
270
-
271
- 'work_days.today_info',
272
-
273
- 'work_days.tommorow_info',
274
-
275
- 'work_days.day_after_tommorow_info',
276
-
277
- 'works.image_file_name',
278
-
279
- ]);
280
-
281
-
282
-
283
- $work_girls = $obj->get();
284
-
285
- $sql = $obj->toSql();
286
-
287
-
288
-
289
- \Log::debug(__METHOD__.' sql :'.$sql);
290
-
291
- // dd($work_girls);
292
-
293
-
294
-
295
- return $work_girls;
296
-
297
- }
298
-
299
-
300
-
301
- public function getWorkDays($areas_id) {
302
-
303
- $work_days = DB::table('work_days')
304
-
305
- ->select([
306
-
307
- 'work_days.today',
308
-
309
- 'work_days.tommorow',
310
-
311
- 'work_days.day_after_tommorow',
312
-
313
- ])
314
-
315
- ->first($areas_id);
316
-
317
- // dd($work_days);
318
-
319
- }
320
-
321
-
322
-
323
- public function getAreasName($areas_id)
324
-
325
- {
326
-
327
- $areas_name = DB::table('works')
328
-
329
- ->where('works.areas_id', $areas_id)
330
-
331
- ->join('shops', 'works.areas_id', '=', 'shops.areas_id')
332
-
333
- ->select('shops.areas_id', 'shops.shop_name', 'shops.areas_name')
334
-
335
- ->first($areas_id);
336
-
337
- // dd($shop_name);
338
-
339
- return $areas_name;
340
-
341
- }
342
-
343
-
344
-
345
- public function getAreas()
346
-
347
- {
348
-
349
- $areas = DB::table('shops')
350
-
351
- ->distinct()
352
-
353
- ->select('areas_id', 'area_name')
354
-
355
- ->get();
356
-
357
- // DD($areas);
358
-
359
- return $areas;
360
-
361
- }
362
-
363
- }
364
-
365
- ```
366
-
367
- AreaController.php
368
-
369
- ```
370
-
371
- <?php
372
-
373
-
374
-
375
- namespace App\Http\Controllers;
376
-
377
-
378
-
379
- use Illuminate\Http\Request;
380
-
381
- use Illuminate\Support\Facades\DB;
382
-
383
- use App\Common;
384
-
385
-
386
-
387
- class AreaController extends Controller
388
-
389
- {
390
-
391
- public function index() {
392
-
393
-
394
-
395
- $areas = DB::table('areas');
396
-
397
- $areas_data = $areas->get();
398
-
399
- // dd($areas_data);
400
-
401
- return view('index', ['areas_data' => $areas_data]);
402
-
403
- }
404
-
405
-
406
-
407
- public function areaGirls($areas_id, $date = null) {
408
-
409
- $girls_common = new \App\Common\GirlsCommon();
410
-
411
-
412
-
413
- $work_girls = $girls_common->getWorkGirls($areas_id);
414
-
415
-
416
-
417
- $areas_name = $girls_common->getAreasName($areas_id);
418
-
419
-
420
-
421
- $work_days = $girls_common->getWorkDays($areas_id);
422
-
423
-
424
-
425
- return view('area_girls', ['work_girls' => $work_girls,
426
-
427
- 'areas_name' => $areas_name,
428
-
429
- 'work_days' => $work_days,
430
-
431
- 'areas_id' => $areas_id]);
432
-
433
- }
434
-
435
-
436
-
437
- public function areaGirlsJson(Request $request)
438
-
439
- {
440
-
441
- $date = $request->input('date');
442
-
443
- $areas_id = $request->input('areas_id');
444
-
445
-
446
-
447
- \Log::debug(__METHOD__.' date :'.$date.' areas_id :'.$areas_id);
448
-
449
-
450
-
451
- $girls_common = new \App\Common\GirlsCommon();
452
-
453
-
454
-
455
- $work_girls = $girls_common->getWorkGirlsDate($areas_id, $date);
456
-
457
-
458
-
459
- $result = [
460
-
461
- 'requests' => [
462
-
463
- 'areas_id' => $areas_id,
464
-
465
- 'date' => $date,
466
-
467
- ],
468
-
469
- 'results' => $work_girls,
470
-
471
- ];
472
-
473
- return response()->json($result);
474
-
475
- }
476
-
477
- }
478
-
479
-
480
-
481
-
482
-
483
- ```
484
-
485
- app.js
486
-
487
- ```
488
-
489
- require('./bootstrap');
490
-
491
- require("./fontawesome");
492
-
493
-
494
-
495
- window.Vue = require('vue');
496
-
497
-
498
-
499
- var $ = require('jquery');
500
-
501
-
502
-
503
- // //日付ボタンがクリックされた際
504
-
505
- $(function() {
506
-
507
- $('.working-girl > a').on('click', function() {
508
-
509
- console.log("日時がクリックされました");
510
-
511
- console.log($(this).data('date'));
512
-
513
- var date = $(this).data('date');
514
-
515
- var areas_id = $(this).data('areas_id');
516
-
517
- var url = '/api/getWorkingGirls?date=' + date
518
-
519
- + '&areas_id=' + areas_id;
520
-
521
- $.ajax(url, {
522
-
523
- type: 'get',
524
-
525
- dataType: 'json'
526
-
527
- }).done(function(data) {
528
-
529
- $('#res').html(data);
530
-
531
- console.log(data);
532
-
533
- }).fail(function(data) {
534
-
535
- console.log(data);
536
-
537
- });
538
-
539
-
540
-
541
- });
542
-
543
-
544
-
545
- ```
546
-
547
-
548
-
549
- ### 試したこと
550
-
551
-
552
-
553
- 右クリック→検証で日付ボタン(Carbonで日付をもってきています)をクリックした際にdataは取得できているのが確認できたのですが、
554
-
555
- これをviewファイルにどう反映させればいいのかがわかっていない状態です。
556
-
557
- ajaxで取得した値をviewファイルに渡すので、
558
-
559
- $('#res').html(<? php (( work_girl->name ?>)));
560
-
561
- など色々とやってみましたが、うまく反映されません。
562
-
563
- 「jquery php 参照渡し」などもググってみましたが、取得した情報をphpで渡せていない状態にあります。

1

マルチポストに関して記載を修正しました。

2021/06/29 19:40

投稿

kukkule
kukkule

スコア0

test CHANGED
File without changes
test CHANGED
@@ -2,11 +2,13 @@
2
2
 
3
3
 
4
4
 
5
+ こちらの質問はstackoverflow、stackoverflow(英語版)の方でもさせていただいております。
6
+
7
+ またjqueryからPHPのviewファイルへの参照渡しの方法などもヤフー知恵袋で
8
+
5
- ここに質問の内容を詳しく書てくい。
9
+ 質問させてだいております
6
-
7
- 初めてのteratail質問になります。
10
+
8
-
9
- 至らぬ点などございましたらお気軽におっしゃっていただけると幸いです。
11
+
10
12
 
11
13
  日付のボタンをクリックされる度に自社で働いている女の子の
12
14
 
@@ -28,7 +30,7 @@
28
30
 
29
31
 
30
32
 
31
- ### ソースコード
33
+ ### ソースコード
32
34
 
33
35
  web.php
34
36
 
@@ -538,10 +540,6 @@
538
540
 
539
541
  });
540
542
 
541
-
542
-
543
- });
544
-
545
543
 
546
544
 
547
545
  ```
@@ -563,11 +561,3 @@
563
561
  など色々とやってみましたが、うまく反映されません。
564
562
 
565
563
  「jquery php 参照渡し」などもググってみましたが、取得した情報をphpで渡せていない状態にあります。
566
-
567
-
568
-
569
- ### 補足情報(FW/ツールのバージョンなど)
570
-
571
-
572
-
573
- ここにより詳細な情報を記載してください。