mysql_query()期望参数2是资源,字符串在第9行的/home/u921305435/public_html/phpinfo.php中给出

时间:2014-02-10 10:23:48

标签: php mysql

我知道这已经被问过很多次了,但是我很厚,一直无法解决它我有这个代码并且它给了我一个错误

<?
$username="username";
$password="password";
$database="databse";

mysql_connect("host",$username,$password);
@mysql_select_db($database) or die( "Unable to select database");

$result = mysql_query($con, "SELECT ProductName FROM ProductTrans");

echo "<table border='1'>
<tr>
<th>ProductName</th>
</tr>";

while($row = mysql_fetch_array($result))
  {
  echo "<tr>";
  echo "<td>" . $row['ProductName'] . "</td>";
  echo "</tr>";
  }
echo "</table>";
?>

它有什么问题?

5 个答案:

答案 0 :(得分:1)

我认为应该是这样的:

$con = mysqli_connect("localhost", "my_user", "my_password", "world");
mysqli_query($con, "SELECT ProductName FROM ProductTrans");

有关mysqli_query的更多信息:http://in2.php.net/manual/en/mysqli.query.php
或者如果你想使用不推荐使用的mysql_query()函数,你应该这样做:

$result = mysql_query("SELECT ProductName FROM ProductTrans");

for mysql_query():http://in2.php.net/mysql_query

答案 1 :(得分:0)

来自php.net上的文档:

resource mysql_query ( string $query [, resource $link_identifier = NULL ] )

在调用mysql_query

时,您的代码中交换了参数

答案 2 :(得分:0)

应该是查询,然后是连接。交换参数!

$result = mysql_query("SELECT ProductName FROM ProductTrans",$con);

Sidenote :此外,不推荐使用mysql_*函数。切换到 PreparedStatements

答案 3 :(得分:0)

你正在使用mysqli_query和mysql_query的语法。我的建议是用mysqli替换你所有的mysql,因为不推荐使用mysql_ *

答案 4 :(得分:0)

应该是这样的。

$con = mysql_connect("host",$username,$password); // SEE HERE 
@mysql_select_db($database) or die( "Unable to select database");

$result = mysql_query($con, "SELECT ProductName FROM ProductTrans");