ECMS(帝国CMS)下创建表单实现客户端用户信息的录入

本来一直以为用户信息的录入都是必须经过自己写insert这样的语句来实现的,

但是自从接触了高大上的ECMS之后,就有了不小的改观,

网络上讲这块信息的内容比较少,当然我知道很多人知道怎么实现,只是他们没有写出来,

我把整个过程记录下来,希望对搜索到这篇的人能有所帮助,少走弯路吧,哈哈。


如果把创建表单实现录入作为一个工作的整体来看的话,那么我得先把工作分解开来:

1. 在服务端创建跟表单对接的工作,这部分包括:

    a.   创建用户信息表,如果表已经存在,可忽略;

    b.   在表上创建系统模型;

    c.   创建对应的用户信息录入的模板(本例采用封面模板);

2. 设计录入页面,结合创建录入信息的模板,完成录入页面的设计;


好,现在开始看截图了,嘻嘻。


1) 创建用户表:





2) 在用户表上创建系统模型


其实平时建立系统模型都是这么搞的,form下之前没弄过,结果这段搞得我非常不堪,

每次录入都会提示“您来自的链接不存在”, 网上各种解决方案都试了,还是没效果,提示相同的错误,

其实系统模型应该是这么创建的,如下图:




这么的就好了,另外还要留意“必填项”,后面录入的时候可能也会造成一些困扰,这个比较容易发现。


3)创建封面模板


封面模板的代码自己按照要求添加就好了。






4) 界面设计,这段在创建栏目的时候,必须有一个终极栏目作为录入源头,后面会用到,如下图。




5) 表单部分的代码如下:


<form action="/e/DoInfo/ecms.php" method="post">
<input type="hidden"  name="enews" value="MAddInfo" />
<input type="hidden" name="ecmsfrom" value="/yuyue/" />
<input type="hidden" name="classid" value="101" />
<div style="height:30px; margin-bottom:10px;">
<p style="font-size:20px;line-height:25px">您正在挂号的是:<a href="/">苏州</a></p>
</div>
<div style="clear:both"></div>
<div style="height:100px;">
<div style=" font-size:14px;background-color:#41b3e5; border-left:1px solid #428afd;padding:13px 69px 13px 69px ;float:left; line-height:40px">第一步<br>
填写挂号单</div>
<div style=" font-size:14px;background-color:#eaeceb; border-left:1px solid #428afd;padding:13px 63px 13px 63px ;float:left; line-height:40px">第二步<br>
医院发送确认短信 </div>
<div style=" font-size:14px;background-color:#eaeceb; border-left:1px solid #428afd;padding:13px 63px 13px 63px ;float:left; line-height:40px">第三步<br>
凭短信到医院就诊 </div>
</div>
<div style="clear:both"></div>
<div id="step1" style="margin-left:180px">
<div class="zaixian_8" style="height:30px; margin-top:30px; font-size:14px;"> 您的称呼&nbsp;*
<input type="text" name="title"  />
<span style="color:#000">先生/女士</span> 
</div>
<div style="clear:both"></div>
<div class="zaixian_8" style="height:30px;margin-top:5px;font-size:14px;"> 您的手机&nbsp;*
<input type="text" name="mobileno" />
</div>
<div style="clear:both"></div>
<div class="zaixian_8" style="line-height:30px;margin-top:5px;font-size:14px;"> 就诊时间&nbsp;*
<input class="zaixian_text1" name="visitdate" type="text" />
<select class="se" name="visittime" style="height:30px">
<option>早上</option>
<option>中午</option>
<option>下午</option>
<option>晚上</option>
</select>
</div>
<div style="clear:both"></div>
<span style="line-height:50px;margin-top:5px;font-size:14px; padding-left:70px;">请和医院服务人员确认好您的就诊时间</span>
<div style="clear:both"></div>
<div class="zaixian_9" > <span style="font-size:14px;">挂号信息&nbsp;*</span>
<textarea class="tbig"  name="registinfo" ></textarea>
</div>
<div style="clear:both; margin-top:10px; font-size:14px; padding-left:70px;"> <span>点击&nbsp;<a href="javascript:void(0)" οnclick="swtClick()" style="color:#41b3e5; font-weight:bold;">在线咨询</a>&nbsp;了解挂号信息</span> </div>
<div style="clear:both"></div>
<div class="zaixian_tijiao">
<input type="submit" class="ywttj" src="/images_new/tj1.jpg" value="">
&nbsp;
<input type="reset" class="yqxwt" src="/images_new/tj2.jpg" value="">
</div>
</div>
</form>



  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
