尝试在数据库中存储文件路径名时,为什么返回null?

阴天

我不确定为什么null尝试测试端点是否有效时会得到回报。

表名正确,但是由于某种原因,它无法识别我的文件。尽管有我的代码,但我的表还是有多个列,并且是使用创建的php artisan(我只是想填充filePath列,我将在以后处理其他列)。以下是供参考的图片
在此处输入图片说明

如果我摆脱了dd($filePath);控制器中的那个-邮递员错误将返回:

Integrity constraint violation: 1048 Column 'file_path' cannot be null (SQL: insert into 照片 (file_path) values (?))

注意:我的Laravel代码库和React.js代码库是完全分开的。任何人都知道为什么会这样吗?

这是我的前端代码:

fileSelectedHandler = event => {
    this.setState({
        selectedFile: event.target.files[0]
    })
}

fileUploadHandler = () => {
    const fd = new FormData();
    fd.append('image', this.state.selectedFile, this.state.selectedFile.name);
    axios.post('http://myendpoint/api/auth/wall-of-fame', fd)
        .then(res => {
            console.log(res);
        })
}

<form action="http://myendpoint/api/auth/wall-of-fame" encType='multipart/form-data' id="login-form" className="form">
            <input type="file" name="file" onChange={this.fileSelectedHandler}/>
            <button onClick={this.fileUploadHandler}>Upload</button>
        </form>

这是我的PHP控制器:

public function store(Request $request){
    $filePath = $request->input('file')->getClientOriginalName();
    $data=array('file_path'=>$filePath);

    // dd($filePath);

    DB::table('photos')->insert($data);
    echo "Record inserted successfully.<br/>";
    echo '<a href = "/insert">Click Here</a> to go back.';
}

Request检索文件时,使用file方法而不是inputmethod:

$filePath = $request->file('file')->getClientOriginalName();

您可以使用以下hasFile方法确定请求中是否存在文件

if ($request->hasFile('file')) {
    $filePath = $request->file('file')->getClientOriginalName();
}

这里查看官方文档

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

为什么将文件名和上传路径存储在数据库中?

将图像路径名保存在数据库中

在数据库中存储文件路径

在数据库中存储路径文件

无法在数据库中存储文件名

当存储类型未存储在数据库中时,当我们更改FileField的存储属性时,为什么django创建迁移文件?

Codeigniter上传:在数据库中插入时,图像的文件名返回null

当Integrated Security = false时,在数据库“ master”中拒绝CREATE DATABASE权限-为什么尝试创建已经存在的数据库?

为什么在尝试在数据库中加载Blob时出现java.lang.AbstractMethodError?

在数据库中存储图像路径

使用存储在数据库中的路径显示imageview

在数据库中存储图像/文件路径;以/(正斜杠)开头还是没有?

如何使用php将文件路径存储在数据库中?

Laravel 更新 - 图片上传的文件路径未存储在数据库中

想要在数据库中存储多个文件路径

尝试在数据库中存储图像URL时出错

尝试在数据库中存储Json时,Ebean“找不到SpiJsonService的服务实现”

为什么我的数据没有使用 eloquent 存储在数据库中?

yii2为什么我不能在数据库中存储数据?

使用php下载文件,文件存储在文件夹中,文件名存储在数据库中

使用spring-mvc和hibernate将文件名存储在数据库中,而不是将文件本身存储在数据库中

Android:存储在数据库中的缩略图返回null

如何在UWP中的新SQLiteConnection中传递数据库路径名?

尝试在数据库中查找实体时,EntityManager为null

如何从PHP中的数据库完整路径名获取每个用户的图像

如何在Git存储库中按作者计数每个文件路径名的提交次数?

我应该将上传的文件名存储在数据库中吗?

上载的图像文件扩展名未存储在数据库中

为什么实体没有存储在数据库中?