2023-01-01から1年間の記事一覧

FontAwesomeをダウンロードして使う

ダウンロード FontAwesome公式 zipを展開 webアプリに設置 設置するもの css all.min.css webfonts ディレクトリ以下すべて html headで読み込み <link rel="stylesheet" href="./css/all/min.css"></link>

Laravel ECサイト step03

認証 Laravel Breeze追加 breezeパッケージの追加 sail composer require'laravel/breeze:*' --dev :* の意味「利用可能な任意のバージョン」 Laravel Breezeパッケージのインストール sail artisan breeze:install 質問 回答 Which Breeze stack would you …

Laravel ECサイト step02

CRUD Create 商品モデルを作成 カラム名 説明 Laravel関数 MySQLのデータ型 name 商品名 string varchar(255) description 商品の説明文 text text price 価格 integer int(11) sail artisan make:model Product -m database\migrations\XXXX_XX_XX_XXXXXX_c…

Laravel ECサイト step01

ひな型作り プロジェクトを作成 curl -s https://laravel.build/example-app | bash タイムゾーン config/app.php //======== 前略 ======== |-------------------------------------------------------------------------- | Application Timezone |-------…

Laravel ミニブログ作成4 投稿のCRUD機能

投稿のコントローラーPostControllerを作成 sail artisan make:controller PostController Read 投稿一覧(indexアクション) と 投稿詳細(showアクション)の登録 投稿一覧 現在ログイン中のユーザーに属するすべての投稿を取得し、作成日時が新しい順に並べ替…

Laravel シーディングとファクトリ

シーディング データベースにダミーデータを追加 シーダークラスを作成 sail artisan make:seeder シーダークラス名 database/seedersフォルダの中にシーダクラスが生成される

Github ローカルからリモートへpush

ローカルのプロジェクトをGithubで管理 CLIで該当プロジェクトディレクトリに移動 Git管理下に置く git init git add . git commit -m 'first commit' リモートリポジトリにプッシュ Quick setup …or push an existing repository from the command line git…

Laravel ミニブログ作成3 投稿用テーブルとモデル

postsテーブルの作成 マイグレーションファイルの作成 sail artisan make:migration create_posts_table --create=posts マイグレーションファイルの編集 カラム名 内容 id(主キー) ID user_id(外部キー) ユーザーのID title タイトル content 本文 crea…

Laravel ミニブログ作成2 認証を実装

Laravel Breezeパッケージで実装 Laravel Breezeパッケージの追加 プロジェクトディレクトリで sail composer require laravel/breeze --dev Laravel Breezeパッケージのインストール sail artisan breeze:install マイグレーションの実行 sail artisan migr…

Laravel ミニブログ作成1 プロジェクトの作成

プロジェクト作成とタイムゾーン設定 プロジェクト作成 WSL上でのLaravelプロジェクト作成 WSL2上のDockerコンテナでsailを動かして開発を始める。 phpMyAdmin プロジェクトディレクトリ直下のdocker-compose.yml のservicesにphpmyadminを追記 phpmyadmin: …

Laravel パッケージLaravel

Laravelの代表的なパッケージ パッケージ 説明 Laravel Breeze 認証機能を作成するためのパッケージ。導入コストが低く、従来のLaravel UIに近い感覚で利用できる。 Laravel Fortify 認証機能を作成するためのパッケージ。フロントエンドは自分で実装する必…

Laravel ファイルのアップロード

アップロード機能の手順 テーブル(カラム)を用意する アップロード先を設定する フォームを作成する アクションを作成する テーブル(カラム)を用意する テーブルにはVARCHARなど文字列型のカラム(例:file_nameカラム)を用意し、ファイル名やファイル…

Laravel Breezeパッケージを使って認証と認可

認可(Authorization)とは、「あなたはこのアクションを実行する権限がありますか?」という権限確認を行うこと。 例えば「誰でも閲覧できる」「ログイン中のユーザーのみが閲覧できる」「管理者のみがデータを作成できる」など、ルーティングの各ルートに…

Laravel HTTPリクエスト

リクエスト情報を取得 コントローラのアクションの引数にRequest $requestのように型宣言を行う アクション内でその引数を使う

Laravel Eloquent ORM

Eloquent ORM Eloquent ORMを利用し、モデルを介してデータベースとやりとりする クエリビルダ:モデルを介さず、直接データベースとやりとりを行う Eloquent ORM:モデルを介し、間接的にデータベースとやりとりを行う Eloquent ORMにおけるクエリの書き方 …

Laravel モデル

