• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Wie vorgehen bei Datenbankabfrage

Tabula_Rasa

Mitglied
Hallo,

ich möchte Daten aus den 4 Reihen der Tabelle. While Hilft da nicht wirklich da immer ein etwas anderer Code die Daten umgibt.

Der Code sieht wie folgt aus

PHP:
   <nav id="navigation" class="navigation">
      <div>
         <a href="index.html">Home</a>
        <a href="Anime.html">Animes</a>
         <a href="">Anime Scenes</a>
         <a href="">AMV</a>
        <a href="">Previews</a>
      </div>
   </nav>
 
 
 
   <div class="outer">
   <h1>Last uploaded:</h1>
   <div class="content">
 
 
      <div class="container-fluid">
     <div class="row justify-content-center">
  

       <?php include ("data_con.php");
 
     $conn = new mysqli($servername, $username, $password, $db);
 
     if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
     }

$sql = "SELECT `Dateipfad`, `Titel` FROM last_upload WHERE `ID` = 1 ";
$result = $conn->query($sql)
  or die ("MySQL-Error: " . $conn->error);
  
    if ($result->num_rows >0) {
    while ($row = mysqli_fetch_assoc($result)){ ?>
 
    <div class="col-xs-5 col-sm-5 col-md-5 col-lg-5 no-gutter">
        <div class="rahmen"> <img src="<?php echo $row['Dateipfad']; ?>" class="img-fluid" alt="Responsive image" width="100%";>
          <p><?php echo $row['Titel']?></p>
       </div>
      </div>
    <?php }
    }    else {
    echo "Scheiße";
}
$conn->close();
    echo "Connected successfully"; ?>  
  
 
   <div class="col-xs-5 col-xs-offset-2 col-sm-5 col-sm-offset-2 col-md-5 col-md-offset-2 col-lg-5 col-lg-offset-2 no-gutter" >
   <div class="rahmen"> <img src="Pic/Op.jpg" class="img-fluid" alt="Responsive image" width="100%;">
    <p>Manga Episode 2</p></div>
   </div>
 
    </div>
    </div>
 
    <br>
 
      <div class="container-fluid">
     <div class="row justify-content-center">
     <div class="col-xs-5 col-sm-5 col-md-5 col-lg-5 no-gutter">
   <div class="rahmen"> <img src="Pic/Background.jpg" class="img-fluid" alt="Responsive image" width="100%;">
   <p>Manga Episode 3</p> </div>
   </div>
 
   <div class="col-xs-5 col-xs-offset-2 col-sm-5 col-sm-offset-2 col-md-5 col-md-offset-2 col-lg-5 col-lg-offset-2 no-gutter">
   <div class="rahmen"><img src="Background.jpg" class="img-fluid" alt="Responsive image" width="100%;">
   <p>Manga Episode 4</p></div>
   </div>
    </div>
    </div>
 
 
   </div>
   </div>

Ich habe da eine Lösung, und zwar jeweils 4 einzelne Datenbankabfragen zu starten. Die ID ändert sich halt ständig, aber dies schein mir etwas umständlich. Deshalb wollte ich eure Meinung zu diesem Thema hören.

PHP:
   <nav id="navigation" class="navigation">
      <div>
         <a href="index.html">Home</a>
        <a href="Anime.html">Animes</a>
         <a href="">Anime Scenes</a>
         <a href="">AMV</a>
        <a href="">Previews</a>
      </div>
   </nav>
 
 
 
   <div class="outer">
   <h1>Last uploaded:</h1>
   <div class="content">
 
 
      <div class="container-fluid">
     <div class="row justify-content-center">

       <?php include ("data_con.php");
 
     $conn = new mysqli($servername, $username, $password, $db);
 
     if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
     }

$sql = "SELECT `Dateipfad`, `Titel` FROM last_upload WHERE `ID` = 1 ";
$result = $conn->query($sql)
  or die ("MySQL-Error: " . $conn->error);
  
    if ($result->num_rows >0) {
    while ($row = mysqli_fetch_assoc($result)){ ?>
 
    <div class="col-xs-5 col-sm-5 col-md-5 col-lg-5 no-gutter">
        <div class="rahmen"> <img src="<?php echo $row['Dateipfad']; ?>" class="img-fluid" alt="Responsive image" width="100%";>
          <p><?php echo $row['Titel'] ?></p>
       </div>
      </div>
    <?php }
    }    else {
    echo "Scheiße";
}
$conn->close();
    echo "Connected successfully"; ?>   
  
 
 
 
          <?php include ("data_con.php");
 
     $conn = new mysqli($servername, $username, $password, $db);
 
     if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
     }

