2
Modifier le Title de ma page au retour d’un formulaire
Bonjour à tous,
Je cherche à modifier le title de ma page lorsque j’ai des erreurs à la validation de mon formulaire.
En gros si le formulaire est mal rempli je souhaite ajouter Erreur dans ma balise Title.
Je n’arrive pas à récupérer mes variables dans ma page contact pour afficher mon erreur.
J’ai créé un form avec CVT, dans ma page contact j’appelle #FORMULAIRE_CONTACTME et j’ai créé dans un dossier formulaires mes fichiers contactme.html et contactme.php.
Comment faire passer les erreurs vers le fichier contact.html qui est à la racine de mon site ?
Mon fichier contactme.html
<h1 class="titre1"><:perso_contactez_moi:></h1>
[<p class="erreurTxt">(#ENV*{message_erreur})</p>]
[<p class="ok">(#ENV*{message_ok})</p>]
<p><:perso_contact_attention:></p>
<form action="#ENV{action}" method="post">
#ACTION_FORMULAIRE{#ENV{action}}
#SET{erreurs,#ENV**{erreurs}|table_valeur{nom}}
<div id="infosForm">
<div class="champs[ (#ENV**{erreurs}|table_valeur{nom}|?{erreur})]">
<label for="nom"><:perso_nom:> <em>(<:perso_obligatoire:>)</em></label>
<input type="text" name="nom" id="nom" value="#ENV{nom}" />
[<em class='erreurChamps'>(#ENV**{erreurs}|table_valeur{nom})</em>]
</div>
<div class="champs">
<label for="prenom"><:perso_prenom:></label>
<input type="text" name="prenom" id="prenom" value="#ENV{prenom}" />
</div>
<div class="champs[ (#ENV**{erreurs}|table_valeur{email}|?{erreur})]">
<label for="email"><:perso_email:> <em>(<:perso_obligatoire:>)</em></label>
<input type="text" name="email" id="email" value="#ENV{email}" />
[<em class='erreurChamps'>(#ENV**{erreurs}|table_valeur{email}) </em>]
</div>
</div>
<div id="messageForm">
<label for="message"><:perso_message:></label>
<textarea name="message" id="message" cols="30" rows="10">#ENV{message}</textarea>
</div>
<p id="envoyer"><input type="submit" value="<:perso_envoyer:>" /></p>
</form>
Mon fichier contactme.php :
<?php
function formulaires_contactme_charger_dist (){
$valeurs = array(
'nom' => '',
'prenom' => '',
'email' => '',
'message' => ''
);
return $valeurs;
}
function formulaires_contactme_verifier_dist (){
$erreurs = array();
// champs obligatoires
foreach(array ('nom','email') as $obligatoire) {
if (!_request($obligatoire)) $erreurs[$obligatoire] = _T('perso_email_obligatoire');
}
// Verification de l'email
include_spip('inc/filtres');
if (_request('email') AND !email_valide(_request('email'))) {
$erreurs['email'] = _T('perso_email_non_valide');
}
// Message en cas d'erreur
if (count($erreurs)) {
$erreurs['message_erreur'] = _T('perso_email_erreur');
}
return $erreurs;
}
function formulaires_contactme_traiter_dist (){
$envoyer_mail = charger_fonction('envoyer_mail','inc');
$email_to = $GLOBALS['meta']['email_webmaster'];
$sujet = "contact du site";
$email_from = _request('email');
$message = $nom . $prenom;
$message2 = "Merci d'avoir pris contact avec moi, je vous répondrais dans les plus brefs délais";
$message = _request('prenom')." "._request('nom')." a écrit : \n\n"
._request('message')." \n\n";
$envoyer_mail($email_to,$sujet,$message,$email_from);
$envoyer_mail($email_from,$sujet,$message2,$email_to);
return array('message_ok'=>_T('perso_email_msg_email'));
}
?>
Merci