因为PHP不能直接在Spotify应用程序中使用我只在我的服务器上使用它,但我在使会话工作时遇到问题,是否可以使用会话?
我想用它来查看用户是否在我的数据库中注册,所以我这样做:
session_start();
$query="SELECT * FROM user WHERE facebookID = {$fbid}";
$result = mysql_query($query) or die(mysql_error());
$row = mysql_fetch_array($result);
$num_results = mysql_num_rows($result);
if ($num_results > 0)
{
echo"THERE IS A USER!";
$row['facebookID'] = $_SESSION[fid];
}
else
{
echo"THERE IS NO USER!";
}
对服务器的身份验证工作正常,但会话似乎没有工作,在上面的代码被调用了一些ajax代码之后调用另一个PHP页面我只是想尝试这个:
session_start();
if(isset($_SESSION['fid']))
{
echo"SESSION EXIST";
}
else
{
echo"NO SESSION";
}
无论如何在Spotify应用程序中有一种特殊的方法可以做到这一点,还是我必须以其他方式做到这一点?
答案 0 :(得分:0)
您在哪里将$_SESSION[fid]
设置为FacebookID?
也许你应该这样做:
session_start();
$query="SELECT * FROM user WHERE facebookID = {$fbid}";
$result = mysql_query($query) or die(mysql_error());
$row = mysql_fetch_array($result);
if ($row)
{
echo "THERE IS A USER!";
$_SESSION['fid'] = $row['facebookID']; // SET THE FACEBOOK ID IN THE SESSION
} else {
echo"THERE IS NO USER!";
}
当您在PHP中访问数组时,BTW始终在键名称周围加上引号,如下所示:$_SESSION['fid']
而不是$_SESSION[fid]
,否则PHP将首先检查名为“fid”的常量然后转换为字符串 - 更慢,更重要 - 更丑陋和不好的做法。