A-A+

phpcms 其他页面 如何调用验证码

2016年01月12日 phpcms 暂无评论 阅读 230 次

1.解决方法:

首先找到phpcmstemplatesdefaultmembermini.html这个文件
将其内容修改为

    {php if(!HTTP_REFERER || strpos(HTTP_REFERER,'&a=login')) @header("Location: ".$_GET['forward']); }
<style>
body,html{background:none; padding:0; margin:0}
.log{line-height:25px; height:139px; width:178px; float:left; font-size:12px; padding-top:10px; padding-left:5px;}
.list { float:left; width:168px; height:30px; line-height:30px; }
</style>
<body style="background-color:transparent">
<div class="log">{if $_username}{L('hellow')} {get_nickname()}<br> <a href="{APP_PATH}index.php?m=member&siteid={$siteid}" target="_blank">{L('member_center')}</a> <a href="{APP_PATH}index.php?m=member&c=index&a=logout&forward={urlencode($_GET['forward'])}&siteid={$siteid}" target="_top">{L('logout')}</a>{else}
<form method="post" action="{APP_PATH}index.php?m=member&c=index&a=login" id="myform" name="myform" target="_top">
<input type="hidden" name="forward" id="forward" value="{if $_GET['forward']}{$_GET['forward']}{else}{HTTP_REFERER}{/if}">
<div class="list">账 号:<input type="text" id="username" name="username" size="15" class="input-text"></div>
<div class="list">密 码:<input type="password" id="password" name="password" size="16" class="input-text"></div>
<div class="list">验 证:<input type="text" id="code" name="code" size="4" class="input-text">{form::checkcode('code_img', '4', '14', 75, 24)}</div>
<div class="list"><input type="submit" name="dosubmit" id="dosubmit" value="{L('login')}"> | <a href="{APP_PATH}index.php?m=member&c=index&a=register&siteid={$siteid}" target="_blank">{L('register')}</a></div>
</form>
{/if}</div>
</body>

在首页调用的方式是

<script type="text/javascript">document.write('<iframe src="{APP_PATH}index.php?m=member&c=index&a=mini&forward='+encodeURIComponent(location.href)+'&siteid={get_siteid()}" allowTransparency="true"  width="178" height="139" frameborder="0" scrolling="no"></iframe>')</script>

原文地址:http://bbs.phpcms.cn/thread-285964-1-1.html

2.v9自定义表单能弄验证码

phpcmsmodulesformguideindex.php
第三行下面添加
$session_storage = 'session_'.pc_base::load_config('system','session_storage');
pc_base::load_sys_class($session_storage);

定位
if (isset($_POST['dosubmit'])) {
$tablename = 'form_'.$r['tablename'];
$this->m_db->change_table($tablename);

下面添加

if(!empty($_SESSION['code'])) {
//判断验证码
$code = isset($_POST['code']) && trim($_POST['code']) ? trim($_POST['code']) : showmessage(L('input_code'), HTTP_REFERER);
if ($_SESSION['code'] != strtolower($code)) {
showmessage(L('code_error'), HTTP_REFERER);
}
}

然后看你是不是JS调用,如果是JS调用,修改
phpcmstemplatesdefaultshow_js.html


</th>
<td>{$info['form']}  {$info['tips']}</td>
</tr>
{/loop}
后面添加

<tr><td style="text-align:right;">验证码</td><td colspan="2"><span title="点击更换验证码" style=" cursor:pointer;"><input type="text" id="code" name="code" size="8" class="input-text">{form::checkcode('code_img', '4', '14', 84, 24)}</span></td></tr>

我这个是在网上找的那个基础上修改的.
自己试过了.可以使用.
如果要修改自定义表单格式的话,修改show_js.html文件就行了.
还可以新建类似show_j_1.html的文件,在建自定义表单的时候选择不同的模板,就可以自由定义了.

参考:

PHPCMS常用接口及其调用方法

 

 

 

标签:

给我留言

Copyright © web前端技术开发个人博客 保留所有权利  京ICP备14060653号 Theme  Ality

用户登录