smarty 在php页中连接数据以及判断session是否存在的问题。

<?phpsession_start();extract($_GET);extract($_POST);extract($_SERVER);extract($_COOKI... <?php
session_start();
extract($_GET);
extract($_POST);
extract($_SERVER);
extract($_COOKIE);
include_once 'smarty/configs/Smarty_config.php';
if(!$smarty.session.stu){ // 第一个问题
include_once "config.inc";
$query ="select * from stu_info where stu_id='$smarty.session.stu'"; //第二个问题
$result =mysql_query($query,$conn)or die(mysql_error());
while($result){
$data =mysql_fetch_array($result);
}
$smarty->assign("stu_id","$data['stu_id']");
$smarty->assign("stu_name",$data['stu_name']);
$smarty->assign("stu_class",$data['stu_class']);
}
else{
}
$smarty->display("index.html");
?>
上面这个页面是判断用户是否登录,登录注册session['stu'] ,根据stu字段读取数据库里其他内容。未登录则不作任何数据库操作。
问题一::请问if(!$smarty.session.stu) 这个的意思是"如果session.stuI不存在"??按我的理解是不存在,可经我多次测试后,发现!$smarty.session.stu是session存在,登录成功,继续执行下面的代码,请问有其他更好的判断session是否已注册的方式吗?试过像 if($smarty.session.stu eq '')结果报错。
问题二:$query这一行一直报名。我不知道后面该怎么写where stu_id= 试过各种方式书写,百度过两小时,没找着有类似的例子或依照例子依然报错。
我是新手,以前学过php,能做简单的网站,但不精通类和模版,第一次用smarty,求高手指点。
展开
 我来答
优江流0W
2014-04-04
知道答主
回答量:20
采纳率:0%
帮助的人:16.8万
展开全部
先说第一个问题,session是全局数组,你可以通过vardump打印出来看一下,这个判断的意思按我的理解就是如果这个session中的id如果不为空,就进入判断。不知道这写的啥玩意,我会直接写session[home][id]直接取出来,smarty用过几次,你要的话给你个手册你看看,没多大意思。
第二个问题,传进来的session的id在之前你比如赋值给一个变量$id,那么这句就是这样写:“select * from stu_info where stu_id=”.$id;中间需要一个点拼接。希望能帮到你。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式