Bueno, eso se debe a que tampoco estás controlando el flujo de tu script.
Es decir, dicho código siempre se va a ejecutar independientemente de si estás enviando el formulario o no, ¿sabes por qué?
Porque no tienes ningún control sobre su ejecución, algo así:
Código PHP:
Ver originalif (isset($_GET['criterio'])) { // significa: si existe el campo "criterio", confirmando la presencia del formulario
// entonces aquí colocas el código que hace uso de dichas variables del formulario
}
A eso se le llama control de flujo, si tu script no lo tiene entonces no importa donde muevas el código, siempre se ejecutará.
¿Se entiende lo que no estás haciendo?