php if语句中定义的变量在if外面无法使用?
邀请注册代码片段,步骤如下:监测url中的code是否有值。代码如下:监测url中的code是否在数据库中存在,如果存在,当前邀请码的邀请人数(nums)+1设置一个fr...
邀请注册代码片段,步骤如下:
监测url中的code是否有值。代码如下:
监测url中的code是否在数据库中存在,如果存在,当前邀请码的邀请人数(nums)+1
设置一个friends的变量,用的是邀请码对应的用户id,以便在注册用户时进行关联。
现在的问题是:不管是用session,global,在最外一层都输出不了friends,这是怎么回事呢??请指教。
session_start();//
require_once('conf/init.php');
//global $friends;设置全局变量
if($_GET['code']){//第一步
$sql = "select * from sys_code where code='".$_GET['code']."'";
$row = mysqli_fetch_assoc(mysqli_query($conn,$sql));
$friends = $row['userid'];//第三步
if(isset($row)){
$up_sql = "update sys_code set nums=nums+1 where code='".$_GET['code']."'";//第二步,
mysqli_query($conn,$up_sql);
}
$code = create_guid (); //生成邀请码
}else{
$code = create_guid (); //生成邀请码
}
echo $firends;//这里不管怎样都不输出。。。。咋回事呢? 展开
监测url中的code是否有值。代码如下:
监测url中的code是否在数据库中存在,如果存在,当前邀请码的邀请人数(nums)+1
设置一个friends的变量,用的是邀请码对应的用户id,以便在注册用户时进行关联。
现在的问题是:不管是用session,global,在最外一层都输出不了friends,这是怎么回事呢??请指教。
session_start();//
require_once('conf/init.php');
//global $friends;设置全局变量
if($_GET['code']){//第一步
$sql = "select * from sys_code where code='".$_GET['code']."'";
$row = mysqli_fetch_assoc(mysqli_query($conn,$sql));
$friends = $row['userid'];//第三步
if(isset($row)){
$up_sql = "update sys_code set nums=nums+1 where code='".$_GET['code']."'";//第二步,
mysqli_query($conn,$up_sql);
}
$code = create_guid (); //生成邀请码
}else{
$code = create_guid (); //生成邀请码
}
echo $firends;//这里不管怎样都不输出。。。。咋回事呢? 展开
- 你的回答被采纳后将获得:
- 系统奖励15(财富值+成长值)+难题奖励20(财富值+成长值)
展开全部
你变量写错了 最后一行是 $firends
而你的第三步是 $friends
仔细对照一下是否一样
而你的第三步是 $friends
仔细对照一下是否一样
追问
最后一行是笔误,在if($_GET['code']){ 里面是有结果的,但是在最外一层,好像这个变量就失效了。
追答
我建议你先使用var_dump这个函数 把你的$row = mysqli_fetch_assoc(mysqli_query($conn,$sql));
这句执行出来的东西显示一下 看看里面有没有东西
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2015-07-23
展开全部
第一步未执行!
追问
执行了,在if($_GET['code']){里面是有结果显示的。
追答
那就确定你查下mysql数据库是否有数据返回???
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询