从id检索用户信息

时间:2012-05-15 13:21:54

标签: php mysql database

我正在开发一个网络应用程序,但我遇到了一个微不足道的问题。我在数据库中有一个表人员,它包含以下字段:id,position(in company),username,firstname,lastname。我正在编辑edit_user页面。我有一个主页面列出了所有用户的前+姓。然后,我可以单击名称,这会将我带到与该用户对应的edit_user页面。但是,我在网站上进行的更新不会发送到数据库(请参阅下面的代码)。

//Inserting updates into database
        $query = "UPDATE person SET
            privilege  = '{$privilege}',
            nexus = '{$nexus}',
            firstname ='{$firstname}',
            lastname = '{$lastname}'"; 
        $query .="  WHERE id={$personid}";
        $result = mysql_query($query,$connection); 
        if (mysql_affected_rows() == 1) { 
            $message = "User was successfully updated"; 
        } else { 
            $message = "User was not updated";
            $message .= "<br/>" .mysql_error();
        }

我的预感是{$ personid}出了问题,由以下人员定义:

function find_selected_user() {
    global $user;
    if (isset($_GET['personid'])) { 
        $personid = $_GET['personid'];
        return $personid
    } else {
        $user = NULL; 
    }
}

(以上函数假设返回$ user用户信息的数组) 请帮忙 - 我太困了!我确信这很简单,但我一直在考虑这个问题

2 个答案:

答案 0 :(得分:2)

你忘记了结局;这里的人物:

return $personid

应该是:

return $personid;

答案 1 :(得分:2)

您可以将完整的$query变量回显到屏幕还是将其保存在日志中?

复制此输出并尝试使用mysql命令行或phpmyadmin来测试sql查询。

或者echo mysql_error();可能会看到是否报告了错误。

也许您的{$personid}变量没有按您认为的那样填充。