我是PHP和mySQL的新手,我一直在尝试使用apache和mySql服务器通过xampp创建一个登录。我继续得到这个错误,有人可以解释错误实际意味着什么?我见过有人问这个问题,但答案通常只涉及他们的代码。我也会提供我的代码。如果有人对我所做的事情http://www.youtube.com/watch?v=NuiTzSdGmKM感兴趣的话,我一直在关注这一系列的youtube教程。希望有人能帮助谢谢!我的代码如下:
<?php
$username = "yolo";
$password = "swag";
$hostname = "localhost";
$dbhandle = mysql_connect($hostname, $username, $password) or die("Could not connect to database");
$selected = mysql_select_db("login", $dbhandle);
$myusername = $_POST['user'];
$mypassword = $_POST['pass'];
$myusername = stripslashes($myusername);
$mypassword = stripslashes($mypassword);
$query = "SELECT * FROM logon WHERE Username='$myusername' and Password='$mypassword'";
$result = mysql_query($query);
$count = mysql_num_rows($result);
mysql_close();
if($count==1){
echo 'It worked!';
}
&GT;
答案 0 :(得分:0)
错误是关于建立与mySQL服务器的连接 (用户'adminryan'无法连接到服务器'localhost',并且尝试连接时使用了密码。 这可能有几个原因,例如:
你的代码说:
$dbhandle = mysql_connect($hostname, $username, $password) or die("Could not connect to database");
所以我想知道为什么你看到你给出的错误而不是“无法连接到数据库”
我希望mysql_connect返回FALSE,因此die("Could not connect to database")
将被执行。 (并且die(...)
之后的所有代码都不会被执行。)
与$query = ...
无关
我不能,但我会拒绝MuhammadAli和ArtisticPhoenix的评论,因为他们对你提供的错误没有任何意义。
并且在您的代码之后,这一行将不会被执行。
尽管切换到PDO或至少是mysqli。
答案 1 :(得分:0)
为了为遇到此错误的其他人提供可能的解决方案并确认用户名,密码和数据库确实存在。我遇到了同样的错误,在重组我的请求时,我能够得到理想的结果。
$username = 'username';
$password = 'password';
$db = mysql_connect('localhost', $username, $password);
mysql_select_db("database",$db);
在我的实例中,我使用了完整的用户名和数据库。所以它似乎取决于您的cpanel帐户用户名。例如,如果我的域cpanel登录名为mydata,那么我的用户名将是mydata_username,我的数据库将是mydata_database。
现在我不知道这是否重要,我没有反过来测试过,我有几次这个错误,这是一个对我有用的解决方案。我不知道为什么它起作用,因为我不是专家,但确实如此,对于遇到同样问题的其他人来说值得一试。
此代码与我之前的代码之间的唯一区别是与我的引用类似。此代码使用单引号',前面的代码使用双引号“。