OVH Community, votre nouvel espace communautaire.

Problème de mail php


cobra26
12/03/2016, 21h49
Bonjour
j'ai crée mon site ainsi qu'un formulaire php dont voilà le code html
Code HTML:
 
"formulaire">
"contact" method="post" action="postcontact.php">
Vos coordonnées

>Nom :"text" id="nom" name="nom" tabindex="1" style="margin-bottom:3%; font-size: 1em;"/>

>Email :"text" id="email" name="email" tabindex="2" style="font-size: 1em;" />

Votre message :

>Objet :"text" id="objet" name="objet" tabindex="3" style="margin-bottom:3%; font-size: 1em;"/>

>Message :

"text-align:center;">"submit" name="envoi" value="Envoyer" style="font-size: 1em;" />
et le php postcontact :
Code PHP:
        /*
        ********************************************************************************************
        CONFIGURATION
        ********************************************************************************************
    */
    // destinataire est votre adresse mail. Pour envoyer à plusieurs à la fois, séparez-les par une virgule
    
$destinataire 'monmail';
     
    
// copie ? (envoie une copie au visiteur)
    
$copie 'oui'// 'oui' ou 'non'
     
    // Messages de confirmation du mail
    
$message_envoye "Votre message a bien été envoyé. Vous allez recevoir une copie du message par email.";
    
$message_non_envoye "L'envoi du mail a échoué, veuillez réessayer SVP.";
     
    
// Messages d'erreur du formulaire
    
$message_erreur_formulaire "Vous devez d'abord index.html">envoyer le formulaire.";
    
$message_formulaire_invalide "Vérifiez que tous les champs soient bien remplis et que l'email soit sans erreur.";
     
    
/*
        ********************************************************************************************
        FIN DE LA CONFIGURATION
        ********************************************************************************************
    */
     
    // on teste si le formulaire a été soumis
    
if (!isset($_POST['envoi']))
    {
        
// formulaire non envoyé
        
echo '

'.$message_erreur_formulaire.'

'
."\n";
    }
    else
    {
        
/*
         * cette fonction sert à nettoyer et enregistrer un texte
         */
        
function Rec($text)
        {
            
$text htmlspecialchars(trim($text), ENT_QUOTES);
            if (
=== get_magic_quotes_gpc())
            {
                
$text stripslashes($text);
            }
     
            
$text nl2br($text);
            return 
$text;
        };
     
        
/*
         * Cette fonction sert à vérifier la syntaxe d'un email
         */
        
function IsEmail($email)
        {
            
$value preg_match('/^(?:[\w\!\#\$\%\&\'\*\+\-\/\=\?\^\`\{\|\}\~]+\.)*[\w\!\#\$\%\&\'\*\+\-\/\=\?\^\`\{\|\}\~]+@(?:(?:(?:[a-zA-Z0-9_](?:[a-zA-Z0-9_\-](?!\.)){0,61}[a-zA-Z0-9_-]?\.)+[a-zA-Z0-9_](?:[a-zA-Z0-9_\-](?!$)){0,61}[a-zA-Z0-9_]?)|(?:\[(?:(?:[01]?\d{1,2}|2[0-4]\d|25[0-5])\.){3}(?:[01]?\d{1,2}|2[0-4]\d|25[0-5])\]))$/'$email);
            return ((
$value === 0) || ($value === false)) ? false true;
        }
     
        
// formulaire envoyé, on récupère tous les champs.
        
$nom     = (isset($_POST['nom']))     ? Rec($_POST['nom'])     : '';
        
$email   = (isset($_POST['email']))   ? Rec($_POST['email'])   : '';
        
$objet   = (isset($_POST['objet']))   ? Rec($_POST['objet'])   : '';
        
$message = (isset($_POST['message'])) ? Rec($_POST['message']) : '';
     
        
// On va vérifier les variables et l'email ...
        
$email = (IsEmail($email)) ? $email ''// soit l'email est vide si erroné, soit il vaut l'email entré
     
        
if (($nom != '') && ($email != '') && ($objet != '') && ($message != ''))
        {
            
// les 4 variables sont remplies, on génère puis envoie le mail
            
$headers  'MIME-Version: 1.0' "\r\n";
            
$headers .= 'From:'.$nom.' <'.$email.'>' "\r\n" .
                    
'Reply-To:'.$email"\r\n" .
                    
'Content-Type: text/plain; charset="utf-8"; DelSp="Yes"; format=flowed '."\r\n" .
                    
'Content-Disposition: inline'"\r\n" .
                    
'Content-Transfer-Encoding: 7bit'." \r\n" .
                    
'X-Mailer:PHP/'.phpversion();
        
            
// envoyer une copie au visiteur ?
            
if ($copie == 'oui')
            {
                
$cible $destinataire.','.$email;
            }
            else
            {
                
$cible $destinataire;
            };
     
            
// Remplacement de certains caractères spéciaux
            
$message str_replace("'","'",$message);
            
$message str_replace("’","'",$message);
            
$message str_replace(""",'"',$message);
            
$message str_replace('
'
,'',$message);
            
$message str_replace('','',$message);
            
$message str_replace("<","<",$message);
            
$message str_replace(">",">",$message);
            
$message str_replace("&","&",$message);
     
            
// Envoi du mail
            
if (mail($cible$objet$message$headers))
            {
                echo 
'

'.$message_envoye.'

'
."\n";
            }
            else
            {
                echo 
'

'.$message_non_envoye.'

'
."\n";
            };
        }
        else
        {
            
// une des 3 variables (ou plus) est vide ...
            
echo '

'.$message_formulaire_invalide.Retour au formulaire

'
."\n";
        };
    }; 
// fin du if (!isset($_POST['envoi']))
    
?>
J'ai donc un petit problème, lorsque je clique sur envoyer, le formulaire me renvoie une page blanche.
Le même code fonctionne très bien avec un hébergeur gratuit.
Est ce qu'il y a une manipulation pour activer le PHP sur OVH ?

Merci d'avance