【发布时间】:2017-04-24 09:33:56
【问题描述】:
这些是我所拥有的:
名为lamanInformasi的数据库表,具有以下字段:id、judul、isi、created_at、updated_at。
这就是我想要的:
用户可以上传多个文档或图像文件,这些文件将被存储到数据库中。文件名将保存到isi 字段,文件本身将保存到名为propic 的文件夹中。用户还可以在网站上显示数据库中的所有数据。
这些是我的代码:
create.blade.php
<form action="lamanInformasiController@index" method="post" enctype="multipart/form-data">
<input type="file" name="image"><br />
<input type="submit" name="submit" value="Submit">
</form>
lamanInformasiController.php
public function index(Request $request)
{
$file = new file;
if (Input::hasFile('image'))
{
$destinationPath = public_path().'/propic/';
$name = Input::file('image')->getClientOriginalName();
$extension = Input::file('image')->getClientOriginalExtension();
$file = Input::file('image')->move($destinationPath, $name . "." . $extension);
}
$file -> isi = $request->get($file);
$file -> save();
$lamanInformasi = LamanInformasi::all();
return view('upload.index', compact('lamanInformasi'));
}
index.blade.php
<table class="table table-striped table-bordered" border= "1px solid black">
<thead>
<tr>
<td>ID</td>
<td>Judul</td>
<td>Isi</td>
<td>Created At</td>
<td>Updated At</td>
</tr>
</thead>
<tbody>
@foreach($$lamanInformasi as $key => $value)
<tr>
<td>{{$value->id}}</td>
<td>{{$value->judul}}</td>
<td>{{$value->isi}}</td>
<td>{{$value->created_at}}</td>
<td>{{$value->updated_at}}</td>
</tr>
@endforeach
</tbody>
</table>
当我运行它时,我有这个错误:
ErrorException in ParameterBag.php line 90:
array_key_exists(): The first argument should be either a string or an integer
我有这个在ParameterBag line 89-91
public function get($key, $default = null)
{
return array_key_exists($key, $this->parameters) ? $this->parameters[$key] : $default;
}
这些是我的问题:
如何解决该错误?我是否使代码正确上传文件?因为我尝试过类似的代码,但它不起作用。谢谢
【问题讨论】:
-
array_key_exists 处理 null、float、boolean 和 'integer-representing string' 键的方式本身是不一致的,在 bool 和 float 的情况下,与它们在用作数组时的转换方式不一致偏移量。
-
@FullStack 对不起,我不明白。我该怎么办?
-
@FullStack 我还是不明白我的 ParameterBag 出了什么问题
标签: php database laravel file-upload laravel-5.2