Problem bei Zeilenwechsel !?

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

  • Problem bei Zeilenwechsel !?

    Hallo...
    Ich habe jetzt ein Gästebuch, dass die Einträge so in eine .txt Datei speichert:

    PHP-Code:
    <?     $datensatz = $datum."|".$datuma."|".$teilnehmername."|".$email."|".$homepage."|".$text."\n"; ?>
    Und das Problem ist, dass wenn man einen neuen Eintrag schreibt und in diesem Eintrag eine Zeile runter geht (also die Enter-Taste drückt), dann speichert es die Formatierung in die .txt Datei mit und verursacht ein riesen durcheinander!Wie kann man dieses Problem beheben?
    Danke schon zum voraus für eure Hilfe....
    Gruss
    Adihas

  • #2
    nl2br()
    Beantworte nie Threads mit mehr als 15 followups...
    Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

    Kommentar


    • #3
      Was muss ich mit diesem Befehl (?) machen?
      Gruss
      Adihas

      Kommentar


      • #4
        ... ins PHP Handbuch gucken

        oder z.B.

        PHP-Code:
        $text nl2br($text); 
        Kissolino.com

        Kommentar


        • #5
          Geht nicht so recht, hat nix geändert....:-(

          Kommentar


          • #6
            Es geht garnichts bei mir, es zeigt 2 Fehler beim speichern eines neuen Eintrages an (es geht aber schon, nur kommen so blöde fehlermeldungen):

            Warning: fputs(): supplied argument is not a valid stream resource in /home/webmaste/public_html/GB-4/guestbook.php on line 98

            -----------------------------------------------------------------------------------------
            und:
            -----------------------------------------------------------------------------------------

            Warning: fclose(): supplied argument is not a valid stream resource in /home/webmaste/public_html/GB-4/guestbook.php on line 100


            Was bedeuten diese Meldungen?
            Und kann mir jemand sagen, wie ich es schaffe, dass es alles in einer Zeile in der .txt Datei speichert?

            Vielen Dank...
            Gruss
            Adihas

            Kommentar


            • #7
              poste mal den code,

              gruss wurzel
              Kissolino.com

              Kommentar


              • #8
                Hier der Code (Ist alles in einer Datei gespeichert, muss ihn dann besser ordnen, wenn es mal geht):
                PHP-Code:
                <?php


                echo "<a href=\"$PHP_SELF?eintragen=1\">Eintrag hinzufügen</a>";


                $datum date("d.m.y");
                $datuma date("H:i");
                //schreiben
                if(isset($text) && $text <> "")
                {
                $email htmlentities($email);
                $teilnehmername htmlentities($teilnehmername);
                $text htmlentities($text);
                $homepage htmlentities($homepage);

                    
                // Zeichen werden ersetzt und umgewandelt
                    
                $text scode($text);



                    
                // Zeichen werden ersetzt und umgewandelt
                    
                $text BBcode($text);


                    
                // Zeichen werden ersetzt und ind Smiles umgewandelt
                    
                $text emotion($text);

                    
                // Festlegen der Dateien
                    
                $file "eintraege.txt";
                    
                $aktuelltemplate "config/template.dat";

                    
                // Auslesen der dat file um herauszufinden, welche Vorlage momentan verwendet wird.
                    
                $templatevorlage fread(fopen($aktuelltemplate,"r"),filesize($aktuelltemplate));

                    
                $template fread(fopen("config/".$templatevorlage,"r"),filesize("config/".$templatevorlage));
                    
                fclose(fopen("config/".$templatevorlage,"r"));
                    
                $datensatz file($file);



                //Umwandlung
                for($i=0;$i<count($badword);$i++)
                     {
                         
                $x "";
                         for(
                $j=0;$j<strlen($badword[$i]);$j++)
                             
                $x .= "*";
                         
                $text ereg_replace($badword[$i],$x,$text);
                     }

                  
                $text wordwrap$text50" "1);
                  
                $homepage wordwrap$homepage50"\n"1);
                  
                $teilnehmername wordwrap$teilnehmername30"\n"1);


                $trenner    "";    // Trennt die URL "Zeichen" 

                if (strlen($teilnehmername)) { 
                  
                $teilnehmername1 explode("|&|",chunk_split($teilnehmername,"$start","|&|"));  
                  
                $teilnehmername1n $teilnehmername1[0]; 
                  
                $teilnehmername $teilnehmername1n "$trenner"






                    
                // Zusammenfügen 
                    
                $datensatz $datum."|".$datuma."|".$teilnehmername."|".$email."|".$homepage."|".$text."\n";

                    
                    
                $fileopen fopen($file,"a+");

                        
                fputs($fileopen,$datensatz);

                    
                fclose($fileopen);


                    
                // Datei öffnen (für Tempate festzulegen
                    
                $fileopen fopen($temp,"w+");
                    
                $text nl2br($text);

                            
                fputs($fileopen,$template);

                    
                fclose($fileopen);

                    
                sleep(1);

                    echo 
                "<html>";
                    echo 
                "<meta http-equiv=refresh content=3;url=guestbook.php?page=1>";
                    echo 
                "<h1>Vielen Dank für den Eintrag in meinem Gästebuch...</h1>";
                    echo 
                "Falls Sie nicht in wenigen Sekunden weitergeleitet werden,
                          drücken Sie bitte <a href=\"guestbook.php?page=1\" class=link>hier</a>"
                ;
                    echo 
                "</html>";

                 
                   
                mail("$mastermail""neuer Gästebucheintrag""$teilnehmername hat folgender Eintrag ins Gästebuch geschrieben:\n$text \n E-Mail: $email \n Homepage: $homepage ");
                 }




                //Eintrageformular
                if($eintragen == "1")
                {
                echo 
                "<form method=\"POST\" name=\"guestbook\" onSubmit=\"return check()\">";
                echo 
                "<p>&nbsp;</p>";
                echo 
                "<div align=\"center\"><center><table border=\"1\" cellpadding=\"3\" width=\"62%\" bordercolor=\"#C0C0C0\" bordercolorlight=\"#C0C0C0\">";
                echo 
                "<tr>";
                echo 
                "<td width=\"50%\"><strong><font face=\"Arial\">Name: <input type=\"text\" name=\"teilnehmername\" size=\"20\"></font></strong></td>";
                echo 
                "<td width=\"50%\"><strong><font face=\"Arial\">E-mail:<input type=\"text\" name=\"email\" size=\"20\"></font></strong></td>";
                echo 
                "</tr>";
                echo 
                "<tr>";
                echo 
                "<td width=\"100%\" colspan=\"2\"><div align=\"center\"><center><p><font face=\"Arial\"><strong>Homepage:</strong><small><input type=\"text\" name=\"homepage\" size=\"20\">(ohne [url]http://[/url])</small></font></td>";
                echo 
                "</tr>";
                echo 
                "<tr align=\"center\">";
                echo 
                "<td width=\"100%\" colspan=\"2\"><div align=\"center\"><center><p><font face=\"Arial\"><strong>Nachricht:</strong><br>";
                echo 
                "<textarea rows=\"5\" name=\"text\" cols=\"49\"></textarea><br><font class=\"stn\"><a href=\"#\" onClick=\"window.open('grafik/smiles.htm', 'fenster','toolbar=no,status=no,menubar=no,scrollbars=yes,width=400,height=600')\">Smiles</a> | <a href=\"#\" onClick=\"window.open('grafik/bbcode.htm', 'fenster','toolbar=no,status=no,menubar=no,scrollbars=yes,width=400,height=600')\">BB-Code</a></p><br>";
                echo 
                "<br>";
                echo 
                "<input type=\"submit\" value=\"eintragen\" style=\"font-weight: bold;  border-top-color : #7F99B2; border-right-color : #7F99B2; border-bottom-color : #7F99B2;  border-left-color : #7F99B2;\"><input type=\"reset\" value=\"löschen\" style=\"font-weight: bold;  border-top-color : #7F99B2; border-right-color : #7F99B2; border-bottom-color : #7F99B2;  border-left-color : #7F99B2;\"></font></td>";
                echo 
                "</tr>";
                echo 
                "</table>";
                echo 
                "</center></div>";
                echo 
                "</form>";

                }

                //Lesen
                    // Festlegen der Dateien
                    
                $file "eintraege.txt";
                    
                $aktuelltemplate "config/template.dat";

                    
                // Auslesen der dat file um herauszufinden, welche Vorlage momentan verwendet wird.
                    
                $templatevorlage fread(fopen($aktuelltemplate,"r"),filesize($aktuelltemplate));

                    
                $template fread(fopen("config/".$templatevorlage,"r"),filesize("config/".$templatevorlage));
                    
                fclose(fopen("config/".$templatevorlage,"r"));
                    
                $datensatz file($file);


                    
                // Daten für die Seitenanzahl und wieviel Datensätze ausgegeben werden sollen
                    
                $max 10;
                    
                $linkanzahl count($datensatz)/$max;
                    
                $startwert = ($page*$max-$max);
                    
                $endwert = ($page*$max);

                    
                $datensatz array_reverse($datensatz);


                    for(
                $i=$startwert;$i<$endwert;$i++)
                    {

                        if(
                $datensatz[$i] != "")
                        {
                        
                // Aufteilen/Splitten an dem Zeichen |
                        
                list($datum,$datuma,$teilnehmername,$email,$homepage,$text) = explode("|",$datensatz[$i]);

                        
                // Ersetzen von verschiedenen Zeichen
                        
                $text str_replace("<10>",chr(10),$text);
                        
                $text str_replace("\n"," ",$text);


                        
                $view str_replace("%DATUM%",$datum,$template);
                        
                $view str_replace("%UHRZEIT%",$datuma,$view);
                        
                $view str_replace("%NAME%",$teilnehmername,$view);
                        
                $view str_replace("%EMAILADRESSE%",$email,$view);
                        
                $view str_replace("%HOMEPAGE%",$homepage,$view);
                        
                $view str_replace("%MESSAGE%",$text,$view);

                        echo 
                $view;
                        }
                    }


                        echo 
                "<div align=\"center\">";
                        echo 
                "Seite:";

                    
                $seite 1;
                    for(
                $x=0;$x<$linkanzahl;$x++)
                    {
                        echo 
                "";
                        echo 
                "<a href=\"guestbook.php?page=$seite\" class=\"link\">$seite</a>\n";
                        
                $seite $seite 1;
                    }
                        echo 
                "</div>";
                ?>


                Was ist daran so falsch?

                Kommentar


                • #9
                  Warning: fputs(): supplied argument is not a valid stream resource in /home/webmaste/public_html/GB-4/guestbook.php on line 98[/B]
                  das bedeutet, dass der zeiger auf die datei in die du schreiben willst nicht existiert, was wiederum bedeutet, dass das öffnen der datei nicht geklappt zu haben scheint...

                  (es geht aber schon, nur kommen so blöde fehlermeldungen)
                  das kann eigentlich nicht sein.
                  wenn das öffnen der datei nicht geklappt hat, kannst du auch nix reinschreiben.
                  I don't believe in rebirth. Actually, I never did in my whole lives.

                  Kommentar


                  • #10
                    es geht aber!Ich kann mich eintragen, es geht immer!Es ist so...

                    Kommentar


                    • #11
                      tach,

                      fangen wir mal vorne an (Zeilenumbrüche)

                      Mit wordwrap() kann man innerhalb eines Strings (str) unter Angabe des
                      optionalen Trennzeichens (break) nach einer bestimmten Länge (width)
                      umbrechen.
                      Werden die optionalen Parameter width und break nicht angegeben, so umbricht
                      diese Funktion automatisch nach 75 Zeichen mit dem Trennzeichen "\n" die
                      Zeichenkette.
                      Mit dem optionalen Parameter cut kann man erzwingen (wenn er auf 1 gesetzt
                      wird), dass exakt nach der vorgegebenen Länge (auch wenn das Wort länger ist)
                      umbrochen wird (siehe zweites Beispiel).
                      damit packst du dir offensichtlich jede Menge "\n" in deine texte.
                      macht aber nix, wenn du hier

                      PHP-Code:
                      // Zusammenfügen 
                          
                      $datensatz $datum."|".$datuma."|".$teilnehmername."|".$email."|".$homepage."|".$text
                      das schreibst

                      PHP-Code:
                      // Zusammenfügen 
                          
                      $datensatz $datum."|".$datuma."|".$teilnehmername."|".$email."|".$homepage."|".$text."\n";
                      $datensatz nl2br($datensatz);
                      $datensatz .= "\n"
                      damit sollte jetzt erst mal alles in einer zeile eingetragen werden.

                      so, und um die anderen fehler können wir uns immer noch kümmern.

                      wurzel
                      Kissolino.com

                      Kommentar


                      • #12
                        Es geht leider auch so immernoch nicht, es speichert den Text Formatiert in die txt Datei, also wenn man z.B. so etwas als Text schreibt:
                        1.Zeile
                        2.Zeile

                        So wird das auch so in der txt Datei gespeichert, wie kann man das ändern?

                        Kommentar


                        • #13
                          Hallo?
                          Kann mir denn niemand helfen?
                          Ich will doch nur, dass es die GB-Einträge in einer Zeile speichert, auch wenn man einen Zeilenumbruch macht.wer kann mir helfen?
                          Gruss Adihas

                          Kommentar


                          • #14
                            hoi,

                            du könntest es ma mit ----> \r\n probira wenn du win hast

                            gruss micha

                            Kommentar


                            • #15
                              Was muss ich denn mit dem tun?Komme nicht so draus...

                              Kommentar

                              Lädt...
                              X