我是一个相当新手的编码员并且有一个问题,我希望有人可以帮助我。
我正在学习一系列教程,并且我能够顺利地取得成功,更令人感兴趣的是该站点连接到数据库并在请求时显示数据库的内容但是当我尝试执行时函数我正在努力我使用密码NO消息拒绝访问。
这是我的功能看起来如何
function Member_Data($user_id) {
$data = array();
$user_id = (int)$user_id;
$func_num_args = func_num_args();
$func_get_args = func_get_args();
if($func_num_args > 1) {
unset($func_get_args[0]);
$fields = '`' . implode('`, `', $func_get_args) . '`';
$data = mysql_fetch_assoc(mysql_query("SELECT $fields FROM `members` WHERE `ID` = $user_id"));
echo mysql_error();
print_r($data);
//die();
//return $data;
}
}
并在标签之前的head.php中
if(loggedin() === true) {
$Session_memberID = $_SESSION['memberID'];
$MemberData = Member_Data($Session_memberID, 'ID', 'FName', 'LName', 'Email', 'Password');
}
但是当我尝试检索数据时(即:print_r($ data);)我得到一个空白的屏幕,但是当我添加echo mysql_error();我明白:访问被拒绝用户'obscuredforsecurity'@'localhost'(使用密码:否)
但所有其他页面连接都很好,因为我没有连接其他教程的问题,但由于某些原因(我不知道)我无法连接,所以我可以完成本教程。< / p>
如果有人不介意与我分享我做错了什么,我会非常感激,我再次感谢你们。
Stuart K
答案 0 :(得分:1)
正如Adelphia所说,这将有助于了解您如何连接到数据库,因为您指出的错误是与连接相关的错误。
另外,请注意此函数之外的副作用,也许是在调用此函数之前意外关闭数据库连接的副作用(不要笑,它发生的次数比您想象的要多;我们开发人员偶尔做出那些愚蠢的错误!)
在进行查询之前放置mysql_error()的回显 - 如果在调用之前发现数据库连接不可用,我不会感到惊讶。如果是这种情况,请查看连接是如何关闭的。 (提示:在整个代码库中搜索mysql_close())
附注:不推荐使用mysql_函数,开始从它们迁移的建议是合理的。看看mysqli_函数 - 它们在很多方面都接近mysql_并且易于学习:)