blob预览框默认不支持拖拽缩放,需通过自定义css调整尺寸;若连基本显示异常,则先检查javascript是否加载成功,确认jquery等关键js文件返回200且控制台无报错。
phpmyadmin里blob预览框不能拖拽?先确认是否禁用javascript
默认情况下,blob字段在「浏览」或「插入」页面点击后弹出的预览框(textarea 或 input[type="text"])是**不支持拖拽缩放**的——它不是 sql 查询框那种富文本区域。所谓“调大小”,本质是改其 css 渲染尺寸,而非启用 resize 手柄。
如果你发现点开 BLOB 字段后连基本显示都异常(比如空白、截断、按钮错位),优先打开浏览器开发者工具(F12),切到 Console 标签页,看是否有 $ is not defined、Uncaught TypeError: Cannot read property 'show' of null 类报错。这类错误说明 jQuery 或 phpMyAdmin 的核心 JS 未加载,CSS 再怎么调也白搭。
检查 Network 面板,过滤 js,确认 functions.js、tbl_change.js 等文件返回 200;若看到 404,说明路径被 CDN/Nginx 误拦截,或 config.inc.php 中 $cfg['AllowArbitraryServer'] 等安全配置过严,导致资源加载失败。
直接改 CSS 是最稳的方案,但必须选对选择器
BLOB 字段在不同上下文渲染方式不同:「浏览」页里是只读 textarea,「插入/编辑」页里可能是 input 或带语法高亮的 textarea。硬套全局 textarea { height: 300px; } 会把所有输入框撑变形,包括登录框、搜索框。
推荐在自定义 CSS 文件(如 /css/custom-pma.css)中加这几条针对性规则:
/* 浏览页的 BLOB 预览 textarea */
.browse_table .column_data textarea {
min-height: 120px !important;
max-height: 400px !important;
font-size: 13px !important;
}
<p>/<em> 插入/编辑页的 BLOB 字段 input 和 textarea </em>/</p><h1>table_columns input[type="text"][name$="[blob]"],</h1><h1>table_columns textarea[name$="[blob]"] {</h1><pre class="brush:php;toolbar:false;">height: auto !important;
min-height: 80px !important;
padding: 6px !important;}
关键点:
-
name$="[blob]"是利用属性选择器精准命中 BLOB 字段,避免误伤其他文本框 -
min-height比固定height更安全,内容少时不浪费空间 - 加
!important是因为 phpMyAdmin 的 inline style 或高权重选择器常覆盖外部 CSS
为什么改了 CSS 还没生效?缓存和路径最容易踩坑
常见失效原因不是代码写错,而是环境没对齐:
- 自定义 CSS 路径在
config.inc.php中必须是 Web 可访问路径,例如$cfg['CustomCSS'] = 'css/custom-pma.css';,而不是服务器绝对路径/var/www/html/phpmyadmin/css/custom-pma.css - phpMyAdmin 默认开启 CSS 版本哈希(如
?v=5.2.1),改完 CSS 文件后浏览器仍用旧缓存。必须清空浏览器缓存,或临时在 URL 后加&v=2强制刷新 - 某些宝塔/Nginx 配置启用了 aggressive expires 缓存,需检查响应头中
Cache-Control是否为max-age=31536000,临时注释掉相关expires指令再试 - 如果用了自定义主题(如
pmahomme),CSS 文件可能要放在对应主题子目录下,而非根目录css/
大 BLOB 值根本看不到全貌?这不是尺寸问题,是服务端截断
如果 BLOB 字段值超过 1MB,你拉再大的预览框也只看到开头几百字节 + “***”,这不是前端 CSS 能解决的。这是 phpMyAdmin 主动限制的保护机制,防止页面卡死。
真正有效的解法只有两个:
- 进「导出」页 → 选「自定义」→ 格式选
SQL→ 展开「格式特定选项」→ **取消勾选“使用十六进制表示二进制数据”** → 导出后用编辑器查全文 - 或者绕过 phpMyAdmin,用命令行:
mysqldump -u root -p --hex-blob --skip-extended-insert database table --where="id=123" > blob_dump.sql,其中--hex-blob能安全导出任意大小 BLOB 的十六进制形式
别在预览框大小上死磕——当值本身就被截断时,拉宽只是把“***”拉得更宽而已。
php免费学习视频:立即使用
踏上前端学习之旅,开启通往精通之路!从前端基础到项目实战,循序渐进,一步一个脚印,迈向巅峰!











