您好,欢迎访问一九零五行业门户网

php 为什么我ajax返回值为1 为什么前台接收alert(data)显示的确实整个网页页面的html代码

php  为什么我ajax返回值为1 为什么前台接收alert(data)显示的确实整个网页页面的html代码(我使用了smarty   也返回的值  页面也是在smarty模板里面)
回复讨论(解决方案) 在php输出1后面加上exit;就可以了
还是不可以!求指导
那是你对 ajax 请求也做了全程处理
通常只要做业务逻辑即可
  可以说的更具体点吗?
要看到 admin.php 的代码
class admincontroller{
public function __construct(){
session_start();
if(!(isset($_session['username']))&&(pc::$method!='login')&&(!$_cookie['username'])){
$this->showmessage('请登录后在操作!', 'admin.php?controller=admin&method=login');
}else{
$this->auth = isset($_session['username'])?$_session['auth']:array();
}
}
public function login(){
if (!isset($_post['submit'])){
view::display('admin/login.html');
}else {
$this->checklogin();
}
}
public function checklogin(){
$username = daddslashes($_post['username']);
$password = md5(daddslashes($_post['password']));
$auth=m('admin')->findone_by_username($username);
if((!empty($auth))&&$auth['password']==$password){
$_session['username']=$username;
//setcookie('username',$username,time()+3600*12);
echo 1;
exit;
//echo ;
}elseif (empty($auth)){
echo 用户不存在;
exit;
//$this->showmessage(用户不存在,'admin.php?controller=admin&method=login' );
}elseif ((!empty($auth))&&$auth['password']!=$password){
echo 密码错误;
//$this->showmessage(密码错误,'admin.php?controller=admin&method=login');;//密码错误
}
}
admin.php是入口文件
checklogin();} }
方法
则执行 view::display('admin/login.html');
所以,模板加载了。
建议用firefox的firebug或者chrome核心浏览器的开发者工具的newwork,提交一下,看下有没有提交过去submit这个参数。
或者检查一下form1里面有没有name是submit的值

谢谢  我试试看啊  说不定还得请教你
这是我用firebug弄的
响应啊  submit也都有
写日志一步步跟踪看看。
要保证echo 1之后再没有任何形式的文本输出,然后把对应页面的php结束符号   ?>  去掉
直接把ajax访问地址及参数放浏览器执行看看就知道了,在一步一步调试
ajaxreturn
可以说的更具体点吗?   
   我也遇到了一样的问题,该怎么解决啊
其它类似信息

推荐信息