在网站上工作了一下午没有问题后,我突然看到“无法将附件插入数据库”。每当我尝试上传任何文件时都会出错。文件的大小和类型似乎并不重要。
我已经检查了 WordPress 中的权限、文件上传大小和内存限制,没有发现任何问题。上次成功上传和上传失败之间没有进行任何更改(仅几分钟的时间)。
我发现文件已正确上传到文件系统,但在 WordPress 中不可用。
这可能是 MySQL 数据库问题。要查找阻止您上传媒体的确切错误,您可以通过将
define('WP_DEBUG_LOG', true);
添加到 wp-config.php
文件来打开 WordPress 调试日志记录,然后重新创建错误,并在 debug.log
文件中查找完整的错误消息在wp-content
文件夹内(更详细的说明可以在这里找到)。
就我而言,错误是尝试插入到
mac_posts
表时出现重复的主键。图像实际上上传到服务器上的 wp-content/uploads
文件夹就好了,但是 WordPress 在 mac_posts
表中为每个上传的媒体项目创建了一个条目,以便它可以在 WordPress 媒体库中显示它。使用 phpMyAdmin 查看数据库表,具有现有 ID 的行是 wpforms 联系表单,因此我只是从表中删除了该行,手动重新创建联系表单,并修复了表和上传问题。
遇到同样的错误,发现是图片名称的长度问题。通过重命名为更短的名称来修复它。
谢谢你,Ngeno,谢谢你,我解决了这个问题。