Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Formatieren von MySQL-Daten für die Ausgabe in eine Tabelle

Ihre Frage verwirrt mich etwas, aber das SELECT * in der SQL-Anweisung bedeutet, dass jede Spalte aus der Datenbank als Schlüssel=>Wert-Paar im $row-Array vorhanden sein sollte. Wenn Sie also eine weitere "Spalte" benötigen, geben Sie sie hier in ein HTML-Listenelement <li> aus , geben Sie diesen Spaltennamen einfach als Array-Schlüssel wieder (Anmerkung:nicht "drucken"). Wenn Sie also den Typ der Autospalte benötigen, die in einer Spalte mit dem Namen "Modell" gefunden wird, würden Sie Folgendes tun:

<?php
$sql = "SELECT * FROM apparatus ORDER BY vehicleType";
$getSQL = mysql_query($sql);
// transform the result set:
$data = array();
while ($row = mysql_fetch_assoc($getSQL)) {
$data[$row['vehicleType']][] = $row;    
}
?>
<?php foreach ($data as $type => $rows): ?>
<h2><?php echo $type?></h2>
<ul>
  <?php foreach ($rows as $vehicleData):?>
    <li><?php echo $vehicleData['name'];?></li>
    <li><?php echo $vehicleData['model'];?></li>
  <?php endforeach ?>
  </ul>
<?php endforeach ?>

BEARBEITEN :Ich bin mir bei Ihrer Frage immer noch nicht sicher, aber wenn jedes Auto denselben Fahrzeugtyp hat und Sie das nur einmal abrufen möchten, bevor Sie alle Ergebnisse durchgehen, schätze ich, dass dies ausreichen wird:

<?php
// Set up a SQL query to grab one row
$query_to_grab_only_vehicle_type = "SELECT vehicleType FROM apparatus WHERE 1 LIMIT 0,1";
// Fetch that row and turn it into an array
$vehicle_type_array = mysql_fetch_array(mysql_query($query_to_grab_only_vehicle_type));
// Initialize a variable with the array value that came from the vehicleType column
$vehicle_type = $vehicle_type_array['vehicleType'];
// You could uncomment and use the following to echo out the variable
// echo "Vehicle type: $vehicle_type";

$sql = "SELECT * FROM apparatus ORDER BY vehicleType";
$getSQL = mysql_query($sql);
// transform the result set:
$data = array();
while ($row = mysql_fetch_assoc($getSQL)) {
$data[$row['vehicleType']][] = $row;    
}
?>
<?php foreach ($data as $type => $rows): ?>
<h2><?php echo $type?></h2>
<ul>
  <?php foreach ($rows as $vehicleData):?>
    <li><?php echo $vehicleData['name'];?></li>
    <li><?php echo $vehicleData['model'];?></li>
  <?php endforeach ?>
  </ul>
<?php endforeach ?>