Afbeeldingen

Op websites worden vaak afbeeldingen gebruikt. Hoe ga je daar mee om als bij een website de meeste gegevens in een database staan? Je zou ervoor kunnen kiezen de afbeeldingen ook in de database te stoppen maar dat is niet aan te raden. De database wordt dan heel snel erg groot en kan daardoor ook overbelast raken. Dit probleem kan worden ondervangen door de afbeeldingen niet in de database zelf op te slaan, maar in de database een link te plaatsen die verwijst naar het bijbehorende bestand. We illustreren dit aan de hand van de tabel vlaggen in de database Nederland.

Stel we hebben plaatjes van de vlaggen van provincies als jpg-bestanden opgeslagen in een map vlaggen. Het PHP-bestand waarmee we naar die plaatjes gaan vragen, staat een directory hoger. We hebben in phpMyAdmin in de tabel vlaggen een kolom vlag_link toegevoegd. In deze kolom wordt de plek aangegeven, in ons voorbeeld vlaggen/groningen.jpg, waar de afbeeldingen van de vlaggen van de diverse provincies opgeslagen zijn.



Als je nu een query uitvoert met opnieuw als resultaat de provincies van Nederland maar nu met de bijbehorende vlag zal het script er dan deels als volgt uitzien:


<!DOCTYPE html>
<html lang="nl">
      <head>
            <title>vlaggen</title>
            <meta charset="utf-8">
            <link rel="stylesheet" href="opmaak.css">
      </head>
      <body>
            <h3>Een overzicht van de vlaggen van alle provincies</h3>
            <table border="1" cellpadding="3">
                  <tr>
                        <th>provincie</th>
                        <th>vlag</th>
                  </tr>
                  <?php
                  include("includes/connect.php");

                  $query= "SELECT provincie, vlag_link
                  FROM provincies, vlaggen
                  WHERE provincies.prov_id = vlaggen.prov_id";
                  $resultaat = mysqli_query($verbinding, $query);
                  while ($row = mysqli_fetch_array($resultaat))
                  {
                  ?>
                  <tr>
                        <th><?php echo $row['0']; ?></th>
                        <td><img src ="<?php echo $row['1']; ?>"</td>
                  </tr>
                  <?php
                  }
                  ?>
            </table>
            <?php
                  mysqli_close($verbinding);
            ?>
      </body>
</html>



Het resultaat is een tabel met de vlaggen van de Nederlandse provincies: