Probleme envois de courriel via php
Guimb0
Messages postés
10
Date d'inscription
Statut
Membre
Dernière intervention
-
Utilisateur anonyme -
Utilisateur anonyme -
Je suis en confection de site et pour sauver un peu de temps j'ai acheter un script php pour le transfert de courriel via mon site web .
Lors de l'envois il me donne le code d'erreur suivant :
<?php
//www.resellscripts.info
error_reporting(E_ALL);
if(getenv('REQUEST_METHOD') != 'POST')
exit('Opss! Only POST requests are accepted');
include_once 'email.class.php';
include_once 'config.class.php';
include_once 'protector.class.php';
define('DS' , DIRECTORY_SEPARATOR);
$email = new Email($_POST);
$email->init();
?>
Le email.class.php :
<?php
//www.resellscripts.info
define('IS_AJAX', isset($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest');
class Email extends Protector {
public function init(){
if($this->finish()){
$mail = $this->phpmailer();
$mail = new PHPMailer(true);
$mail->IsHTML(true);
try{
$mail->Body = $this->body();
$mail->Subject = $this->subject();
$mail->From = $this->from('email');
$mail->FromName = $this->from('name');
$mail->AddReplyTo($this->from('email'));
/** SMTP OPTIONS **/
if($this->Config->smtp['use'] != 'no'){
$mail->IsSMTP();
$mail->Host = $this->Config->smtp['host'];
$mail->Port = $this->Config->smtp['port'];
$mail->SMTPSecure = $this->Config->smtp['secure'];
if($this->Config->smtp['auth'] != 'no'){
$mail->SMTPAuth = true;
$mail->Username = $this->Config->smtp['username'];
$mail->Password = $this->Config->smtp['password'];
}
}
// Adds Addresses
foreach($this->Config->Address as $Address){
if(!empty($Address))
$mail->AddAddress($Address);
}
// Adds cc
foreach($this->Config->Cc as $Address){
if(!empty($Address))
$mail->AddCC($Address);
}
$mail->CharSet = $this->Config->charset;
$email = $mail->Send();
if($email){
if(IS_AJAX)
echo json_encode(true);
else
echo $this->msg['success'];
}
}catch(Exception $e){
if(IS_AJAX)
echo json_encode(false);
else
echo $this->msg['error'];
}
}
}
public function __constructor($post){
parent::__construct($post);
}
private function phpmailer(){
include_once 'phpmailer' . DS . 'class.phpmailer.php';
return new PHPMailer();
}
public function body(){
$body = "<h3 style=\"color:#0066CC;border-bottom:1px solid #0066CC;\">Details</h3>\n";
foreach($this->data as $key => $val){
if($this->fields[$key]['func'] != 'sec1'){
if($this->fields[$key]['func'] != 'sec2'){
$field = $this->fields[$key]['name'];
$body .= " <strong>{$field}: </strong>{$val}<br />";
}
}
}
return $body;
}
public function subject(){
foreach($this->fields as $key => $val){
if(isset($this->fields[$key]['is']) && $this->fields[$key]['is'] == 'subject')
return $this->data[$key];
}
}
public function from($a){
foreach($this->fields as $key => $val){
if($a == 'email'){
if(isset($this->fields[$key]['is']) && $this->fields[$key]['is'] == 'email')
return $this->data[$key];
}else{
if(isset($this->fields[$key]['is']) && $this->fields[$key]['is'] == 'name')
return $this->data[$key];
}
}
}
}
?>
Merci de votre aide
Lors de l'envois il me donne le code d'erreur suivant :
<?php
//www.resellscripts.info
error_reporting(E_ALL);
if(getenv('REQUEST_METHOD') != 'POST')
exit('Opss! Only POST requests are accepted');
include_once 'email.class.php';
include_once 'config.class.php';
include_once 'protector.class.php';
define('DS' , DIRECTORY_SEPARATOR);
$email = new Email($_POST);
$email->init();
?>
Le email.class.php :
<?php
//www.resellscripts.info
define('IS_AJAX', isset($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest');
class Email extends Protector {
public function init(){
if($this->finish()){
$mail = $this->phpmailer();
$mail = new PHPMailer(true);
$mail->IsHTML(true);
try{
$mail->Body = $this->body();
$mail->Subject = $this->subject();
$mail->From = $this->from('email');
$mail->FromName = $this->from('name');
$mail->AddReplyTo($this->from('email'));
/** SMTP OPTIONS **/
if($this->Config->smtp['use'] != 'no'){
$mail->IsSMTP();
$mail->Host = $this->Config->smtp['host'];
$mail->Port = $this->Config->smtp['port'];
$mail->SMTPSecure = $this->Config->smtp['secure'];
if($this->Config->smtp['auth'] != 'no'){
$mail->SMTPAuth = true;
$mail->Username = $this->Config->smtp['username'];
$mail->Password = $this->Config->smtp['password'];
}
}
// Adds Addresses
foreach($this->Config->Address as $Address){
if(!empty($Address))
$mail->AddAddress($Address);
}
// Adds cc
foreach($this->Config->Cc as $Address){
if(!empty($Address))
$mail->AddCC($Address);
}
$mail->CharSet = $this->Config->charset;
$email = $mail->Send();
if($email){
if(IS_AJAX)
echo json_encode(true);
else
echo $this->msg['success'];
}
}catch(Exception $e){
if(IS_AJAX)
echo json_encode(false);
else
echo $this->msg['error'];
}
}
}
public function __constructor($post){
parent::__construct($post);
}
private function phpmailer(){
include_once 'phpmailer' . DS . 'class.phpmailer.php';
return new PHPMailer();
}
public function body(){
$body = "<h3 style=\"color:#0066CC;border-bottom:1px solid #0066CC;\">Details</h3>\n";
foreach($this->data as $key => $val){
if($this->fields[$key]['func'] != 'sec1'){
if($this->fields[$key]['func'] != 'sec2'){
$field = $this->fields[$key]['name'];
$body .= " <strong>{$field}: </strong>{$val}<br />";
}
}
}
return $body;
}
public function subject(){
foreach($this->fields as $key => $val){
if(isset($this->fields[$key]['is']) && $this->fields[$key]['is'] == 'subject')
return $this->data[$key];
}
}
public function from($a){
foreach($this->fields as $key => $val){
if($a == 'email'){
if(isset($this->fields[$key]['is']) && $this->fields[$key]['is'] == 'email')
return $this->data[$key];
}else{
if(isset($this->fields[$key]['is']) && $this->fields[$key]['is'] == 'name')
return $this->data[$key];
}
}
}
}
?>
Merci de votre aide
A voir également:
- Probleme envois de courriel via php
- Cci courriel - Guide
- Easy php - Télécharger - Divers Web & Internet
- Via michelin carte - Télécharger - Transports & Cartes
- Expert php pinterest - Télécharger - Langages
- Partager des photos via un lien - Guide
4 réponses
Voilà ce qui arrive lorsque j'essaie d'envoyer
Warning: include_once(../php - Copie/config.class.php): failed to open stream: No such file or directory in /home/auberget/public_html/publi-print.net/assets/php/send.php on line 7
Warning: include_once(): Failed opening '../php - Copie/config.class.php' for inclusion (include_path='.:/usr/lib/php:/usr/local/lib/php') in /home/auberget/public_html/publi-print.net/assets/php/send.php on line 7
Warning: include_once(../php - Copie/protector.class.php): failed to open stream: No such file or directory in /home/auberget/public_html/publi-print.net/assets/php/send.php on line 8
Warning: include_once(): Failed opening '../php - Copie/protector.class.php' for inclusion (include_path='.:/usr/lib/php:/usr/local/lib/php') in /home/auberget/public_html/publi-print.net/assets/php/send.php on line 8
Warning: include_once(../php - Copie/email.class.php): failed to open stream: No such file or directory in /home/auberget/public_html/publi-print.net/assets/php/send.php on line 9
Warning: include_once(): Failed opening '../php - Copie/email.class.php' for inclusion (include_path='.:/usr/lib/php:/usr/local/lib/php') in /home/auberget/public_html/publi-print.net/assets/php/send.php on line 9
Fatal error: Class 'Email' not found in /home/auberget/public_html/publi-print.net/assets/php/send.php on line 13
Warning: include_once(../php - Copie/config.class.php): failed to open stream: No such file or directory in /home/auberget/public_html/publi-print.net/assets/php/send.php on line 7
Warning: include_once(): Failed opening '../php - Copie/config.class.php' for inclusion (include_path='.:/usr/lib/php:/usr/local/lib/php') in /home/auberget/public_html/publi-print.net/assets/php/send.php on line 7
Warning: include_once(../php - Copie/protector.class.php): failed to open stream: No such file or directory in /home/auberget/public_html/publi-print.net/assets/php/send.php on line 8
Warning: include_once(): Failed opening '../php - Copie/protector.class.php' for inclusion (include_path='.:/usr/lib/php:/usr/local/lib/php') in /home/auberget/public_html/publi-print.net/assets/php/send.php on line 8
Warning: include_once(../php - Copie/email.class.php): failed to open stream: No such file or directory in /home/auberget/public_html/publi-print.net/assets/php/send.php on line 9
Warning: include_once(): Failed opening '../php - Copie/email.class.php' for inclusion (include_path='.:/usr/lib/php:/usr/local/lib/php') in /home/auberget/public_html/publi-print.net/assets/php/send.php on line 9
Fatal error: Class 'Email' not found in /home/auberget/public_html/publi-print.net/assets/php/send.php on line 13
Bonjour
Exemple :
C'est juste une piste ^^ c'est comme ça que je fais et c'est "portable" sur n'importe quel hébergement ( à la condition que ton index pricipal soit en .php, sinon remplace le par la bonne extension )
En informatique 99% des problèmes se situent entre le fauteuil et le clavier
Exemple :
<?php define('WEBROOT', str_replace('index.php', '', $_SERVER['SCRIPT_NAME'])); define('ROOT' , str_replace('index.php', '', $_SERVER['SCRIPT_FILENAME'])); // inserer les controleurs principaux require ROOT . 'controleurs/controleur/Controleur.php'; require ROOT . 'modeles/Modele.php'; require ROOT . 'controleurs/editeur/Form.php'; require ROOT . 'controleurs/erreur/Erreur.php';
C'est juste une piste ^^ c'est comme ça que je fais et c'est "portable" sur n'importe quel hébergement ( à la condition que ton index pricipal soit en .php, sinon remplace le par la bonne extension )
En informatique 99% des problèmes se situent entre le fauteuil et le clavier