如何让dede多个自定义表单提交后提示信息不同

我在dede自定义了两个表单,但是他们提交后提示的信息都一样,我如何,让两个提示信息不一样呢... 我在dede自定义了两个表单,但是他们提交后提示的信息都一样,我如何,让两个提示信息不一样呢 展开
 我来答
任德宝
推荐于2016-04-06 · 十年专注连锁品牌营销
任德宝
采纳数:159 获赞数:513

向TA提问 私信TA
展开全部

织梦自定义表单的应用非常方便,不管用在什么地方,收集信息特别方便制作和管理。

 

有如下几个建议,把下拉框和单选按扭在后台做成单行文本,这样的话不管你提交的是下拉框或是单选,都可以有效的接收它的值。如果后台就做成单选或下拉,如果改了默认值,提交的表单值跟后台默认值对不上的话就会出现提交不成功的情况,就是前台提交的时候选择了,但后台看不到数据。若是做成单行文本,提交的值就会以文本的形式写入到后台,表单修改值也更加显得方便了。

 

提交之后会显示织梦的默认提示信息“友情提示”几秒过后就自动转到首页。如何才能让提交的信息停留,并让用户确认所提交的信息。

 

我想了如下方式。给diy.php里提交成功后输入固定值而不是自带的跳转方法。如下:

if($action == 'post')
{
 if(empty($do))
 {
  $postform = $diy->getForm(true);
  include DEDEROOT."/templets/plus/{$diy->postTemplate}";
  exit();
 }
 elseif($do == 2)
 {
  $dede_fields = empty($dede_fields) ? '' : trim($dede_fields);
  $dede_fieldshash = empty($dede_fieldshash) ? '' : trim($dede_fieldshash);
  if(!empty($dede_fields))
  {
   if($dede_fieldshash != md5($dede_fields.$cfg_cookie_encode))
   {
    showMsg('数据校验不对,程序返回', '-1');
    exit();
   }
  }
  $diyform = $dsql->getOne("select * from osen_diyforms where diyid='$diyid' ");
  if(!is_array($diyform))
  {
   showmsg('自定义表单不存在', '-1');
   exit();
  }
 
  $addvar = $addvalue = '';
 
  if(!empty($dede_fields))
  {
 
   $fieldarr = explode(';', $dede_fields);
   if(is_array($fieldarr))
   {
    foreach($fieldarr as $field)
    {
     if($field == '') continue;
     $fieldinfo = explode(',', $field);
     if($fieldinfo[1] == 'textdata')
     {
      ${$fieldinfo[0]} = FilterSearch(stripslashes(${$fieldinfo[0]}));
      ${$fieldinfo[0]} = addslashes(${$fieldinfo[0]});
     }
     else
     {
      ${$fieldinfo[0]} = GetFieldValue(${$fieldinfo[0]}, $fieldinfo[1],0,'add','','diy', $fieldinfo[0]);
     }
     $addvar .= ', `'.$fieldinfo[0].'`';
     $addvalue .= ", '".${$fieldinfo[0]}."'";
    }
   }
 
  }
 
  $query = "insert into `{$diy->table}` (`id`, `ifcheck` $addvar)  values (NULL, 0 $addvalue); ";
 
  if($dsql->executenonequery($query))
  {
   $id = $dsql->GetLastID();
   if($diy->public == 2)
   {
    //diy.php?action=view&diyid={$diy->diyid}&id=$id
    $goto = "diy.php?action=list&diyid={$diy->diyid}";
    $bkmsg = '发布成功,现在转向表单列表页...';
   }
   else
   {
    $goto = !empty($cfg_cmspath) ? $cfg_cmspath : '/';
    $bkmsg = '发布成功,请等待管理员处理...';
   }
   echo '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>订单核对 </title>
<link href="/img_cnosn/css_end.css" rel="stylesheet" type="text/css" />
</head>
 
<body>
<div id="ctent">
<h1>您已成功提交订单,请仔细核对你的信息!</h1>
<ul>
<script language="javascript">
 function ReplaceAll(str,sptr,sptr1)
 {
  while (str.indexOf(sptr) >= 0)
  {
     str = str.replace(sptr, sptr1);
  }
  return str;
 }
 
 descria=",您的姓名:,联系电话:,送货地址:,购买产品:,支付方式:,订货留言:,b";
 var descri=new Array();
 descri=descria.split(",");
 str= "'.$addvalue.'" ;
 str=ReplaceAll(str,"\'","");
 var strarray=new   Array();
 strarray=str.split(",") ;
 for(i=0;i<7;i++){
 document.write("<li>"+descri[i]+strarray[i]+"</li>");
 }
</script>
</ul>
<div class="info">友情提示:您的订单已提交成功,我们的客服会尽快与你取得联系 <a href="#" onclick="window.operner = null;window.open(\'\',\'_self\');window.close();">确认并关闭</a> 或 <a href="#" onclick="window.operner = null;window.open(\'\',\'_self\');window.close();">返回修改</a></div>
</div>
</body>
</html>
';
  }
 }
}

 

以上是代码。这样就是固定提取前几个表单信息给用户确认,不过在后台增加表单的时候一定要统一按以上数组的顺序进行添加字段。这样才能对应。

 

有一个不好的地方是,这个文件只要一改就是针对所有的表单提交,不过这只是一个方法,供参考,最终还得灵活应用。

风轻情淡
推荐于2018-05-06 · TA获得超过1663个赞
知道大有可为答主
回答量:1955
采纳率:66%
帮助的人:1284万
展开全部
这个问题很简单的,复制一份plus文件夹下的diy.php改为diy1.php什么的,然后修改里面的提示信息,在页面里面,响应的php文件也改为diy1.php就可以了。
更多追问追答
追问
非常感谢
追答
不客气,可以的话,麻烦采纳。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
尚睿徳创
2020-05-17 · TA获得超过233个赞
知道小有建树答主
回答量:168
采纳率:50%
帮助的人:52.6万
展开全部
第96行左右,判断diyid 用不同提示语:
$goto = !empty($cfg_cmspath) ? $cfg_cmspath : '/';
if( $diyid == 2 ){
$bkmsg = '此系统暂未开放,如有问题请致电联系我们! ';
}else{
$bkmsg = '发布成功,请等待管理员处理...';
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式