PHP-mySQL-Form不起作用
我现在已经重新安装了XAMPP,并且排除了大多数错误 但我仍然有一个错误。这个:PHP-mySQL-Form不起作用,php,mysql,database,Php,Mysql,Database,我现在已经重新安装了XAMPP,并且排除了大多数错误 但我仍然有一个错误。这个: Warning: mysql_connect(): Access denied for user 'admin'@'localhost' (using password: YES) in D:\xampp\htdocs\login_form\login.php on line 7 Could not connect to database. SQL数据库: login > users > Id =
Warning: mysql_connect(): Access denied for user 'admin'@'localhost' (using password: YES) in D:\xampp\htdocs\login_form\login.php on line 7
Could not connect to database.
SQL数据库:
login > users >
Id = 1
Username = admin
Password = admin
Id = 2
Username = login_system
Password = login_system
index.php:
<!DOCTYPE html>
<html>
<body>
<form action="login.php" method="POST">
<p>Username : </p><input type="text" name="user">
<p>Password : </p><input type="password" name="pass">
<br>
<input type="submit" value="Login">
</form>
</body>
</html>
login.php
<?php
//$ = variables?
$username = "admin";
$password = "admin";
$hostname ="localhost";
$database_handle = mysql_connect($hostname, $username, $password) or die ("Could not connect to database.");
$selected = mysql_select_db("login", $database_handle);
$myusername = $_POST['user'];
$mypassword = $_POST['pass'];
$myusername = stripslashes($myusername);
$mypassword = stripslashes($mypassword);
//Checks if the mySQL database matches the user inputs.
$query = "SELECT * FROM users WHERE Username='".$myusername."' and Password='".$mypassword."'";
$result = mysql_query($query,$database_handle);
$count = mysql_num_rows($result);
if ($count==1){
echo 'Databse connection and code was successful!';
}
?>
它说我需要添加更多的信息,但我不能
此处为随机文本。请尝试此功能,并让我知道此功能是否有效
<?php
//$ = variables?
$username = "root";
$password = "test123";
$hostname ="localhost:8080";
$database_handle = mysql_connect($hostname, $username, $password) or die ("Could not connect to databse. Check your internet connection.");
$selected = mysql_select_db("login", $database_handle);
$myusername = $_POST['user'];
$mypassword = $_POST['pass'];
$myusername = stripslashes($myusername);
$mypassword = stripslashes($mypassword);
//Checks if the mySQL database matches the user inputs.
$query = "SELECT * FROM users WHERE Username='".$myusername."' and Password='".$mypassword."'";
$result = mysql_query($query,$database_handle);
$count = mysql_num_rows($result);
if ($count==1){
echo 'Databse connection and code was successful!';
}
?>
此代码示例中没有任何内容会导致无限加载循环。因此,您的问题可能存在于您不想共享的代码中。您不想共享的代码的确切含义是什么?这是我所有的.php文件:页面是否一直在加载?有什么错误记录吗?为什么要使用斜杠?您应该切换到支持预处理语句、PDO或mysqli的DB驱动程序。同时,mysql\u real\u escape\u字符串应防止注入。。您也不需要两次声明变量,只需在第一次声明中使用函数即可。不要使用mysql_*函数,因为它们已被弃用,而是使用或。因此,在查询$result=mysql\u query$query,$database\u handle;时应该使用连接;。我看了一个使用斜杠的教程,他说是出于安全考虑,没有进展。不过,我在apache php日志中有很多错误!PHP警告:mysqli_connect:MySQL服务器在第9行的D:\xampp\htdocs\phpTutorial\login.PHP中消失PHP警告:mysqli_connect:读取问候语包时出错。第9行D:\xampp\htdocs\phpTutorial\login.php中的PID=11044[PHP警告:mysqli_connect:HY000/2006:MySQL服务器在第9行的D:\xampp\htdocs\phpTutorial\login.PHP中消失PHP致命错误:在第9行的D:\xampp\htdocs\phpTutorial\login.PHP中超过了30秒的最大执行时间尝试将$hostname=localhost;而不是$hostname=localhost:8080;