[Résolu]formulaire inséré dans tag utilisateur -
Laure_21 - 23/03/2011
Citation :#~~~~~ DEBUT BLOC A NE PAS SUPPRIMER ~~~~~
#~ Version du CMS: #1.9.2
#~ Url du site : http://www.3isa.fr/cmsms
#~ Hébergeur / Soft : ovh
#~ Informations Système :
#~ ----------------------------------------------
#~ Cms Version: 1.9.2
#~ Installed Modules:
#~ * CMSMailer: 2.0
#~ * FileManager: 1.0.3
#~ * MenuManager: 1.7.4
#~ * ModuleManager: 1.4
#~ * News: 2.11
#~ * nuSOAP: 1.0.2
#~ * Printing: 1.1.1
#~ * Search: 1.6.8
#~ * ThemeManager: 1.1.3
#~ * TinyMCE: 2.8.2
#~ Config Information:
#~ * php_memory_limit:
#~ * process_whole_template: false
#~ * output_compression: false
#~ * max_upload_size: 64000000
#~ * default_upload_permission: 664
#~ * url_rewriting: mod_rewrite
#~ * page_extension:
#~ * query_var: page
#~ * image_manipulation_prog: GD
#~ * auto_alias_content: true
#~ * locale: fr_FR.utf-8
#~ * default_encoding: utf-8
#~ * admin_encoding: utf-8
#~ * set_names: true
#~ Php Information:
#~ * phpversion: 5.2.17
#~ * md5_function: On (Vrai)
#~ * gd_version: 2
#~ * tempnam_function: On (Vrai)
#~ * magic_quotes_runtime: Off (Faux)
#~ * E_STRICT: 0
#~ * memory_limit: 128M
#~ * max_execution_time: 30
#~ * output_buffering: On
#~ * safe_mode: Off (Faux)
#~ * file_uploads: On (Vrai)
#~ * post_max_size: 64M
#~ * upload_max_filesize: 64M
#~ * session_save_path: /tmp (1777)
#~ * session_use_cookies: On (Vrai)
#~ * xml_function: On (Vrai)
#~ Server Information:
#~ * Server Api: cgi
#~ * Server Db Type: MySQL (mysql)
#~ * Server Db Version: 5.0.51a
#~ ----------------------------------------------
#~~~~~ FIN BLOC A NE PAS SUPPRIMER ~~~~~
Bonjour,
J'ai récupéré un formulaire php que j'ai modifié à ma sauce. Lorsque je le test sur WampServer il n'y a aucun soucis tout fonctionne, je reçois autant le mail que l'accusé de réception.
Donc j'ai voulu l'incorporer dans ma page contact. Pour cela, je suis allé voir
http://wiki.cmsmadesimple.org/index.php/Developers_FAQ/fr et j'ai donc mis mon formulaire dans un tag que j'ai appelé formulaire, ensuite je fais appel à ce tag en incorporant {formulaire} dans ma page contact. Le formulaire s'affiche mais rien ne fonctionne. Lorsque je fais "envoyer" je suis redirigé sur ma page d'accueil et je ne reçoit aucun mail rien.
J'ai bien pensé à retirer les balises <?php et ?> mais j'en ai encore à l'intérieur du code, pensez-vous que c'est ça qui pose problème?
Code :
ini_set("SMTP","smtp.orange.fr");
ini_set("sendmail_from","lmargerin@3isa.fr");
if (isset($_POST["envoyer"])){ // Si le formulaire a été soumis
$etat = "erreur"; // On initialise notre etat à erreur, il sera changé à "ok" si la vérification du formulaire est un succès, sinon il reste à erreur
// On récupère les champs du formulaire, et on arrange leur mise en forme
if (isset($_POST["son_nom"])) $_POST["son_nom"]=trim(stripslashes
($_POST["son_nom"])); // trim() enlève les espaces en début et fin de chaine
if (isset($_POST["son_email"])) $_POST["son_email"]=trim(stripslashes
($_POST["son_email"])); // stripslashes() retire les backslashes ==> \' devient '
if (isset($_POST["son_prenom"])) $_POST["son_prenom"]=trim(stripslashes(
$_POST["son_prenom"]));
if (isset($_POST["son_objet"])) $_POST["son_objet"]=trim(stripslashes
($_POST["son_objet"]));
if (isset($_POST["son_message"])) $_POST["son_message"]=trim(stripslashes
($_POST["son_message"]));
// Après la mise en forme, on vérifie la validité des champs
if (empty($_POST["son_nom"])) { // L'utilisateur n'a pas rempli le champ pseudo
$erreur="Vous n'avez pas entré votre pseudo..."; // On met dans erreur le message qui sera affiché
}
elseif (empty($_POST["son_email"])) { // L'utilisateur n'a pas rempli le champ email
$erreur="Nous avons besoin de votre e-mail pour vous répondre...";
}
elseif (!eregi("^[0-9a-z]([-_.]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\.[a-z]{2,4}$",$_POST["son_email"])){ // On vérifie si l'email est bien de la forme messagerie@domaine.tld (cf cours d'expressions régulières)
$erreur="Votre adresse e-mail n'est pas valide...";
}
elseif (empty($_POST["son_objet"])) { // L'utilisateur n'a pas rempli le champ objet
$erreur="Vous devez entrer l'objet de votre message...";
}
elseif (empty($_POST["son_message"])) { // L'utilsateur n'a écrit aucun message
$erreur="Merci de saisir un message...";
}
else { // Si tous les champs sont valides, on change l'état à ok
$etat="ok";
}
}
else { // Sinon le formulaire n'a pas été soumis
$etat="attente"; // On passe donc dans l'état attente
}
if ($etat!="ok"){ // Le formulaire a été soumis mais il y a des erreurs (etat=erreur) OU le formulaire n'a pas été soumis (etat=attente)
if ($etat=="erreur"){ // Cas où le formulaire a été soumis mais il y a des erreurs
echo "<span style=\"color:red\">".$erreur."</span><br /><br />\n";
// On affiche le message correspondant à l'erreur
}
?>
<!-- Formulaire HTML qu'on affiche dans l'état attente ou erreur -->
<form method="post" action="<?php echo $_SERVER["PHP_SELF"]; ?>">
<!-- Les données du formulaire seront récupérée avec la méthode POST, et action correspond à la page contenant le formulaire -->
<p style="text-align:left">
<label for="son_nom">Nom *</label><br /> <!-- Intitulé du champ nom -->
<input type="text" size="30" name="son_nom" id="son_nom" value=""<?php
if (!empty($_POST["son_nom"])) {
// le pseudo de l'expéditeur a été saisi --> le réafficher
echo htmlspecialchars($_POST["son_nom"],ENT_QUOTES);
// htmlspecialchars() convertit les caractères spéciaux en leurs code html, exemple : & devient &
}
?>" />
<br />
<label for="son_prenom">Prénom</label><br /> <!-- Intitulé du
champ prenom (facultatif) -->
<input type="text" size="30" name="son_prenom" id="son_prenom" value="<?php
if (!empty($_POST["son_prenom"])) {
// le prénom a été saisi --> le réafficher
echo htmlspecialchars($_POST["son_prenom"],ENT_QUOTES);
}
?>" />
<br />
<label for="son_email">E-mail *</label><br /> <!-- Intitulé du champ e-mail -->
<input type="text" size="30" name="son_email" id="son_email" value="<?php
if (!empty($_POST["son_email"])) {
// l'e-mail de l'expéditeur a été saisi --> le réafficher
echo htmlspecialchars($_POST["son_email"],ENT_QUOTES);
}
?>" />
<br />
<label for="son_objet">Objet *</label><br /> <!-- Intitulé du champ objet -->
<input type="text" size="20" name="son_objet" id="son_objet" value="<?php
if (!empty($_POST["son_objet"])) {
// l'objet du message a été saisi --> le réafficher
echo htmlspecialchars($_POST["son_objet"],ENT_QUOTES);
}
?>"/>
<br />
<label for="son_message">Message *</label><br /> <!-- Intitulé du champ message -->
<textarea name="son_message" id="son_message" cols="30" rows="10"><?php
if (isset($_POST["son_message"])) {
// le message a été saisi --> le réafficher
echo htmlspecialchars($_POST["son_message"],ENT_QUOTES);
}
?>
</textarea>
<br />
<input type="submit" name="envoyer" value="Envoyer" /><input type="reset" name="reset" value="Effacer" />
</p>
</form>
<!-- FIN du formulaire HTML -->
<?php
}
else { // Sinon l'état est ok donc on envoie le mail
$son_nom = $_POST["son_nom"]; // On stocke les variables récupérées du formulaire
$son_prenom = $_POST["son_prenom"];
$son_email = $_POST["son_email"];
$son_objet = $_POST["son_objet"];
$son_message = $_POST["son_message"];
$mon_email = "lmargerin@3isa.fr"; // Mise en forme du message que vous recevrez
$mon_pseudo = "3ISA";
$mon_url = "http://www.3isa.fr";
$msg_pour_moi = "
- Nom : $son_nom \n
- Prénom : $son_prenom \n
- Son E-mail : $son_email \n
- Objet du message : $son_objet \n
- Message : \n $son_message \n\n";
// Mise en forme de l'accusé réception qu'il recevra
$accuse_pour_lui = "Bonjour $son_nom,\n
Votre message nous a bien été envoyé et nous tâcherons de vous répondre le plus rapidement possible.\n\n
- Votre E-mail : $son_email \n
- L'objet de votre message : $son_objet \n
- Votre message : \n $son_message \n\n
Merci et à bientôt sur http://www.3isa.fr !";
// Envoie du mail
$entete = "From: 3ISA <lmargerin@3isa.fr>\n"; // On prépare l'entête du message
$entete .= "MIME-Version: 1.0";
if (mail($mon_email,$son_objet,$msg_pour_moi,$entete) &&
mail($son_email,$son_objet,$accuse_pour_lui,$entete)){ // Si le mail a été envoyé
echo "<p style=\"text-align:center\">Votre message a été envoyé, vous recevrez une confirmation par mail.<br /><br />\n";
// On affiche un message de confirmation
//echo "<a href=\"http://www.3isa.fr\">Retour</a></p>\n";
// Avec un lien de retour vers l'accueil du site
}
else { // Sinon il y a eu une erreur lors de l'envoi
echo "<p style=\"text-align:center\">Un problème s'est produit lors de
l'envoi du message.\n";
echo "<a href=\"".$_SERVER["PHP_SELF"]."\">Réessayez...</a></p>\n";
// On propose un lien de retour vers le formulaire
}
}
[Résolu]formulaire inséré dans tag utilisateur -
bess - 23/03/2011
oui et pas qu'un peu....
pour faire cela, orientes toi vers les écritures de l'html DANS le code php
http://www.cmsmadesimple.fr/blog/16/15/Requeter-facilement-la-bdd-de-cmsmadesimple#main
plein d'exemple utile dans mon lien
[Résolu]formulaire inséré dans tag utilisateur -
Laure_21 - 24/03/2011
Merci Bess pour ta réponse. Je vais essayer de voir ça aujourd'hui mais c'est vrai que moi et le PHP ça fait trois... c'est pour ça j'aurai bien voulu tester en parallèle Formbuilder mais je dois vraiment pas être "fufute" car je n'arrive pas a télécharger le fichier .xml. Lorsque je vais la
http://dev.cmsmadesimple.org/project/files/69#package-77 et que je clique sur le fichier xml j'ai "Aucune information de style ne semble associée à ce fichier XML. L'arbre du document est affiché ci-dessous." Est-ce normal? sinon il y a t-il une méthode pour l'insérer grâce au fichier dé-zippé?
Désolé de poser des questions aussi aberrantes mais j'aurai bien voulu tester ce module pour voir les services qu'il proposait..
encore merci pour votre patience...
[Résolu]formulaire inséré dans tag utilisateur -
jce76350 - 24/03/2011
Citation :J'ai récupéré un formulaire php
Si tu veux un formulaire cmsms regarde
ici Plugins
[Résolu]formulaire inséré dans tag utilisateur -
bess - 24/03/2011
Citation :Lorsque je vais la http://dev.cmsmadesimple.org/project/fi … package-77 et que je clique sur le fichier xml j'ai "Aucune information de style ne semble associée à ce fichier XML. L'arbre du document est affiché ci-dessous." Est-ce normal? sinon il y a t-il une méthode pour l'insérer grâce au fichier dé-zippé?
fait un clic droit sur le lien > enregistrer sous
[Résolu]formulaire inséré dans tag utilisateur -
Laure_21 - 24/03/2011
Hihi, j'avoue ça va mieux comme ça, merci beaucoup =)
Merci aussi à toi jce76350 pour ta réponse.