我有一个这样的表格
<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-data 工作。奇怪的是,我的更新确实与我的图像上传一起工作。如果我删除 enctype,我的插入确实可以工作,但我的文件上传显然不行。
我的 POST 数据在两种(插入/更新)情况下也是正确的,PDO 语句也是正确的(使用 queryString 检查它)。正如我所说,它有效。
如何使用这种类型的表单处理按钮 type="submit"?我已经尝试过输入 type="submit"来检查这是否是问题所在,但结果是相同的。
最佳答案
好吧,我明白了。问题不在于多部分,而是我将图像的文件名保存在数据库中。但如果激活了 multipart,则内容是二进制的(即使没有设置文件)。这导致了问题并且 INSERT 失败。
我想 UPDATE 会忽略无法更新的字段并将其留空?
关于php - 在 MySQL 插入上使用 multipart/form-data 的奇怪行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51319874/