在mysql插入中使用多部分/表单数据的奇怪行为

zmeyuzjn  于 2021-06-20  发布在  Mysql
关注(0)|答案(1)|浏览(338)

我有一张这样的表格

<form method="post" enctype="multipart/form-data">
    <input type="text" name="field01">
    <input type="file" name="file01">
    <button type="submit" name="update">Update</button>
    <button type="submit" name="new">Save New</button>
</form>

它包含不同的输入字段,如上面的示例所示。
现在我经历了一个奇怪的行为。在测试mysql插入/更新等之后,我添加了enctype,正如预期的那样。文件上传也可以工作,但现在我有一个问题,我的插入不再使用multipart/form数据工作。奇怪的是,我的更新和我上传的图片一起工作。如果我删除enctype,我的插入可以工作,但是我的文件上传显然不行。
我的post数据在(insert/update)和pdo语句(使用querystring检查)中都是正确的。正如我所说,它是有效的。
button type=“submit”如何处理此类型的表单?我已经试过input type=“submit”检查这是否是问题所在,但是结果是一样的。

xoshrz7s

xoshrz7s1#

好吧,我想出来了。问题不在于多部分,而是我在数据库中保存图像的文件名。但如果激活了multipart,则内容是二进制的(即使没有设置任何文件)。这导致了问题,插入失败。
我想update会忽略那些无法更新的字段,并将它们留空吗?

相关问题