首页 > 其他 > 详细

dede5.7-修改自定义表单

时间:2019-06-29 15:51:56      阅读:131      评论:0      收藏:0      [点我收藏+]

最近刚好帮客户做一个网站,需要用到dede的自定义表单功能。可是有个这样的需求,就是当表单提交成功后,要返回一个自定义页面的提示功能!可能是觉得dede自带的提示太low的原因吧!(一不小心又黑了下)??

好啦,废话不多说。我们一起来看看,怎么去修改系统自带的提示窗口呢!

我们先来看下dede提交成功后弹出窗,如下图:

技术分享图片

我们预期的效果提交成功后的弹出窗,如下图:

技术分享图片

 

第一步:找到系统文件

首先我们打开网站目录下/plus/diy.php文件,需要修改的地方大约在100行左右。如下图:

技术分享图片

 

第二步:修改系统文件

   如果对此段稍有研究的朋友,不然发现,这是一个条件的判断。不管判断的条件输出什么,都会调用下面那个showmsg方法。(而这个方法正是弹出系统提示窗的),因此我们只需注释掉此方法即可。

   那么又有人会问啦:“你都注释了这个方法。那还怎么输出我们想要的页面呢?”

   大人稍安勿躁,容小的把解决方案,一 一道来:

   聪明的朋友可能已经发现,我在 $bkmsg = ‘发布成功,请等待管理员处理...‘; 下面,添加了三段代码。而这三段代码正是系统没有的,不然已发现是做什么用的啦!

   不错,这三段代码正是修改系统提示窗的代码。如下图:

   技术分享图片

   原理如下:

   我们先通过禁止调用系统弹窗的方法,当表单提交成功后,却不会出现提示框,可能还会报错什么的。我们只要在提示发布成功后,输出我们自己的想要的内容即可。

   

   代码如下:

 $rsg .= ‘自定义内容‘;
 
 //需注意:外层是‘单引号’,里面直接把代码写一行即可,双引号则不需要转义。
$rsg.=‘<script>setTimeout(function(){window.location.href="/lala/order/"},3000)</script>‘;

echo $rsg;

 

   具体代码不做过多解释,简单说明下。

   1、第一段,把写好的html代码,用变量保存起来。(弹出窗代码)

   2、第二段,输入javascript代码,来控制页面的跳转问题。

   3、PHP的语法,输出什么,这里指把整块事先定义好的内容输出到页面。即(弹出窗代码+js)

   注意:如果要自己修改提交成功,返回的页面路径。可以直接写

$rsg .=‘window.location.href="跳转地址";‘;

 

第三步:大功告成,完美显示!

   修改完成后,直接保存下。不出意外,就会出现如下图的情况。那么恭喜你,已经成功啦!

技术分享图片

本文出处:https://www.jkys120.com/

dede5.7-修改自定义表单

原文:https://www.cnblogs.com/zqw111/p/11106527.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!