将所有数据从db输出到php页面

时间:2010-05-16 18:14:22

标签: php mysql mysqli

我是一名真正的初学者,使用PHP& MySQL的。 仅仅是为了学习和在学校的一个简单的例子,我想工作这个简单的查询,并可能将所有行(或者甚至一个)输出到php页面上的一个非常基本的输出:

<?php
$user= "root";
$host="localhost";
$password="";
$database = "PetCatalog";
$cxn = mysqli_connect($host,$user,$password,$database)
or die ("couldn’t connect to server");
$query = "SELECT * FROM Pet";
$result = mysql_query($cxn,$query) or die ("Couldn’t execute query.");
$row = mysqli_fetch_assoc($result);
echo "$result";
?>

这是我收到的错误消息:

Warning: mysql_query() expects parameter 1 to be string, object given in C:\xampplite\htdocs\myblog\query.php on line 18
Couldn’t execute query.

我该怎么办? 谢谢!

4 个答案:

答案 0 :(得分:2)

mysql_query($query,$cxn) 

取代

mysql_query($cxn,$query) 

答案 1 :(得分:2)

您可能还想考虑使用面向对象的界面:

# create a new connection object
$DBH = new mysqli($host, $user, $pass, $dbname);

# execute your query 
$result =$DBH->query('SELECT * FROM Pet');

# iterate over the results
while($row = $result->fetch_assoc()) {
       print_r($row);
}

答案 2 :(得分:2)

PHP已存在很长时间了。每隔几年,就会有人提出一种新的,首选的连接数据库的方法。在早期,为了连接和查询MySQL数据库,您使用了MySQL数据库。后来,创建了一个新的MySQL库,Mysqli(我代表改进)。

您正在与mysqli_connect函数建立连接,这是一个Mysqli函数。但是,您正尝试使用原始库中的函数mysql_query(注意没有i)。你想要mysqli_query

如果您查看该页面,您会看到这一点,列出程序样式

mixed mysqli_query  (  mysqli $link  ,  string $query  [,  int $resultmode  ] )

这一行告诉你函数首先想要数据库链接,然后是第二个查询。所以,你的参数按照正确的顺序排列,你只是使用了错误的函数。

答案 3 :(得分:2)

<?php
$user= "root";
$host="localhost";
$password="";
$database = "PetCatalog";
$cxn = mysqli_connect($host,$user,$password,$database)
or die ("couldn’t connect to server");
$query = "SELECT * FROM Pet";
$result = mysql_query($query) or die ("Couldn’t execute query.");
while($row = mysqli_fetch_array($result)) {
          print_r($row);
}
?>

这应该可以解决您的问题