在PHP中回显查询结果的简单有效方法?

时间:2015-07-03 11:02:39

标签: php mysql sql echo

我是MySQL和PHP的新手,我很难回应我的查询(结果不是文本!) 我已经搜索过这个但似乎没有什么工作正常,我设法做的最好的事情是回应查询的文本。我可能有一些致命的错误,但这是我的代码:

<?php
$username = "root";
$password = "";
$hostname = "localhost"; 

//connection to the database
$dbhandle = mysql_connect($hostname, $username, $password) 
  or die("Unable to connect to MySQL");
echo "Connected to MySQL<br>";

$selected = mysql_select_db("atoma",$dbhandle) 
  or die("Could not select atoma");

$sql1 = mysql_query("SELECT (MAX(GRADE)) as maximum FROM thema3");
$r = mysql_fetch_array($sql1); // will return the result
echo $r['maximum'];

$sql2 = "SELECT COUNT(DISTINCT NAME) FROM thema2";
$sql1 = "SELECT AVG(GRADE) FROM thema3";

mysql_close($dbhandle);
?>

我没有得到任何结果。

我有这3个查询,我想要的只是打印他们的结果。我编写的代码只回显了3个中的一个,因为其他2个将作为我想要相信的第一个回应。

2 个答案:

答案 0 :(得分:1)

您的代码似乎不正确,因为连接是mysqli并且提取正在使用mysql

$conn = new mysqli($servername, $username, $password, $dbname);

...

$sql1 = mysql_query("SELECT (MAX(GRADE)) as maximum FROM thema3"); 
$r = mysql_fetch_array($sql1); // will return the result

答案 1 :(得分:1)

W3Schools的完整示例

<?php

// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
} 

$sql = "SELECT id, firstname, lastname FROM MyGuests";
$result = $conn->query($sql);

if ($result->num_rows > 0) {
    // output data of each row
    while($row = $result->fetch_assoc()) {
        echo "id: " . $row["id"]. " - Name: " . $row["firstname"]. " " . $row["lastname"]. "<br>";
    }
} else {
    echo "0 results";
}
$conn->close();
?>

http://www.w3schools.com/php/php_mysql_select.asp

当你使用max,avg等时,你只能得到一个结果,所以使用$ result [0]你会得到你想要的结果

编辑: 如果你是新手,也许你会看到这个:

http://codular.com/php-mysqli

所以A)将使用过时的方式来调用数据库,而B)原则上将第一行带入AVG,MAX等的结果,只有一行返回给你,如果你做的话这类句子;)