質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
87.20%
PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

解決済

laravelソート機能について

yoyoyo5962
yoichi-1212

総合スコア24

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

2回答

0評価

0クリップ

360閲覧

投稿2022/01/11 12:35

laravelでorderbyメソッドを使用して日付順に並べ替えをしようと思っていますが。
その処理をコントローラーのどのfunctionに入れればいいのか分からなくなってしまいました。
どなたかヒントを頂けないでしょうか。

下記bladeファイルです。

php

<!DOCTYPE html> @extends('layouts.layout') {{-- layout.blade.phpの@yield('title')'埋めこみ --}} @section('title', 'task management') {{-- layout.blade.phpの@yield('content')に以下のタグを埋め込む --}} @section('content') <div class="container"> <div class="row"> <div class="col-md-8 mx-auto"> <h2>Todoリスト登録</h2> <form action="{{ action('TaskController@store') }}" method="post" enctype="multipart/form-data"> @if (count($errors) > 0) <ul> @foreach($errors->all() as $e) <li>{{ $e }}</li> @endforeach </ul> @endif <div class="form-group"> <label class="formGroupExampleInput"for="title">題名</label> <input type="text" class="form-control" id="formGroupExampleInput" placeholder="題名を登録して下さい" name="title" value="{{ old('title') }}"> </div> <div class="form-group"> <label class="formGroupExampleInput2"for="body">Todo</label> <input type="text" class="form-control" id="formGroupExampleInput2" placeholder="Todoを登録して下さい" name="body" value="{{ old('body') }}"> </div> <!--下記日付の登録フォーム--> <div class="form-group"> <div class="text-right"> <label for="deadline">期限入力<lavel> <input type="date" name="deadline"> </div> </div> <!--下記status_nameのデフォルト値の入力--> <input type="hidden" name="status_name" value="未着"> <!--下記ボタンの右寄せ--> {{ csrf_field() }} <div class="text-right"> <input type="submit" class="btn btn-primary" value="登録"> </div> </form> </div> </div> <div class="row"> <div class="col-md-9 mx-auto"> <div class="col-md-8"> <h2>リスト一覧</h2> </div> <div class="col-md-4"> <form action="{{ action('TaskController@index') }}" method="get"> <div class="form-group row "> <label class="col-md-3">題名</label> <div class="col-md-6"> <input type="text" class="form-control" name="search_title" value="{{ $search_title }}"> </div> <div class="col-md-2"> {{ csrf_field() }} <input type="submit" class="btn btn-primary" value="検索"> </div> </div> </form> </div> </div> <div> <!--ここに期限順のソートを入れる予定です。--> </div> </div>

下記コントローラーファイルです。

php

<?php namespace App\Http\Controllers; use Illuminate\Http\Request; use App\Http\Controllers\Controller; use App\Task; use Illuminate\Support\Facades\Auth; class TaskController extends Controller { public function add() { return view('tasks.index'); } /** * Display a listing of the resource. * * @return \Illuminate\Http\Response */ public function index(Request $request) { $search_title = $request->search_title; if ($search_title != '') { // ユーザー情報持ってきて 関連するユーザーのタスク持ってきて その中からさらにタイトルで絞り込み $tasks = Auth::user()->tasks->where('title', $search_title); // $tasks = Task::where('title', $search_title)->get(); } else { // 入ってなければ全件取得 $tasks = Auth::user()->tasks; // $tasks = Task::all(); } return view('tasks.index', ['tasks' => $tasks, 'search_title' => $search_title]); } /** * Show the form for creating a new resource. * * @return \Illuminate\Http\Response */ public function create() { return redirect('/tasks'); } /** * Store a newly created resource in storage. * * @param \Illuminate\Http\Request $request * @return \Illuminate\Http\Response */ public function store(Request $request) { // session()->flash('flash_message', '投稿が完了しました'); echo "完了"; // データベースに登録できる処理入れる //mysqlでデータベースに保存されてるか確認 $task = new Task; $form = $request->all(); unset($form['_token']); $task->fill($form); // $task->deadline = '2022-01-01'; $task->user_id = $request->user()->id; $task->save(); return redirect('/tasks'); //select * from taskmanagement.tasks; } /** * Display the specified resource. * * @param int $id * @return \Illuminate\Http\Response */ public function show($id) { // } /** * Show the form for editing the specified resource. * * @param int $id * @return \Illuminate\Http\Response */ public function edit(Request $request) { // Modelからデータの取得 $task = Task::find($request->id); // $task->status_id = 0; return view('tasks.edit', ['task_form' => $task]); } /** * Update the specified resource in storage. * * @param \Illuminate\Http\Request $request * @param int $id * @return \Illuminate\Http\Response */ public function update(Request $request) { // Modelからデータの取得 $task = Task::find($request->id); // 送信されてきたフォームデータの格納 $task_form = $request->all(); unset($task_form['_token']); //データの上書き $task->fill($task_form); // $task->deadline = '2022-01-01'; $task->save(); return redirect('/tasks'); } /** * Remove the specified resource from storage. * * @param int $id * @return \Illuminate\Http\Response */ public function delete(Request $request) { // Modelからデータの取得 $task = Task::find($request->id); // 削除 $task->delete(); //戻る処理  return redirect('/tasks'); } }

良い質問の評価を上げる

以下のような質問は評価を上げましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

  • プログラミングに関係のない質問
  • やってほしいことだけを記載した丸投げの質問
  • 問題・課題が含まれていない質問
  • 意図的に内容が抹消された質問
  • 過去に投稿した質問と同じ内容の質問
  • 広告と受け取られるような投稿

評価を下げると、トップページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

m.ts10806

2022/01/11 20:47

Laravelの機能に関する質問でしたら質問タグに必要に思います。(PHPできる人がみんなLaravelもできるわけではないです)

まだ回答がついていません

会員登録して回答してみよう

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
87.20%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。