Je monte pour la première fois un site web. J'ai lu avec beaucoup d'intérêt le tuto step-by-step "Formulaire PHP et envoi par email" que je lis et relis en long en large et en diagonale tout en apprenant sur le tas Nvu, Eclipse, php et l'environnement Apache... sans plus avoir fait de programmation depuis... 30 ans... en Basic et Pascal... un autre temps. Bref je suis plus que novice.
J'ai également installé XAMPP au cas où. Je travaille actuellement en local pour les tests.
En fait, mon principal problème est le suivant: j'ai à peine adapté le code php du tutoriel servant à envoyer les données d'un formulaire HTML. Ma page html se complète bien, mais lorsque je clique sur le bouton submit qui renvoit à ce fichier php, une page s'ouvre affichant le code source de la page php comme s'il considérait qu'il s'agit d'une page texte... Après deux semaines de relecture je crie help !!! Je ne vois pas ce qui ne fonctionne pas dans le code PHP...

Quelqu'un pour m'éclairer ? Mucho gracias d'avance !
Formulaire HTML
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="content-type"
content="text/html; charset=utf-8">
<title>Demande d'offre</title>
</head>
<body>
<form method="post"
action="/Users/monposte/Sites/demande_offre.php">
<table
style="text-align: left; width: 700px;" border="0"
cellpadding="0" cellspacing="0">
<tbody>
./..
<table
style="width: 700px; text-align: left; margin-left: auto; margin-right: 0px;"
border="0" cellpadding="0" cellspacing="0">
<tbody>
<tr>
<td
style="vertical-align: middle; text-align: right; background-color: rgb(255, 255, 255); height: 40px;">
<p id="buttons"><input
value="Effacer les informations" type="reset">
<input value="Envoyer"
type="submit"> </p>
</td>
</tr>
</tbody>
</table>
</td>
</tr>
</tbody>
</table>
</form>
</body>
</html>
Page PHP
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<?php // Tests des champs
$msg_erreur = "Veuillez compléter les champs suivants:<br/><br/>";
$msg_ok = "Votre demande a été bien prise en compte.";
$message = $msg_erreur;
define('MAIL_DESTINATAIRE','mon_email');
define('MAIL_SUJET','Demande d\'offre de mission');
if (empty($_POST['civilite']))
$message .= "Veuillez sélectionner une formule de civilité<br/>";
if (empty($_POST['prenom']))
$message .= "Veuillez renseigner votre prénom<br/>";
if (empty($_POST['nom']))
$message .= "Veuillez renseigner votre nom<br/>";
if (empty($_POST['email']))
$message .= "Veuillez renseigner votre adresse email<br/>";
if (empty($_POST['societe']))
$message .= "Veuillez renseigner votre société<br/>";
if (empty($_POST['codepostal']))
$message .= "Veuillez renseigner votre code postal<br/>";
if (empty($_POST['localite']))
$message .= "Veuillez renseigner votre localité<br/>";
if (empty($_POST['telephone']))
$message .= "Veuillez renseigner votre téléphone<br/>";
if (empty($_POST['projet']))
$message .= "Veuillez renseigner le type de bâtiment<br/>";
if (empty($_POST['type']))
$message .= "Veuillez renseigner le type de projet<br/>";
if (empty($_POST['budget']))
$message .= "Veuillez renseigner le budget prévu<br/>";
if (empty($_POST['ville']))
$message .= "Veuillez renseigner la localité du projet<br/>";
// Check des champs vides
// Si champ vide, affichage du message d'erreur
if (strlen($message)>strlen($msg_erreur))
{
echo $message;
}
// sinon, c'est ok
else
{
foreach($_POST as $index => $valeur)
{
$$index = stripslashes(trim($valeur));
}
// En-tte de l'email de réponse
$mail_entete = "MIME-Version: 1.0\r\n";
$mail_entete .= "From: {$_POST['prenom']}"."{$_POST['nom']}"."<{$_POST['email']}>\r\n";
$mail_entete .= 'Reply-To: '.$_POST['email']."\r\n";
$mail_entete .= 'Content-Type: text/plain; charset="utf-8"';
$mail_entete .= "\r\nContent-Transfer-Encoding: 8bit\r\n";
$mail_entete .= 'X-Mailer:PHP/' . phpversion()."\r\n";
// Corps de l'email de prise de contact
$mail_corps = "Message de: $civilite $prenom $nom Société: $societe\n";
$mail_corps .= "Localité: $codepostal $localite\n";
$mail_corps .= "Téléphone: $telephone\n\n";
$mail_corps .= "*** Objet de la demande ***\n";
$mail_corps .= "Type de bâtiment $projet\n";
$mail_corps .= "Type de projet: $type\n";
$mail_corps .= "Budget: $budget\n";
$mail_corps .= "Localisation du projet: $ville\n\n";
$mail_corps .= "Précision(s):\n";
$mail_corps .= $text;
// Envoi de l'email
if (mail(MAIL_DESTINATAIRE,MAIL_SUJET,$mail_entete,$mail_corps))
// Mail correctement expédié
{
echo $msg_ok;
}
// Mail non expédié
else
{
echo 'Une erreur est survenue lors de l\'envoi de votre demande. En cas de nouvel échec, il vous est possible de nous contacter au numéro de gsm renseigné sur notre page d\'information.';
}
}
?>
</head>
<body>
<br>
</body>
</html>