支付宝当面付接入教程 这里假设己经开通了当面付,没有开通的可以到支付宝开通 1、增加当面付数据 帝国没有给出手动添加的功能,这里只能以SQL方式来添加了,运行以下SQL语句 INSERT INTO `[!db.pre!]enewspayapi` (`payid`, `paytype`, `myorder`, `payfee`, `payuser`, `partner`, `paykey`, `paylogo`, `paysay`, `payname`, `isclose`, `payemail`, `paymethod`) VALUES ('', 'f2fpay', '99', '0', '', '', '', '', '支付宝当面付插件', '支付宝当面付', '0', '', '0'); 2、添加商户私钥和支付宝公钥字段 ALTER TABLE [!db.pre!]enewspayapi add fprivatekey text NOT NULL, add fpublickey text NOT NULL; 3、修改系统文件以支持私钥和公钥的配置 第一个文件:e/admin/pay/SetPayApi.php 增加一个支付方式的判断,这里的支付方式为f2fpay APPID <input name="payemail" type="text" id="payemail" value="<?=$r[payemail]?>" size="35"></td> 商户私钥 <textarea name="fprivatekey" id="fprivatekey" cols="100" rows="10"><?=$r[fprivatekey]?></textarea> 支付宝公钥 <textarea name="fpublickey" id="fpublickey" cols="100" rows="10"><?=$r[fpublickey]?></textarea> 第二个文件:e/admin/pay/PayApi.php 增加私钥和公钥字段的写入 //设置接口 function EditPayApi($add, $userid, $username) { global $empire, $dbtbpre; $add[payid] = (int) $add[payid]; if (empty($add[payname]) || !$add[payid]) { printerror("EmptyPayApi", "history.go(-1)"); } $add[isclose] = (int) $add[isclose]; $add[myorder] = (int) $add[myorder]; $add[paymethod] = (int) $add[paymethod]; $add['payname'] = hRepPostStr($add['payname'], 1); $add['paysay'] = hRepPostStr2($add['paysay']); $add['payuser'] = hRepPostStr2($add['payuser']); $add['paykey'] = hRepPostStr2($add['paykey']); $add['payfee'] = hRepPostStr($add['payfee'], 1); $add['payemail'] = hRepPostStr($add['payemail'], 1); //增加当面付字段 $add['fprivatekey'] = hRepPostStr($add['fprivatekey'], 1); $add['fpublickey'] = hRepPostStr($add['fpublickey'], 1); if ($add['paytype'] == 'f2fpay') { $sql = $empire->query("update {$dbtbpre}enewspayapi set isclose='$add[isclose]',payname='$add[payname]',paysay='$add[paysay]',payuser='$add[payuser]',paykey='$add[paykey]',payfee='$add[payfee]',payemail='$add[payemail]',myorder='$add[myorder]',paymethod='$add[paymethod]',fprivatekey='$add[fprivatekey]',fpublickey='$add[fpublickey]' where payid='$add[payid]'"); } else { $sql = $empire->query("update {$dbtbpre}enewspayapi set isclose='$add[isclose]',payname='$add[payname]',paysay='$add[paysay]',payuser='$add[payuser]',paykey='$add[paykey]',payfee='$add[payfee]',payemail='$add[payemail]',myorder='$add[myorder]',paymethod='$add[paymethod]' where payid='$add[payid]'"); } if ($sql) { //操作日志 insert_dolog("payid=" . $add[payid] . "payname=" . $add[payname]); printerror("EditPayApiSuccess", "PayApi.php" . hReturnEcmsHashStrHref2(1)); } else { printerror("DbError", "history.go(-1)"); } } 4、取消支付时的转码功能 共三个文件分别为 e/payapi/BuyGroupPay.php此文件用于购买会员组 e/payapi/pay.php此文件用于充值 e/payapi/ShopPay.php此文件用于商城订支付 因为本次用的是UTF-8编码,这里不需要再转码的 所以要删除转码内容,如下: if($ecms_config['sets']['pagechar']!='gb2312') { @include_once("../class/doiconv.php"); $iconv=new Chinese(''); $char=$ecms_config['sets']['pagechar']=='big5'?'BIG5':'UTF8'; $targetchar='GB2312'; $productname=$iconv->Convert($char,$targetchar,$productname); $productsay=$iconv->Convert($char,$targetchar,$productsay); @header('Content-Type: text/html; charset=gb2312'); } 5、上传当面付插件 将下载好的插件解压,将f2fpay上传到e/payapi/即可 在线演示:http://ecms.bnxf.net/

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值