Hola Jabixo,
es una pregunta un poco más genérica de lo que parece, ya que muchas cosas dependen de la implementación del resto de las cosas.
Por un lado, debés hacer que el evento onchange del select dispare las acciones:
<select id="seciones" name="seciones" onchange="javascript: actualzarProductos();">
<option value="1">Informática</option>
<option value="2">Electrodométicos</option>
<option value="3">Hogar</option>
...
</select>
y el lugar en dónde se verán las respuestas:
<div id="anuncios"></div>
Luego el código JavaScript en el head de la página que implementa la llamada AJAX que se dispara en la función actualzarProductos():
// crea el ambiente JS para recibir la respuesta dinámica
function Conectar(){
if (window.XMLHttpRequest){
return new XMLHttpRequest()
} else {
var xmlHttp = false;
try {
return new ActiveXObject("Msxml2.XMLHTTP");
}catch (e) {
try {
return ActiveXObject("Microsoft.XMLHTTP");
} catch (e2) {
xmlHttp = false;
}
} // try
} // else
} // Conectar()
var xmlHttp = Conectar();
function actualzarProductos() {
// Obtiene el value del select
unSelect = document.getElementById("secciones");
valor = unSelect.ooptions[unSelect.selectedItem].value;
// Limpia la respeusta anterior
document.getElementById('anuncios').innerHTML = '';
// Arma el URL para llamar al script que devuelve los anuncios de una sección
url = 'anunciosPorSeccion.php?seccion='+valor;
// Configura la llamada asincrónica
xmlHttp.open("GET", url);
xmlHttp.onreadystatechange = function() {
// Cuando la llamada termina, muestra los datos
if (xmlHttp.readyState == 4 && xmlHttp.status == 200) {
document.getElementById('anuncios').innerHTML = xmlHttp.responseText;
}
}
xmlHttp.send(null);
}
Con esto, basta que el script anunciosPorSeccion.php
devuelva el HTML correspondiente para mostrar los productos de la sección solitada vía $_GET['seccion']
Se puede hacer de formas más complicadas para generalizarlo, como pasar como parámetro el select del que se parte, pasar como parámetro el ID del DIV de destino, devolver XML en vez de HTML en el script PHP, etc.
Podrías en vez de usar JavaScript vanila usar algún framework, si es que estás familiarizado copn alguno, pero el proceso siempre será: ver cual selecciona el usuario, hacer la llamada a tu script para obtener la respuesta, mostrar la respuesta dada.
Saludos!