umlaute werden nicht gespeichert

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

  • umlaute werden nicht gespeichert

    Hi!

    ich hab ein Gästebuch ohne mysql-datenbank.
    beim absenden des eintrags werden die Informationen in einer textdatei
    gespeichert.

    nun hab ich das problem, dass eingegebene Umlaute (ä,ü,ö) nicht in der datei gespeichert werden.

    Der Kommentar der Gästebucheintrags ist in der varialben $_POST["comment"]; gespeichert.

    wie komm ich an die umlaute!?!?

    Gruß

    karibikjoe

  • #2
    sollten sie aber

    stehen sie in$_POST['comment'] drin?

    schonmal mit htmlentities probiert?
    Ich denke, also bin ich. - Einige sind trotzdem...

    Kommentar


    • #3
      moment, ich teste mal durch!

      Kommentar


      • #4
        Hi!

        bin leider nicht weitergekommen mit meinen Versuchen.
        Ich zeig euch mal den Code.


        PHP-Code:

        <?php
        // If you are using an old version of php, remove the next set of lines.
        // or use $HTTP_POST_VARS["..."] instead.
        $Submit     $_POST["Submit"];
        $Name         $_POST["Name"];
        $Email         $_POST["Email"];
        $Website     $_POST["Website"];
        $Comments     $_POST["Comments"];
        $NumLow     $_REQUEST["NumLow"];
        $NumHigh     $_REQUEST["NumHigh"];

        // Replace special characters - you can remove the next 5 lines if wanted.
        $Name         ereg_replace("[^A-Za-z0-9 \-\']"""$Name);
        $Email         ereg_replace("[^A-Za-z0-9 \@\.\_\-\/\']"""$Email);
        $Comments    ereg_replace("[^A-Za-z0-9 \@\-\?\!\:\_\,\(\)\.\']"""$Comments);
        $Website     eregi_replace("http://"""$Website);
        $Website     ereg_replace("[^A-Za-z0-9 \@\.\-\/\'\~\:]"""$Website);

        // Remove slashes.
        $Name         stripslashes($Name);
        $Email         stripslashes($Email);
        $Website     stripslashes($Website);
        $Comments     stripslashes($Comments);

        // ################################################
        ###################################

        // ########## Reading and Writing the new data to the GuestBook 
        Database #############

        if ($Submit == "Yes") {
        // Next line tells the script which Text file to open.
            
        $filename     "GuestBook.txt";

        // Opens up the file declared above for reading 

            
        $fp         fopen$filename,"r"); 
            
        $OldData     fread($fp80000); 
            
        fclose$fp ); 

        // Gets the current Date of when the entry was submitted
            
        $Today         = (date ("d.m.Y",time()));

        // Puts the recently added data into html format that can be read into the 
        Flash Movie.
        // You can change this up and add additional html formating to this area.  
        For a complete listing of all html tags
        // you can use in flash - visit: [url]http://www.macromedia.com/support/flash/ts/documents/htmltext.htm[/url]


            
        $Input "<font color=\"#990000\"><a 
        href=\"mailto:
        $Email\">$Name</a> am $Today</font><font 
        color=\"#000000\"> - 
        $Comments</font><br><br>.:::.";

        /* This Line adds the '&GuestBook=' part to the front of the data that is stored in the text file.  This is important because without this the Flash movie would not be able to assign the variable 'GuestBook' to the value that is located in this text file  */

            
        $New "$Input$OldData";        
                
        // Opens and writes the file.

            
        $fp fopen$filename,"w"); 
            if(!
        $fp) die("&GuestBook=fehler: kann folgende datei nicht beschreiben: $filename&");
            
        fwrite($fp$New800000); 
            
        fclose$fp ); 
        }

        // ################################################
        ###################################
        // ######### Formatting and Printing the Data from the Guestbook to the Flash Movie ##



        // Next line tells the script which Text file to open.
            
        $filename "GuestBook.txt";

        // Opens up the file declared above for reading 

            
        $fp     fopen$filename,"r"); 
            
        $Data     fread($fp800000); 
            
        fclose$fp );

        // Splits the Old data into an array anytime it finds the pattern .:::.
            
        $DataArray split (".:::."$Data);

        // Counts the Number of entries in the GuestBook
            
        $NumEntries count($DataArray) - 1;

            print 
        "&TotalEntries=$NumEntries&NumLow=$NumLow&NumHigh=$NumHigh&GuestBook=";
            for (
        $n $NumLow$n $NumHigh$n++) {
            print 
        $DataArray[$n];
                if (!
        $DataArray[$n]) {
                    Print 
        "<br><br><b>No More entries</b>";
                exit;
                }
            }
        ?>
        hab mal die variable $_POST["Comments"]; als htmlentities definiert, hat aber auch nichts geholfen!?!??!


        Woran kann es liegen, dass keine Umlaute dargestellt werden?!

        Kommentar


        • #5
          welche fragen bleiben denn noch offen, wenn man verstanden hat was folgender code macht ...?
          PHP-Code:
          // Replace special characters - you can remove the next 5 lines if wanted.
          $Name         ereg_replace("[^A-Za-z0-9 -']"""$Name);
          $Email         ereg_replace("[^A-Za-z0-9 @._-/']"""$Email);
          $Comments    ereg_replace("[^A-Za-z0-9 @-?!:_,().']"""$Comments);
          $Website     eregi_replace("http://"""$Website);
          $Website     ereg_replace("[^A-Za-z0-9 @.-/'~:]"""$Website); 
          jedes zeichen, was nicht in der aufzählung A-Za-z0-9 @-?!:_,(). vorkommt, wird durch "" ersetzt - noch fragen?


          "ich brauch keinen code verstehen, ich kann ja copy&paste."
          I don't believe in rebirth. Actually, I never did in my whole lives.

          Kommentar


          • #6
            danke!!!

            das hat mir schon sehr weitergeholfen!

            hab jetzt mal so gemacht, funzt auch super!!
            PHP-Code:
            $Comments    eregi_replace("A""a"$Comments); 
            wie kann ich jetzt da eine aufzählung einbauen!?
            ...alle Großbuchstaben durch kleinbuchstaben ersetzen...!!!?

            weiss nicht, mit welchem zeichen die einzelnen zeichen getrennt werden müssen!!? Kennt PHP das "-" Zeichen als "bis"? Also A - Z!?

            Kommentar


            • #7
              Original geschrieben von karibikjoe
              ...alle Großbuchstaben durch kleinbuchstaben ersetzen...!!!?
              dafür nimmst du am besten gleich strtolower(), anstatt mit aufwendigen regex über's ziel hinauszuschiessen.
              I don't believe in rebirth. Actually, I never did in my whole lives.

              Kommentar

              Lädt...
              X