You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在phpMyAdmin数据库中存储图片?自建login表存储失败求助

phpMyAdmin无法向LongBlob字段存储图片的解决方案

常见问题排查与修复步骤

1. 调整phpMyAdmin及PHP的上传限制

phpMyAdmin和PHP默认的上传大小限制会阻止大图片存储:

  • 编辑phpMyAdmin的config.inc.php,添加或修改上传目录配置:
    $cfg['UploadDir'] = './uploads';
    
    同时在phpMyAdmin根目录创建uploads文件夹,设置服务器用户可写权限。
  • 修改PHP配置文件php.ini的以下参数:
    upload_max_filesize = 20M
    post_max_size = 25M
    max_execution_time = 300
    
    修改后重启Web服务器生效。

2. 解除字段非空约束(临时测试)

你的表字段设置了NOT NULL,若上传时无有效图片数据,插入会直接失败。先修改字段允许空值测试:

ALTER TABLE login MODIFY photo longblob;

确认能正常存储后,再根据业务需求决定是否恢复NOT NULL约束(恢复前需确保上传逻辑强制提交图片)。

3. 遵循正确的phpMyAdmin上传流程

确保操作步骤无误:

  • 进入login表的插入界面
  • 在photo字段对应的区域,点击浏览选择本地图片文件
  • 确认文件大小未超过上传限制后,点击执行完成插入

4. 检查数据库表的引擎与字符集

部分引擎或字符集可能影响Blob字段存储:

  • 查看表的当前配置:
    SHOW CREATE TABLE login;
    
  • 若需要,将表引擎改为InnoDB,字符集设为utf8mb4:
    ALTER TABLE login ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
    

内容的提问来源于stack exchange,提问作者Xomandhan Bisari

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.08 23:10:45