Sample code for 30+ languages & platforms
Perl

Create multipart/alternative MIME

See more MIME Examples

Demonstrates how to create a multipart/alternative MIME structure using the NewMultipartAlternative method.

Chilkat Perl Downloads

Perl
use chilkat();

$success = 0;

# This example requires the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.

# Start with an empty MIME object...
$mime = chilkat::CkMime->new();

# Initialize it as multipart/alternative.
$mime->NewMultipartAlternative();

# Create a text/plain part.
$ptMime = chilkat::CkMime->new();
$ptMime->SetBodyFromPlainText("This is the plain text body.");
print $ptMime->getMime() . "\r\n";
print "****" . "\r\n";

# The text/plain part looks like this:

# 	Content-Type: text/plain
# 	Content-Transfer-Encoding: 7bit
# 
# 	This is the plain text body.

# Create a text/HTML part.
$htmlMime = chilkat::CkMime->new();
$htmlMime->SetBodyFromHtml("<html><body><p>This is the <b>HTML body</b></p></body></html>");
print $htmlMime->getMime() . "\r\n";
print "****" . "\r\n";

# The text/html part looks like this:

# 	Content-Type: text/html
# 	Content-Transfer-Encoding: 7bit
# 
# 	<html><body><p>This is the <b>HTML body</b></p></body></html>

# Add both parts as children of the multipart/alternative
$mime->AppendPart($ptMime);
$mime->AppendPart($htmlMime);
print $mime->getMime() . "\r\n";

# This the result.  The boundary string was automatically generaetd.

# 	Content-Type: multipart/alternative; boundary="------------080803090906030708030908"
# 
# 	--------------080803090906030708030908
# 	Content-Type: text/plain
# 	Content-Transfer-Encoding: 7bit
# 
# 	This is the plain text body.
# 	--------------080803090906030708030908
# 	Content-Type: text/html
# 	Content-Transfer-Encoding: 7bit
# 
# 	<html><body><p>This is the <b>HTML body</b></p></body></html>
# 	--------------080803090906030708030908--