Partage
  • Partager sur Facebook
  • Partager sur Twitter

Créer un traducteur un peu spéciale

Remplacer les letres des mots...

    20 février 2006 à 1:00:43

    Bonsoir j'aimerai faire un traducteur un peu spéciale qui traduit des mots (fin en gros c'est pas vraiment traduire c'est remplacer des lettres d'un mot par d'autre)
    Exemple concrès :
    le mot français : "Bonjour" devras donner : "Puhzuin" (ne cherchez pas à comprendre c'est très spéciale c'est la langue
    Al bhed dans Final Fantasy donc j'aimerai des explications sur comment faire je crois qu'il faut utiliser des array mais comment merci d'avance !
    • Partager sur Facebook
    • Partager sur Twitter
      20 février 2006 à 1:09:57

      Je n'ai rien compris au truc expliquer j'ai essayer avec str_replace et ça fou un de ces bordel je vais aller vider la boite de Doliprane la parce que ça me tape sur le système !!!


              $Texte = "coucou";
                                             
              $Alphabet_Fr = 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");
                                               
              $Alphabet_Al = array("y", "p", "l", "t", "a", "v", "k", "r", "e", "z", "g", "m", "s", "h", "u", "b", "x", "n", "c", "d", "i", "j", "f", "q", "o", "w");
                                                     
              $Traduction = str_replace($Alphabet_Fr, $Alphabet_Al, $Texte);
              echo $Traduction;


      Ce petit code PHP là possède les deux alphabets de translations Français et Al bhed j'ai essayer avec le texte...
      "coucou" il devrais donner : "luilui" mais malheuresement cet idiot de PHP :-) me donne "ciicii" allez savoir pourquoi.... Faudrait qu'il arrête de boire PHP dans mon array je regrette le "c" => "l" ainsi que le "o" => "u" et pour finir le "u" => "i" je ne vois pas pourquoi il me met du ciicii... c'est du n'importe quoi
      • Partager sur Facebook
      • Partager sur Twitter
        20 février 2006 à 15:05:33

        C'est trés simple.... Il vérifie toutes les entrées de l'array

        coucou => loulou => moumou => sousou => suusuu => cuucuu => ciicii


        Essai plutot d'utiliser les regex (y'en a une dans l'autre topic)
        • Partager sur Facebook
        • Partager sur Twitter
          20 février 2006 à 15:29:32

          Ah d'accord merci ! je ne savais pas que ça fonctionnais comme cela
          • Partager sur Facebook
          • Partager sur Twitter
            20 février 2006 à 16:24:29

            non pas du totu j'ai juste essayer str_replace();
            • Partager sur Facebook
            • Partager sur Twitter
              20 février 2006 à 16:29:02

              Tu devrais essayer alors :)

              $Texte = "coucou";

              $Alphabet_Fr = "abcdefghijklmnopqrstuvwxyz";
              $Alphabet_Al = "ypltavkrezgmshubxncdijfqow";

              $Traduction = strtr($Texte, $Alphabet_Fr, $Alphabet_Al);

              echo $Traduction;


              Affiche "lului" :)
              • Partager sur Facebook
              • Partager sur Twitter
                20 février 2006 à 16:35:25

                Merci beaucoup de ton aide je t'en remerci beaucoup ! j'ai une dette envers toi ;) lol
                Je poste ici mon code PHP si une personne voudrai faire la même chose que moi il pourra s'aider de mon code source !

                <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
                <html xmlns="http://www.w3.org/1999/xhtml">
                    <head>
                        <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
                        <title>Traducteur Français - Al bhed</title>
                    </head>

                    <body>
                        <div id="Conteneur">
                            <h1 align="center"> Traducteur Français - Al bhed</h1>
                            <form action="index.php?translation=ok" method="POST">
                                <table border="0" cellpadding="5" cellspacing="0" align="center">
                                    <tr>
                                        <td></td>
                                    </tr>
                                    <tr>
                                        <td align="center">
                                            <select name="trans">
                                                <option value="fr-al">Français -> Al bhed</option>
                                                <option value="al-fr">Al bhed -> Français</option>
                                            </select>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td><textarea name="texte" rows="10" cols="50"></textarea></td>
                                    </tr>
                                    <tr>
                                        td align="center"><input type="submit" value="Traduire le texte" /></td>
                                    </tr>
                                </table>
                            </form>


                            <?php
                                if(isset($_GET['translation']) && $_GET['translation'] == "ok")
                                {
                                    if(isset($_POST['texte']) && empty($_POST['texte']))
                                    {
                                        echo 'Le champ de texte est vide, il faut au minimum une lettre pour la traduction';
                                    }
                                    else
                                    {
                                        $Statut = (isset($_POST['trans']) ? $_POST['trans'] : "");
                                        $Texte  = (isset($_POST['texte']) ? $_POST['texte'] : "");
                                                               
                                        $Alphabet_Fr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
                                        $Alphabet_Al = "YPLTAVKREZGMSHUBXNCDIJFQOWypltavkrezgmshubxncdijfqow0123456789";
                                                               
                                        if($Statut == "fr-al")
                                        {
                                            $Traduction = strtr($Texte, $Alphabet_Fr, $Alphabet_Al);
                                            echo '<p align="center"> <b>Français : </b>' . $Texte . '</p>';
                                            echo '<p align="center"> <b>Al_Bhed : </b>' . $Traduction . '</p>';
                                        }
                                        else
                                        {
                                            $Traduction = strtr($Texte, $Alphabet_Al, $Alphabet_Fr);
                                            echo '<p align="center"> <b>Al_Bhed : </b>' . $Texte . '</p>';
                                            echo '<p align="center"> <b>Françaic : </b>' . $Traduction . '</p>';
                                        }
                                    }
                                }
                            ?>


                            </div>
                        </body>
                </html>
                • Partager sur Facebook
                • Partager sur Twitter
                  20 février 2006 à 20:56:54

                  Sympa le strtr.. Connaisait pas...
                  • Partager sur Facebook
                  • Partager sur Twitter

                  Créer un traducteur un peu spéciale

                  × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                  × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                  • Editeur
                  • Markdown