我想將影像和 pdf 插入到 mysql 資料庫中 updateOrCreate()
我試過了,但它回傳 1 或 0 而不是實際檔案 ..
$info = Info::updateOrCreate(
['user_id' => Auth::id()],
[
'image' => $request->hasFile('image') && $request->image->move(public_path('uploads'),$request->full_name.'.'.$request->image->getClientOriginalExtension()),
'cv' => $request->hasFile('cv') && $request->cv->move(public_path('uploads'),$request->user_id.'.'.$request->cv->getClientOriginalExtension())
]
);
uj5u.com熱心網友回復:
根據您的代碼,您正在通過回傳 true 或 false(0 或 1)的 'hasFile && move_uploaded_file' 的結果分配 image 和 cv 的值。您應該做的是,如果 has_file 和 move_uploaded_file 回傳 true,則回傳檔案路徑位置。如果沒有,請將其留空。
$info = Info::updateOrCreate(
['user_id' => Auth::id()],
[
'image' => $request->hasFile('image') && $request->image->move(public_path('uploads'),$request->full_name.'.'.$request->image->getClientOriginalExtension()) ? public_path('uploads').$request->full_name.'.'.$request->image->getClientOriginalExtension() : "",
'cv' => $request->hasFile('cv') && $request->cv->move(public_path('uploads'),$request->user_id.'.'.$request->cv->getClientOriginalExtension()) ? public_path('uploads').$request->user_id.'.'.$request->cv->getClientOriginalExtension() : ""
]
);
上面的代碼只回傳您上傳檔案的檔案位置的字串(來自 move_uploaded_file)。如果要將其直接插入到資料庫中,則需要一個 blob/二進制列,并使用 mysql stmt(準備好的陳述句)將 blob 插入到資料庫中。
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/372185.html