$sql = "SELECT `Dateipfad`, `Titel` FROM last_upload WHERE `ID` = 2 ";
$result = $conn->query($sql)
  or die ("MySQL-Error: " . $conn->error);
  
    if ($result->num_rows >0) {
    while ($row = mysqli_fetch_assoc($result)){ ?>
 
   <div class="col-xs-5 col-xs-offset-2 col-sm-5 col-sm-offset-2 col-md-5 col-md-offset-2 col-lg-5 col-lg-offset-2 no-gutter" >
   <div class="rahmen"> <img src="<?php echo $row['Dateipfad']; ?>" class="img-fluid" alt="Responsive image" width="100%;">
    <p><?php echo $row['Titel']?></p></div>
   </div>
      </div>
    </div>
    <?php }
    }    else {
    echo "Scheiße";
}
$conn->close();
    echo "Connected successfully"; ?>   
  
 
 
    <br>
 
      <div class="container-fluid">
     <div class="row justify-content-center">
     <div class="col-xs-5 col-sm-5 col-md-5 col-lg-5 no-gutter">


           <?php include ("data_con.php");
 
     $conn = new mysqli($servername, $username, $password, $db);
 
     if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
     }

$sql = "SELECT `Dateipfad`, `Titel` FROM last_upload WHERE `ID` = 3 ";
$result = $conn->query($sql)
  or die ("MySQL-Error: " . $conn->error);
  
    if ($result->num_rows >0) {
    while ($row = mysqli_fetch_assoc($result)){ ?>
 
     <div class="rahmen"> <img src="<?php echo $row['Dateipfad']; ?>" class="img-fluid" alt="Responsive image" width="100%;">
   <p><?php echo $row['Titel'] ?></p> </div>
   </div>
    <?php }
    }    else {
    echo "Scheiße";
}
$conn->close();
    echo "Connected successfully"; ?>   
  

          <?php include ("data_con.php");
 
     $conn = new mysqli($servername, $username, $password, $db);
 
     if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
     }

$sql = "SELECT `Dateipfad`, `Titel` FROM last_upload WHERE `ID` = 4 ";
$result = $conn->query($sql)
  or die ("MySQL-Error: " . $conn->error);
  
    if ($result->num_rows >0) {
    while ($row = mysqli_fetch_assoc($result)){ ?>
 
   <div class="col-xs-5 col-xs-offset-2 col-sm-5 col-sm-offset-2 col-md-5 col-md-offset-2 col-lg-5 col-lg-offset-2 no-gutter">
   <div class="rahmen"><img src="<?php echo $row['Dateipfad']; ?>" class="img-fluid" alt="Responsive image" width="100%;">
   <p><?php echo $row['Titel'] ?></p></div>
   </div>

      </div>
    </div>
    <?php }
    }    else {
    echo "Scheiße";
}
$conn->close();
    echo "Connected successfully"; ?>

Das funktioniert zwar, aber ihr seht ja den Brocken an Code...
 
Werbung:
$sql = "SELECT `Dateipfad`, `Titel` FROM last_upload order by `ID` limit 4";
Das weiß ich. Mein Problem sind die unterschiedlichen Klassen, die die einzelnen Daten umgeben. Mal mit offset mal ohne. Ich frag mich wie ich das in der While Schleife laufen lassen soll. Wenn ich die divs ohne Offsets ständig wiederholen lasse, dann sind die Bilder nebeneinander, aber mit offsets sind die Bilder verschoben. Verstehst du, was ich meine?
 
Werbung:
In der while-Schleife ein switch über die ID und abhängig von deren Wert das passende HTML anlegen.

Danke für die Anregung. Ich habe es versucht an dem einen Beispiel aber ich komme mit der Syntax nicht klar. Kannst du meinen ersten Code nur auf das erste Bild bezogen so editieren, dass es funktioniert, oder einen Link der zeigt, wie das mit dem Switch bei einer Datenabfrage funktioniert schicken?
 
Werbung:
Heißt das, es funktioniert jetzt?
Ja, man kann zum Beispiel bei einer Schleife das PHP unterbrechen um das HTML ohne echo im Shleifenkörper auszugeben. Die Ansichten sind da etwas geteilt, ich selber finde finde durchgehendes PHP mit echos übersichtlicher und leichter zu lesen.

Alles funktioniert, wie es soll dank deiner Hilfe :).
 
Werbung:
Zurück
Oben