将ID作为变量写入会话

时间:2010-12-15 01:00:28

标签: php session

我需要在会话中插入一个ID供以后使用。表包含ID,用户名和密码。 要使用以下方式获取ID:

$sql = "SELECT id FROM members WHERE username='$myusername' and password='$mypassword'";
$result=mysql_query($sql);

尝试将其存储到会话中:

$_SESSION["id"] = $result;

当我试图将$ _SESSION [id]插入表格时,我得到的值为0(这是我做的默认值)。

有点新的PHP,任何帮助都会受到关注:)

3 个答案:

答案 0 :(得分:1)

你需要获取值以及:

$result=mysql_query($sql);
$fetch =mysql_fetch_array($result);
$_SESSION["id"] = $fetch["ID"];

答案 1 :(得分:0)

尝试打印$ result将不允许访问资源中的信息。

您需要使用函数来访问返回的资源:

$row = mysql_fetch_assoc($result)
$id = $row['id'];

处理结果的正确方法是首先检查它是否具有任何值,即:

if (!$result) {
    $message  = 'Invalid query: ' . mysql_error() . "\n";
    $message .= 'Whole query: ' . $query;
    die($message);
}

答案 2 :(得分:0)

mysql_query() returns a resource on success, or FALSE on error.您需要从该结果中获取行:

$result = mysql_query("SELECT id, name FROM mytable") or die(mysql_error());
$row = mysql_fetch_array($result);
if($row){ // check that there was really selected at least one row
    $_SESSION['id'] = $row['id'];
}