早上好, 我疯狂地尝试使用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'];
}
&GT;
答案 0 :(得分:1)
您需要在mysql_connect
来电中将“用户名”和“密码”更改为实际凭据。
除非这些是您所需的凭据,否则您需要确保用户确实存在且有权访问数据库。
作为旁注,不推荐使用mysql_*
函数,建议使用mysqli_*
或准备好的语句。
答案 1 :(得分:0)
尝试向用户提供访问表:
grant all On [tabelName] to [userName];
例如
grant all On mysql.* to root;