Witam,
Ulepszyłem już jak się da mój kod z szyfrem cezara i teraz zwracam się o ocenę tego niedługiego kodu, bo pewnie coś zrobiłem niezgodnie z tymi standardami PSR. Wrzucam cały kod, żeby było łatwiej odczytać i potestować.
Nie pisany obiektowo, bo aktualnie ciężko zastosować mi OOP w praktyce :/ (uczę się)
<?php
if ($_POST)
{
if (!empty($_POST['code']))
{
$output = '';
$code = strtolower($_POST['code']);
$key = $_POST['key'];
for ($i = 0; $i < strlen($code); $i++)
{
$letter[$i] = substr($code, $i, 1);
if (ctype_alpha($letter[$i]) == false)
{
$output = $output.$letter[$i];
continue;
}
if (isset($_POST['encrypt']))
{
$decode = ord($letter[$i]) + $key;
for ($j = 0; $j <= 25; $j++)
if ($decode==123+$j) $decode = $decode - 26;
}
else if (isset($_POST['decrypt']))
{
$decode = ord($letter[$i]) - $key;
for ($j = 0; $j <= 25; $j++)
if ($decode==96-$j) $decode = $decode + 26;
}
$decode = chr($decode);
$output = $output.$decode;
}
if (isset($_POST['big']) && $_POST['big']=='on')
echo 'SZYFR:<b> '.strtoupper($output).'</b><br />';
else
echo 'SZYFR:<b> '.$output.'</b><br />';
}
}
else
echo '<span style="font-size:20px;">Szyfr Cezara</span>';
?>
<!DOCTYPE HTML>
<html>
<head>
<title>Cezar CRYPTOR/DECRYPTOR</title>
<meta charset="utf-8" />
<head>
<body>
<form action="" method="post">
<p>
<textarea rows="15" cols="50" name="code" placeholder="Twój tekst"></textarea>
</p>
<input type="submit" name="encrypt" value="Szyfruj!" />
<span style="margin-right:20px;"><input type="submit" name="decrypt" value="Odszyfruj!" /></span>
<input type="reset" value="Wyczyść" />
<p>
Klucz (liczba przesunięć):
<select name="key">
<?php
for ($i = 1; $i <= 25; $i++)
echo '<option name="'.$i.'">'.$i.'</option>';
?>
</select>
</p>
<label>
<input type="checkbox" name="big" checked />
<span style="font-size:17px;">DUŻE LITERY</span>
</label>
</form>
</body>
</html>
Z góry dziękuję!