モデルの作成 sail artisan make:model Product モデルの中身を app/Models/Product.ph

Laravel クエリビルダ

クエリビルダとは SQLのクエリ(テータベースに対する問い合わせ、命令文)を簡単に作成・実行できるLaravelの機能 例 -- SQL文 SELECT * FROM products; // クエリビルダ DB::table('products')->get(); クエリビルダの書き方 すべてのクエリビルダに共通 u…

sailにphpMyAdminを追加

docker-compose.yml修正 Laravel Sailで環境構築が済んでいること Sailの中身はDockerですので、Laravelプロジェクト直下にあるdocker-compose.ymlを修正します。 phpMyAdminに関する情報を、servicesブロック内に追記します。 # For more information: http…

Laravel Bladeテンプレート

データの表示 【コントローラ側】 変数をビューに渡す 【ビュー側】 コントローラから受け取った変数を{{と}}で囲む 変数をビューに渡すには、上記のようにview()ヘルパ関数の第2引数にPHPのcompact()関数を指定する方法が一般的 compact()関数の引数にはビ…

Laravel ビューの基本

ビューの作成 resources/viewsフォルダの中に手動で作成。ファイル名は○○○.blade.php 表示はルーティングやコントローラでLaravelview()ヘルパ関数でviewを返す。 view()ヘルパ関数でビューを指定するときはresources/viewsを省略し、フォルダ名.ファイル名…

Laravel コントローラの基本

コントローラの作成 コントローラを作成するには、ターミナルで以下のコマンドを実行します。 sail artisan make:controller コントローラ名 コマンドで作成されたコントローラ(コントローラ名.php)は、app/Http/Controllersフォルダの中に配置される。 ア…

Laravelルーティングの基本

ルーティングの設定方法 // ルーティングの基本的な設定方法 Route::HTTPリクエストメソッド名('URL', [コントローラ名::class, 'アクション名']); // ルートに名前をつける場合 Route::HTTPリクエストメソッド名('URL', [コントローラ名::class, 'アクショ…

Laravelプロジェクトの設定方法

Laravelプロジェクトの設定方法 Laravelプロジェクトの設定ファイルはすべてconfigフォルダ内に格納されています。 app.phpファイルでLaravelプロジェクト全体の設定を行う 設定ファイル 用途 app.php Laravelプロジェクト全体の設定を行う。アプリケーショ…

Laravel CRUDとMVCモデル

CRUD(クラッド) データの作成(Create)、読み取り(Read)、更新(Update)、削除(Delete) MVCモデル MVCはモデル(Model)、ビュー(View)、コントローラ(Controller) MVC 役割 モデル アプリの「処理」を担当。データベースとやりとりし、データの…

Laravelの開発手順

Laravelの一般的な開発手順 Laravelプロジェクトの作成 Laravelプロジェクトの設定 データベースとの連携 扱うデータ(「商品」「仕入先」など)ごとに以下繰り返し マイグレーションファイルの作成 マイグレーションの実行(テーブルの作成) モデルの作成 …

PHPでMySQLからデータ取得(SELECT)

select文を実行 DB接続 query()メソッドの引数にSQL文を渡す $dsn = 'mysql:dbname=php_db;host=localhost;charset=utf8mb4'; $user = 'root'; $password = ''; try { $pdo = new PDO($dsn, $user, $password); // usersテーブルからidカラムとnameカラムの…

SQL文

SQL SQL文 処理の内容 CREATE DATABASE データベースを作成する。 DROP DATABASE データベースを削除する。 CREATE TABLE テーブルを作成する。 DROP TABLE テーブルを削除する。 SELECT データを取得する。 INSERT データを追加する。 UPDATE データを更新…

PHPでMySQLに接続 PDO(Php Data Object)

PDOクラスでDB接続 データソース名:DSN(Data Source Name)とも呼ばれる。データベースに接続するために必要な情報(データベース名、ホスト名またはIPアドレス、文字コードなど)のこと ユーザー名:データベースに接続するユーザー名。デフォルトはroot …

非同期処理(ajax)

Ajaxのリクエスト送信(JS) fetch APIのfetchメソッド fetch(リクエスト先のURL, [オプション設定] ) .then((response) => response.json()) // 1度目の処理(レスポンス受信時) .then((data) => { // 2度目の処理(1度目の処理完了時) 処理 }); オプション…

例外処理

try-catch-finally文 try { // 例外が発生するかもしれないコード } catch (例外クラス名 $変数名) { // 例外が発生した場合の処理 } finally { // 例外の発生有無にかかわらず、必ず実行する処理 } throwによる例外