怎么利用ajax模糊查询后台数据库并在页面上用下拉框显示
验证码一直错误那就是:后台生成的和前台显示的不是同一个验证码,你可以把后台生成的打印出来测试一下。
1:验证码生成代码:
//输入验证码
function verifyimg(){
//验证码做配置
$config = array(
'seKey' => 'ThinkPHPCN', // 验证码加密密钥
'codeSet' => '2345678abcdefhijkmnpqrstuvwxyzABCDEFGHJKLMNPQRTUVWXY', // 验证码字符集合
'expire' => 1800, // 验证码过期时间(s)
'useZh' => false,
'useImgBg' => false, // 使用背景
'fontSize' => 14, // 验证码字体大小(px)
'useCurve' => true, // 是否画混淆曲线
'useNoise' => true, // 是否添加杂点
'imageH' => 45, // 验证码高度
'imageW' => 100, // 验证码宽度
'length' => 4, // 验证码位数
'fontttf' => '4ttf', // 验证码字体,不设置随机获取
'bg' => array(243, 251, 254), // 背景颜色
'reset' => true, // 验证成功后是否重置
);
$verify=new Verify($config); //实例化Verify类。 空间类元素引入。使用次数多的情况下。
//verify= new \Think\Verify 完全限定名称方式。 使用次数少的情况下。
$verify->entry(); //数据验证码。
}
2下面的是一段验证码显示代码:
<ul>
<li class="user_main_text">验证码: </li>
<li class="user_main_input">
<input class="TxtValidateCodeCssClass" id="captcha" name="captcha" type="text">
验证码输出
<img src="{$smartyconst__CONTROLLER__}/verifyimg" onclick="thissrc='{$smartyconst__CONTROLLER__}/verifyimg/'+Mathrandom()" alt="" />
</li>
</ul>
希望对你有帮助。
这种多条件筛选构思上就是利用条件拼接sql语句,但就dedecms的功能来看,静态页比较难实现。
建议进行二次开发,或者制作php单页。
况且存储你所要查询的信息的表,应该也不是dede内置的表就能做的。
一个比较好的方式就是静态的栏目页,用ajax向一个php页提交参数,得到返回值后载入到页面中,体验好,难度也不大。
引入 /include/commonincphp 文件,利用dedecms的语法二次开发吧
在输入框加一个onkeyup时间,用setTimeout()函数15S向后台请求一次。
ajax你可以用JQuery库,因为你要自己写的话代码有点多。
比如用get()方式提交:
$get(“你的URL", { name: "John", time: "2pm" }--这个是提交的参数,键值对,
function(data){--这个是从后台响应后调用的函数。data是后台返回的值。
alert("Data Loaded: " + data);
--在这里你得到数据了就好办了。
--建议你后台组装成json格式的字符串输出,这个用eval(data)得到json对象。然后取出你要的值。
});
0条评论