Allora ripetiamo le consecutio temporum di una richiesta (utente richiama pagina nel browser) al server:

digito indirizzo -> apache/server che sia elabora richiesta -> esegue tutto il codice server-side (PHP) del caso e muore -> la pagina morta viene mandata come risposta al browser ((X)HTML).

Quello che fai sulla select, che funziona perfettamente e ne sono convinto anch'io, avviene DOPO quello che provi a scrivere nel textfield. Allora bisogna intercettare la selezione (client-side) e operare sul textfield.

Quindi il tuo problema si sposta in client-side, ovvero in javascript, o resta in server-side (riscrivendo un po' tutta la pagina). Dicci un po' tu come vuoi proseguire.

Qui hai un "a grandi linee" esempio di soluzione client-side
codice:
<form>
<select name="disney" onchange="this.form.elements['selezione'].value=this.value;">
  <option value=""></option>
  <option value="Ciccio">Ciccio</option>
  <option value="Pippo">Pippo</option>
  <option value="Pluto">Pluto</option>
  <option value="Topolino">Topolino</option>
</select>
<input type="text" name="selezione" />
</form>