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

Frage Verlinkung für Produkte von MySQL Datenbank mit PHP

eric1997

Neues Mitglied
Hey Leute ich benötige eure Hilfe,
habe mich die letzten Tage zu dem Thema belesen, aber irgendwie vergesse ich einen wichtigen Part oder habe einen Denkfehler...
Ich habe eine Website über diese zeige ich Daten, in einer Tabelle aus der Datenbank an (Name, Bildpfad, Preis, Beschreibung). Das funktioniert alles problemlos. Jetzt stehe ich aber vor der Aufgabe, dass ich, wenn jemand z.B. einen Namen von den ganzen Artikeln anklickt, dieses verlinkt auf die eigentliche Produktseite (auf welcher dann das einzelne Produkt, welches angeklickt wurde auch angezeigt wird) im späteren Verlauf, soll dann auch noch eine Kauffunktion ausgeführt werden, aber das ist noch Zukunftsmusik. Hat jemand eine Idee wie ich das umsetzen kann? Wäre um jede Hilfe sehr dankbar
Code:
<?php

#DATENBANK VERBINDUNG
require_once("mysql.php");
$res = mysqli_query($mysqli, "SELECT * from produktinfo ORDER BY EINSTELLUNGSDATUM DESC");

while($row=mysqli_fetch_array($res))
{
?><div class="col-lg-10 py-5 mx-auto p-3 py-md-8 "><?php
echo"<table>";
}
?>

<!-- Inhalt der Datenbank angezeigt -->
<table class="table table-hover table-dark" >

  <tbody>
    <tr>
      <th scope="row"></th>
      <td width=300><?php echo $row["NAME"];?></td>
      <td width=200><?php echo $row["PREIS"];?> €</td>
      <td width=500><?php echo $row["BESCHREIBUNG"];?></td>
      <td width=400><img src="<?php echo $row["BILDPFAD"];?>"height="100" width="100"></td>
    </tr>

  </tbody>
</table>
</div>
</body>
</html>
 
Zuletzt bearbeitet:

jonas3344

Aktives Mitglied
Das nennt man einen Link. Dazu benutzt man den <a>-Tag.


Um die id des angeglickten Elements zu übergeben kann man einen GET-Parameter benutzen.

Den Code, den du uns da präsentierst dürfte nicht lauffähig sein. Du öffnest eine ehile-Schleife, schliesst sie aber nicht mehr. Und bist du sicher, dass du für jeden Artikel eine neue Tabelle machen willst?

Weiter:
- Verwende nicht SELECT * sondern gibt die Spalten an, die du auslesen willst.
- Validiere Dein HTML, das da dürfte nicht galide sein. Du ersparst Dir späteren Kummer, wenn du es sauber machst.
- Die width und height Attribute sind veraltet und sollten nicht mehr verwendet werden. Benutze CSS um die Tabelle zu stylen.
 

eric1997

Neues Mitglied
Ein Link mit <a>-Tag dachte ich mir schon, die Frage ist nur wie ich das mit der Auswahl von einem MySQL Eintrag verbinden kann.
Bei einem Eintrag in ein Formular ist ja klar, wonach man direkt in der Datenbank suchen muss, aber wie ist das, wenn ich alle Einträge der Datenbank wiedergebe und man dann eins davon auswählen will…

Die while Schleife schließt unter der Tabelle.


- $res = mysqli_query($mysqli, "SELECT 'NAME', PREIS, BESCHREIBUNG, BILDPFAD from produktinfo ORDER BY EINSTELLUNGSDATUM DESC"); habe ich geändert
- mache ich
 
Werbung:
Oben