No obvious reason, so I'd check program logic. Perhaps some other form element carries the same name?
<form action="" method="post">
7-radio <input type="radio" value="7" name="rd" />
<br/>
1-text (replaces above one) <input type="text" value="1" name="rd" />
<br/>
<input type="submit" />
</form>
<div>
<?php
if (isset($_POST['rd']))
echo $_POST['rd'];
?>
Or perhaps you are referencing the wrong element because $DPI isn't the same for both pages?
What does $_POST look like when using print_r?
What does the actually produced html code look like?
What's $DPI on the second page?