2

Im trying to use the following curl sample to send 2 mail to the user and the owner. If I want to send the mail with thefollowing code in php how will I be able to do it? Actually, the sample code is from a service called sendinblue. I would love to hear from you!

         curl -H 'api-key:your_access_key' -X POST -d '{"cc":["cc@example.net":"cc whom!"],"text":"This is the text","bcc":["bcc@example.net":"bcc whom!"],"replyto":["replyto@email.com","reply to!"],"html":"This is the <h1>HTML</h1>This is inline image 1.<br/><img src=\"{myinlineimage1.png}\" alt=\"image1\" border=\"0\"><br/>Some text<br/>This is inline image 2.<br/><img src=\"{myinlineimage2.jpg}\" alt=\"image2\" border=\"0\"><br/>Some more text<br/>Re-used inline image 1.<br/><img src=\"{myinlineimage1.png}\" alt=\"image3\" border=\"0\">","to":{"to@example.net":"to whom!"},"attachment": {"myfilename.pdf":"your_pdf_files_base64_encoded_chunk_data"},"from":["from@email.com","from email!"],"subject":"My subject","headers":{"Content-Type":"text/html; charset=iso-8859-1", "X-param1":"value1","X-param2":"value2", "X-Mailin-custom":"my custom value","X-Mailin-IP":"102.102.1.2", "X-Mailin-Tag":"My tag"},"inline_image":{"myinlineimage1.png":"your_png_files_base64_encoded_chunk_data", "myinlineimage2.jpg":"your_jpg_files_base64_encoded_chunk_data"}}' 'https://api.sendinblue.com/v2.0/email

Want to send the following data

   $senddata = array (
               'to' => array('sample_mail@live.com'=>'sample_mail@live.com'),
               'from' => array($fromvalue,$fromvalue),
               'replyto' => array("user_mail@live.com","user_mail@live.com"),
                'subject' => "subject",
                'text' => "text",
                'html' => '',
                'fromname' => $fromnamevalue,
                'bcc' => 'bcc'
            );
Grokify
  • 15,092
  • 6
  • 60
  • 81
Tony
  • 193
  • 1
  • 11
  • At [so] you are expected to try to **write the code yourself**. After **[doing more research](//meta.stackoverflow.com/questions/261592)** if you have a problem you can **post what you've tried** with a **clear explanation of what isn't working** and providing a [**Minimal, Complete, and Verifiable example**](//stackoverflow.com/help/mcve). I suggest reading [ask] a good question and [the perfect question](http://codeblog.jonskeet.uk/2010/08/29/writing-the-perfect-question/). Also, be sure to take the [tour] and read **[this](//meta.stackoverflow.com/questions/347937/)**. – John Conde May 19 '17 at 11:39

2 Answers2

3

You can convert curl command into php code with this website . https://incarnate.github.io/curl-to-php/ For you code here is the result.

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, "https://api.sendinblue.com/v2.0/email");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, "{\"cc\":[\"cc@example.net\":\"cc whom!\"],\"text\":\"This is the text\",\"bcc\":[\"bcc@example.net\":\"bcc whom!\"],\"replyto\":[\"replyto@email.com\",\"reply to!\"],\"html\":\"This is the <h1>HTML</h1>This is inline image 1.<br/><img src=\"{myinlineimage1.png}\" alt=\"image1\" border=\"0\"><br/>Some text<br/>This is inline image 2.<br/><img src=\"{myinlineimage2.jpg}\" alt=\"image2\" border=\"0\"><br/>Some more text<br/>Re-used inline image 1.<br/><img src=\"{myinlineimage1.png}\" alt=\"image3\" border=\"0\">\",\"to\":{\"to@example.net\":\"to whom!\"},\"attachment\": {\"myfilename.pdf\":\"your_pdf_files_base64_encoded_chunk_data\"},\"from\":[\"from@email.com\",\"from email!\"],\"subject\":\"My subject\",\"headers\":{\"Content-Type\":\"text/html; charset=iso-8859-1\", \"X-param1\":\"value1\",\"X-param2\":\"value2\", \"X-Mailin-custom\":\"my custom value\",\"X-Mailin-IP\":\"102.102.1.2\", \"X-Mailin-Tag\":\"My tag\"},\"inline_image\":{\"myinlineimage1.png\":\"your_png_files_base64_encoded_chunk_data\", \"myinlineimage2.jpg\":\"your_jpg_files_base64_encoded_chunk_data\"}}");
curl_setopt($ch, CURLOPT_POST, 1);

$headers = array();
$headers[] = "Api-Key: your_access_key";
$headers[] = "Content-Type: application/x-www-form-urlencoded";
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);

$result = curl_exec($ch);
if (curl_errno($ch)) {
    echo 'Error:' . curl_error($ch);
}
curl_close ($ch);

edited : just change this curl_setopt($ch, CURLOPT_POSTFIELDS , .... with this

curl_setopt($ch, CURLOPT_POSTFIELDS,$senddata);
rheeantz
  • 960
  • 8
  • 12
  • I've update the code. What should I do if I want to send the array data $senddata to the curl ? – Tony May 19 '17 at 04:10
  • Thank you, I tried but I get a error even thought I set the emails and the datas. ~string '{"code":"failure","message":"valid 'to' email address required","data":[]}' (length=74)~ – Tony May 19 '17 at 04:26
-1

You can download the Postman extension for Chrome. You get the option to view code for a request. In this case, you'll have code like below for your sample.

$request = new HttpRequest();
$request->setUrl('https://api.sendinblue.com/v2.0/email');
$request->setMethod(HTTP_METH_POST);

$request->setHeaders(array(
  'api-key' => 'your_access_key',
));

$request->setBody('{
  "cc":["cc@example.net":"cc whom!"],
  "text":"This is the text",
  "bcc":["bcc@example.net":"bcc whom!"],
  "replyto":["replyto@email.com","reply to!"],
  "html":"This is the <h1>HTML</h1>This is inline image 1.<br/><img src=\"{myinlineimage1.png}\" alt=\"image1\" border=\"0\"><br/>Some text<br/>This is inline image 2.<br/><img src=\"{myinlineimage2.jpg}\" alt=\"image2\" border=\"0\"><br/>Some more text<br/>Re-used inline image 1.<br/><img src=\"{myinlineimage1.png}\" alt=\"image3\" border=\"0\">",
  "to":{"to@example.net":"to whom!"},
  "attachment": {
    "myfilename.pdf":"your_pdf_files_base64_encoded_chunk_data"
  },
  "from":["from@email.com","from email!"],
  "subject":"My subject",
  "headers":{
    "Content-Type":"text/html; charset=iso-8859-1",
    "X-param1":"value1",
    "X-param2":"value2",
    "X-Mailin-custom":"my custom value",
    "X-Mailin-IP":"102.102.1.2",
    "X-Mailin-Tag":"My tag"
  },
  "inline_image":{
    "myinlineimage1.png":"your_png_files_base64_encoded_chunk_data",
    "myinlineimage2.jpg":"your_jpg_files_base64_encoded_chunk_data"
  }
}');

try {
  $response = $request->send();

  echo $response->getBody();
} catch (HttpException $ex) {
  echo $ex;
}
Oluwafemi Sule
  • 36,144
  • 1
  • 56
  • 81