How can you ensure that each category in the database results in a separate table when generating tables with PHP?

When generating tables with PHP from a database, you can ensure that each category results in a separate table by using the SQL GROUP BY clause in your query to group the results by the category column. This will allow you to create a separate table for each unique category in the database.

// Connect to the database
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "database";

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

// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}

// Query to select data grouped by category
$sql = "SELECT * FROM your_table_name GROUP BY category";

$result = $conn->query($sql);

if ($result->num_rows > 0) {
    // Output data into separate tables for each category
    while($row = $result->fetch_assoc()) {
        echo "<table>";
        echo "<tr><th>Column 1</th><th>Column 2</th></tr>";
        echo "<tr><td>".$row["column1"]."</td><td>".$row["column2"]."</td></tr>";
        echo "</table>";
    }
} else {
    echo "0 results";
}

$conn->close();