Hola:
Un array para recibirlo con php debe tener un juego de corchetes para indicarlo en el atributo name del control (tal como veo que tienes)... y lo recibes bien con el implode pero de la variable que has usado...
$lista=implode(',',$_POST["seleccion"]);
Fíjate que en php ya no se ponen esos corchetes.
Lo que no llego a entender es lo de ajax, aunque no parece que sea parte de la pregunta... por cierto, muevo el mensaje a php que parece que es el foro adecuado.
Saludos