<?php

    $message 
stripslashes($_POST['message']);
    
$trans $_POST['trans'];

    function 
dot2array ($dots) {
        
$array preg_split('/\./',$dots);
        return 
$array;
    }

    if (
$trans == 'dot2asc') {
        
$nums dot2array($message);
        
$r '';
        while (
$nums) {
            
$n array_shift($nums);
            
$r .= '&#' $n ';';
        }
    } elseif (
$trans == 'dot2hex') {
        
$nums dot2array($message);
        
$r '';
        while (
$nums) {
            
$n array_shift($nums);
            
$h dechex($n);
            
$r .= str_pad($h,2,'0',STR_PAD_RIGHT);
        }
    } elseif (
$trans == 'dot2oct') {
        
$nums dot2array($message);
        
$r '';
        while (
$nums) {
            
$n array_shift($nums);
            
$o decoct($n);
            
$r .= str_pad($o,3,'0',STR_PAD_RIGHT);
        }
    } elseif (
$trans == 'dot2bin') {
        
$nums dot2array($message);
        
$r '';
        while (
$nums) {
            
$n array_shift($nums);
            
$b decbin($n);
            
$r .= str_pad($b,8,'0',STR_PAD_RIGHT);
        }
    } elseif (
$trans == 'asc2dot') {
        while (
$a substr($message,0,1)) {
            
$message substr($message,1);
            
$n ord($a);
            
$r .= "$n.";
        }
    } elseif (
$trans == 'hex2dot') {
        while (
$h substr($message,0,2)) {
            
$message substr($message,2);
            
$n hexdec($h);
            
$r .= "$n.";
        }
    } elseif (
$trans == 'oct2dot') {
        while (
$o substr($message,0,3)) {
            
$message substr($message,3);
            
$n octdec($o);
            
$r .= "$n.";
        }
    } elseif (
$trans == 'bin2dot') {
        while (
$b substr($message,0,8)) {
            
$message substr($message,8);
            
$n bindec($b);
            
$r .= "$n.";
        }
    } elseif (
$trans == 'rot13') {
        
$r str_rot13($message);
    } elseif (
$trans == 'ucase') {
        
$r strtoupper($message);
    } elseif (
$trans == 'lcase') {
        
$r strtolower($message);
    } elseif (
$trans == 'base64enc') {
        
$r base64_encode($message);
    } elseif (
$trans == 'base64dec') {
        
$r base64_decode($message);
    } elseif (
$trans == '') {
        
$r '';
    } else {
        
$r 'not implemented';
    }

?>

<form action="script.php" method="post">
<textarea name="message" rows="6" cols="50"><?= $r ?></textarea><br>
<select name="trans">
<option value="dot2asc">Dotted decimal to ASCII</option>
<option value="dot2hex">Dotted decimal to hexadecimal</option>
<option value="dot2oct">Dotted decimal to octal</option>
<option value="dot2bin">Dotted decimal to binary</option>
<option value="asc2dot">ASCII to dotted decimal</option>
<option value="hex2dot">Hexadecimal to dotted decimal</option>
<option value="oct2dot">Octal to dotted decimal</option>
<option value="bin2dot">Binary to dotted decimal</option>
<option value="rot13">Rot13</option>
<option value="ucase">To upper case</option>
<option value="lcase">To lower case</option>
<option value="base64enc">Base64 encode</option>
<option value="base64dec">Base64 decode</option>
</select><br>
<input type="submit">
</form>