Message d erreur ne s'inscrit pas dans la modal
flexi2202
Messages postés
4141
Statut
Membre
-
flexi2202 Messages postés 4141 Statut Membre -
flexi2202 Messages postés 4141 Statut Membre -
bonjour a tous
je viens de découvrir une erreur de codage sur mon site
il y aune première condition qui se met en place lorsque un membre se connecte
je récupère son adresse mail dans la base de donnée
si elle existe je n affiche pas de pop up d'inscription a la newsletter
autrement une pop up s'ouvre avec son adresse email prédéfinie
Le code de cette pop up est dans un fichier mymondal.php
Donc imaginons que le membre n'est pas encore dans ma base de donnée donc la pop up s affiche
Le membre voit son email s afficher
il décide de vouloir s'inscrire avec une autre adresse mail et se trompe et par le plus grand des hasard
cette adresse email existe déjà ...
Il y a la page mymondal.php qui s'ouvre et afficher le message d erreur
et c'est la le problème
je souhaiterais que le message puisse s afficher dans la pop up
voici le code qui teste l adresse email dans al base de donnee
le traitement des erreurs traitement-neuw.php
le traitement des erreurs traitement-neuw.php
je viens de découvrir une erreur de codage sur mon site
il y aune première condition qui se met en place lorsque un membre se connecte
je récupère son adresse mail dans la base de donnée
si elle existe je n affiche pas de pop up d'inscription a la newsletter
autrement une pop up s'ouvre avec son adresse email prédéfinie
Le code de cette pop up est dans un fichier mymondal.php
Donc imaginons que le membre n'est pas encore dans ma base de donnée donc la pop up s affiche
Le membre voit son email s afficher
il décide de vouloir s'inscrire avec une autre adresse mail et se trompe et par le plus grand des hasard
cette adresse email existe déjà ...
Il y a la page mymondal.php qui s'ouvre et afficher le message d erreur
et c'est la le problème
je souhaiterais que le message puisse s afficher dans la pop up
voici le code qui teste l adresse email dans al base de donnee
le traitement des erreurs traitement-neuw.php
<?php
session_start();
?>
<?php
require_once 'base.php';
if (!empty($_POST['email']))
{
$email = htmlspecialchars($_POST['email']);
$check = $bdd->prepare('SELECT email FROM neuw WHERE email = ?');
$check->execute(array(
$email
));
$data = $check->fetch();
$row = $check->rowCount();
if ($row == 0)
{
if (strlen($email) <= 100)
{
if (filter_var($email, FILTER_VALIDATE_EMAIL))
{
$cost = ['cost' => 12];
$ip = $_SERVER['REMOTE_ADDR'];
$insert = $bdd->prepare('INSERT INTO neuw( email) VALUES(:email)');
$insert->execute(array(
'email' => $email,
));
//traitement de l envois par mail
setlocale (LC_TIME, 'fr_FR.utf8','fra');
date_default_timezone_set('Europe/Brussels');
$date1 = date('d-m-Y H:i:s'); // Date du jour
// on entre un ou Plusieurs destinataires
$to = 'perroquet666@hotmail.com'; // notez la virgule
// Sujet
$subject= "NOUVEL ABONNE NEUWSLLETER ";
// message
$message =
'
<html>
<head>
<title>un nouveau membre vient de s inscrire </title>
</head>
<body>
<table>
<tr>
<td>son pseudo est </td><td>'.$email .'</td></br>
</tr>
<tr>
<td>date</td><td>'.$date1 .'</td></br>
</tr>
</table>
</body>
</html> ';
// Pour envoyer un mail HTML, l'en-tête Content-type doit être défini
$headers[] = 'MIME-Version: 1.0';
$headers[] = 'content-type: text/html; charset=utf-8';
// En-têtes additionnels
//$headers[] = "From: " . $name . "<". $_POST["email"] .">\r\n";
$headers[] = 'From: '.$email."\r\n".
'Reply-To: '.$name."\r\n" .
'X-Mailer: PHP/' . phpversion();
// Envoi
//var_dump($headers);
if(mail($to, $subject, $message, implode("\r\n", $headers))){
// success message
//echo "Success!<br />";
}else{
// error message
//echo "Fail<br />";
}
header('Location:redirection-inscription-neuw.php?reg_err=success');
die();
}
else
{
header('Location: myModal.php?reg_err=email');
die();
}
}
else
{
header('Location: myModal.php?reg_err=email_length');
die();
}
}
else
{
header('Location: myModal.php?reg_err=already');
die();
}
}
<body>
<!-- Bootstrap Modal -->
<div class="modal fade" id="myModal" role="dialog">
<div class="modal-dialog">
<!-- Modal content -->
<div class="modal-content">
<!-- Modal header -->
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-title text-primary">Inscription newsletter pêche perle</h4>
</div>
<!-- Modal body -->
<div class="modal-body">
<!-- debut cinquieme cadre-->
<div class="card-defaut text-center" style="height:100%; ">
<div class="card-block">
<div class="card h-100">
<div class="login-form">
<!-- gestion erreurs-->
<?php
if(isset($_GET['reg_err'])) {
$err = htmlspecialchars($_GET['reg_err']);
switch($err) {
case 'success':
?>
<div class="alert alert-success">
<strong>Succès</strong> inscription réussie !
<strong>
<a href="connexion-site.php" target="_blank">A présent connectes toi ici</a>
</strong>
</div>
<?php
break;
case 'email':
?>
<div class="alert alert-danger">
<strong>Erreur</strong> Email non valide
</div>
<?php
break;
case 'email_length':
?>
<div class="alert alert-danger">
<strong>Erreur</strong> Email trop long
</div>
<?php
break;
case 'pseudo_length':
?>
<div class="alert alert-danger">
<strong>Erreur</strong> Compte déjà existant
</div>
<?php
}
}
?>
<!-- on affiche le formulaire-->
<div class="container">
<form action="traitement-neuw.php" method="post">
<div class="row">
<div class="col-sm">
<p class="card-text" style ="font-size: 20px;text-align:center;margin-bottom:10px;" >
Bonjour
</p>
</div>
</div>
<div class="row">
<div class="col-sm">
<input type="email" name="email" class="form-control" placeholder="Email" value="<?php echo $_SESSION['email'];?>" autocomplete="off" style="text-align:center;margin-bottom:10px;">
</div>
</div>
<div class="row">
<div class="col-sm">
<p class="card-text" style ="font-size: 20px;text-align:center;margin-bottom:10px;" >
Abonne-toi pour ne rater aucun nouvel évènement
</p>
</div>
</div>
<div class="row">
<div class="col-sm">
<button type="submit" class="button" style= "font-size: 40px;text-align:center;" >Inscription</button>
</div>
</div>
</form>
<div class="row">
<div class="col-sm">
<div class="modal-footer">
<button type="button" class="bg-primary text-white btn-sm " data-dismiss="modal"> Close </button>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<!-- fin cinquieme cadre-->
<!-- Modal footer -->
</div>
<!-- // .modal-content -->
</div>
<!-- // .modal-dialog -->
</div>
<!-- // #myModal -->
<script>
// ouverture de la modal
jQuery(document).ready(function(){
$("#myModal").modal();
});
</script>
<script>
// ouverture de la modal
jQuery(document).ready(function(){
$("#myModal").modal();
});
</script>
le traitement des erreurs traitement-neuw.php
<?php
session_start();
?>
<?php
require_once 'base.php';
if (!empty($_POST['email']))
{
$email = htmlspecialchars($_POST['email']);
$check = $bdd->prepare('SELECT email FROM neuw WHERE email = ?');
$check->execute(array(
$email
));
$data = $check->fetch();
$row = $check->rowCount();
if ($row == 0)
{
if (strlen($email) <= 100)
{
if (filter_var($email, FILTER_VALIDATE_EMAIL))
{
$cost = ['cost' => 12];
$ip = $_SERVER['REMOTE_ADDR'];
$insert = $bdd->prepare('INSERT INTO neuw( email) VALUES(:email)');
$insert->execute(array(
'email' => $email,
));
//traitement de l envois par mail
setlocale (LC_TIME, 'fr_FR.utf8','fra');
date_default_timezone_set('Europe/Brussels');
$date1 = date('d-m-Y H:i:s'); // Date du jour
// on entre un ou Plusieurs destinataires
$to = 'perroquet666@hotmail.com'; // notez la virgule
// Sujet
$subject= "NOUVEL ABONNE NEUWSLLETER ";
// message
$message =
'
<html>
<head>
<title>un nouveau membre vient de s inscrire </title>
</head>
<body>
<table>
<tr>
<td>son pseudo est </td><td>'.$email .'</td></br>
</tr>
<tr>
<td>date</td><td>'.$date1 .'</td></br>
</tr>
</table>
</body>
</html> ';
// Pour envoyer un mail HTML, l'en-tête Content-type doit être défini
$headers[] = 'MIME-Version: 1.0';
$headers[] = 'content-type: text/html; charset=utf-8';
// En-têtes additionnels
//$headers[] = "From: " . $name . "<". $_POST["email"] .">\r\n";
$headers[] = 'From: '.$email."\r\n".
'Reply-To: '.$name."\r\n" .
'X-Mailer: PHP/' . phpversion();
// Envoi
//var_dump($headers);
if(mail($to, $subject, $message, implode("\r\n", $headers))){
// success message
//echo "Success!<br />";
}else{
// error message
//echo "Fail<br />";
}
header('Location:redirection-inscription-neuw.php?reg_err=success');
die();
}
else
{
header('Location: myModal.php?reg_err=email');
die();
}
}
else
{
header('Location: myModal.php?reg_err=email_length');
die();
}
}
else
{
header('Location: myModal.php?reg_err=already');
die();
}
}
A voir également:
- Message d erreur ne s'inscrit pas dans la modal
- Recuperer message whatsapp supprimé - Guide
- Message supprimé whatsapp - Guide
- Message absence thunderbird - Guide
- Epingler un message whatsapp - Accueil - Messagerie instantanée
- Message du pere noel gratuit whatsapp - Accueil - Messagerie instantanée
9 réponses
bonjour
Merci pour la reponse
En fait mon message d erreur s affiche bien mais dans la page myModal.php
et non pas dans la boite de dialogue
Merci pour la reponse
En fait mon message d erreur s affiche bien mais dans la page myModal.php
et non pas dans la boite de dialogue
je ne sais plus modifier mon message je remets mes codes
en fait tout fonctionne bien sauf que mes messages d erreurs ne s'affichent pas dans la modal mais dans la page myModal.php
qui est la modal qui doit s 'afficher sur ma page d accueil
voici le code qui teste l adresse email dans la base de donnée
afin d afficher ou pas la modal
si l adresse email existe on affiche pas la modal
si l adresse mail existe on affiche la modal
Le code de myModal.php
le traitement des erreurs
traitement-neuw.php
</code>
en fait tout fonctionne bien sauf que mes messages d erreurs ne s'affichent pas dans la modal mais dans la page myModal.php
qui est la modal qui doit s 'afficher sur ma page d accueil
voici le code qui teste l adresse email dans la base de donnée
afin d afficher ou pas la modal
si l adresse email existe on affiche pas la modal
si l adresse mail existe on affiche la modal
<!-- teste si une variable existe ou non qui a ete definie dans la page de connexion de cette facon on lance ou pas la neuwsletter si elle est vide on n affcihe pas la neuwsletter-->
<?php if (isset($_SESSION['user'])) { ?>
<?php
// Include pour la connexion à la bdd
require_once 'base.php';
//récupération PROPRE des variables AVANT de les utiliser
$email = !empty($_SESSION['email']) ? $_SESSION['email'] : NULL;
//préparation de la requête et des variables oiur regarder si l adresse email est presente ou pas
$sql = "SELECT * FROM neuw WHERE email=?";
$datas = [$email];
//exécution de la requête
try{
$stmt = $bdd->prepare($sql);
$stmt->execute($datas);
$user = $stmt->fetch();
}catch(Exception $e){
// en cas d'erreur :
echo " Erreur ! ".$e->getMessage();
echo " Les datas : " ;
print_r($datas);
}
if (!empty($user)) {
echo "email existe ";
} else {
if(empty($_SESSION['story'])) {
//je regarde si la session global stry est vide ou pas
$_SESSION['story'] = TRUE;
require_once "myModal";
}
}
}
else {
} ?>`
Le code de myModal.php
<body>
<!-- Bootstrap Modal -->
<div class="modal fade" id="myModal" role="dialog">
<div class="modal-dialog">
<!-- Modal content -->
<div class="modal-content">
<!-- Modal header -->
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-title text-primary">Inscription newsletter pêche perle</h4>
</div>
<!-- Modal body -->
<div class="modal-body">
<!-- debut cinquieme cadre-->
<div class="card-defaut text-center" style="height:100%; ">
<div class="card-block">
<div class="card h-100">
<div class="login-form">
<!-- gestion erreurs-->
<?php
if(isset($_GET['reg_err'])) {
$err = htmlspecialchars($_GET['reg_err']);
switch($err) {
case 'success':
?>
<div class="alert alert-success">
<strong>Succès</strong> inscription réussie !
<strong>
<a href="connexion-site.php" target="_blank">A présent connectes toi ici</a>
</strong>
</div>
<?php
break;
case 'email':
?>
<div class="alert alert-danger">
<strong>Erreur</strong> Email non valide
</div>
<?php
break;
case 'email_length':
?>
<div class="alert alert-danger">
<strong>Erreur</strong> Email trop long
</div>
<?php
break;
case 'pseudo_length':
?>
<div class="alert alert-danger">
<strong>Erreur</strong> Compte déjà existant
</div>
<?php
}
}
?>
<!-- on affiche le formulaire-->
<div class="container">
<form action="traitement-neuw.php" method="post">
<div class="row">
<div class="col-sm">
<p class="card-text" style ="font-size: 20px;text-align:center;margin-bottom:10px;" >
Bonjour
</p>
</div>
</div>
<div class="row">
<div class="col-sm">
<input type="email" name="email" class="form-control" placeholder="Email" value="<?php echo $_SESSION['email'];?>" autocomplete="off" style="text-align:center;margin-bottom:10px;">
</div>
</div>
<div class="row">
<div class="col-sm">
<p class="card-text" style ="font-size: 20px;text-align:center;margin-bottom:10px;" >
Abonne-toi pour ne rater aucun nouvel évènement
</p>
</div>
</div>
<div class="row">
<div class="col-sm">
<button type="submit" class="button" style= "font-size: 40px;text-align:center;" >Inscription</button>
</div>
</div>
</form>
<div class="row">
<div class="col-sm">
<div class="modal-footer">
<button type="button" class="bg-primary text-white btn-sm " data-dismiss="modal"> Close </button>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<!-- fin cinquieme cadre-->
<!-- Modal footer -->
</div>
<!-- // .modal-content -->
</div>
<!-- // .modal-dialog -->
</div>
<!-- // #myModal -->
<script>
// ouverture de la modal
jQuery(document).ready(function(){
$("#myModal").modal();
});
</script>
<script>
// ouverture de la modal
jQuery(document).ready(function(){
$("#myModal").modal();
});
</script>
le traitement des erreurs
traitement-neuw.php
<code php><?php
session_start();
?>
<?php
require_once 'base.php';
if (!empty($_POST['email']))
{
$email = htmlspecialchars($_POST['email']);
$check = $bdd->prepare('SELECT email FROM neuw WHERE email = ?');
$check->execute(array(
$email
));
$data = $check->fetch();
$row = $check->rowCount();
if ($row == 0)
{
if (strlen($email) <= 100)
{
if (filter_var($email, FILTER_VALIDATE_EMAIL))
{
$cost = ['cost' => 12];
$ip = $_SERVER['REMOTE_ADDR'];
$insert = $bdd->prepare('INSERT INTO neuw( email) VALUES(:email)');
$insert->execute(array(
'email' => $email,
));
//traitement de l envois par mail
setlocale (LC_TIME, 'fr_FR.utf8','fra');
date_default_timezone_set('Europe/Brussels');
$date1 = date('d-m-Y H:i:s'); // Date du jour
// on entre un ou Plusieurs destinataires
$to = 'perroquet666@hotmail.com'; // notez la virgule
// Sujet
$subject= "NOUVEL ABONNE NEUWSLLETER ";
// message
$message =
'
<html>
<head>
<title>un nouveau membre vient de s inscrire </title>
</head>
<body>
<table>
<tr>
<td>son pseudo est </td><td>'.$email .'</td></br>
</tr>
<tr>
<td>date</td><td>'.$date1 .'</td></br>
</tr>
</table>
</body>
</html> ';
// Pour envoyer un mail HTML, l'en-tête Content-type doit être défini
$headers[] = 'MIME-Version: 1.0';
$headers[] = 'content-type: text/html; charset=utf-8';
// En-têtes additionnels
//$headers[] = "From: " . $name . "<". $_POST["email"] .">\r\n";
$headers[] = 'From: '.$email."\r\n".
'Reply-To: '.$name."\r\n" .
'X-Mailer: PHP/' . phpversion();
// Envoi
//var_dump($headers);
if(mail($to, $subject, $message, implode("\r\n", $headers))){
// success message
//echo "Success!<br />";
}else{
// error message
//echo "Fail<br />";
}
header('Location:redirection-inscription-neuw.php?reg_err=success');
die();
}
else
{
header('Location: myModal.php?reg_err=email');
die();
}
}
else
{
header('Location: myModal.php?reg_err=email_length');
die();
}
}
else
{
header('Location: myModal.php?reg_err=already');
die();
}
}
</code>
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
bonjour
merci pour la réponse
le code html ne me sers que pour appeler la pop up si l utilisateur n'est pas encore dans la base de donnée des newsletters ...
que pourrais je bien y changer ?
merci pour la réponse
le code html ne me sers que pour appeler la pop up si l utilisateur n'est pas encore dans la base de donnée des newsletters ...
que pourrais je bien y changer ?
