Problem mit meinem News Script

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Problem mit meinem News Script

    Hallo,

    um zur Sache zu kommen:
    Hab ein kleines News-Script gebastelt, funktioniert auch, nur hier jetzt mein kosmetisches Problem.

    Die News werden in einer Textdatei geschrieben, das sieht dann in etwa so aus:
    --------------------------------------------------------
    News 1:
    blablablablabalbalablabalbalblablaalbalbalba
    balablablablabalbalbl
    ---------------------------------------------------------
    Dann schreibe ich die zweite News und dann sieht es so aus:
    ---------------------------------------------------------
    News 1+2:
    blabababalbalbalbabbalbalbalbalablabalbalba
    balablablablabbalbalba

    balbalablablab
    balalablabalbalbalablablblbalbalbalbal
    ----------------------------------------------------------
    Dann schreibe ich die dritte News und dann siehst so aus:
    ----------------------------------------------------------
    News 1+2+3:
    babalalablablbaba allblablablabalbalbalbalbalbl
    balablablablabalbal


    balbalablablablablablablabalba
    lbalbalbalbalabal



    nblablablabalbalbalbalblabalbalba
    abalbalbalbalbalba
    -------------------------------------------------------------
    Also wie ihr erkennen könnt wird der Abstand zu den älteren News immer größer in der Textdatei, das bläht die Textdatei sowie die index.php schön unnötig auf bzw. sieht das dann auch grausam aus wenn man sich den Quelltext anschaut.

    Der Code:
    PHP-Code:
    include ("config.php");

    function 
    strtoentity($mstr) {
    $mstr strtolower($mstr);
    $estr "";
    for (
    $i=0$i strlen($mstr); $i++) {
    $schr substr($mstr$i1);
    if (
    ord($schr) > 113) {
    $estr .= $schr;
    } elseif (
    ord($schr) > 104) {
    $estr .= sprintf("&#%u;"ord($schr));
    } else {
    $estr .= sprintf("&#x%x;"ord($schr));
    };
    };
    return 
    $estr;
    };
    $filename 'news.txt';
    $date date("d.m.Y");
    $name $_POST["name"];
    $email $_POST["email"];
    $title $_POST["title"];
    $news $_POST["news"];
    $pass $_POST["password"];
    if (
    $password == $pass)
    {
    $file file_get_contents($filename);
    $fp fopen($filename"w");
    $email2 strtoentity($email);
    $news nl2br($news);
    $news str_replace("\r\n"""$news);
    fwrite($fp"<p class=\"$style1\">$title<span class=\"$style3\"> geschrieben von:</span> <a href=\"mailto:$email2\">$name</a><span class=\"$style3\"> am:</span> $date</p>\n<p class=\"$style2\">$news</p>");
     
    fwrite($fp$file);

    fclose($fp);

    ?> 
    Wie bekomme ich es hin das jede News schön als Block in die Textdatei geschrieben wird, also in etwa so:

    1News
    nnnnnnnnnnnnnnnnnnnnnnnnnnnnnn
    nnnnnnnnnnnnnnnnnnnnnn
    nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn

    1+2News
    nnnnnnnnnnnnnnnnnnnnnnnnnnnnnn
    nnnnnnnnnnnnnnnnnnnnnn
    nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn

    nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn
    nnnnnnnnnnn
    nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn

    1+2+3News
    nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn
    nnnnnnnnnnnnnnnnnnnnnnnnnn
    nnnnnnnnnnnnnn

    nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn
    nnnnnnnnnnnnnnnnnnnnnnnnnn
    nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn

    nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn
    nnnnnnnnnnnnnnnnnnnnnnnnn
    nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn

    Also das immer nur EINE Leerzeile zwischen den News
    ist oder halt garkeine, soll aber auch nicht alles in einer Zeile geschriebn weren, soweit war ich schon ist auch nicht schön.
    Kann mir jemand helfen?

    Thnx

  • #2
    mal ne frage vorweg... stehen die daten wirklich so in deiner Textdatei ??

    also so:
    1. News

    1.+2. News

    1.+2.+3. News

    ??

    mach mal fopen("file.txt", "a");
    dann biste schon am ende der datei

    Kommentar


    • #3
      Original geschrieben von MoRtAlAn
      mal ne frage vorweg... stehen die daten wirklich so in deiner Textdatei ??

      also so:
      1. News

      1.+2. News

      1.+2.+3. News

      ??

      mach mal fopen("file.txt", "a");
      dann biste schon am ende der datei
      Nein, verstehst nicht ;-)
      Die News schreibe ich in in einem Formular, diese gehen durch mein Script
      welches diese dann in eine Textdate schreibt.
      Das Problem jetzt, jede neue News macht eine Leerzeile mehr, wobei die
      neu geschriebene News immer korrekt an den Anfang der Textdatei geschrieben wird aber die alten jedesmal eine Leerzeile mehr haben, also schreiben ich 10 News werden die Leerzeilen immer größer, heisst, sagen wir mal ich habe 10 News in der Textdatei drin, dann sieht die Datei so aus.

      ||||||||||||||||||||||||||||||||||||
      ||||||||||||||||||||||||||||||||||||


      ||||||||||||||||||||||||||||||||||||



      |||||||||||||||||||||||||||||||||




      |||||||||||||||||||||||||||||||||||||||||







      |||||||||||||||||||||||||||||||||||


      Die Leerzeilen werden immer größer, es scheint mir das dass Script bei
      den vorhandenen News in der Textdatei bei schreiben einer neuen immer
      wieder den äleren auch noch zusätlich eine Leerzeile verpasst, wie kriege ich das weg? so das der Text in dieser Textdatei ordentlich aussieht?
      Ordentlich wird immer nur die neuste News ion die Textdatei geschrieben, also immer die die an den Anfang der Textdatei geschrieben wird.

      Kommentar


      • #4
        Problem gelösst, das war mein Freund:

        PHP-Code:
        $news ereg_replace("\r\n"""$news); 

        Kommentar

        Lädt...
        X