Umlaute Korrigieren

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

  • Umlaute Korrigieren

    ich habe folgendses problem ich möchte, wenn im formular umlaute eingegeben werden diese automatisch, umwandeln und umgewandet in die datenbank schreiben,

    aber wie mach ich das, bzw wo muss ich das hinschreiben ?

    ('Ö', 'Ö' , $message);
    ('ö', 'ö' , $message);
    ('Ä', 'Ä' , $message);
    ('ä', 'ä' , $message);
    ('Ü', 'Ü' , $message);
    ('ü', 'ü' , $message);

    muss ich jedes feld einzeln abfragen, oder kann ich das als globale einstellung machen, gehts einfacher in der datenbank ??

    hab nicht besonders viel erfahrung mit php und mach das nur hin und wieder, bin für jeden tipp dankbar

    danke schon mal im vorraus

    hier mein biheriger code:

    <?php
    if($_POST['flag']==-1)
    {
    $_POST['absender']=trim($_POST['absender']);
    $_POST['betreff']=trim($_POST['betreff']);
    $_POST['message']=trim($_POST['message']);
    $_POST['absender']=strip_tags($_POST['absender']);
    $_POST['betreff']=strip_tags($_POST['betreff']);
    $_POST['message']=strip_tags($_POST['message']);
    if(!$_POST['absender'])
    {
    $fehler.="Bitte geben Sie Ihren NAMEN ein.<br>";
    }
    if(!$_POST['betreff'])
    {
    $fehler.="Bitte geben Sie einen BETREFF an.<br>";
    }
    if(!$_POST['message'])
    {
    $fehler.="Bitte geben Sie eine Nachricht ein.<br>";

    }
    if($fehler)
    {
    $meldung="<h2><font color=Red>".$fehler."</font><h2>";
    unset($_POST['flag']);
    }
    else
    {

    $tabellenname="gastbuch";
    $sql="INSERT INTO $tabellenname (absender, betreff, message, datum) values ('".$_POST['absender']."', '".$_POST['betreff']."', '".$_POST['message']."', now())";
    $dbh = mysql_connect("localhost", "USER", "PASSWORT");
    $query ="DATENBANK";
    mysql_select_db($query, $dbh) or die("Shit ! NO Connect !!");
    mysql_query($sql, $dbh) or die("Fehler beim Speichern");
    $meldung="<h2><center><font color=Blue>Vielen Dank<br>Ihre Nachricht wurde gespeichert<br> und wird in kürze auf unserer Webseite eingetragen</font></center></h2>";
    }
    echo $meldung;
    }
    if(!$_POST['flag'])
    {
    ?>
    <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
    <input type="hidden" name="flag" value="-1">
    <p>Ihr NAME:<br>
    <input type="text" name="absender" value="<?php echo
    $_POST['absender']; ?>"></p>
    <p>Betreff:<br>
    <input type="text" name="betreff" value="<?php echo $_POST['betreff'];
    ?>"></p>
    <p>Nachricht:<br>
    <textarea cols="50" rows="10" name="message">
    <?php echo $_POST['message']; ?>
    </textarea>
    <br><br><br>
    <input type="submit" value="Eintrag Senden">
    </form>
    <?php
    }
    ?>
    ärger deinen Chef so lange es geht, den wenn du gekündigt bist ist es zu Spät.

  • #2
    Da wo du die Daten in die Datenbank schreibst (utf8_encode hilft evtl.)?
    PHP-Code:
    "... ('".$_POST['absender']."', '".$_POST['betreff']."', '".$_POST['message'] ...)"; 
    Die Regeln | rtfm | register_globals | strings | SQL-Injections | [COLOR=silver][[/COLOR][COLOR=royalblue]–[/COLOR][COLOR=silver]][/COLOR]

    Kommentar


    • #3
      str_replace() müsste helfen.
      www.php.net/str_replace

      Kommentar


      • #4
        Du möchtest dich über SQL-Injektion informieren und die PHP-Tags des Forums nutzen!
        Warum möchtest du diese Ersetzung durchführen? Und vielleicht ist ja ein Blich auf htmlentities eine Hilfe!

        Kommentar


        • #5
          danke für die schnellen tipps, problem gelöst,
          ärger deinen Chef so lange es geht, den wenn du gekündigt bist ist es zu Spät.

          Kommentar

          Lädt...
          X