我通过以下laravel
代码在公共文件夹中创建一个新文件夹:
$f1=Input::get('f1');
$path ='img/uploads/'.$f1;
File::makeDirectory($path, 0777, true, true);
然后我在blade.php中使用此代码选择该文件夹到网页
{{ Form::select('f1', $list, null,array('class' => 'form-control' ,'list')) }}` and controller.php ` $list = File::directories('img/uploads/');
return View::make('gallery.addnewgallery',array('list'=>$list));
然后,我正在尝试将图像插入到所选文件夹中,并且还使用controller.php代码插入数据库:
$f1=Input::get('f1');
$path ='img/uploads/'.$f1;
$file=File::directories($f1, '=', $path);
Log::info($file );
$file=Input::file('galimg');
$filename=$file->getClientOriginalName();
$file->move('img/uploads/'.$f1,$filename);
ForumGallery::create([
'galname'=>Input::get('galname'),
'galimg'=>$f1.'/'.$filename
]);
我的问题是当选择文件夹并使用浏览输入图像时,我收到错误InvalidArgumentException
。 1
目录不存在(我从下拉框中选择文件夹2
)。
答案 0 :(得分:0)
这是代码浏览器的HTML输出
<select name="f1"><option value="0">1</option><option value="1">2</option><option value="2">3</option><option value="3">4</option><option value="4">5</option><option value="5">6</option></select>
因此,当您选择选项2时,它的值将为1,因此它会抛出 InvalidArgumentException
所以你必须写如下: 这样它就会显示价值并且内容相同(对于你的文件夹名称)
<select>
<option selected disabled>Please select one option</option>
@foreach($folders as $folder)
<option value="{{ $folder }}">{{ $folder }}</option>
@endforeach
</select>