Gå til innhold

Mail-Form script med attachment funksjon


Anbefalte innlegg

Heisann! Jeg har nå lett nettet rundt etter et mail-form script som jeg tenkte jeg skulle ha på siten min. Det som er viktig for meg er at det både er lett å skreddersy utseendemessig og at det har mulighet for attachment/file-upload. Er det noen der ute som kan hjelpe meg med et sånt?

Lenke til kommentar
Videoannonse
Annonse

Jeg har vært på www.hotscripts.com og mange flere simulære sider...Men jeg har faktisk ikke funnet et script som:

 

- passer utseendemessig eller kan forandres.

- er gratis.

 

Skulle egentlig tro det var lett å finne et slikt script, ettersom det er såpass mange som sikkert ønsker seg det...Men det er det absolutt ikke...Det er lett å finne mail-form, men ikke med attachment funksjon...

Lenke til kommentar

Sorry....Fant ikke no passende er heller...Hadde faktisk litt problemer med å skjønne hvordan de sidene funka...vanskelig å orientere seg på de syntes jeg...

 

- Jeg trenger fortsatt script, så hvis du har eller vet om et....Vær så snill å ta kontakt...

Lenke til kommentar

Jeg fant dette i manualen, kanskje det kan brukes:

/*

This might be some useful stuff to send out emails in either text

or html or multipart version, and attach one or more files or even

none to it. Inspired by Kieran's msg above, I thought it might be 

useful to have a complete function for doing this, so it can be used 

wherever it's needed. Anyway I am not too sure how this script will

behave under Windows.



{br} represent the HTML-tag for line break and should be replaced,

but I did not know how to not get the original tag  parsed here.



function SendMail($From, $FromName, $To, $ToName, $Subject, $Text, $Html, $AttmFiles)

$From      ... sender mail address like "[email protected]"

$FromName  ... sender name like "My Name"

$To        ... recipient mail address like "[email protected]"

$ToName    ... recipients name like "Your Name"

$Subject   ... subject of the mail like "This is my first testmail"

$Text      ... text version of the mail

$Html      ... html version of the mail

$AttmFiles ... array containing the filenames to attach like array("file1","file2")

*/



$TEXT="This is the first testn in text formatn.";

$HTML="<font color=red>This is the first test in html format.</font>";

$ATTM=array("/home/myself/test/go.jpg",

         "/home/myself/test/SomeDoc.pdf");



SendMail(

"[email protected]","PHP Apache Webmailer", //sender

"[email protected]","Recipients Name",    //recipient

"Testmail",                               //subject

$TEXT,$HTML,$ATTM);                      //body and attachment(s)



function SendMail($From,$FromName,$To,$ToName,$Subject,$Text,$Html,$AttmFiles){

$OB="----=_OuterBoundary_000";

$IB="----=_InnerBoundery_001";

$Html=$Html?$Html:preg_replace("/n/","{br}",$Text) 

or die("neither text nor html part present.");

$Text=$Text?$Text:"Sorry, but you need an html mailer to read this mail.";

$From or die("sender address missing");

$To or die("recipient address missing");



$headers ="MIME-Version: 1.0rn"; 

$headers.="From: ".$FromName." <".$From.">n"; 

$headers.="To: ".$ToName." <".$To.">n"; 

$headers.="Reply-To: ".$FromName." <".$From.">n"; 

$headers.="X-Priority: 1n"; 

$headers.="X-MSMail-Priority: Highn"; 

$headers.="X-Mailer: My PHP Mailern"; 

$headers.="Content-Type: multipart/mixed;ntboundary="".$OB.""n";



//Messages start with text/html alternatives in OB

$Msg ="This is a multi-part message in MIME format.n";

$Msg.="n--".$OB."n";

$Msg.="Content-Type: multipart/alternative;ntboundary="".$IB.""nn";



//plaintext section 

$Msg.="n--".$IB."n";

$Msg.="Content-Type: text/plain;ntcharset="iso-8859-1"n";

$Msg.="Content-Transfer-Encoding: quoted-printablenn";

// plaintext goes here

$Msg.=$Text."nn";



// html section 

$Msg.="n--".$IB."n";

$Msg.="Content-Type: text/html;ntcharset="iso-8859-1"n";

$Msg.="Content-Transfer-Encoding: base64nn";

// html goes here 

$Msg.=chunk_split(base64_encode($Html))."nn";



// end of IB

$Msg.="n--".$IB."--n";



// attachments

if($AttmFiles){

foreach($AttmFiles as $AttmFile){

$patharray = explode ("/", $AttmFile); 

 $FileName=$patharray[count($patharray)-1];

 $Msg.= "n--".$OB."n";

 $Msg.="Content-Type: application/octetstream;ntname="".$FileName.""n";

$Msg.="Content-Transfer-Encoding: base64n";

 $Msg.="Content-Disposition: attachment;ntfilename="".$FileName.""nn";



//file goes here

 $fd=fopen ($AttmFile, "r");

 $FileContent=fread($fd,filesize($AttmFile));

 fclose ($fd);

 $FileContent=chunk_split(base64_encode($FileContent));

 $Msg.=$FileContent;

 $Msg.="nn";

}

}



//message ends

$Msg.="n--".$OB."--n";

mail($To,$Subject,$Msg,$headers); 

//syslog(LOG_INFO,"Mail: Message sent to $ToName <$To>");

}

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...