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

Frage MySQL Tabelle, Eintrag auswählen und per Link anzeigen lassen

eric1997

Neues Mitglied
Hey Leute, stehe hier gerade vor einem Berständnisproblem. Vielleicht kann mir ja jemand einen Fenkanstoß geben, das war beim letzten Mal auch Gold wert!
Ich gebe hier meine Datensätze der Datenbank aus (Davon absehen das jeder Eintrag eine neue Rabelle ist). Alles funktioniert, allerdings möchte ich nun mithilfe eines Kinks den Srtikel einzeln aufgerufen bekommt und diesen "bestellen" kann. Unten habe ich auch noch meine Mysql Verbindung angehangen und ja, es gibt eine PDO und eine mysqli Verbindung. Keine Angst, es handelt sich hierbei rein um einen Orototyp und soll alles nur bildlich veranschaulichen. Ich danke euch schonmal sehr für eure Hilfe!

PHP:
<?php
#DATENBANK VERBINDUNG
require_once("mysql.php");
?>



 
<?php $res = mysqli_query($mysqli, "SELECT NAME, PREIS, BESCHREIBUNG, BILDPFAD from produktinfo ORDER BY EINSTELLUNGSDATUM DESC");

while($row=mysqli_fetch_array($res))
{
?><?php
echo"<table>";
?>
}
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>
<body>
<table class="table table-hover table-dark " >
  <tbody>
    
    <tr>
    <div class="abstand_tabelle">
      <th scope="row"></th>
      <td width=300><li><a href="produktseite.php"> <?php echo $row["NAME"];?></a></li></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><br>
      </div>
    </tr>

  </tbody>

</table>

<!-- FOOTER -->
<?php require_once("footer.php"); ?>

</body>
</html>
PHP:
<?php





#################################### mysql.php ################################################
################################## Verbindung mit PDO ###########################################
$host = "localhost";
$name = "aloevera";
$user = "root";
$passwort = "";
try{
    $mysql = new PDO("mysql:host=$host;dbname=$name", $user, $passwort); #PDO ist hilfsklasse die datenbank abrufen kann
} catch (PDOException $e){
    echo "SQL Error: ". $e->getMessage();
}

################################## Verbindung mit MYSQLI ###########################################
$mysqli = mysqli_connect("localhost", "root", "");
mysqli_select_db($mysqli, "aloevera");
 

basti1012

Senior HTML'ler
Code:
while($row=mysqli_fetch_array($res))
{
?><?php
echo"<table>";
?>
}
Das hat ja gar keinen Sinn?
Selbst wenn du alles in extra Tabelle machen möchtest, solltest du das </rable> auch jedes Mal wieder schließen und der ganze <head> Bereich hat in einer Tabelle erst recht nichts zu suchen.
Wenn man es schon so macht, dann sollte man mal im Quelltext schauen, dann sollte man das sehen das jede Tabelle ein <head>hat ohne geschlossenes </table>.
EDIT: Ich frage mich gerade was du da siehst , da sollte ja eigentlich nur eine Tabelle, sein , weil in der Schleife ja kein Inhalt ist außer <table>. Egal wie viele Ergebnisse die DB ausgibt , im Browser sollte nur ein Ergebnis ankommen . Irgendwie verwirrt mich das gerade

Alles funktioniert, allerdings möchte ich nun mithilfe eines Kinks den Srtikel einzeln aufgerufen bekommt und diesen "bestellen" kann.

Wie wäre es mit einer ID und vielleicht ein Zusatz bestellen im Link?
ZB so
HTML:
<a href="produktseite.php?bestellen=<?php echo $row['ID']; ?>"> <?php echo $row['NAME']; ?></a>

Dann abfragen, ob es Bariable bestellen gibt und den Artikel abfragen
 

eric1997

Neues Mitglied
Hey, habe den Head aus dem Bereich entfernt, ist wohl im Verlauf der Versuche alles durcheinander geraten.
Trotz alledem werden mir alle daten ausgegeben und jeder Eintrag in einer extra tabelle.

Wie wäre es mit einer ID und vielleicht ein Zusatz bestellen im Link?
ZB so
HTML:
<a href="produktseite.php?bestellen=<?php echo $row['ID']; ?>"> <?php echo $row['NAME']; ?></a>
Dann abfragen, ob es Bariable bestellen gibt und den Artikel abfragen
teste ich mal...

Dann abfragen, ob es Bariable bestellen gibt und den Artikel abfragen
Kann dir ehrlich gesagt nicht richtig folgen, was die Variable bestellen angeht bzw. wie ich die Abfrage dafür machen soll…
 

basti1012

Senior HTML'ler
Trotz alledem werden mir alle daten ausgegeben und jeder Eintrag in einer extra tabelle.
Kann ich mir ehrlich gesagt nicht vorstellen, zumindest nicht bei dem Code aus Beitrag 1, ich sehe da nur eine Tabelle, weil die Schleife ja kein Inhalt hat.
Hey, habe den Head aus dem Bereich entfernt, ist wohl im Verlauf der Versuche alles durcheinander geraten.
Trotz alledem werden mir alle daten ausgegeben und jeder Eintrag in einer extra tabelle.
Wie sieht den dein jetziger Code aus? Falls in Beitrag 1 alles durcheinander war vom hin und her probieren , sollte es ja jetzt besser aussehen.

Denk immer daran , dass gerade du als Anfänger auch in den Quellcode schaust, der im Browser ankommt. Es bringt ein Nichts, wenn zwar alles läuft ,aber der Quellcode so Schrott ist, dass du beim Stylen und responsiven Design nichts mehr retten kannst. Auch Google bewertet deine Seite besser, wenn er auf den aktuellsten Standard und Fehlerfrei ist.


Kann dir ehrlich gesagt nicht richtig folgen, was die Variable bestellen angeht bzw. wie ich die Abfrage dafür machen soll…
@Readonly hat es in Beitrag 4 schon geschrieben, wie ich es meine.
Bedenke aber das du da keine SQL Injektion Lücke einbaust , du musst die Variable im Link unbedingt maskieren, filtern und überprüfen.
 

SpiceLab

Mod | ZENmechanic
Teammitglied
Moderator
Kann ich mir ehrlich gesagt nicht vorstellen, zumindest nicht bei dem Code aus Beitrag 1, ich sehe da nur eine Tabelle, weil die Schleife ja kein Inhalt hat.

Wie sieht den dein jetziger Code aus? Falls in Beitrag 1 alles durcheinander war vom hin und her probieren , sollte es ja jetzt besser aussehen.

Denk immer daran , dass gerade du als Anfänger auch in den Quellcode schaust, der im Browser ankommt. Es bringt ein Nichts, wenn zwar alles läuft ,aber der Quellcode so Schrott ist, dass du beim Stylen und responsiven Design nichts mehr retten kannst. Auch Google bewertet deine Seite besser, wenn er auf den aktuellsten Standard und Fehlerfrei ist.



@Readonly hat es in Beitrag 4 schon geschrieben, wie ich es meine.
Bedenke aber das du da keine SQL Injektion Lücke einbaust , du musst die Variable im Link unbedingt maskieren, filtern und überprüfen.
Kurz und knackig auf den Punkt gebracht - mehr, respektive weniger, geht definitiv nicht:cool:

:ThumbsUp: :wink:
 
Werbung:
Oben