Carl: Datenbankeinträge als Links

Hi

ich hab da ein kleines Problem.
Und zwar möchte ich, dass die User meiner Seite über ein Script Texte einsenden können.
Soweit so gut, das schaff ich noch.
Aber das Problem ist, dass ich keine Idee hab, wie ich es schaffen kann, dass auf einer Seite Links zu eben diesen Texten erscheinen, welche den User zu einer Seite weiterleiten, auf der der Text dann dargestellt
wird. Der Linktitel soll sich aus einer eingabe in einer gesonderten spalte in der Tabelle ergeben.

Gibts dafür vielleicht irgendwo ein Tutorial oder so?

Gruss
Carl

  1. Mir scheint, du hast ein allgemeines Problem mit dem Schreiben von Datenbankabfragen, oder verstehe ich da was falsch?
    Wenn ich richtig liege, solltest du dir vieklleicht einfach mal die Doku auf php.net anschauen.

    http://www.php.net/manual/en/function.mysql-fetch-row.php
    http://www.php.net/manual/en/function.mysql-fetch-array.php

    Farewell.

    1. Hi

      mir gings eher darum, wie ich es hinkriege, dass er automatisch auf eine Seite einen zusätzlichen Link setzt, weil es einen neuen eintrag in der datenbak gibt.
      Ausserdem möchte ich gern wissen (fällt mir grad so ein) wie ich da eine abfrage einbaue, dass wenn auf diesen Link geklickt wird, auf der nächstzen seite eben jener eintrag angezeigt wird.

      Wie Datenbankabfragen funktionieren weiß ich.

      Gruss
      Carl

      1. Wie Datenbankabfragen funktionieren weiß ich.

        Bist Du dir da ganz sicher ???

        Grundsätzlich folgendes:
        Einer Liste aller Einträge erhälst Du folgendermaßen:
        SELECT * FROM Tabelle;
        Aus dem Rückgabewert musst Du eine Schleife basteln, und die Liste als HTML-Seite ausgeben. Idealerweise hat jeder Eintrag eine eindeutige ID, mit der Du auf diesen Eintrag verlinken kannst.

        Den Eintrag erhälst Du dann mit der SQL-Anweisung:
        SELECT * FROM Tabelle WHERE id = $id;

        Die SELECT-Anweisungen sind natürlich noch zu optimieren, so das Du nur die Spalten aus der Datenbank ausliest, die Du im Moment auch wiklich brauchst.

        Aber wie so eine Datenbankabfrage funktioniert weißt Du ja ;-)

        greets
        myMojito

        --
        -------------------------------------------
        Mode ist eine Variable, Stil eine Konstante
        1. Hi Leute

          Ich krieg grad irgendwie so das gefühl, dass wir aneinander vorbeireden :-).
          Ich hab kein Problem damit alle einträge einer bestimmten Spalte rauszulesen (das brauch ich ja).

          mein Problem ist aber, dass ich nicht für jeden eintrag eine eigene Seite erzeugen will, dass müllt mir ja den server zu.

          Nein, was ich möchte ist, dass entsprechend des Links auf den geklickt wird eine Seite mit dem eintrag generiert wird. Das Grundgerüst kann ja schon geschrieben sein. Aber wie muss denn mein Link dann eigentlich aussehen, damit, wenn auf ihn geklickt wird die seite mit den richtigen einträgen generiert wird?

          Noch ein Beispiel zur Verdeutlichung.

          Thomas mach einen Eintrag in die Datenbank.
          Stefan macht auch einen Eintrag in die Datenbank.

          Nun werden auf einer Linkseite 2 Links generiert.
          Der eine Link heißt Thoma, der andere Link heißt stefan.

          Wenn nun auf den Link Thomas geklickt wird, wird eine Seite mit dem Inhalt angezeigt, den Thomas in die Datenbank eingetragen hat.
          Wenn aber auf den Link stefan geklickt wird, wird die gleiche Seite angezeigt, nur das es sich um den zu stefan zugehörigen Inhalt handelt.

          Gruss
          Carl

          1. Hallo Carl!

            Ich krieg grad irgendwie so das gefühl, dass wir aneinander vorbeireden :-).

            Das Gefühl hab ich nicht, ich glaube eher du hast das nicht so ganz verstanden was myMojito eben schrieb ;-)

            Du ordnest jedem Eintrag in deiner DB eine eindeutige ID zu. Das Feld mit der ID hat jetzt einfach mal den Namen id.
            Nun stellst du in der Abfrage, die dir den einzelnen Eintrag anzeigen soll (wie myMojito bereits schrieb), eine WHERE-Bedingung auf, und zwar die Bedingung, dass die ID gleich der übermittelten ID ist. Das sollte so aussehen wie bei myMojito. Dann bekommst du nur diesen einzigen Eintrag von der Datenbank ausgespuckt der zu dieser ID gehört. Ach ja und die "ID", die du angezeigt haben willst kannst du in dem Beispiel von myMojito festlegen, indem du deine PHP-Datei mit dem Parameter id=... aufrufst (... soll dabei die ID-Nummer des Eintrags sein).
            Das sieht dann in etwa so aus (Beispiel):
            http://server.tld/pfad/datei.php?id=2

            Alles klaro?

            MfG,
            Mirko Hansen

            1. Hallo Mirko,

              wir verstehen uns ;-)

              greets
              myMojito

              --
              -------------------------------------------
              Mode ist eine Variable, Stil eine Konstante
              1. Hallo Carl,

                schick uns doch mal den relavanten Teil des Codes, mit dem Du die Seite aus dem Datenbankeintrag generierst. Oder war es DAS, wobei du eigentlich Hilfe suchtest?

                Na, da helfen nur Buntstifte und Papier :-)

                Mal Dir die Seite mit Bleistift auf, so wie sie später ungefhähr aussehen soll. Nun nimmst Du die Buntstifte und malst alles, was aus einem Datenbakfeld kommt, mit je einer Farbe an. Und alle Elemente, die immer gleich sind, machst Du schwarz. Die werden dann später statischer HTML-Code.

                Das Ganze nennt man auch Template oder Framework. Habe ich hier schon viele verschiedene Namen dafür gelesen...

                Wenns noch Fragen gibt, dann frag auf jeden fall, nochmal und nimms nicht krumm, wenn mal jemand ungeduldig wird mit Dir. Solltest Du mit uns aber auch nicht werden.

                Liebe Grüße aus http://www.braunschweig.de

                Tom

                --
                Intelligenz ist die Fähigkeit, aus Fehlern Anderer zu lernen und Mut die, eigene zu machen.
                1. Hi Tom

                  Hallo Carl,

                  schick uns doch mal den relavanten Teil des Codes, mit dem Du die Seite aus dem Datenbankeintrag generierst. Oder war es DAS, wobei du eigentlich Hilfe suchtest?

                  Genau das wars.
                  Ich hab zwar im Kopf, wie die Seite aussehen soll, aber nicht wirklich einen Plan, wie ich das ganze durchsetzten soll.
                  Also ich hab jetzt bei der Sache mit der id durchgeblickt, aber ich glaub ich steh da vor noch einem problem. die id würde ich ja vorzugsweise mit der auto_increment funktion machen. das Problem ist nur, dass ich das ganze als vereinfachtes beispiel dargestellt habe.

                  Ich werde mal versuchen genau zu beschreiben um was es geht.
                  Also:

                  Das Ziel ist eine Datenbank, in die verschiedene User Informationen zu einigen Themenbereichen eintragen. Diese Themenbereiche sind allerding nicht von vorne herein definiert, sondern werden durch eine Eingabe der user definiert.

                  Und wenn jetzt 2 user eine eingabe zu ein und dem selben Thema machen, so sollen nicht 2 Links genereiert serden, sondern nur einer, eben dieser Themenname.
                  Wenn man dann auf den Link klickt sollen alle Einträge zu diesem Thema angezeigt werden.

                  Ich würde jetzt mal behaupten, dass es im Grunde genommen einem Forum nciht unähnlich ist.

                  Sorry, dass ich mich in meinem vorherigen Beitrag etwas unpräzise ausgedrückt habe, mir war selber die ganze Bandbreite meines Vorhabens nicht bewusst.

                  So jetzt zu dem was ich nicht weiß, wie ichs hinkriegen soll:

                  1. wie genau sorge ich dafür, dass die Ausgabe aus der Datenbank ein Link ist, und wie muss dieser Link für mein Vorhaben beschaffen sein.

                  2. oder vielleicht kommt das im Grunde genommen als erstes: wie strukturiere ich meine datenbank am geschicktesten?

                  3. wie muss ich die "Ausgabeseite" machen. ich weiß was fest ist, aber wie sieht der teil aus, der variabel sein wird?

                  Wäre schön, wenn Ihr mir da helfen könntet.

                  Gruss
                  Carl

                  1. Hallo Carl,

                    [...]

                    Das habe ich befürchtet und muss Dich da wohl enttäuschen. Wir sitzen jetzt schon fast ein Jahr an der Definition und der Umsetzung eines derartigen CMS und da steckt der Teufel im Detail. Das würde den Rahmen dieses Forums sprengen. Einzelne Fragen sollst Du natürlich immer stellen, aber bitte nicht nach dem Script für einen mehrstündigen Vortrag :-))

                    Die "einfachste" Form wäre ja ein Forum wie dieses, sagtest Du ja schon. Ich würde mir an Deiner Stelle dann mal den Quellcode von diesem Forum anschauen und wenn Du den verstanden hast, dann gehts weiter.

                    Oder besser noch, denk mal nach was Du in in PHP/MySQL oder PHP/LowLevel-Dateien schon an interaktiven Systemen programmiert hast.Und dann mach da mit dem nächsten Schierigkeitsgrad weiter. Fang langsam an, sonst verlierst Du die Lust.

                    Liebe Grüße aus http://www.braunschweig.de

                    Tom

                    --
                    Intelligenz ist die Fähigkeit, aus Fehlern Anderer zu lernen und Mut die, eigene zu machen.