关于网页间传值的问题。 这是一个注册页面,先将用户的数据传递给服务器,然后发现用户名存在,返回重新输入。第一步没有问题,可以传过去。但是为了不让用户全部重新填写,要返回一些值。比如将$qq="6553990"返回去,就可以省一些时间。这要怎么做呢? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 1.记入session2.建议ajax检查,无需页面跳来跳去 用session不合理,虽简单,但不建议用;可以先初始化一个空值的变量,然后把用户输入的信息赋给变量,再在页面上显示 用ajax动态检查不就没有这个问题了吗?当失去焦点的时候去检查数据库,如果存在就提示不存在就可以下一步! 给每一个域的value属性加<?php echo $value1;?>提交上来后,给$value1赋值,若出现错误,给$err赋值,并显示。 <input type="text" name="userName" value="<?php echo $userName; ?>" />这样的代码实现不了啊.$userName并没有返回来! 注册初始化function index(){ $userinfo = array(); if( isset($_SESSION['data']) ){ $userinfo['username'] = $_SESSION['data']['username']; $userinfo['email'] = $_SESSION['data']['email']; ....... unset($_SESSION['userinfo']) } else{ $userinfo['username'] = ''; $userinfo['email'] = ''; ....... } ............}<input type="text" name="userName" value="<?php echo $userinfo['username']; ?>" /><input type="text" name="email" value="<?php echo $userinfo['email']; ?>" />进行注册function doRegiste(){ $username = $_POST['username']; $email = $_POST['email']; //校验 ...... if( 校验成功 ){ } else{ $_SESSION['userinfo'] = $_POST; $this->index(); }} 如果页面已经提交,不用session/cookie难道get/post回去前一页? 我用session已经解决了,但你这种方法我还是实现不了,你能不能给我个代码? 可以先$userName='';然后echo嘛 你也是用session来解决的吧。本质没区别的。我想用3楼给的方法。但是代码整不出来。用静态变量? 做无刷新就可以了。只要没有跳转数据就不会消失,不需要再次输入!对此也不需要做任何多余的处理!推荐用jquery库里的ajax方法比较方便些,然后统一发送到后台,#qt是前台某个标签的ID$.get("后台URL",{"user"="csdn"},function(flag){ if(flag) {$('#qt').text('已被注册')} else {$('#qt').text('未被注册')} });//flag是后台返回的标志,如果是true说明已经被注册,否则未注册! 验证用户名是否被注册,现在大部分站点都用无刷新的AJAX库来处理,步骤既简单,又节约资源!而且用户体验也更好些!用SESSION来做,虽然能完成任务,但是耗服务器资源,而且处理过程比较烦琐,不得已而为,有点远水解近渴的感觉! 知道函数方法名怎么检测其所属类名? 一次点击多个操作问题 php如何实现cer证书的导入 php月份相减出现的问题,请各们帮忙看一下。 有关WEB打印 连接MYSQL问题 mysql备份问题。我晕了。 请问可不可以通过程序结束一次Session? 用户登录的数据如何保存?(新手求救) mysql 建立新用户出现的问题. require的一个小问题 如何保持二级菜单点击后,主菜单的状态
2.建议ajax检查,无需页面跳来跳去
可以先初始化一个空值的变量,然后把用户输入的信息赋给变量,再在页面上显示
提交上来后,给$value1赋值,若出现错误,给$err赋值,并显示。
function index(){
$userinfo = array();
if( isset($_SESSION['data']) ){
$userinfo['username'] = $_SESSION['data']['username'];
$userinfo['email'] = $_SESSION['data']['email'];
.......
unset($_SESSION['userinfo'])
} else{
$userinfo['username'] = '';
$userinfo['email'] = '';
.......
}
............
}
<input type="text" name="userName" value="<?php echo $userinfo['username']; ?>" />
<input type="text" name="email" value="<?php echo $userinfo['email']; ?>" />
进行注册
function doRegiste(){
$username = $_POST['username'];
$email = $_POST['email']; //校验
......
if( 校验成功 ){
} else{
$_SESSION['userinfo'] = $_POST;
$this->index();
}
}
我用session已经解决了,但你这种方法我还是实现不了,你能不能给我个代码?
可以先
$userName='';
然后echo嘛
你也是用session来解决的吧。本质没区别的。我想用3楼给的方法。但是代码整不出来。用静态变量?
推荐用jquery库里的ajax方法比较方便些,然后统一发送到后台,#qt是前台某个标签的ID
$.get("后台URL",{"user"="csdn"},function(flag){
if(flag)
{$('#qt').text('已被注册')}
else
{$('#qt').text('未被注册')}
});
//flag是后台返回的标志,如果是true说明已经被注册,否则未注册!