cURL POST没有提交表格

I'm doing a project and one of the requests is to automatically submit a form to a random site, which is specified from time to time

This is my cURL code :

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url_post);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $dati_post);
curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie_file);
curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie_file);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$result = curl_exec($ch);
curl_close($ch);

Code to get POST parameters :

  foreach ($html->find('form[method=post],form[method=POST]') as $forms_post) {
  $n_formPOST++;
  $formPOST_action = $forms_post->action;
   foreach ($forms_post->find('input') as $input) {
     if ($input->type == 'text') {
       $dati_testo[$input->name] = "text";
     } else if ($input->type == 'email' || $input->name == 'email') {
       $dati_random[$input->name] = "emailrandom@gmail.com";
     } else if ($input->type == 'hidden') {
       $dati_random[$input->name] = $input->value;
     } else {
       $dati_random[$input->name] = "random";
     }
   }
   foreach ($forms_post->find('textarea') as $textarea) {
     if ($textarea->disabled != true) {
       $dati_testo[$textarea->name] = "text";
     }
   }
   foreach ($forms_post->find('button') as $bottone) {
     if ($bottone->type == 'submit') {
       $dati_random[$bottone->name] = "random";
     }
   }

The problem is that in some sites POST is done correctly and I receive the right answer, which corresponds to the answer I would receive by doing it manually. On other sites, it seems that the form is not submitted. I have repeatedly checked the URL that I insert in the cURL and also the data that I pass and if I use them manually it works. I even tried using online tools that perform POST / GET passing the same URL and the same data that I get in my project and it works.

The url_post is made from url host+form action. I don't understand if there is something wrong in my curl code, considering I'm pretty sure the data I'm passing to the curl are corrects to complete the POST.

Data :

You need to use the curl_exec() function in order to execute the cURL. It takes the $ch param, like such:

// Execute cURL
curl_exec($ch);

// Close cURL
curl_close($ch);

More info here