添加登录系统

时间:2011-04-29 14:56:10

标签: php login username

喂! 我很久以前买了并安置了我的网站.. 我的网站是一个像Facebook的网站,人们可以添加自己的或其他人。 我考虑过添加一个登录系统,以便人们可以使用他们的用户名进行发布,并且可以更轻松地进行发帖喜欢的比赛。 我已经拥有了系统 - 使用此http://www.evolt.org/node/60384

我尝试在流程文件中添加一个选项,当会话“登录”时,代码会检索用户名,而在所有其他情况下,“Anonymous”。

问题是它不起作用:(

代码是:

    $today = date("Ymdhis");
    $rand = $today.mt_rand().mt_rand().mt_rand();
    $count = '0';
    $type = 'picture';
    $username = '<? if($session->logged_in){   echo "$session->username"   } else { echo "Anonymous" } ?>';
    $sql = "INSERT INTO `like` (`rand`, `like`, `count`, `created`, `youtube`, `type`,`username`) VALUES ('$rand', '$like', 0, '$today', '$string', '$type', '$username')";

我首先定义了$ username,然后'告诉'脚本将$ username条目插入到它的字段中。

问题在于,当我实时尝试时, 该字段显示实际代码; <? if($session->logged_in){ echo "$session->username" } else { echo "Anonymous" } ?>而不是所需的输出。

另外,我在进程文档的开头包含了session.php以进行登录。

我使用的session.php以及所有其他文件可在http://www.evolt.org/node/60384下载,无需下载。

P.S我用于$ username的代码在主页面上用于在登录后输出用户名。我自己添加了“匿名”部分..这可能导致它无法工作..

3 个答案:

答案 0 :(得分:2)

您发布的代码是PHP,但在解析后会被放到您的身边。所以它永远不会“跑”。

除非你使用某种模板系统来解析你的代码两次,否则你不是这个意思吗?

if($session->logged_in){   
        $username = $session->username;
} else { 
        $username = "Anonymous" ;
}

答案 1 :(得分:0)

$ username是一个包含字符串的变量:

$username = '<? if($session->logged_in){   echo "$session->username"   } else { echo "Anonymous" } ?>';

引号中的所有内容都是字符串,而不是PHP代码。 不会被执行。

你需要做这样的事情:

if($session->logged_in){
    $username = $session->username;
} else {
    $username = "Anonymous";
}

答案 2 :(得分:0)

更改

$username = '<? if($session->logged_in){ echo "$session->username" } else { echo "Anonymous" } ?>';

if($session->logged_in) $username = $session->username; else $username = "Anonymous"

相关问题