Ankündigung

Einklappen
Keine Ankündigung bisher.

Inhalte in einer Datenbank speichern

Einklappen

Neue Werbung 2019

Einklappen
Dieses Thema ist geschlossen.
X
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Inhalte in einer Datenbank speichern

    Hallo zusammen,

    ich möchte mir ein neues Homepageprojekt machen, bei dem ich die ganzen Inhalte der einzelnen Seiten (etwa 200) in einer Datenabnk speichern möchte. Also nur das, was auch in den späteren Inhaltsbereich reinkommen soll.

    Die Seiten sollen dann über Links wie index.php?id=32 aufgerufen werden, die Startseite soll nur als index.php erreichbar sein.
    PHP und MySQL-Datenbank stehen mir natürlich beide zur Verfügung.

    Ich nehme an, dass ich mir zuerst eine Tabelle erstellen muss in der Datenbank. Aber wie viele Felder bekommt die? 2 (eines für die id und eines für die Inhalte)? Die id in der DB soll später auch mit der in den Links übereinstimmen. Oder kann man da auch noch eine zusätzliche Spalte machen, dass zum Beispiel jede Seite automatisch ihren eigenen Titel bekommt?

    Also, kurzum:
    - Wie muss ich die Tabelle in der Datenbank anlegen?
    - Mit welchem Code kann ich die danach wie gewünscht auslesen?

  • #2
    Hallo,
    warum möchtest du die Inhalte denn in die Datenbank legen, reichen Templates nicht aus? Wenn dein Projekt nicht mehrsprachig werden soll, genügt das oft.

    Ansonsten bau dir einen Baum, das heißt eine Art Sitemap, dessen Blätter die jeweiligen Inhalte sind.

    Bleistift:

    Home -> Familie -> Ich
    -> Lebenslauf
    -> Kurze Textbeschreibung

    Nun könntest du dein System so auslegen, dass du mit
    PHP-Code:
    <?php
    load
    ("home/familie/ich");
    read("lebenslauf");
    read("teaser");
    ?>
    die Inhalte lädst.

    Die Datenbank könntest du mittels Nested Sets anlegen, ich weiß nicht inwieweit du dich da reinknien möchtest:
    http://www.klempert.de/nested_sets/
    Das ist zumindest ein toller Artikel darüber.

    Andernfalls reicht auch dieses Schema aus:
    Code:
    sitemap
    id | parent_id | title
    ..
    1 | NULL | home
    2 | 1 | family
    3 | 2 | ich
    
    content
    id | sitemap_id | title | text
    1 | 3 | ich wurde anno 1985 geboren ..
    1 | 3 | ich mag hunde und katzen aber im moment sitze ich am pc
    Das allerdings nur als Gedankenanstoss, du musst das ganze an deine Bedürfnisse anpassen. Vielleicht kannst du hier ja laut denken und wir geben dann unseren Senf dazu.

    Kommentar


    • #3
      Also, die Inhalte möchte ich in einer Datenbank speichern, damit ich die von jedem PC aus bearbeiten kann. Es handelt sich dabei nicht um meine Homepage, sondern um ein größeres Projekt mit etwa 300 Unterseiten.

      Ich möchte es eigentlich so:

      Also ich habe eine Datei index.php, in der steht alles drin zum Design etc. nur die Inhalte fehlen mir halt alle. Die sollen in die DB rein. und zwar so, dass wenn ich im Browser index.php?id=1 aufrufe die Seite geladen wird, dass dann die Inhalte mit der ID 1 aus der Datenbank ausgelesen werden.

      Was ich möchte:
      - Die ID
      - pro Seite ein eigener Titel
      - die eigentlichen Inhalte
      das wars eigentlich schon, was in die Datenbank soll.

      Was ich brauche ist ein Code, mit dem ich die ganzen verschiedenen Sachen dann auslesen und an die richtige Stelle setzen kann und etwas, wie ich mir diese Tabelle in der Datenbank anlegen kann.

      Kommentar


      • #4
        Also die Tabelle baust du wie folgt auf:

        ID:
        Typ: int
        Length: 11
        Als Key setzen und auto_increment auswählen
        Titel:
        Typ: Vchar
        Length: 250
        Inhalt:
        Typ: Mediumtext

        Auslesen kannst du die Inhalte dann etwa so:

        PHP-Code:
        $sql "SELECT * FROM tabelle WHERE id = $_GET['id'] LIMIT 1";
        $ergebnis mysql_query($sql$verbindung);
        $row mysql_fetch_object($ergebnis);

        $id $row->id/* jeweils die Spaltennamen */
        $title $row->title;
        $content $row->content
        $verbindung ist dann einfach die mysql_connect() Verbindung.

        mfg
        Link

        Kommentar


        • #5
          Moment langsam...

          Also ich bin jetzt so weit, dass ich mir die Tabelle angelegt habe, und zwar so:

          - ID
          - Titel
          - Inhalte
          - Aktiv (Ja/nein)
          Die Tabelle heißt "Inhalte".

          OK, ich brauche dann jetzt folgenden Code (und ich weiß wirklich nicht, wie ichs machen muss!):

          Für das Aufrufen der Dateien im Inhaltsbereich, das was bei "Titel" in der Datenbank steht soll als Seitentitel gelten.

          Kann mir das einer so ausführlich beschreiben und nen Code dafür posten?

          Kommentar


          • #6
            Zitat von maxif
            Kann mir das einer so ausführlich beschreiben und nen Code dafür posten?
            Hallo - Forenregeln?! Suchmaschine, Tutorials ..
            Wenn du soweit bist, öffne ich den Thread wieder, einfach PM an mich oder einen anderen aktiven Moderator.

            Kommentar

            Lädt...
            X