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

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

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

LaravelとはTaylor Otwellによって開発された、オープンソースなPHPフレームワークです。Laravelはシンプルで表現的なシンタックスを持ち合わせており、ウェブアプリケーション開発の手助けをしてくれます。

PHP

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

Q&A

0回答

526閲覧

画像ファイル名をオリジナルの名前で保存したい!

aoinosuke

総合スコア8

Laravel

LaravelとはTaylor Otwellによって開発された、オープンソースなPHPフレームワークです。Laravelはシンプルで表現的なシンタックスを持ち合わせており、ウェブアプリケーション開発の手助けをしてくれます。

PHP

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

0グッド

0クリップ

投稿2020/07/09 06:24

編集2020/07/15 03:00

追記
PHP 7.4.7
Laravel Framework 7.19.1
主な参考記事
https://readouble.com/laravel/5.4/ja/requests.html
https://teratail.com/questions/241217

保存すると

/private/var/folders/5n/9vq51_1n5_v0sj1clbf2l5rr0000gn/T/phpPnuPTq

という名前で保存されてしまうのを防ぎたい。
ちゃんと元々の画像名前で保存したいです!

controlloer public function store(Request $request) { $user = auth()->user(); $data = $request->all(); $validator = Validator::make($data,[ 'title' => ['string', 'max:30'], 'image' => ['file', 'image', 'mimes:jpeg,png,jpg', 'max:20480'] ]); $validator->validate(); $book = new Book; $book->homeStore($user->id, $data); $file_name = $request->file('image')->getClientOriginalName(); $request->file('image')->storeAs('',$file_name); $book->save(); // dd($book); return redirect('/home')->with('success', '投稿が完了しました。'); }
models public function homeStore(Int $user_id, Array $data) { $this->user_id = $user_id; $this->image = $data['image']; $this->title = $data['title']; $this->save(); return; }

controllerにstoreAsを使うことはわかったのですが、うまくいかないので質問させていただきました!
publicフォルダには画像名がしっかり保存されています。
ですが、dbからファイルを呼び出しアップロードするためには文字化けしているとうまくいかないのでなんとか名前で保存できるようにしたいです。
よろしくお願いします!

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

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

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

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2020/07/13 11:57

PHPやLaravelのバージョン情報も添えてほしいです。古いコード例を引用しているのだとすると、もしかしたら新しいやり方に変わっていたりする可能性もあるため、参考にしたページの情報も添えてほしいです。
phper.k

2020/07/15 08:49 編集

開発環境はWindowsですか? それとも仮想環境?
aoinosuke

2020/07/15 14:51

macを使っています!
aoinosuke

2020/07/20 00:32

情報足りませんか?
m.ts10806

2020/07/20 21:44

Laravel7系利用なのになぜ5.4のドキュメントを?
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

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

アカウントをお持ちの方は

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

ただいまの回答率
85.46%

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

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

質問する

関連した質問