In this source code example, we will see how to retrieve records (using SELECT Query with an ORDER BY Clause) from a database table in PHP using MySQLi.
PHP MySQL ORDER BY Clause
<?php
/* Attempt MySQL server connection. Assuming you are running MySQL
server with default setting (user 'root' with no password) */
$host= "localhost";
$username= "root";
$password = "";
$db_name = "demo_db";
$mysql_connection = mysqli_connect($host, $username, $password, $db_name);
// Check connection
if ($mysql_connection->connect_errno) {
printf("connection failed: %s\n", $mysql_connection->connect_error());
exit();
}
// Attempt select query execution with order by clause
$sql = "SELECT * FROM students ORDER BY email";
if($result = mysqli_query($mysql_connection, $sql)){
if(mysqli_num_rows($result) > 0){
echo "<table>";
echo "<tr>";
echo "<th>id</th>";
echo "<th>first_name</th>";
echo "<th>last_name</th>";
echo "<th>email</th>";
echo "</tr>";
while($row = mysqli_fetch_array($result)){
echo "<tr>";
echo "<td>" . $row['id'] . "</td>";
echo "<td>" . $row['first_name'] . "</td>";
echo "<td>" . $row['last_name'] . "</td>";
echo "<td>" . $row['email'] . "</td>";
echo "</tr>";
}
echo "</table>";
// Close result set
mysqli_free_result($result);
} else{
echo "No records matching your query were found.";
}
} else{
echo "ERROR: Could not able to execute $sql. " . mysqli_error($mysql_connection);
}
// Close connection
mysqli_close($mysql_connection);
?>
Let's understand the above PHP script.
The mysqli_connect() function opens a new connection to the MySQL server:
$host= "localhost";
$username= "root";
$password = "";
$db_name = "demo_db";
$mysql_connection = mysqli_connect($host, $username, $password, $db_name);
SQL SELECT query with an ORDER BY clause to retrieve records from the database table:
// Attempt select query execution with order by clause
$sql = "SELECT * FROM students ORDER BY email";
The mysqli_query() function performs a query against a database:
if($result = mysqli_query($mysql_connection, $sql)){}
The mysqli_num_rows() function returns the number of rows in a result set:
if(mysqli_num_rows($result) > 0){
echo "<table>";
echo "<tr>";
echo "<th>id</th>";
echo "<th>first_name</th>";
echo "<th>last_name</th>";
echo "<th>email</th>";
echo "</tr>";
while($row = mysqli_fetch_array($result)){
echo "<tr>";
echo "<td>" . $row['id'] . "</td>";
echo "<td>" . $row['first_name'] . "</td>";
echo "<td>" . $row['last_name'] . "</td>";
echo "<td>" . $row['email'] . "</td>";
echo "</tr>";
}
echo "</table>";
// Close result set
mysqli_free_result($result);
} else{
echo "No records matching your query were found.";
}
Closing MySQL server connection:
// Close connection
mysqli_close($mysql_connection);
Comments
Post a Comment