kostenloser Webspace werbefrei: lima-city


Sonderzeichen in PHP

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    bluekingmuch

    bluekingmuch hat kostenlosen Webspace.

    Ihr kennt doch den tag/sonderzeichen">sonderzeichenersteller http://www.messletters.com/

    Nun hat mich der Ehrgeiz gepackt und wollte auch sowas schreiben, in PHP statt Java aber.

    nur werden die Sonderzeichen nicht richtig dargestellt...

    Seht her:

    <head>
    <meta http-equiv=\"content-type\" content=\"text/html; charset=UTF-8\">
    </head>
    
    <br><br><center><form method=\"post\">
    Text, der Umgewandelt werden soll  <br><br>
      <input type=\"text\" size=\"50\" name=\"text\"><br><br>
      <input type=\"submit\" value=\"umwandeln\">
    
      </form>
    
    
    <?
    
    
    $text1 = $_POST[\'text\'];
    
    $muha0 = \"ABCDEFGHIJKLMNOPQRSTUVWXYZ!?*<>.,=+-()\";
    $muha1 = \"abcdefghijklmnopqrstuvwxyz!?*<>.,=+-()\";
    $muha2 = \"&#945;&#1074;¢&#8706;&#1108;ƒg&#1085;&#953;&#1504;&#1082;&#8467;&#1084;&#951;&#963;&#961;q&#1103;&#1109;&#1090;&#965;&#957;&#969;&#967;&#1091;z!&#1567;&#9679;«».,=+-()\";
    $muha3 = \"48(d3f9h!jk1mn0pqr57uvwxy2!?*<>.,=+-()\";
    $muha4 = \"Áß&#268;&#270;&#276;&#358;&#286;&#292;&#296;&#308;&#310;&#313;&#1052;&#323;&#336;&#1056;Q&#340;&#346;&#356;ÚV&#372;&#1046;&#374;&#377;!&#1567;&#9679;«».,=+-()\";
    $muha5 = \"&#3588;&#3666;&#962;&#3668;&#1108;&#358;&#65262;&#1106;&#3648;&#1503;&#1082;l&#3667;&#3616;&#3663;&#1511;&#7907;&#1491;&#1459;t&#1458;&#1513;&#1468;&#1509;&#1488;z!&#1567;&#9679;«».,=+-()\";
    $muha6 = \"äb&#267;dëf&#289;hïjklmnöpqrstüvwxÿ&#380;!?*<>.,=+-()\";
    $muha7 = \"áb&#263;défghíjklm&#324;&#337;pq&#341;&#347;túvwxý&#378;!?*<>.,=+-()\";
    $muha8 = \"&#923;B&#4355;D&#931;FG&#905;IJ&#922;&#4354;M&#1471;&#1256;PQ&#63635;&#423;&#428;&#1522;V&#63629;X&#933;Z!?*&#9665;&#9655;.,=+-()\";
    $muha9 = \"&#65425;&#20035;cd&#20039;&#65399;g&#12435;&#65417;&#65420;&#12474;&#65434;&#65462;&#20992;o&#65393;q&#23610;&#19970;&#65394;u&#8730;w&#65426;&#65432;&#20057;!?*<>.,=+-()\";
    $muha10 = \"&#9424;&#9425;©&#9427;&#9428;&#9429;&#9430;&#9431;&#9432;&#9433;&#9434;&#9435;&#9436;&#9437;&#9438;&#9439;&#9440;&#9441;&#9442;&#9443;&#9444;&#9445;&#9446;&#9447;&#9448;&#9449;!?&#8859;<>&#3663;,&#8860;&#8853;&#8861;()\";
    
    
    
    
    $zeich0 = str_split($muha0);
    $zeich1 = str_split($muha1);
    $zeich2 = str_split($muha2);
    $zeich3 = str_split($muha3);
    $zeich4 = str_split($muha4);
    $zeich5 = str_split($muha5);
    $zeich6 = str_split($muha6);
    $zeich7 = str_split($muha7);
    $zeich8 = str_split($muha8);
    $zeich9 = str_split($muha9);
    $zeich10 = str_split($muha10);
    
    
    $text = str_replace($zeich0, $zeich1, $text1);
    $text2 = str_replace($zeich1, $zeich2, $text);
    $text3 = str_replace($zeich1, $zeich3, $text);
    $text4 = str_replace($zeich1, $zeich4, $text);
    $text5 = str_replace($zeich1, $zeich5, $text);
    $text6 = str_replace($zeich1, $zeich6, $text);
    $text7 = str_replace($zeich1, $zeich7, $text);
    $text8 = str_replace($zeich1, $zeich8, $text);
    $text9 = str_replace($zeich1, $zeich9, $text);
    $text10 = str_replace($zeich1, $zeich10, $text);
    
    
    ?>
    
    <br>
    <br><input CLASS=\'stdwidth\' type=\"text\" size=\"50\" value=\"<? echo $text2; ?>\"><br>
    <br><input CLASS=\'stdwidth\' type=\"text\" size=\"50\" value=\"<? echo $text3; ?>\"><br>
    <br><input CLASS=\'stdwidth\' type=\"text\" size=\"50\" value=\"<? echo $text4; ?>\"><br>
    <br><input CLASS=\'stdwidth\' type=\"text\" size=\"50\" value=\"<? echo $text5; ?>\"><br>
    <br><input CLASS=\'stdwidth\' type=\"text\" size=\"50\" value=\"<? echo $text6; ?>\"><br>
    <br><input CLASS=\'stdwidth\' type=\"text\" size=\"50\" value=\"<? echo $text7; ?>\"><br>
    <br><input CLASS=\'stdwidth\' type=\"text\" size=\"50\" value=\"<? echo $text8; ?>\"><br>
    <br><input CLASS=\'stdwidth\' type=\"text\" size=\"50\" value=\"<? echo $text9; ?>\"><br>
    <br><input  CLASS=\'stdwidth\'type=\"text\" size=\"50\" value=\"<? echo $text10; ?>\"><br>
    
    
    <br>



    Weiß wer woran das liegt?

    Edit: ich seh grad dass die sonderzeichen hier auch nicht angezeigt werden... lol^^

    hier die txt zum download: http://cbn-clan.at/much/new/umwandler.txt


    Beitrag geändert: 28.2.2008 1:48:17 von bluekingmuch
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. das problem ist eigentlich ganz klar.
    die sonderzeichen, die du gerne angezeigt bekommen möchtest, müssen ja kodiert dargestellt werden, also über &amp;#..; das sind aber dann jeweils mehrere zeichen, die ein sonderzeichen repräsentieren. die funktion str_split() erzeugt aus einem gegebenen string ein array, jedes zeichen wird ein eintrag. somit hast du anstatt wir gewünscht (...,\"&amp;#..;\",...) dann (...,\"&amp;\",\"#\",..,\";\",...). deshalb werden deine zeichen nicht richtig angezeigt, weil du die zeichencodes auseinandertrennst.

    mache doch anstatt erst einen string und daraus dann ein array, gleich ein array mit den einträgen. das sollte dein problem beheben.

    btw, nach deinem head-tag fehlt noch der body-tag ;)
  4. Hier mal ein exemplarischer Code. Das einfache erstellen der Arrays an Hand deiner Zeichenketten hätte nicht ausgereicht, da noch verschiedene Zeichen enthalten waren, die auch über den Zeichencode kodiert werden müssen.

    Nachfolgender Code getestet und funktionsfähig ;)

    <?php
    /* get post data */
    if ($_SERVER[\'REQUEST_METHOD\'] == \'POST\')
            $text1 = $_POST[\'text\'];
    
    if (isset($text1) && trim($text1) != \'\') {
            /* definition of charsets */
            $zeich0 = 
                    array(
                            \"A\", \"B\", \"C\", \"D\", \"E\", \"F\", \"G\", \"H\", \"I\", \"J\", 
                            \"K\", \"L\", \"M\", \"N\", \"O\", \"P\", \"Q\", \"R\", \"S\", \"T\", 
                            \"U\", \"V\", \"W\", \"X\", \"Y\", \"Z\", \"!\", \"?\", \"*\", \"<\", 
                            \">\", \".\", \",\", \"=\", \"+\", \"-\", \"(\", \")\"
                    );
            $zeich1 = 
                    array(
                            \"a\", \"b\", \"c\", \"d\", \"e\", \"f\", \"g\", \"h\", \"i\", \"j\", 
                            \"k\", \"l\", \"m\", \"n\", \"o\", \"p\", \"q\", \"r\", \"s\", \"t\", 
                            \"u\", \"v\", \"w\", \"x\", \"y\", \"z\", \"!\", \"?\", \"*\", \"<\", 
                            \">\", \".\", \",\", \"=\", \"+\", \"-\", \"(\", \")\"
                    );
            $zeich2 = 
                    array(
                            \"&#945;\",  \"&#1074;\", \"&#162;\",  \"&#8706;\", \"&#1108;\", \"&#402;\", \"&#103;\", \"&#1085;\",
                            \"&#953;\",  \"&#1504;\", \"&#1082;\", \"&#8467;\", \"&#1084;\", \"&#951;\", \"&#963;\", \"&#961;\", 
                            \"&#113;\",  \"&#1103;\", \"&#1109;\", \"&#1090;\", \"&#965;\",  \"&#957;\", \"&#969;\", \"&#967;\", 
                            \"&#1091;\", \"&#122;\",  \"&#33;\",   \"&#1567;\", \"&#9679;\", \"&#171;\", \"&#187;\", \"&#46;\",   
                            \"&#44;\",   \"&#61;\",   \"&#43;\",   \"&#45;\",   \"&#40;\",   \"&#41;\"
                    );
            $zeich3 = 
                    array(
                            \"&#52;\",  \"&#56;\",  \"&#40;\",  \"&#100;\", \"&#51;\",  \"&#102;\", \"&#57;\",  \"&#104;\", 
                            \"&#33;\",  \"&#116;\", \"&#107;\", \"&#49;\",  \"&#109;\", \"&#110;\", \"&#48;\",  \"&#112:\", 
                            \"&#113;\", \"&#114;\", \"&#53;\",  \"&#55;\",  \"&#117;\", \"&#118;\", \"&#119;\", \"&#120;\", 
                            \"&#121;\", \"&#50;\",  \"&#33;\",  \"&#53;\",  \"&#42;\",  \"&#60;\",  \"&#62;\",  \"&#46;\",  
                            \"&#44;\",  \"&#61;\",  \"&#43;\",  \"&#45;\",  \"&#40;\",  \"&#41;\"
                    );
            $zeich4 = 
                    array(
                            \"&#193;\", \"&#223;\", \"&#268;\", \"&#270;\",  \"&#276;\",  \"&#358;\", \"&#286;\", \"&#292;\",  
                            \"&#296;\", \"&#308;\", \"&#310;\", \"&#313;\",  \"&#1052;\", \"&#323;\", \"&#336;\", \"&#1056;\", 
                            \"&#81;\",  \"&#340;\", \"&#346;\", \"&#356;\",  \"&#218;\",  \"&#86;\",  \"&#372;\", \"&#1046;\", 
                            \"&#374;\", \"&#377;\", \"&#33;\",  \"&#1567;\", \"&#9679;\", \"&#171;\", \"&#187;\", \"&#46;\",  
                            \"&#44;\",  \"&#61;\",  \"&#43;\",  \"&#45;\",   \"&#40;\",   \"&#41;\"
                    );
            $zeich5 = 
                    array(
                            \"&#3588;\", \"&#3666;\", \"&#962;\",  \"&#3668;\", \"&#1108;\", \"&#358;\",  \"&#65262;\", \"&#1106;\", 
                            \"&#3648;\", \"&#1503;\", \"&#1082;\", \"&#108;\",  \"&#3667;\", \"&#3616;\", \"&#3663;\",  \"&#1511;\", 
                            \"&#7907;\", \"&#1491;\", \"&#1459;\", \"&#116;\",  \"&#1458;\", \"&#1513;\", \"&#1468;\",  \"&#1509;\", 
                            \"&#1488;\", \"&#122;\",  \"&#33;\",   \"&#1567;\", \"&#9679;\", \"&#171;\",  \"&#187;\",   \"&#46;\",  
                            \"&#44;\",   \"&#61;\",   \"&#43;\",   \"&#45;\",   \"&#40;\",   \"&#41;\"
                    );
            $zeich6 = 
                    array(
                            \"&#228;\", \"&#98;\",  \"&#267;\", \"&#100;\", \"&#235;\", \"&#102;\", \"&#289;\", \"&#104;\", 
                            \"&#239;\", \"&#106;\", \"&#107;\", \"&#108;\", \"&#109;\", \"&#110;\", \"&#246;\", \"&#112;\", 
                            \"&#113;\", \"&#114;\", \"&#115;\", \"&#116;\", \"&#252;\", \"&#118;\", \"&#119;\", \"&#120;\", 
                            \"&#255;\", \"&#380;\", \"&#33;\",  \"&#63;\",  \"&#42;\",  \"&#60;\",  \"&#62;\",  \"&#46;\", 
                            \"&#44;\",  \"&#61;\",  \"&#43;\",  \"&#45;\",  \"&#40;\",  \"&#41;\"
                    );
            $zeich7 = 
                    array(
                            \"&#225;\", \"&#98;\",  \"&#263;\", \"&#100;\", \"&#233;\", \"&#102;\", \"&#103;\", \"&#104;\", 
                            \"&#237;\", \"&#106;\", \"&#107;\", \"&#108;\", \"&#109;\", \"&#324;\", \"&#337;\", \"&#112;\", 
                            \"&#113;\", \"&#341;\", \"&#347;\", \"&#117;\", \"&#250;\", \"&#118;\", \"&#119;\", \"&#120;\", 
                            \"&#253;\", \"&#378;\", \"&#33;\",  \"&#63;\",  \"&#42;\",  \"&#60;\",  \"&#62;\",  \"&#46;\", 
                            \"&#44;\",  \"&#61;\",  \"&#43;\",  \"&#45;\",  \"&#40;\",  \"&#41;\"
                    );
            $zeich8 = 
                    array(
                            \"&#923;\", \"&#66;\",    \"&#4355;\", \"&#68;\",   \"&#931;\",  \"&#70;\",   \"&#71;\",    \"&#905;\", 
                            \"&#72\",   \"&#73\",     \"&#922;\",  \"&#4354;\", \"&#76;\",   \"&#1471;\", \"&#1256;\",  \"&#79;\", 
                            \"&#80;\",  \"&#63635;\", \"&#423;\",  \"&#428;\",  \"&#1522;\", \"&#85;\",   \"&#63629;\", \"&#87;\", 
                            \"&#933;\", \"&#89;\",    \"&#33;\",   \"&#63;\",   \"&#42;\",   \"&#9665;\", \"&#9655;\",  \"&#46;\", 
                            \"&#44;\",  \"&#61;\",    \"&#43;\",   \"&#45;\",   \"&#40;\",   \"&#41;\"
                    );
            $zeich9 = 
                    array(
                            \"&#65425;\", \"&#20035;\", \"&#99;\",    \"&#100;\",   \"&#20039;\", \"&#65399;\", \"&#103;\", \"&#12435;\", 
                            \"&#65417;\", \"&#65420;\", \"&#12474;\", \"&#65434;\", \"&#65462;\", \"&#20992;\", \"&#111;\", \"&#65393;\", 
                            \"&#113;\",   \"&#23610;\", \"&#19970;\", \"&#65394;\", \"&#117;\",   \"&#8730;\",  \"&#119;\", \"&#65426;\", 
                            \"&#65432;\", \"&#20057;\", \"&#33;\",    \"&#63;\",    \"&#42;\",    \"&#60;\",    \"&#62;\",  \"&#46;\", 
                            \"&#44;\",    \"&#61;\",    \"&#43;\",    \"&#45;\",    \"&#40;\",    \"&#41;\"
                    );
            $zeich10 =
                    array(
                            \"&#9424;\", \"&#9425;\", \"&#9426;\", \"&#9427;\", \"&#9428;\", \"&#9429;\", \"&#9430;\", \"&#9431;\", 
                            \"&#9432;\", \"&#9433;\", \"&#9434;\", \"&#9435;\", \"&#9436;\", \"&#9437;\", \"&#9438;\", \"&#9439;\", 
                            \"&#9440;\", \"&#9441;\", \"&#9442;\", \"&#9443;\", \"&#9444;\", \"&#9445;\", \"&#9446;\", \"&#9447;\", 
                            \"&#9448;\", \"&#9449;\", \"&#33;\",   \"&#63;\",   \"&#8859;\", \"&#60;\",   \"&#62;\",   \"&#3663;\", 
                            \"&#44;\",   \"&#8860;\", \"&#8853;\", \"&#8861;\", \"&#40;\",   \"&#41;\"
                    );
            /* random charset - composition of the other ones */
            $zeich11 = array();
            for ($i = 0; $i < count($zeich0); $i++) {
                    $x = rand(0, 10);
                    eval(\"\\$zeich11[\\$i] = \\$zeich\".$x.\"[\\$i];\");
            }
            
            /* create text versions */
            $text = str_replace($zeich0, $zeich1, $text1);
            for ($i = 2; $i <= 11; $i++)
                    eval(\"\\$text\".$i.\" = str_replace(\\$zeich1, \\$zeich\".$i.\", \\$text);\");
    }
    ?>
    <html>
    
    <head>
            <meta http-equiv=\"content-type\" content=\"text/html; charset=UTF-8\">
            <title>So klappt\'s :-)</title>
    </head>
    
    <body>
            <center>
                    <form method=\"POST\">
                            <p>Text, der umgewandelt werden soll:</p>
                            <input type=\"text\" size=\"50\" name=\"text\" value=\"<?php if (isset($text1) && trim($text1) != \'\') { echo $text1; } ?>\" />
                            <br/>
                            <input type=\"submit\" value=\"Umwandeln\" />
                    </form>
    <?php
    /* output */
    if (isset($text1) && trim($text1) != \'\')
            for ($i = 2; $i <= 11; $i++) {
    ?>
                    <p><input type=\"text\" size=\"50\" value=\"<?php eval(\"echo \\$text\".$i.\";\"); ?>\" /></p>
    <?php
            }
    ?>
            </center>
    </body>
    
    </html>



    Beitrag geändert: 28.2.2008 7:03:41 von pjhimself
  5. e********l

    Liegt deine Quelldatei überhaupt im UTF-8 Format vor? Denn PHP hat massig Probleme damit eine Datei die zb. im ISO Format erstellt wurde als UTF auszugeben.
  6. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!