8722 sujets

Développement web côté serveur, CMS

Hello !

Alors voilà j'entre directement dans le lourd : je suis une brêle en PHP.
Après avoir suivi pas mal de tuto (y compris sur ce forum & site) je ne trouve pas l'erreur de mon formulaire de contact.
Les ; et . sont ok..

Pour info, je n'ai pas encore installé le CAPCHA.

Merci d'avance pour vos réponse Smiley smile

Code php :

<?php
$destinataire = 'romer.claire@gmail.com';
$name = htmlentities($_POST['name']);
$email = htmlentities($_POST['email']);
$subject = htmlentities($_POST['subject']);
$message = htmlentities($_POST['message']);
$visiteur = htmlentities($_POST['visiteur']);
$phone = htmlentities($_POST['phone']);

/*En-tête du mail*/
$header = 'Nouveau message :'.subject.'';

/*Contenu du mail*/
$contenu = 'Voici le contenu du message : '.message.'';
$contenu .= 'Coordonnées du clients : '.name.'';
$contenu .= 'Votre email : '.email.'';
$contenu .= 'Votre Tel : '.phone.'';
$contenu .= 'Vous mavez connu : '.visiteur.'';

header('location: contact.php');
mail($destinataire, $header, $contenu);
?>


Mon formulaire : www.clover-photographies.fr/html/contact.php ou le code :

<form  action="formulaire.php" method="POST" name="formulaire">
						<div class="form-label">
							<label>Nom complet</label><br/>
							<input type="text" id="name" name="name" required />
						</div>
						
						<div class="form-label">
							<label>Email</label><br/>
							<input type="email" id="email" name="email" required />
						</div>
                        <div class="form-label">
							<label>Téléphone</label><br/>
							<input type="text" id="phone" name="phone" required />
						</div>

                        <div>
                            <label class="form-label">Votre demande concerne...</label>
                            <input type="checkbox" name="service" value="Mariage" />Mariage
                            <input type="checkbox" name="service" value="Grossesse" />Grossesse
                            <input type="checkbox" name="service" value="Nouveau-né" />Nouveau-né<br/>
                            <input type="checkbox" name="service" value="Portrait" />Portrait
                            <input type="checkbox" name="service" value="Famille" />Famille
                            <input type="checkbox" name="service" value="Autre" />Autre
                        </div>

						<div class="form-label">
							<label for="subject">Objet du message</label><br/>
							<input type="text" name="subject" id="subject" required />
						</div>
                        <div class="form-label">
							<label for="message">Votre demande</label><br/>
							<textarea name="message" id="message" required></textarea>
						</div>

                        <div class="form-label">
							<label for="visiteur">Par curiosité, comment m'avez-vous connu&nbsp;?</label><br/>
							<input type="text" id="visiteur" name="visiteur" required />
						</div><br/>

                        <div>
                            En soumettant ce formulaire, j'accepte que les informations saisies soient exploités (exclusivement par Clover Photographe), dans le cadre de la présente demande et de la relation commerciale qui peut en découler et notamment être contacté par mail et/par téléphone par Claire Römer / Clover Photographies.
                        </div>
                        
						<br/><div class="form-button"><input type="submit" name="envoi" value="Envoyer" /></div>
                        
                        <br/><p>ATTENTION, pensez également à vérifier vos courriers indésirables (SPAMS), quelques temps après votre demande d'informations.</p>
					</form>
[quote=claireRweb]

/*Contenu du mail*/
$contenu = 'Voici le contenu du message : '.message.'';
$contenu .= 'Coordonnées du clients : '.name.'';
$contenu .= 'Votre email : '.email.'';
$contenu .= 'Votre Tel : '.phone.'';
$contenu .= 'Vous mavez connu : '.visiteur.'';

.message. .name. .email. .phone. .visiteur. doivent être .$message. .$name. .$email. .$phone. .$visiteur. !!!!!
Integrator a écrit :
Quel problème tu rencontres exactement avec ton formulaire?

Je ne reçois aucun mail dans ma boite mail... Je vais essayer de faire les corrections données ci-dessous
Modifié par claireRweb (24 Sep 2018 - 10:24)
Soldat8889 a écrit :
[quote=claireRweb]

/*Contenu du mail*/
$contenu = 'Voici le contenu du message : '.message.'';
$contenu .= 'Coordonnées du clients : '.name.'';
$contenu .= 'Votre email : '.email.'';
$contenu .= 'Votre Tel : '.phone.'';
$contenu .= 'Vous mavez connu : '.visiteur.'';

.message. .name. .email. .phone. .visiteur. doivent être .$message. .$name. .$email. .$phone. .$visiteur. !!!!!


Merci pour ta réponse. Je vais corriger ça !
Soldat8889 a écrit :
[quote=claireRweb]

/*Contenu du mail*/
$contenu = 'Voici le contenu du message : '.message.'';
$contenu .= 'Coordonnées du clients : '.name.'';
$contenu .= 'Votre email : '.email.'';
$contenu .= 'Votre Tel : '.phone.'';
$contenu .= 'Vous mavez connu : '.visiteur.'';

.message. .name. .email. .phone. .visiteur. doivent être .$message. .$name. .$email. .$phone. .$visiteur. !!!!!


Bon malgré les modifications du code je ne reçoit tjrs aucun email..
dans les spam ?

as-tu fais des var_dump sur tes $_POST pour voir si ceux ci n'étaient pas vides?
Modérateur
Et l'eau,

1. la redirection avec le contenu des superglobales....
2. pas de test sur la fonction mail....
niuxe a écrit :

2. pas de test sur la fonction mail....


amazing.. j'avais pas vu faut rajouter un if

if(mail($destinataire, $header, $contenu))
{
}

Modifié par JENCAL (24 Sep 2018 - 11:20)
Et en plus il ne faut pas confondre l'ordre !

bool mail ( string $to , string $subject , string $message [, mixed $additional_headers [, string $additional_parameters ]] )
JohnNes a écrit :
Salut ,
Et ton header() passe avant l'envoi de ton mail ,header() c'est après normalement .


Merci pour ta réponse.
Du coup j'ai suivi plusieurs tutos et j'ai modifié mon formulaire au plus simple.
Ce code à été tester sur mon autre site web et il fonctionne. Je me demande s'il ne faut pas que je paramètre mon hébergeur ou autre chose.. Un idée ?
Voici le code php :

<?php
$email = $_POST['email'];
$sujet = $_POST['sujet'];
$nom = $_POST['nom'];
$message = $_POST['message'];
$tel = $_POST['tel'];
$contenu = "Vous avez reçu un message de : " .$nom. " | " .$email. "Numéro de tél : " .$tel;

mail('romer.claire@gmail.com', $sujet, $message, $contenu);
?>