2 votes

Je suis en train de créer une application pour envoyer des messages à aweber mais j'ai aussi besoin de champs d'entrée pour les stocker dans la base de données.

<form method="post" class="af-form-wrapper" action="http://www.aweber.com/scripts/addlead.pl">

Je suis en train de créer une application pour envoyer des messages à aweber mais j'ai aussi besoin de champs d'entrée pour les stocker dans la base de données. Mais j'ai aussi besoin que ces entrées soient stockées dans la base de données de mon côté. Comment puis-je les obtenir en PHP car nous ne pouvons pas avoir deux actions.

1voto

Yasitha Points 537

Vous pouvez utiliser javascript ou jquery

Lorsque vous cliquez sur le bouton de soumission, vous pouvez envoyer les données du formulaire à votre url et vous pouvez également poster ces données dans votre contrôleur, puis les insérer dans la base de données.

<form id='myform' method='post'>
<input />
<input />
<button id='submit'></button>
</form> 
$('#submit').on('click', function(){
  $.ajax({
      'dataType': 'json',
      'type': 'POST',
      'data': $('#myform').serialize(),
      'url': 'http://www.aweber.com/scripts/addlead.pl',
       success: function (data) {
         //what ever you want to do with the return data
       }
   })
  $.ajax({
      'dataType': 'json',
      'type': 'POST',
      'data': $('#myform').serialize(),
      'url': 'your code igniter controller url',
       success: function (data) {
         //what ever you want to do with the return data
       }
   })
})

1voto

Haisam Hameed Points 50

Nous pouvons le faire à l'aide de CURL

    public function signup()
{
    $fields_string='';
    $ch = curl_init('http://www.aweber.com/scripts/addlead.pl');
    $fields = array(
        'name' => $this->input->post('name'),
        'email' => $this->input->post('email'),
        'meta_web_form_id' => '1122',
        'meta_split_id' => '',
        'listname' => 'abc',
        'meta_redirect_onlist' => '',
        'meta_adtracking' => 'My_Web_Form',
        'meta_message' => '1',
        'meta_required' => 'name,email',
        'meta_forward_vars' => '0',
    );
    foreach($fields as $key=>$value)
    {
        $fields_string .= $key.'='.$value.'&';
    }
    rtrim($fields_string,'&');
    curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 10.0; WOW64; rv:42.0) Gecko/20100101 Firefox/42.0');
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
    curl_setopt($ch,CURLOPT_POST,count($fields));
    curl_setopt($ch,CURLOPT_POSTFIELDS,$fields_string);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    $returned = curl_exec($ch);
    $this->register_user($fields);
}

$this->register_user($fields) ; // Cette fonction stockera les valeurs dans ma base de données car nous transmettons le nom et l'adresse électronique à cette fonction.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X