如何显示thinkphp执行的语句

WBOY
发布: 2016-06-23 13:58:13
原创
1056 人浏览过

控制区器是这样写的

	function checkLogin(){		$condition['employeeno'] = $_REQUEST['employeeno'];		$condition['password'] = $_REQUEST['password'];		$model = M("Employeeinfo");		$results = $model->where($condition)->select(); 		sql($model);			if($results){			if(trim($results[0]['Password'])==$condition['password']){				echo "{success:true,msg:'OK'}";				Session::set('employeeno','employeeno');				Session::set('userinfo',$results[0]);				return;			}		}		echo "{success:true,msg:'登录帐号不存在互或密码错误!'}";	}
登录后复制


我登录了38次,均未成功(提示登录帐号不存在互或密码错误),log中也没提示错误。
为了帮助我核对数据,我要把sql语句,打印机出,如:select employeeno,password from
我使用vamp($model)
也显示不出来。


回复讨论(解决方案)

开启debug,检查sql语句,复制sql语句在数据库中执行,看看有没有结果

$model = M("Employeeinfo");
$results = $model->where($condition)->select();
echo $results->getlastSql();

加上 

$condition['_logic'] = 'AND'; 
$model = M("Employeeinfo");
$results = $model->where($condition)->select(); 
$model->getlastSql();

看看呢

加上 

$condition['_logic'] = 'AND'; 
$model = M("Employeeinfo");
$results = $model->where($condition)->select(); 
$model->getlastSql();

看看呢



这位兄台的才是正确的!

你select方法里面加上个false就好了。他就不执行SQL语句了。转而把SQL语句打印出来。
$model = M("Employeeinfo")->select( false);

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板