早上好, 我正在疯狂地尝试使用 mysql 编写我的第一个 php 代码。我已经在两台服务器上对此进行了测试,其中一台托管在其他地方,并且还使用本地 wamp 服务器,结果是相同的,因此我在创建连接的代码中或稍后运行查询时一定有问题。
对于 wamp,我已经验证了 php.ini 以及 MySQL 权限,在代码中我使用那里规定的凭据。我希望得到一些指导。
<?php
// Function: connect to a database. Returns the database connection.
function connect_db($host, $id, $pwd)
{
$connection = @mysql_connect('localhost', 'username', 'password')
or die('connection problem:' . mysql_error());
mysql_select_db('database_db');
return $connection;
if (!$connection)
{
print ("internal error " . mysql_errno() );
}
}
//get names from form
$ID = $_POST['ID'];
$Event= $_POST['Event'];
$Date = $_POST['Date'];
$Time = $_POST['Time'];
$Venue= $_POST['Venue'];
$TypeID= $_POST['TypeID'];
$Score= $_POST['Score'];
$Member = $_POST['Member'];
//insert values
$myquery = "INSERT INTO Results(ID, Event, Date, Time, Venue, TypeID, Score, Member )VALUES('$ID', '$Event', '$Date', '$Time', '$Venue', '$TypeID', '$Score', '$Member')";
$answer = mysql_query($myquery);
if (!$answer) {
$message = 'Invalid query: ' . mysql_error() . "\n";
$message .= 'Whole query: ' . $myquery;
die($message);
}
while ($row = mysql_fetch_assoc($answer)) {
echo "Your results were entered successfully";
echo "<br>";
echo $row['Id'];
echo $row['Event'];
echo $row['Date'];
echo $row['Time'];
echo $row['Venue'];
echo $row['TypeID'];
echo $row['Score'];
echo $row['Member'];
}
?>
最佳答案
您需要在 mysql_connect
调用中将“用户名”和“密码”更改为您的实际凭据。
当然,除非这些是您想要的凭据 - 那么您需要确保用户实际存在并且有权访问数据库。
顺便说一句,不推荐使用 mysql_*
函数,建议使用 mysqli_*
或准备好的语句。
关于php - 警告 : mysql_query() [function. mysql-query]:用户 '' @'localhost' 的访问被拒绝(使用密码:NO),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21133686/