2017-01-16 1 views
0

Good Evening,phpmailer pas une action perfomring, le téléchargement au lieu

Je suis en train d'envoyer un e-mail à mon adresse e-mail personnelle avec phpmailer. Je crée un fichier php pour le phpmailer et ensuite je définis l'action du formulaire sur ce fichier. Lorsque je télécharge la page sur mon site et que je la teste, au lieu d'exécuter l'action comme il se doit, je télécharge le fichier et je n'envoie pas d'e-mail. Voici mon code:

<form class="contactform" onsubmit="return validateForm()" action="email.php" ` method="post" enctype="text/plain"> 

Et le code de fichier php:

<body> 
<?php 
require("class.PHPMailer.php"); 

$mail = new PHPMailer(); 

$mail->IsSMTP();          // set mailer to use SMTP 
$mail->Host = "mail.50webs.com"; // specify main and backup server 
$mail->SMTPAuth = true;  // turn on SMTP authentication 
$mail->Username = "xxxxxx"; // SMTP username 
$mail->Password = "xxxxxxxx*"; // SMTP password 

$mail->From = "xxxxx"; 
$mail->FromName = "webmaster"; 
$mail->AddAddress("xxxxxx", "Bryan Sayles"); 
$mail->AddAddress("bxxxxxxxxx");     // name is optional 
$mail->AddReplyTo("xxxxxx", "Webmaster"); 

$mail->WordWrap = 50;         // set word wrap to 50 characters 
$mail->AddAttachment("/var/tmp/file.tar.gz");   // add attachments 
$mail->AddAttachment("/tmp/image.jpg", "new.jpg"); // optional name 
$mail->IsHTML(true);         // set email format to HTML 

$mail->Subject = "Contact form response"; 
$mail->Body = "$message $contactreason $name </b>"; 
$mail->AltBody = "This is the body in plain text for non-HTML mail clients"; 

if(!$mail->Send()) 
{ 
    echo "Message could not be sent. <p>"; 
    echo "Mailer Error: " . $mail->ErrorInfo; 
    exit; 
} 

echo "Message has been sent"; 
?> 
</body> 

j'ai vu il y a une question similaire ici, mais mon problème semble différent que je ne l'ai pas oublié les mots clés. Merci de votre aide.

Répondre

0

Je vous recommande de lire les documents PHPMailer et de suivre l'exemple de code fourni. Ce que vous avez posté ne fonctionnera pas avec une version récente de PHPMailer, donc get the latest. Le code que vous avez est basé sur un très vieux exemple obsolète, donc je ne sais pas d'où vous l'avez obtenu. Vous ne dites pas tout à fait ce que vous entendez par "télécharger le fichier", mais je suppose que vous voulez dire que l'envoi de votre demande affiche votre code PHP dans votre navigateur au lieu de l'exécuter. Cela signifie que votre serveur Web n'est pas configuré pour servir PHP correctement, et c'est a question better suited to Server Fault.

+0

Salut Synchro, Merci pour votre réponse. Il n'affiche pas le code dans le navigateur. Il télécharge le fichier sur mon ordinateur pour que je puisse l'ouvrir dans mon éditeur html. Je sais que cela semble étrange et impossible, mais c'est ce qui se passe. Je vais essayer le code que vous avez suggéré sur github. Merci. – bsayles12

+0

Pas impossible du tout! Le fichier téléchargé contient-il le code source de PHP? Si c'est le cas, c'est toujours le même problème - votre serveur n'est pas configuré pour servir PHP. – Synchro

+0

ouais. le fichier téléchargé contient le code source. Quel serait un bon serveur Web à utiliser qui permet PHP? – bsayles12