Hai le idee un bel po' confuse.
1) Mischiare get e post non è una grande pensata.
Potresti modificare il form in questo modo
Al form, meglio sempre dare anche un nome.codice:<form action="query.php" method="POST" name="new_photo"> <input type='hidden' name='action' value='new_photo' /> <select...
2) onChange associato al tag <form> non ha senso, il form non cambia, va associato al campo <select>
3) Di sicuro non puoi recuperare con PHP valori che si trovano su una pagina già visualizzata sul browser, si fa con Javascript
4) cosa carica quel location.assign? La stessa pagina, ma con nuovi contenuti?
Ti sposto in Javascript.

