I am trying to send an e-mail using php script but i am getting errors this is my code.i am using xampp netbeans and windows. and i included pear in the php.ini file but still having thies errors any ideas
require_once "Mail.php";
$from = "[email protected]";
$to = "'$email'";
$subject = "Online book store information";
$body = "This is your Id '$userID' click <a href =../index.php > here </a> to change to go to the website "; //todo change URL to make it work when it is online
$host = "ssl://smtp.gmail.com";
$port = "993";
$host = "smtp.gmail.com";
$username = "[email protected]";
$password = "";
$headers = array('From' => $from,
'To' => $to,
'Subject' => $subject);
$smtp = Mail::factory('smtp', array('host' => $host,
'port' => $port,
'auth' => true,
'username' => $username,
'password' => $password));
$mail = $smtp->send($to, $headers, $body);
if (PEAR::isError($mail)) {
echo("<p>" . $mail->getMessage() . "</p>");
} else {
echo("<p>Message successfully sent!</p>");
}
and this is the errors i am getting :
Strict Standards: Non-static method Mail::factory() should not be called statically in C:\xampp\htdocs\OnlineBookStore\Store\Register.php on line 85
Strict Standards: Non-static method PEAR::isError() should not be called statically, assuming $this from incompatible context in C:\xampp\php\PEAR\Mail\smtp.php on line 365
Strict Standards: Non-static method PEAR::isError() should not be called statically, assuming $this from incompatible context in C:\xampp\php\PEAR\Net\SMTP.php on line 450
Strict Standards: Non-static method PEAR::isError() should not be called statically, assuming $this from incompatible context in C:\xampp\php\PEAR\Net\SMTP.php on line 467
$smtp =& Mail::factory(...);Also see the comments on this post about PEAR mail help - drew010E_ALL ^ E_STRICTshould fix the warnings. You could useerror_reporting(E_ALL ^ E_STRICT);at the beginning of that script to only change the error reporting for that particular code. It is just that the PEAR mail class is not fully updated for PHP5 OOP. It should bepublic static function factory()instead offunction &factory(as defined in Mail.php - drew010error_reporting = E_ALL ^ E_STRICTor just leave php.ini as it is and adderror_reporting(E_ALL ^ E_STRICT);at the top of Register.php. - drew010