gpt4 book ai didi

php - 无法连接 : Access denied for user 'root' @'localhost'

转载 作者:行者123 更新时间:2023-11-29 04:44:29 26 4
gpt4 key购买 nike

        <?php
$name= $_POST["dbname"];
$pass= $_POST["dbpass"];
$rname= $_POST["rootname"];
$rpass=$_POST["rootpass"];

if ($rname='leave blank for default root name' or $name='')
{
$rname="root";
}
if ($rpass='leave blank if no password assigned')
{
$rpass='';
}

$con = mysql_connect("localhost", $rname, $rpass);

if (!$con)
{

die('Could not connect: ' . mysql_error());
}

if (mysql_query("CREATE DATABASE {$name}",$con))
{
echo "Database created";
}
else
{
echo "Error creating database: " . mysql_error();
}
(mysql_query("DATABASEPASSWORD {$pass}",$con));


mysql_close($con);
?>

这是我用来创建数据库的 php 脚本,我正在传递 rootname=root 和 rootpass=toor

但是我遇到了一个错误

Warning: mysql_connect(): Access denied for user 'root'@'localhost' (using password: NO) in /var/www/webdefender/script/dbcreate.php on line 17 Could not connect: Access denied for user 'root'@'localhost' (using password: NO)

但是当我使用

$con = mysql_connect("localhost", 'root','toor' );

一切正常

请帮忙

最佳答案

您在前 2 次检查中分配值,而不是检查它们是否相等。

$a = 1; // assigning
$a == 1; // this is a check if 1 is $a is equal to 1

所以您基本上是将 $rpass 值重置为 ''(空字符串):

if ($rpass='leave blank if no password assigned')
{
$rpass='';
}

将检查更改为使用 ==,它将起作用。

请注意,从脚本使用根访问权限是一个巨大的安全隐患。

关于php - 无法连接 : Access denied for user 'root' @'localhost' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21527358/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com