Jump to content

PHP Grab <body> send mail


kongowea

Recommended Posts

Hi,

Please assist me with  a PHP code that can capture a displayed HTML body and mail it to a specific email account.

 

Hint: I tried to capture the page using grabURL function though since the page is secured, the recipient is forwarded a login page, but not the displayed page

 

The class I used is:

<?php
class grabUrl{
var $toEmail="";
var $mailSubject="";
var $mailHeaders="";
var $addHeaders="";
var $grabData="";

function createTo($email){
	$this->toEmail=$email;
}

function createCC($email){
	$this->mailHeaders.="Cc: $email\r\n";
}

function createBCC($email){
	$this->mailHeaders.="Bcc: $email\r\n";
}

function createSubject($sub){
	$this->mailSubject=$sub;
}

function createFrom($name,$email){
	$this->mailHeaders.="From: '$name' <$email>\r\n";
}

function sendMail($charset="iso-8859-1"){
	$this->mailHeaders.="MIME-Version: 1.0\r\n";
	$this->mailHeaders.="Content-type: text/html; charset=$charset\r\n"; // alternate is utf-8
	if(mail($this->toEmail,$this->mailSubject,$this->grabData,$this->mailHeaders)){
		return true;
	}else{
		return false;
	}
}

function getData($url,$use_include_path=0){
	$file = @fopen($url, 'rb', $use_include_path);
	if ($file){
		if ($fsize = @filesize($filename)){
			$data = fread($file, $fsize);
			}else{
				while (!feof($file)){
					$data .= fread($file, 1024);
			}
		}
	fclose($file);
	}
	$this->grabData=$data;
}

function showPage(){
	echo $this->grabData;
}

function returnData(){
	return $this->grabData;
}


}

/*
Sample Usage
*/

/*
$foo=new grabUrl();
$foo->createTo("[email protected]");
$foo->createCC("[email protected]");
$foo->createBCC("xxx.www.com");
$foo->createFrom("Vedanta Barooah","[email protected]");
$foo->createSubject("This is a test mail! Please Ignore!");
$foo->getData("http://www.bbc.co.uk");
if($foo->sendMail()){
echo "Mail Sent!";
}else{
echo "Error Sending Mail!";
}
*/
?>

 

Below is the code that calls the above class

<?

include("sendMail.php");
$foo=new grabUrl();
$foo->createTo("[email protected]");
$foo->createCC("[email protected]");
$foo->createFrom("[email protected]");
$foo->createSubject("My trial");
$foo->getData("http://www.phpfreaks.com/forums/index.php");
if($foo->sendMail()){
echo "Mail Sent!";
}else{
echo "Error Sending Mail!";
}
?>

 

Regards

Kongowea

 

Link to comment
https://forums.phpfreaks.com/topic/74171-php-grab-send-mail/
Share on other sites

  • 1 month later...

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.