I y a des erreurs dans ton code à mon avis.

Puis je reste toujours étonné de voir des codes types "usines à gaz" alors qu'on en est au stade expérimental.
Quand on fait des essai, vaut mieux faire en 1er des truc simples, et si possible en y mettant des données connues, quitte à les mettre "en dur".
Dans un 1er temps, laisse "courir" cette fonction http_build_query(), on ne sait pas trop ce que ça y fait.

Puis y mettre directement $_POST, à mon avis ça ne sera surement pas correcte car il faudra mettre un tableau avec uniquement les données attendues (formSubmitted, Email, pommo_signup).


Une rapide recherche sur GooGoo me fourni ce code ci-dessous, il m'a l'air pas mal correspondre à ton besoin, enfin, faut espérer.
Puis c'est quand quasi le même code que le tient, sauf qu'il y a une instruction qui exclus le retour d'une entête HTTP. C'est indispensable à mon avis.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
 
/*Initialisation de la ressource curl*/
$curl = curl_init();
/*L'url est celle de la page courante pour que le script s'appel lui même*/
curl_setopt($curl, CURLOPT_URL, 'http://admin.lafetedelamusique.ch/mail/newsletter/user/process.php?sExternalid=2b80d42f935f622a83aeb2b17f38ecf9');
/*On indique à curl de nous retourner le contenu de la requête plutôt que de l'afficher*/
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
/*On indique à curl de ne pas retourner les headers http de la réponse dans la chaine de retour*/
curl_setopt($curl, CURLOPT_HEADER, false);
/*On indique à curl d'envoyer une requete post*/
curl_setopt($curl, CURLOPT_POST, true);
/*On donne les paramêtre de la requete post*/
$tableau_Post = array('formSubmitted'=>'1','Email'=>'un_mail@fai.com','pommo_signup'=>'true');
curl_setopt($curl, CURLOPT_POSTFIELDS, $tableau_Post);
/*On execute la requete*/
$output = curl_exec($curl);
/*On a une erreur alors on la leve*/
if ($output === false) {
    trigger_error('Erreur curl : '.curl_error($curl), E_USER_WARNING);
}
/*Si tout c'est bien passé on affiche le contenu de la requête*/
else {
	var_dump($output);
}
/*On ferme la ressource*/
curl_close($curl);
J'y est modifié 2 trucs par rapport au code de départ :
1/ CURLOPT_URL
C'est l'URL ou tu dois pointer. C'est là où les données seront traitée.
Je remarque que de ton coté tu mets : http://www.lafetedelamusique.ch/news...newslettre.php
C'est quoi cette page, cette Url ? Qu'est ce qu'il y a dedans, quel code ?
Si c'est une nouvelle page pour faire des essais, alors tu peux reprendre celle ci, toujours pour les essais.
Si c'est ta page en production (le formulaire) qui permet de soumettre une newsletter, alors ce n'est pas bon.

Ici, il y a un paramètre dans l'url (...php?sExternalid=balblabla), j'espère que ce sera bon, qu'il ne faut pas faire un truc spécial.


2/ CURLOPT_POSTFIELDS
C'est un tableau contenant les données qui seront envoyés en POST. Ce tableau devrait être construit de toute pièce, avec uniquement les données que tu doit avoir sous le coude.
Normalement ça concerne que l'adresse e-mail.

Le code fini par un var_dump(), ça va donc retourner un contenu, ça devrait être du HTML.
On peu faire aussi un echo à la place.
Du coup, faudrait créer une page rien que pour ça dans un 1er temps, ça permettra de voir ce qui est retourné, et de savoir quoi faire avec.


Bon code.