prussian_blue1889 | Bonjour,
je m'arrahce les cheveux pour programmer une petite fonction de cryptage ultra simple qui consiste à remplacer la lettre a par b, b par c, etc.
Après avoir lu 50 000 fois la doc php sur la fonction str_replace j'en suis toujours là.
Si je tape n'importe quoi "diobzey" en mode "crypter" il me retroune "aaaaaa";
si je passe en mode décrypter il me retroune un truc à peu près correct, sauf pour la lettre b à laquelle il retourne "z" au lieu de "a" (manquait plus que ça, le serveur n'est pas logique !).
Je suis sur PHP 4.4 et d'après la doc il n'y a pas de bug sur cette version.
Voici le code :
(n'hésitez pas à faire executer le code sur une de vos machines si le code vous semble trop compliqué ^^)
Spoiler :
<?php $initial=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');
$final = array('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', 'a');
if(isset($_POST['start']) && isset($_POST['saisie'])) { if ($_POST['choix']=='crypt') { echo str_replace($initial, $final, $_POST['saisie']); }
elseif ($_POST['choix']=='decrypt') { echo str_replace($final, $initial, $_POST['saisie']); }
else
{ }
}
else
{ ?>
<form method="post" action="crypter.php">
<p>
<textarea name="saisie" cols="100" rows="15"></textarea>
</P> <P>
<input type="radio" name="choix" value="crypt" checked> CRYPTER
<input type="radio" name="choix" value="decrypt"> DECRYPTER
</p>
<P>
<input type="submit" value="Valider" name="start">
</p>
</form>
<? }
?> |
Message édité par prussian_blue1889 le 17-09-2009 à 03:09:48
|