Php 在Laravel中上载文件,验证出现问题,失败,显示白色屏幕,无错误
我一直在尝试遵循一些使用Laravel PHP上传文件的指南,但遇到了一个障碍。目前,我下面的控制器编译时没有错误,但会将我带到一个白色页面,我的文件上载似乎不会到达我的存储位置。我已经得到图像上传工作,但我想这是一个图像,音频或视频上传功能,我还没有能够得到它的工作。我正在努力调试这段代码,看看哪里会出错。是因为if语句中的return语句吗?我是业余爱好者,非常感谢您的帮助 谢谢 请参阅下面的参考资料和控制器Php 在Laravel中上载文件,验证出现问题,失败,显示白色屏幕,无错误,php,laravel,file,controller,upload,Php,Laravel,File,Controller,Upload,我一直在尝试遵循一些使用Laravel PHP上传文件的指南,但遇到了一个障碍。目前,我下面的控制器编译时没有错误,但会将我带到一个白色页面,我的文件上载似乎不会到达我的存储位置。我已经得到图像上传工作,但我想这是一个图像,音频或视频上传功能,我还没有能够得到它的工作。我正在努力调试这段代码,看看哪里会出错。是因为if语句中的return语句吗?我是业余爱好者,非常感谢您的帮助 谢谢 请参阅下面的参考资料和控制器 从前端发送的字段称为“文件”,对吗?只是检查一下 我的第一个想法是,您的程序
从前端发送的字段称为“文件”,对吗?只是检查一下 我的第一个想法是,您的程序可能没有将其写入if语句,这可以解释为什么会出现白色屏幕。 首先,我建议您
返回var_dump($request->hasFile('file')代码>
看看这是真是假
然后,可能尝试返回[$request->file('file')代码>并查看它所显示的内容。。。然后我们从那里开始。我不是专家,但我想我能帮点忙。=)你检查过laravel.log文件吗?是的,laravel.log中没有任何内容。如果你是对的,返回var_dump($request->hasFile('file');返回False并返回[$request->file('file')];返回null,但“file”是输入字段的名称吗?如果您返回$request->all()
;你好,@GregGelman,你能找出问题出在哪里吗?还没有。今天晚些时候我会尝试这个请求。有很多关于如何处理图像的指导,但没有其他文件类型。我只想能够上传任何文件,不管大小。嗯,不管大小,一次最多5gb的限制。
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Http\Requests;
class UploadfileController extends Controller
{
function index()
{
return view('upload');
}
function upload(Request $request)
{
if( $request->hasFile('file') ) {
$file = $request->file('file');
$imagemimes = ['image/jpeg,png']; //Add more mimes that you want to support
$videomimes = ['video/mp4,mpeg,ogg,mp4,webm,3gp,mov,flv,avi,wmv,ts']; //Add more mimes that you want to support
$audiomimes = ['audio/mpeg,mpga,mp3,wav,aac']; //Add more mimes that you want to support
//Validate images
if(in_array($file->getMimeType() ,$imagemimes)) {
$filevalidate = 'required|mimes:jpeg,png|max:2048';
}
//Validate video
if (in_array($file->getMimeType() ,$videomimes)) {
$filevalidate = 'required|file|mimes:mpeg,ogg,mp4,webm,3gp,mov,flv,avi,wmv,ts|max:4000040';
}
//validate audio
if (in_array($file->getMimeType() ,$audiomimes)) {
$filevalidate = 'required|file|mimes:audio/mpeg,mpga,mp3,wav,aac|max:90048';
}
$original = $file->getClientOriginalName();
// get filename with extension like demo.php
$filename = pathinfo($original)['basename'];
// get public path to images folder
$path = public_path('files');
// concat public path with filename
$filePath = $path.'/'.$filename;
// store uploaded file to path
$store = Storage::put($filePath, File::get($file));
return back()->with('success', 'Media Uploaded Successfully')->with('path', $store);
}
}
}