Ajax.request et PHPMailer
	
	
		Bonjour,
Une petite question concernant Ajax.request et PHPMailer :
Pour envoyer des mails via un formulaire j'utilise quelquechose du genre :
Côté JS :
	Code:
	
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
   |  
var mForm = $('id-de-mon-formulaire');
var url = 'mon-url/send-mail.php';					  
var params = "";
params += "mlHost=truc.host.com&mlPort=5025&mlPort=5025&mlHtml=1&mlMaxLength=900";
params += "&mlFrom=truc@truc.col&mlFromName="+mForm['fmNom'].value;
params += "&mlDestination=destinataire@truc.com|destinataire2@truc.com";
params += "&mlMail="+mForm['fmMail'].value+"&mlSociety="+mForm['fmSociety'].value+"&mlName="+mForm['fmNom'].value;
params += "&mlPhone="+mForm['fmTel'].value+"&mlSubject="+mForm['fmSujet'].value+"&mlMessage="+mForm['fmMessage'].value;
var myAjax = new Ajax.Request (
	url,
       {
  	        method: "post",
 		evalScripts: false,
   	        parameters : params,
   	        onComplete: function transResult (response) {
                    if (response.responseText == 'OK') {
	               // ici jolie message box de confirmation
                       mForm.reset();
                    }
                    else {
	               // ici vilaine box d'erreur
                    }
        }		     	
   }					    
); | 
 Et côté PHP:
	Code:
	
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
   | require("../_lib/phpmailer/class.phpmailer.php");
 
if (isset($_POST['mlMail'])) {
 
	$sender = strtolower($_POST['mlMail']);
	$senderSociety = $_POST['mlSociety'];
	$senderName = ucwords($_POST['mlName']);
	$phoneNumber = $_POST['mlPhone'];
	$subject = ucfirst($_POST['mlSubject']);
	$date = date("d/m/Y");
	$hour = date("H")."h".date("i");
	$message = $_POST['mlMessage'];		
 
	if (strlen($message) >= $_POST['mlMaxLength']) {
		echo 'Votre message est trop long !';
		exit();
	}
 
	$mail = new PHPMailer();
	$mail->Host=strtolower($_POST['mlHost']);
	$mail->Mailer = "smtp";
	$mail->Port = $_POST['mlPort'];
	if ($_POST['mlHtml']==1) {
		$mail->IsHTML(true);
	}
	$mail->CharSet="utf-8";
	$mail->From=strtolower($_POST['mlFrom']);
	$mail->FromName = $_POST['mlFromName'];
	$tab_addr = explode("|",$_POST['mlDestination']);
	for ($i=0;$i<count($tab_addr);$i++) {
		$mail->AddAddress(strtolower($tab_addr[$i]));
	}
	$mail->AddReplyTo($sender);
	$mail->Subject=$subject;
	$mail->Body="ici en fait mon joli mail en HTML";
        if(!$mail->Send()){ //Teste si le return code est ok.
	  echo $mail->ErrorInfo;
	}
	else{	  
	  echo 'OK';
	}
	$mail->SmtpClose();
	unset($mail); | 
 Plus d'autres tests mais sans intérêt ici.
Mon problème est que lorsque dans mon Textarea qui contient le message j'utilise certains caractères comme "?" par exemple, le message ne pars pas.
Quel encodage dois-je utiliser ? et de quel côté ? JS ? Php ?
Merci par avance.
Benjamin.