Tweeking a sendmail routine.

[email protected] ("Greg Schiedler")
Newsgroups perl.beginners.cgi
Message-ID <[email protected]>
I know enough Perl to be dangerous!

I have a form that sends out several different confirmations depending on
who the receipient is.

One particular E-mail I need to be in html format so I can put it into a
specific format.  I added a couple of lines to the sendmail routine I was
using and it fixed my E-mail problem but created a problem with my fax
gateway copy.

#1 gets sent the Joe Enduser plain E-mail(Can be html my tweek forced html)
#2 gets sent to the Office HTML Format.
#3 Fax gateway (Plain E-mail).

Fax gateway is in the US Telephone format ie.  [email protected]

I thought about adding an if statment but it looks like if I added an
if/else to my tweeked else statement the receipient info has already been
sent....

Greg :-)


file: sendmail.pl
<snip>
    # Give the server the message header

    print SMTP "DATA$CRLF";
    sysread(SMTP, $_, 1024);
    if (!/[^0-9]*354/) { $Error_Message = $_; return(6) }
    print SMTP "To: @to$CRLF";
    print SMTP "From: $from$CRLF";
    print SMTP "CC: @cc$CRLF" if $cc;
    print SMTP "Subject: $subject$CRLF";

    # If there are mime files to attach, we need special headers.

    if ($mime_id) {
        print SMTP "x-sender: $from$CRLF";
        print SMTP "x-mailer: CGI/Perl Cookbook$CRLF";
        print SMTP "Mime-Version: 1.0$CRLF";
        print SMTP "Content-Type: multipart/mixed;
boundary=\"$mime_id\"$CRLF$CRLF";
        print SMTP "--$mime_id$CRLF";
        print SMTP "Content-Type: text/plain;
charset=\"US-ASCII\"$CRLF$CRLF";
    }
# Greg @ Limo.Net 01/24/2007
# Added two header lines for force HTML output.
# else { print SMTP $CRLF }
#
    else {
        print SMTP "Mime-Version: 1.0$CRLF";
        print SMTP "Content-Type: text/html;
charset=\"ISO-8859-1\"$CRLF$CRLF";
    }
# End Greg @ Limo.Net 01/24/2007

    # Output the message body.

    if ($body) {
        if (!($body =~ /^[\\\/:]/) && ($body =~ /\s/)) { print SMTP $body }
        elsif (-e $body && -T $body) { &parse_template($body, *SMTP) }
    }
    print SMTP $CRLF;

    # Attach each file.

    for ($i = 0; $i < @ATTACH_FILES; ++$i) {
        $attach_file = $ATTACH_FILES[$i];
        $encoding = $ENCODING[$i];

        # Split the filename by directories.  / for unix, \ for dos, : for
mac
</snip>


Scanned for Virus by http://Barracuda.Limo.Net
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.