Ironhwistle: Neue Beiträge nach oben

Irgendwie schaue ich richtig neidisch auf das Forum hier, werden doch die neuesten beiträge immer schön nach oben geschoben...

...und bei mir nicht. :(

Folgendes Script verwende ich um kleinere Texte in einer Datei zu speichern:

<?
if ($speichern) {
$dn="news/news.dat";
$dz=fopen($dn,"a+");
fputs($dz, " $news " . chr(13) . chr(10));
fclose($dz);
}
?>

Die news.dat lese ich per include ein, nur stehen da jedesmal die ältesten Einträge an erster Stelle!
Wenn ich die Zeilenumbrüche berücksichtige und revers verwende, dann stimmt gar nix mehr...

Wer hat den Mut um einen - noch immer - PHP-Frischling ein wenig zu helfen?

Grüße
Ingo

  1. Wer hat den Mut um einen - noch immer - PHP-Frischling ein wenig zu helfen?

    Kurzer Denkanstoß ;) Statt nur ans Ende zu schreiben, erst Inhalt auslesen, dann den neuen Eintrag mit dem alten Inhalt in richtiger Reihenfolge zusammensetzen, und das dann zusammen wieder in die Datei schreiben ;)
    Zum Üben ist das alles nicht schlecht, aber wenns was gescheites werden soll, solltest dich mit MySQL befassen :)

    greetz RFZ

    1. Hallo,

      ... aber wenns was gescheites werden soll, solltest dich mit MySQL befassen :)

      Warum?

      Grüße
      Jeena Paradies

      1. Warum?

        War das bezogen auf MySQL? Wenn ja, natürlich kann er sich auch mit einer anderen DB befassen :)

        Aber allgemein sollte er eine Datenbank wählen, weil er sonst bald Probleme bekommt. Nämlich wenn er einzelne Einträge löschen/bearbeiten will oder die Einträge zu viele werden.
        Oder wenn er z.B. sein Design ändern will, ohne dabei die Inhalte zu verlieren usw...

        Wenn er bei einer Datei bleiben will, geht das auch, aber dann muss er die Struktur ändern. Jetzt hängt er einfach Einträge aneinander, ohne spezielle Trennung oder Felddefinitionen.
        Falls er Dateien verwenden will, sollte er sich zumindest mit implode()/explode() befassen.

        greetz RFZ

        1. Stop mal kurz...

          Der Tipp war gut, und ich werde auch noch einige Zeit daran nagen, aber ich bin Neuling und befasse mich erst seit knapp 2 ~ 3 Wochen mit php... ;)

          1. Der Tipp war gut, und ich werde auch noch einige Zeit daran nagen, aber ich bin Neuling und befasse mich erst seit knapp 2 ~ 3 Wochen mit php... ;)

            Deshalb sage ich ja, erst mal mit Dateien üben und alles verstehen, und dann an die Datenbank ranwagen ;)

            Viel Erfolg!

            1. Deshalb sage ich ja, erst mal mit Dateien üben und alles verstehen, und dann an die Datenbank ranwagen ;)

              Viel Erfolg!

              Es klappt nicht...

              Eigentlich wollte ich jeweils nur zwei - drei Zeilen Text einbinden, also keine DB verwenden.

        2. Hallo,

          War das bezogen auf MySQL?

          Ja.

          Wenn ja, natürlich kann er sich auch mit einer anderen DB befassen :)

          das sowieso.

          Aber allgemein sollte er eine Datenbank wählen, weil er sonst bald Probleme bekommt.

          Oha das ist mir neu.

          Nämlich wenn er einzelne Einträge löschen/bearbeiten will oder die Einträge zu viele werden.
          Oder wenn er z.B. sein Design ändern will, ohne dabei die Inhalte zu verlieren usw...

          Ähm irgendwie erkenne ich jetzt nicht den vorteil einer Datenbank darin.

          Wenn er bei einer Datei bleiben will, geht das auch, aber dann muss er die Struktur ändern. Jetzt hängt er einfach Einträge aneinander, ohne spezielle Trennung oder Felddefinitionen.

          Ah jo so kommen wir der Sache schon näher ran.

          Falls er Dateien verwenden will, sollte er sich zumindest mit implode()/explode() befassen.

          Und mit vielem anderen mehr, ob nun das nutzen einer Datenbank nur wegen des vermeintlich niedrigerem Lernaufwands immer vorzuziehen ist wage ich zu bezweifeln.

          Er soll Datenbanken nutzen wenn er sie braucht. Wenn es sowieso nur um ein bischen Text geht wird IMHO mit Kanonen auf Spatzen geschossen.

          Grüße
          Jeena Paradies

          1. Nämlich wenn er einzelne Einträge löschen/bearbeiten will oder die Einträge zu viele werden.
            Oder wenn er z.B. sein Design ändern will, ohne dabei die Inhalte zu verlieren usw...
            Ähm irgendwie erkenne ich jetzt nicht den vorteil einer Datenbank darin.

            Nicht? Was macht er, wenn er über 100 Einträge beisammen hat? Bei einer Datenbank kann er problemlos immmer 20 Datensätze häppchenweise ausgeben. Wenn er eine Datei hat, wo alles aneinanderhängt, kann er das nicht, er hat ja nichtmal eine eindeutige Trennung zwischen den einzelnen News.
            Will er die News bearbeiten, muss er sich plötzlich durch hunderte Zeilen HTML Quelltext wälzen, bis er die richtige Stelle gefunden hat.
            Will er das Design ändern, muss er jeden Newseintrag komplett umschreiben...

            Er soll Datenbanken nutzen wenn er sie braucht. Wenn es sowieso nur um ein bischen Text geht wird IMHO mit Kanonen auf Spatzen geschossen.

            Auch wenn der Text noch so gering ist, sobald er eine Art Artikel-Gliederung besitzt, lohnt sich die Datenbank. Und wie er selbst sagt, lernt er, es wird sicher nicht bei dem "bisschen Text" bleiben.

            Übrigends bin ich nicht der Meinung dass man den Umgang mit der Datenbank einfacher erlernt, im Gegenteil, aber wenn man es beherrscht ist die Problemlösung einfach komfortabler.

            greetz RFZ

            1. Hallo,

              Nicht? Was macht er, wenn er über 100 Einträge beisammen hat?

              Dann hat er einfach 100 Zeilen in seiner Datei, wo ist das Problem?

              Bei einer Datenbank kann er problemlos immmer 20 Datensätze häppchenweise ausgeben.

              Wo ist da der Unterschied zu einer Datei? Warum sollter er das mit einer Datei nicht machen können?

              Wenn er eine Datei hat, wo alles aneinanderhängt, kann er das nicht, er hat ja nichtmal eine eindeutige Trennung zwischen den einzelnen News.

              So weit ich das verstehe ist eine news eine Zeile in der Datei.

              Will er die News bearbeiten, muss er sich plötzlich durch hunderte Zeilen HTML Quelltext wälzen, bis er die richtige Stelle gefunden hat.

              Wer sagt denn dass er da überhaupt HTML drinn hat? Wenn er die News bearbeiten will dann wird er sich schon ein User Interface basteln, dem UI ist es dann egal ob da jetzt die Daten von der DB kommen oder von einem Flatfile.

              Will er das Design ändern, muss er jeden Newseintrag komplett umschreiben...

              Warum sollte er? Wo ist da der Unterschied zwischen einer Datenbank und einem Flatfile? Hier im Forum wird alle paar Monate das Design geändert (wenn auch meist nur unter der Haube) und trotzdem/dennoch/gerade deshalb funktioniert es über Dateien (wobei das hier natürlich stark vereinfacht dargestellt ist).

              Auch wenn der Text noch so gering ist, sobald er eine Art Artikel-Gliederung besitzt, lohnt sich die Datenbank.

              Eine Artikel-Gliederung, was meinst du damit? Warum sollte man diese Information nicht auch in die Datei schreiben können?

              Und wie er selbst sagt, lernt er, es wird sicher nicht bei dem "bisschen Text" bleiben.

              Wie gesagt, dieses Forum hier hat bestimmt auch mehr als ein "bisschen Text" und es funktioniert wirklich prima.

              Grüße
              Jeena Paradies

              1. So weit ich das verstehe ist eine news eine Zeile in der Datei.

                Um das jetz abzukürzen, weil die Antwort so ziemlich jede deiner Feststellungen betrifft:

                a) sag er, er baut die Datei via include() ein. Wenn also seine News nicht als ein zusammenhängender Textblock angezeigt werden sollen, hat er wohl HTML drin verwendet

                b) er sagt er hätte es bereits via \r\n aufgeteilt und die Reihenfolge vertauscht, worauf hin alles völlig durcheinander war. Daraus folgere ich dass auch deine Texte selbst Zeilenumbrüche enthalten, und daher besteht auch keine Trennung der News

                Somit ist deine Argumentation (die in dem von Dir angenommenen Fall völlig korrekt war) leider nicht anwendbar :)

                greetz RFZ

              2. Wie gesagt, dieses Forum hier hat bestimmt auch mehr als ein "bisschen Text" und es funktioniert wirklich prima.

                Dieses Forum arbeitet nur über Textdateien? Prinzipiell kein Problem, aber ich glaub es trotzdem nicht.

                Allein die Suchfunktion ist ein deutliches Indiz dagegen. Alle Dateien hier zu durchsuchen wäre innerhalb von weniger als einer Sekunde nicht möglich. Daher muss zwangsweise ein Text-Index mit allen hier vorkommenden Wörtern erstellt worden sein.
                Das selbst manuell zu machen ist möglich, aber nicht gerade einfach, warum sollte man sich die Arbeit machen, wenn jede Datenbank selbst schon solche Such-Index bietet?

  2. Hallo Ingo!

    Irgendwie schaue ich richtig neidisch auf das Forum hier, werden doch die neuesten beiträge immer schön nach oben geschoben...

    Bei mir nicht.
    Dank meiner Usereinstellungen werden die neuesten Beiträge immer ordentlich unten angefügt, wie sich das gehört. ;)

    Und ich kann mir nicht vorstellen, dass ich der einzige bin, der die ach so verbreitete anti-chronologische Sortierung (neueste Einträge oben) nicht mag.

    Damit möchte ich sagen: Vergiss bitte nicht, dass es auch etliche Leute gibt, die genau diese Sortierung, wie sie sich bei dir ergibt, für gut und richtig halten.

    So long,

    Martin

    1. Hallo Martin.

      Und ich kann mir nicht vorstellen, dass ich der einzige bin, der die ach so verbreitete anti-chronologische Sortierung (neueste Einträge oben) nicht mag.

      Zumindest ich mag es sehr, wenn die neuesten Beiträge nach oben wandern, da ich dadurch recht wenig scrollen muss.
      Auch finde ich diese Sortierung viel intuitiver, da einfach von News-Seiten gewohnt; das Neueste dorthin, wo ich zuerst suche--oben.

      Damit möchte ich sagen: Vergiss bitte nicht, dass es auch etliche Leute gibt, die genau diese Sortierung, wie sie sich bei dir ergibt, für gut und richtig halten.

      Eben, ist sowieso alles eine Sache der Ansicht und Vorlieben. ;-)

      Gruß, Ashura

      --
      Selfcode: sh:( fo:) ch:? rl:( br:^ n4:& ie:{ mo:) va:) de:> zu:) fl:( ss:| ls:[ js:|
      30 Days to becoming an Opera8 Lover -- Day 19: Notes
      Meine Browser: Opera 8.01 | Firefox 1.0.4 | Lynx 2.8.3 | Netscape 4.7 | IE 6.0
      [Deshalb frei! - Argumente pro freie Software]
      1. Moin!

        Zumindest ich mag es sehr, wenn die neuesten Beiträge nach oben wandern, da ich dadurch recht wenig scrollen muss.
        Auch finde ich diese Sortierung viel intuitiver, da einfach von News-Seiten gewohnt; das Neueste dorthin, wo ich zuerst suche--oben.

        Nö, auch da stört es mich, und wenn möglich, lasse ich umsortieren. Denn meistens suche ich in solchen Listen nicht direkt das Neueste, sondern eine zeitliche Abfolge von Beiträgen. Anderes typisches Beispiel: Die Revision History von Programmen. Da möchte ich fortlaufend lesen können, wann welche Features realisiert wurden. Und dabei kommt es mir widersinnig vor, wenn ich von unten nach oben lesen soll.
        Und hier im Forum ist es schließlich so, dass die einzelnen Postings gelegentlich Querverweise zueinander haben (und sei es nur indirekt, etwa mit der Bemerkung "das hat xy schon in einem früheren Posting behauptet"), und dadurch ergibt sich zwingend ein Zeitbezug untereinander.
        Im Fahrtenbuch unserer Firmenwagen steht schließlich auch der letzte Eintrag irgendwo hinten, und die dazwischen in chronologisch positiver Reihenfolge. Bloß dass das Fahrtenbuch - im Gegensatz z.B. zum Mailclient - nicht automatisch zum letzten Eintrag scrollt. ;)

        Nur in einer Liste, deren Einträge sowieso keinen zeitlichen Bezug zueinander haben, ist mir die Sortierung egal. Da kann meinetwegen auch der neueste Eintrag oben stehen.

        Eben, ist sowieso alles eine Sache der Ansicht und Vorlieben. ;-)

        Ja, und solange das Verhalten der Software einstellbar ist, kann jeder mit seiner Vorliebe glücklich werden. Und alle freuten sich und gingen wieder nach Hause. *g*

        Schönes WE,

        Martin