Formulaire vide
Posté : 15 janv. 2014, 19:05
Bonjour à tous,
J'ai créé un formulaire html qui est ensuite traité en PHP. Il permet deux choses :
- L'accès à un contenu uniquement si le bon mot de passe à été donné dans le formulaire
- L'envoi d'un mail vers le webmaster pour dire qui s'est connecté avec le premier mot de passe (il y en a deux, mais on s'en fiche ici)
J'ai bien mis une vérification pour être sur que les champs ne sont pas vides (j'ai d'ailleurs fait ça sur le formulaire directement en html avec REQUIRE mais aussi avec PHP.
J'ai testé et ça fonctionne très bien, si je ne rempli pas un champ, ou si je ne mets pas une adresse mail valide, ou l'un des deux codes, ça ne passe pas.
Pourtant, parfois, certains mails m'arrivent sans le contenu des variables, je ne comprends vraiment pas pourquoi.
Voici mon code html :
PS : j'ai déjà posté sur le site du zéro, mais hélas sans résultat pour l'instant, donc excusez la doublette !
J'ai créé un formulaire html qui est ensuite traité en PHP. Il permet deux choses :
- L'accès à un contenu uniquement si le bon mot de passe à été donné dans le formulaire
- L'envoi d'un mail vers le webmaster pour dire qui s'est connecté avec le premier mot de passe (il y en a deux, mais on s'en fiche ici)
J'ai bien mis une vérification pour être sur que les champs ne sont pas vides (j'ai d'ailleurs fait ça sur le formulaire directement en html avec REQUIRE mais aussi avec PHP.
J'ai testé et ça fonctionne très bien, si je ne rempli pas un champ, ou si je ne mets pas une adresse mail valide, ou l'un des deux codes, ça ne passe pas.
Pourtant, parfois, certains mails m'arrivent sans le contenu des variables, je ne comprends vraiment pas pourquoi.
Voici mon code html :
<form method="POST" action="traitement.php">
<table align="center" style="margin:auto; text-align:center">
<tr>
<td>Votre E-Mail : </td><td><input type="email" required name="email" /></td>
</tr>
<tr>
<td>Code d'accès : </td><td><input type="password" required name="password" /></td>
</tr>
</table>
<input type="submit" value="Connexion" />
</form>
</td>
</tr>
</table>
et mon traitement php :<?php
header('Content-type: text/html; charset=UTF-8');
$verifmail="!^[a-zA-Z0-9._-]+@[a-zA-Z0-9._-]{2,}\.[a-zA-Z]{2,4}$!";
if (!$_POST['email'] OR !$_POST['password']): ?>
Il faut renseigner tous les champs
<?php elseif (!preg_match($verifmail,$_POST['email'])): ?>
Veuillez insérer une adresse mail valide
<?php elseif ($_POST['password'] == "test1" OR $_POST['password'] == "test2"): ?>
//ici ma page html avec son contenu accessible //uniquement si l'on a entré l'un des 2 mots de passe
<?php else: ?>
Le mot de passe est erroné, veuillez recommencer
<?php endif; ?>
<?php if ($_POST['password'] == "test1")
{
$headers ='From: "TEST"<TEST>'."\n";
$headers .='Reply-To: ' .$_POST['email']."\n";
$headers .='Content-Type: text/plain; charset="utf-8"'."\n";
$headers .='Content-Transfer-Encoding: 8bit';
mail('[email protected]', 'test', 'test ' .$_POST['email'] , $headers);
}
?>
Merci pour votre aide !PS : j'ai déjà posté sur le site du zéro, mais hélas sans résultat pour l'instant, donc excusez la doublette !