Immer noch Umlautproblem

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

  • Immer noch Umlautproblem

    Hallo Leute nochmal
    ich bin leicht an verzweifeln vielleicht kann mir einer helfen!
    Ich habe eine PHP seite die aus einer Datenbank die gewünschten Datensätze abfragen soll. Nachdem (durch Formulareingabe) das
    geschehen ist sollen bestimmte Details aus diesem Datensatz angezeigt werden und das geschieht auch nur
    erscheinen alle meine Umlaute in den Daten kriptisch (z.b. Ÿ) ich habe dazu folgenden Code programmiert:

    PHP-Code:
    echo "<table border=0 cellspacing= 1 cellpadding=5 >"
    echo 
    "<tr>"
    echo 
    "<th></th><th></th><th bgcolor=#CFCFCF>Vorname</th><th bgcolor=#CFCFCF>Nachname</th>"
    echo 
    "<th bgcolor=#CFCFCF>Anrede</th><th bgcolor=#CFCFCF>Titel</th>"
    echo 
    "<th bgcolor=#CFCFCF>E-Mail</th><th bgcolor=#CFCFCF>Firma</th>"
    echo 
    "<th bgcolor=#CFCFCF>Telefon<th></tr>"
    echo 
    "<form action='Aenderung.php' method='post'>"
    include (
    "function.php"); 
    while (
    $row mysql_fetch_assoc($result)) 

    echo 
    "<tr>"
            foreach(
    $row as $k=>$v
            
    $row[$k] = nl2br(htmlentities($v)); 
            
    $str $row["ID"]. "<td> " "<A HREF=Aenderung.php?id=" $row["ID"] . ">" 
                 
    $row["vorname"] . "</A>" "</td><td> " $row["nachname"] . "</td><td> " .                   $row
    ["anrede"] . "</td><td> " $row["titel"] . "</td><td> " 
    $row["email_a"] .              "</td><td>" $row["firma"] . "</td><td>" $row["telefon_a"] . "</td> "
                 
    $str fix_special_chars($str); 


                echo 
    "<td><input type='Radio' name='id' value=" $row["ID"] . "></td>"
          echo 
    "<td>$str</td>"
          echo 
    "<tr>"

    echo 
    "</tr></table>"
    und hier die Funktion dazu:

    PHP-Code:
    <?php 
    function fix_special_chars($input

    $array = array( 
    '"' => "&quot;" 
    "&" => "&amp;" 
    "©" => "&copy;" 
    "ä" => "&auml;" 
    "Ä" => "&Auml;" 
    "ö" => "&ouml;" 
    "Ö" => "&Ouml;" 
    "ü" => "&uuml;" 
    "Ü" => "&Uuml;" 
    "ß" => "&szlig;"); 

    $output nl2br strtr ($input$array)); 
    return( 
    $output ); 

    ?>
    Dadurch werden aber immer noch die keine Umlaute angezeigt!
    Wenn ich allerdings die Kriptischen Zeichen statts der Umlaute einsetze
    (z.b."Ÿ" => "&Uuml;") werden jedoch die Umlaute in &Uuml angezeigt!
    ausserdem kommen die kriptischen Zeichen gedoppelt vor für verschiedene
    Umlaute deswegen kann ich diesen weg auch nicht nutzen!!
    Weiß vielleicht jemand rat? ich kenn mich mit php noch nicht so sehr gut aus
    und wäre euch sehr dankbar für eure hilfe
    mfg
    Gillz

  • #2
    mach so:
    <?php
    if (!empty($text)){
    $text = strip_tags($text);
    $text = htmlentities($text);
    }
    ?>

    DAs macht aus ö, ü ,ä und ander die richtigen zeichen &ouml;. DAS HTMLENTITES verghindert das eingeben von html codes
    Benny
    www.4webmaster.net
    Sunshine CMS
    BannerAdManagement
    Borlabs - because we make IT easier
    Formulargenerator [color=red]Neu![/color]
    Herkunftsstatistik [color=red]Neu![/color]

    Kommentar

    Lädt...
    X