discuz 推送博文图片提示数据不匹配
来源:互联网 发布:网络出版服务许可证 编辑:程序博客网 时间:2024/06/01 21:26
diy调用日志模块,若选择过滤封面,然后再推送博文的时候总是会出现数据不匹配的问题,这个问题困扰了我很久,今天终于被我解决了。
原因是在发博文的时候,选择图片上传时包括“上传图片”,“相册图片”和“网络图片”,若选择“上传图片”,调用swfupload这个插件,然后会生成一个隐藏域,名称为picids,里边存的值为home_pic中picid 的值,但是选择“相册图片”和“网络退片”则不会生成 picids,正是这个picids 是产生了数据不配的根本原因。若picids值不为空,home_blog 的数据表中picflag值会变为1, 最主要的还是home_blogfiled表中pic 的值会是图片的地址,也是是说这个值会是推送博文时图片的封面。若picids 的是为空,home_blogfiled中 pic的值为空,及推送时diy的模块会认为此博文是没有封面的博文,导致出现数据不匹配的警告。
下边介绍解决办法,我想的是修改 source/function/function_blog .php文件。
在 C::t('home_blogfield')->insert($fieldarr);之后加入此段代码
if( empty($fieldarr['pic']) ) {
if( preg_match("<img src=\"data/attachment/album/(.+?)\".*?>",$message,$match) ){
C::t('home_blogfield')->update($blogid,array("pic"=>$match[1].".thumb.jpg"));
C::t('home_blog')->update($blogid, array("picflag"=>1));
}
}
判断fieldarr这个数据存的值就是要插入数据库的,我先判断pic的值,pic 不为空就是选择了“ 上传图片”,这样就不必做任何修改数据库的行为,但是若pic的值为空,及选择了“相册图片”,我们需要修改home_blogfiled 中pic的值,将其改为图片的地址,然后修改home_blog中picflag改为1.
好了,问题介绍完了,希望大家能够看懂,这个问题困扰了我很久,希望同样被此问题困扰的人们能够解决!!
- discuz 推送博文图片提示数据不匹配
- 向Access插入数据时提示“标准表达式中数据类型不匹配”的解决方法
- C#使用OleDB操作ACCESS插入数据时提示:标准表达式中数据类型不匹配。
- 手机高温警告提示内容不匹配的分析【多次调用PendingIntent.getBroadcast,intent数据不更新】
- vs2012远程调试提示pdb不匹配
- java错误提示----------类型不匹配
- bpm提示租户令牌不匹配
- Discuz! X3 去掉内容图片提示下载方法(去除图片提示下载附件)
- 图片与屏幕尺寸不匹配
- [转]dedecms调用discuz论坛图片数据的方法
- String数据编码导致不匹配问题
- 数据库匹配插入不重复数据
- WP7不使用推送服务修改瓷片图片
- 关于烧入工具与bin不匹配的提示
- webcache.xml提示找不到主机名或者主机名不匹配
- VS 2008 提示出现 “程序数据库管理器不匹配”。
- T6导入库存期初余额提示“类型不匹配”
- 提示与“MAX”声明中的类型不匹配,不能编译
- 【揪出导致电脑黑屏的罪魁祸首】
- (备份记录)u盘的格式化与挂载
- 多项式相加
- MFC的PreTranslateMessage()函数浅析
- 高手详解SQL性能优化十条经验
- discuz 推送博文图片提示数据不匹配
- 【7gyy】教程:几大注意事项让Win7更安全
- shell的case语句
- Android ListView使用BaseAdapter与ListView的优化
- Linux基本功六:文件的查找与压缩
- iframe框架流量分析 以导航站为例谈框架流量的应用
- 各主流浏览器及其内核
- Maven3实战笔记04Maven的生命周期和插件
- discuz 论坛不同版块使用不同模板