Bueno, mira este ejemplo
Código PHP:
<select name="id_origen" id="id_origen" onchange="submit()">
<?php
$idorigen = $_POST['id_origen'];
do {
?>
<option value="<?php echo $row_origen['id_origen']?>"<?php if ($row_origen['id_origen'] == $idorigen) {echo "selected=\"selected\"";} ?>><?php echo $row_origen['origen']?></option>
<?php
} while ($row_origen = mysql_fetch_assoc($origen));
$rows = mysql_num_rows($origen);
if($rows > 0) {
mysql_data_seek($origen, 0);
$row_origen = mysql_fetch_assoc($origen);
}
?>
</select>
Como podras ver, la variable $idorigen recoge el valor post del select (en mi ej el select esta dentro de un form que tiene el method en post)
y si ves en la parte donde asigno los option tengo un if donde pregunto si lo que esta mostrando es igual a la variable $idorigen entonces que haga ese option selected, que creo es lo que necesitas
Espero te sirva
saludos