Inhalt einer Datenbank als Link auf neuer Seite darstellen

  • Guten Tag an alle,

    ich bin gerade einbißchen am verzweifeln. Ich sitze gerade an einer kleinen Homepage die quasi als kleiner Blog funktionieren soll. Ich kann schon erfolgreich Informationen in eine Datenbank schreiben und auch jede Zeile der Datenbank in einem Contrainer auslesen. Der Container ist auch schon ein Link. In dem Container wird das Datum, die Überschrift und ein Teil des geschriebenen Inhalts angezeigt.

    Jetzt möchte ich gerne, dass wenn ich auf den Container klicke, der Inhalt der Zeile aus der Datenbank auf einer komplett neuen Seite dargestellt wird.

    Ich stelle euch auch gerne den Quellcode zur Verfügung.

    index.php - ist die Startseite der Homepage

    eintrag.php - Damit schreibe ich mit Hilfe eines Formulars in die Datenbank

    startseite.php - Liest den Inhalt der Datenbank aus mit Datum, Titel und Teaser

    test.php - Hier soll nur der Inhalt der Zeile der Datenbank angezeigt werden.

    Ich habe mich auch schon eingelesen das die ID der Zeile irgendwie übergeben soll und ich mit die ID mit Hilfe von $_GET holen muss um die auf der Seite anzuzeigen. Jedoch bekomme ich das nicht hin.

    Bitte seid gnädig zu mir ich habe nie richtig gelernt zu Programmieren und habe mir alles in den letzten 4 Monaten soweit wie möglich selber beigebracht. Brauche aber an diesem Punkt einfach hilfe um es richtig darzustellen.

    Ich würde mich sehr über Hilfe freuen.

    gruß

  • Also ich gebe nochmal wieder was ich gerade aus deiner Beschreibung verstanden habe,

    du möchtest wenn du auf den Container klickst ,eine komplett neue Seite mit dem Inhalt aufgerufen wird?

    Einmal editiert, zuletzt von Lea (9. März 2020 um 13:36)

  • Ich kenne das so.

    Man zeigt auf der Startseite zb 10 Themen an , mit Überschrift Datum und etwas Text vom Inhalt.

    Wenn man das verlink gibt man zb die Id des Beitrags mit.

    Code
    echo "<a href='startseiten.php?id=$id'>Zum Thema</a>";

    Dann wird beim anklicken die Seite nochmal geladen ,wo du aber mit $_GET['id'] die id des Beitrags auslesen tust.

    Mit der Id holst du dann den Inhalt aus der Db


    Escapen nicht vergessen, das hast du nirgenswo gemacht

    https://www.php.net/manual/de/func…cape-string.php

    und htmlspecialchars ist auch dein Freund

    https://www.php.net/manual/de/function.htmlspecialchars.php

    Du kannst das natürlich auch mit Ajax machen was du dann in einen Container laden tust.

    So ungefähr kann man das machen.

    Die Php Profis haben aber bestimmt noch bessere Ideen

    6 Mal editiert, zuletzt von basti1012 (9. März 2020 um 14:04)

  • Zitat

    Also ich gebe nochmal wieder was ich gerade aus deiner Beschreibung verstanden habe,

    du möchtest wenn du auf den Container klickst ,eine komplett neue Seite mit dem Inhalt aufgerufen wird?

    Lea - Ja genau das möchte ich machen!

    Basti - In welcher Datei muss ich den Quellcode diesbezüglich ändern?

  • Basti - In welcher Datei muss ich den Quellcode diesbezüglich ändern?

    Welchen meinst du den jetzt ?

    wenn ich das richtig sehe hast du in der startseite.php diese Zeile

    Code
    echo "<a href='index.php?section=test1'><div class = item>";

    das änderst du dann in

    Code
    echo "<a href='startseiten.php?id=htmlspecialchars($id)'>Zum Thema</a>";

    Und dann den Code was ich eben schon geschrieben habe

    PHP
    <?php
    if(isset($_GET['id'])){
       // hier dann das Thema der id holen
       include('test.php');// wo nur das eine Thema geholt wird
    }else{
       // hier der ganze code den du jetzt schon auf der startseite hast ,wo die ganzen Theman gelisten werden
    
    }

    Du kannst aber auch warten was die Php Profis zu sagen haben , vieleicht haben die nee bessere idee

  • Wenn du das jetzt mal als startseite nimmst , zb bla-index.php

    Da ich eigentlich keine Php Hilfe gebe , sehe das mal einfach nur als Gedanken stütze und Googel dich durchs Netz ob ich das so richtig gemacht habe und so weiter.

    Was ich dir aber sagen kann ist das deine Tag ,Monat Jahr Spalten in der Datenbank schwachsinn ist , da gibt es extra Einstellungen für.

    Dein Html ist als und sollte man so auch nicht mehr nehmen.

    Ich habe den größten Teils geändert weil dein Code veraltet ist

    EDIT:

    Durch das Crossposten wird das Thema sowieso bald gesperrt.

    In den Sinne viel Glück noch und lasse nächstes mal das Crossposten sein

    Einmal editiert, zuletzt von basti1012 (9. März 2020 um 16:46)

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!