Datas formulaire non transmises à table SQL
Fermé
traderpierre
Messages postés
291
Date d'inscription
mercredi 11 octobre 2006
Statut
Membre
Dernière intervention
6 janvier 2024
-
11 juin 2020 à 16:30
traderpierre Messages postés 291 Date d'inscription mercredi 11 octobre 2006 Statut Membre Dernière intervention 6 janvier 2024 - 11 juin 2020 à 23:39
traderpierre Messages postés 291 Date d'inscription mercredi 11 octobre 2006 Statut Membre Dernière intervention 6 janvier 2024 - 11 juin 2020 à 23:39
A voir également:
- Datas formulaire non transmises à table SQL
- Table ascii - Guide
- Table des matières word - Guide
- Formulaire de réclamation facebook - Guide
- Civilité sur un formulaire - Forum VB / VBA
14 réponses
jordane45
Messages postés
38288
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
15 novembre 2024
4 703
11 juin 2020 à 16:47
11 juin 2020 à 16:47
Bonjour,
Commence par appliquer les consignes données dans ces deux liens :
https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code
https://forums.commentcamarche.net/forum/affich-37584941-php-pdo-gerer-les-erreurs ( surtout la partie qui indique de placer CHAQUE requête dans un bloc TRY/CATCH )
Reviens nous poster ensuite ton code directement sur le forum au lieu de nous mettre un zip
NB: Pour poster ton code, merci d'utiliser les BALISES DE CODE.
Explications ( à lire entièrement ! ) disponibles ici : https://codes-sources.commentcamarche.net/faq/11288-poster-un-extrait-de-code
.
Commence par appliquer les consignes données dans ces deux liens :
https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code
https://forums.commentcamarche.net/forum/affich-37584941-php-pdo-gerer-les-erreurs ( surtout la partie qui indique de placer CHAQUE requête dans un bloc TRY/CATCH )
Reviens nous poster ensuite ton code directement sur le forum au lieu de nous mettre un zip
NB: Pour poster ton code, merci d'utiliser les BALISES DE CODE.
Explications ( à lire entièrement ! ) disponibles ici : https://codes-sources.commentcamarche.net/faq/11288-poster-un-extrait-de-code
.
traderpierre
Messages postés
291
Date d'inscription
mercredi 11 octobre 2006
Statut
Membre
Dernière intervention
6 janvier 2024
6
11 juin 2020 à 17:10
11 juin 2020 à 17:10
Voici le Code PHP du fichier variables_environnement.php :
<?php
/* Définition des variables d'environnement collectées */
/* Définition variable l'adresse ip */
$adresse_ip = $_SERVER['REMOTE_ADDR'];
/* Définition variable fournisseur_acces */
function getCurrentIP() {
$ip = (getenv(HTTP_X_FORWARDED_FOR))
? getenv(HTTP_X_FORWARDED_FOR)
: getenv(REMOTE_ADDR);
return $ip;
};
function getCurrentFAI() {
$ip = getCurrentIP();
$host = @gethostbyaddr($ip);
$fai = false;
if(substr_count($host, 'proxad')) $fai = 'free';
if(substr_count($host, 'orange')) $fai = 'orange';
if(substr_count($host, 'wanadoo')) $fai = 'orange';
if(substr_count($host, 'sfr')) $fai = 'sfr';
if(substr_count($host, 'club-internet')) $fai = 'sfr';
if(substr_count($host, 'neuf')) $fai = 'neuf';
if(substr_count($host, 'gaoland')) $fai = 'neuf';
if(substr_count($host, 'bbox')) $fai = 'bouygues';
if(substr_count($host, 'bouyg')) $fai = 'bouygues';
if(substr_count($host, 'numericable')) $fai = 'numericable';
if(substr_count($host, 'tele2')) $fai = 'tele2';
return $fai;
};
$fournisseur_acces = getCurrentFAI();
if (empty($fournisseur_acces)) {
$fournisseur_acces = 'Inconnu';
}
/* définition Port Fourisseur d'accès */
$port_fai = $_SERVER['REMOTE_PORT'];
/* Définition variable Navigateur internaute */
if (preg_match_all("#Opera (.*)(\[[a-z]{2}\];)?$#isU", $_SERVER
["HTTP_USER_AGENT"], $version))
{
$navigateur = 'Opéra ' . $version[1][0];
}
elseif (preg_match_all("#MSIE (.*);#isU", $_SERVER["HTTP_USER_AGENT"],
$version))
{
$navigateur = 'Internet Explorer ' . $version[1][0];
}
elseif (preg_match_all("#Firefox(.*)$#isU", $_SERVER["HTTP_USER_AGENT"],
$version))
{
$version = str_replace('/', '', $version[1][0]);
$navigateur = 'Firefox ' . $version;
}
elseif (preg_match_all("#Chrome(.*) Safari#isU", $_SERVER["HTTP_USER_AGENT"],
$version))
{
$version = str_replace('/', '', $version[1][0]);
$navigateur = 'Chrome ' . $version;
}
elseif (preg_match_all("#Opera(.*) \(#isU", $_SERVER["HTTP_USER_AGENT"],
$version))
{
$version = str_replace('/', '', $version[1][0]);
$navigateur = 'Opéra ' . $version;
}
elseif (preg_match("#Nokia#", $_SERVER["HTTP_USER_AGENT"]))
{
$navigateur = 'Nokia';
}
elseif (preg_match("#Safari#", $_SERVER["HTTP_USER_AGENT"]))
{
$navigateur = 'Safari';
}
elseif (preg_match("#SeaMonkey#", $_SERVER["HTTP_USER_AGENT"]))
{
$navigateur = 'SeaMonkey';
}
elseif (preg_match("#PSP#", $_SERVER["HTTP_USER_AGENT"]))
{
$navigateur = 'PSP';
}
elseif (preg_match("#Netscape#", $_SERVER["HTTP_USER_AGENT"]))
{
$navigateur = 'Netscape';
}
else
{
$navigateur = 'Inconnu';
};
/* Définition variable systeme internaute */
if (preg_match_all("#Windows NT (.*)[;|\)]#isU", $_SERVER["HTTP_USER_AGENT"],
$version))
{
if ($version[1][0] == '6.1')
{
$os = 'Windows Seven';
}
elseif($version[1][0] == '6.0')
{
$os = 'Windows Vista';
}
elseif($version[1][0] == '5.1')
{
$os = 'Windows XP';
}
elseif($version[1][0] == '5.2')
{
$os = 'Windows Server 2003';
}
else
{
$os = 'Windows ' . $version[1][0];
}
}
elseif (preg_match_all("#Mac (.*);#isU", $_SERVER["HTTP_USER_AGENT"], $version))
{
$os = 'Mac ' . $version[1][0];
}
elseif (preg_match("#Windows 98#", $_SERVER["HTTP_USER_AGENT"]))
{
$os = 'Windows 98';
}
elseif (preg_match("#Mac#", $_SERVER["HTTP_USER_AGENT"]))
{
$os = 'Mac';
}
elseif (preg_match("#SunOS#", $_SERVER["HTTP_USER_AGENT"]))
{
$os = 'SunOS';
}
elseif (preg_match("#Fedora#", $_SERVER["HTTP_USER_AGENT"]))
{
$os = 'Fedora';
}
elseif (preg_match("#Haiku#", $_SERVER["HTTP_USER_AGENT"]))
{
$os = 'Haiku';
}
elseif (preg_match("#Ubuntu#", $_SERVER["HTTP_USER_AGENT"]))
{
$os = 'Linux Ubuntu';
}
elseif (preg_match("#FreeBSD#", $_SERVER["HTTP_USER_AGENT"]))
{
$os = 'FreeBSD';
}
elseif (preg_match("#Linux#", $_SERVER["HTTP_USER_AGENT"]))
{
$os = 'Linux';
}
else {
$os = 'Inconnu';
};
/* définition variable langue internaute */
$langue = $_SERVER['HTTP_ACCEPT_LANGUAGE'] ;
/* code postal de l'ip*/
$code_post_ip = trim(file_get_contents("https://ipinfo.io/{$adresse_ip}/postal"));
/* ville de l'ip*/
$ville_ip = trim(file_get_contents("https://ipinfo.io/{$adresse_ip}/city"));
/* region de l'ip*/
$region_ip = trim(file_get_contents("https://ipinfo.io/{$adresse_ip}/region"));
/* pays de l'ip*/
$pays_ip = trim(file_get_contents("https://ipinfo.io/{$adresse_ip}/country"));
/* nom pays de l'ip*/
$nom_pays_ip = trim(file_get_contents("https://ipinfo.io/{$adresse_ip}/countryname"));
/* geoloc de l'ip*/
$geoloc_ip = trim(file_get_contents("https://ipinfo.io/{$adresse_ip}/loc"));
/* fuseau horaire de l'ip*/
$fuseau_horaire_ip = trim(file_get_contents("https://ipinfo.io/{$adresse_ip}/timezone"));
?>
<?php
/* Définition des variables d'environnement collectées */
/* Définition variable l'adresse ip */
$adresse_ip = $_SERVER['REMOTE_ADDR'];
/* Définition variable fournisseur_acces */
function getCurrentIP() {
$ip = (getenv(HTTP_X_FORWARDED_FOR))
? getenv(HTTP_X_FORWARDED_FOR)
: getenv(REMOTE_ADDR);
return $ip;
};
function getCurrentFAI() {
$ip = getCurrentIP();
$host = @gethostbyaddr($ip);
$fai = false;
if(substr_count($host, 'proxad')) $fai = 'free';
if(substr_count($host, 'orange')) $fai = 'orange';
if(substr_count($host, 'wanadoo')) $fai = 'orange';
if(substr_count($host, 'sfr')) $fai = 'sfr';
if(substr_count($host, 'club-internet')) $fai = 'sfr';
if(substr_count($host, 'neuf')) $fai = 'neuf';
if(substr_count($host, 'gaoland')) $fai = 'neuf';
if(substr_count($host, 'bbox')) $fai = 'bouygues';
if(substr_count($host, 'bouyg')) $fai = 'bouygues';
if(substr_count($host, 'numericable')) $fai = 'numericable';
if(substr_count($host, 'tele2')) $fai = 'tele2';
return $fai;
};
$fournisseur_acces = getCurrentFAI();
if (empty($fournisseur_acces)) {
$fournisseur_acces = 'Inconnu';
}
/* définition Port Fourisseur d'accès */
$port_fai = $_SERVER['REMOTE_PORT'];
/* Définition variable Navigateur internaute */
if (preg_match_all("#Opera (.*)(\[[a-z]{2}\];)?$#isU", $_SERVER
["HTTP_USER_AGENT"], $version))
{
$navigateur = 'Opéra ' . $version[1][0];
}
elseif (preg_match_all("#MSIE (.*);#isU", $_SERVER["HTTP_USER_AGENT"],
$version))
{
$navigateur = 'Internet Explorer ' . $version[1][0];
}
elseif (preg_match_all("#Firefox(.*)$#isU", $_SERVER["HTTP_USER_AGENT"],
$version))
{
$version = str_replace('/', '', $version[1][0]);
$navigateur = 'Firefox ' . $version;
}
elseif (preg_match_all("#Chrome(.*) Safari#isU", $_SERVER["HTTP_USER_AGENT"],
$version))
{
$version = str_replace('/', '', $version[1][0]);
$navigateur = 'Chrome ' . $version;
}
elseif (preg_match_all("#Opera(.*) \(#isU", $_SERVER["HTTP_USER_AGENT"],
$version))
{
$version = str_replace('/', '', $version[1][0]);
$navigateur = 'Opéra ' . $version;
}
elseif (preg_match("#Nokia#", $_SERVER["HTTP_USER_AGENT"]))
{
$navigateur = 'Nokia';
}
elseif (preg_match("#Safari#", $_SERVER["HTTP_USER_AGENT"]))
{
$navigateur = 'Safari';
}
elseif (preg_match("#SeaMonkey#", $_SERVER["HTTP_USER_AGENT"]))
{
$navigateur = 'SeaMonkey';
}
elseif (preg_match("#PSP#", $_SERVER["HTTP_USER_AGENT"]))
{
$navigateur = 'PSP';
}
elseif (preg_match("#Netscape#", $_SERVER["HTTP_USER_AGENT"]))
{
$navigateur = 'Netscape';
}
else
{
$navigateur = 'Inconnu';
};
/* Définition variable systeme internaute */
if (preg_match_all("#Windows NT (.*)[;|\)]#isU", $_SERVER["HTTP_USER_AGENT"],
$version))
{
if ($version[1][0] == '6.1')
{
$os = 'Windows Seven';
}
elseif($version[1][0] == '6.0')
{
$os = 'Windows Vista';
}
elseif($version[1][0] == '5.1')
{
$os = 'Windows XP';
}
elseif($version[1][0] == '5.2')
{
$os = 'Windows Server 2003';
}
else
{
$os = 'Windows ' . $version[1][0];
}
}
elseif (preg_match_all("#Mac (.*);#isU", $_SERVER["HTTP_USER_AGENT"], $version))
{
$os = 'Mac ' . $version[1][0];
}
elseif (preg_match("#Windows 98#", $_SERVER["HTTP_USER_AGENT"]))
{
$os = 'Windows 98';
}
elseif (preg_match("#Mac#", $_SERVER["HTTP_USER_AGENT"]))
{
$os = 'Mac';
}
elseif (preg_match("#SunOS#", $_SERVER["HTTP_USER_AGENT"]))
{
$os = 'SunOS';
}
elseif (preg_match("#Fedora#", $_SERVER["HTTP_USER_AGENT"]))
{
$os = 'Fedora';
}
elseif (preg_match("#Haiku#", $_SERVER["HTTP_USER_AGENT"]))
{
$os = 'Haiku';
}
elseif (preg_match("#Ubuntu#", $_SERVER["HTTP_USER_AGENT"]))
{
$os = 'Linux Ubuntu';
}
elseif (preg_match("#FreeBSD#", $_SERVER["HTTP_USER_AGENT"]))
{
$os = 'FreeBSD';
}
elseif (preg_match("#Linux#", $_SERVER["HTTP_USER_AGENT"]))
{
$os = 'Linux';
}
else {
$os = 'Inconnu';
};
/* définition variable langue internaute */
$langue = $_SERVER['HTTP_ACCEPT_LANGUAGE'] ;
/* code postal de l'ip*/
$code_post_ip = trim(file_get_contents("https://ipinfo.io/{$adresse_ip}/postal"));
/* ville de l'ip*/
$ville_ip = trim(file_get_contents("https://ipinfo.io/{$adresse_ip}/city"));
/* region de l'ip*/
$region_ip = trim(file_get_contents("https://ipinfo.io/{$adresse_ip}/region"));
/* pays de l'ip*/
$pays_ip = trim(file_get_contents("https://ipinfo.io/{$adresse_ip}/country"));
/* nom pays de l'ip*/
$nom_pays_ip = trim(file_get_contents("https://ipinfo.io/{$adresse_ip}/countryname"));
/* geoloc de l'ip*/
$geoloc_ip = trim(file_get_contents("https://ipinfo.io/{$adresse_ip}/loc"));
/* fuseau horaire de l'ip*/
$fuseau_horaire_ip = trim(file_get_contents("https://ipinfo.io/{$adresse_ip}/timezone"));
?>
traderpierre
Messages postés
291
Date d'inscription
mercredi 11 octobre 2006
Statut
Membre
Dernière intervention
6 janvier 2024
6
Modifié le 11 juin 2020 à 17:15
Modifié le 11 juin 2020 à 17:15
Et voici le code PHP du fichier : envoi_abonnement_newslettre.php :
<?php
require ('../Connections/connectMySql.php');
// conditions recaptcha pour le traitement du formulaire à inclure tout en début de la page du traitement du formulaire (celle désigné dans l'action du formulaire).
$captcha = htmlspecialchars(trim($_POST['g-recaptcha-response']));
if (!$captcha)
{
?>
<div class="AlerteRougeSurlignee">Attention ! Vous êtes obligé de valider l'anti robot spammeur reCAPTCHA. <br> <a href="javascript:history.go(-1)">Retour au formulaire</a> </div>
<?php
}
ELSE
{
$reponse = file_get_contents("https://www.google.com/recaptcha/api/siteverify?secret=6LegtQsTAAAAAFWxFU3Y_wUesA6tSoT6bt_ve8q1&response=" . $captcha . "&remoteip=" . $_SERVER['REMOTE_ADDR']);
$data = json_decode($reponse);
if ($data->success == 1)
{
// Ici à partir de ce point : Traitement d'envoi du formulaire
// on démarre une session
session_start();
// on initialise les variables de session
$_SESSION['civilite'] = $_POST['civilite'];
$_SESSION['prenom'] = $_POST['prenom'];
$_SESSION['nom'] = $_POST['nom'];
$_SESSION['code_postal'] = $_POST['code_postal'];
$_SESSION['ville'] = $_POST['ville'];
$_SESSION['pays'] = $_POST['pays'];
$_SESSION['email'] = $_POST['email'];
$_SESSION['news_lettre'] = $_POST['news_lettre'];
$_SESSION['date'] = $_POST['date'];
// Ici on conditionne tous les champs obligatoires
if (isset($_POST['civilite']) && isset($_POST['prenom']) && isset($_POST['nom']) && isset($_POST['code_postal']) && isset($_POST['ville']) && isset($_POST['pays']) && isset($_POST['email']))
{
// on initialise tous les champs "obligatoires ou non" dans des variables
$civilite = strip_tags($_POST['civilite']);
$prenom = strip_tags($_POST['prenom']);
$nom = strip_tags($_POST['nom']);
$societe = strip_tags($_POST['societe']);
$code_postal = strip_tags($_POST['code_postal']);
$ville = strip_tags($_POST['ville']);
$pays = strip_tags($_POST['pays']);
$email = strip_tags($_POST['email']);
$news_lettre = strip_tags($_POST['news_lettre']);
$adresse_ip = strip_tags($_POST['adresse_ip']);
$fai = strip_tags($_POST['fai']);
$navigateur = strip_tags($_POST['navigateur']);
$systeme = strip_tags($_POST['systeme']);
$langue = strip_tags($_POST['langue']);
$code_post_ip = strip_tags($_POST['code_post_ip']);
$ville_ip = strip_tags($_POST['ville_ip']);
$region_ip = strip_tags($_POST['region_ip']);
$pays_ip = strip_tags($_POST['pays_ip']);
$nom_pays_ip = strip_tags($_POST['nom_pays_ip']);
$geoloc_ip = strip_tags($_POST['geoloc_ip']);
$fuseau_horaire_ip = strip_tags($_POST['fuseau_horaire_ip']);
$date = strip_tags($_POST['date']);
// on prépare la requête d'envoi avec tous les champs obligatoires ou non
$req = $DB->prepare('INSERT INTO contacts( civilite, prenom, nom, societe, code_postal, ville, pays, email, news_lettre, adresse_ip, fai, navigateur, systeme, langue, code_post_ip, ville_ip, region_ip, pays_ip, nom_pays_ip, geoloc_ip, fuseau_horaire_ip, date) VALUES(:civilite, :prenom, :nom, :societe, :code_postal, :ville, :pays, :email, :news_lettre, :adresse_ip, :fai, :navigateur, :systeme, :langue, :code_post_ip, :ville_ip, :region_ip, :pays_ip, :nom_pays_ip, : geoloc_ip, :fuseau_horaire_ip, :date)');
// On exécute l'envoi de tous les champs
$req->execute(array(
'civilite' => $civilite,
'prenom' => $prenom,
'nom' => $nom,
'societe' => $societe,
'code_postal' => $code_postal,
'ville' => $ville,
'pays' => $pays,
'email' => $email,
'news_lettre' => $news_lettre,
'adresse_ip' => $adresse_ip,
'fai' => $fai,
'navigateur' => $navigateur,
'systeme' => $systeme,
'langue' => $langue,
'code_post_ip' => $code_post_ip,
'ville_ip' => $ville_ip,
'region_ip' => $region_ip,
'pays_ip' => $pays_ip,
'nom_pays_ip' => $nom_pays_ip,
'geoloc_ip' => $geoloc_ip,
'fuseau_horaire_ip' => $fuseau_horaire_ip,
'date' => $date,
));
}
// envoi email 1 et 2
$to1 = "p.dieudonne@eolprocess.com";
$to2 = "secretariat@eolprocess.com";
$sujet = "Nouvel abonné à la News Lettre";
$courrier = nl2br($courrier);
$renseignements = "Un nouvel abonné à la news lettre est arrivé <br />
Civilité : $civilite <br />
Prénom : $prenom <br />
Nom : $nom <br />
Société : $societe <br />
Code postal : $code_postal <br />
Ville : $ville <br />
Pays : $pays <br />
Email : $email <br />
Abonnement NewsLettre : $news_lettre <br />
adresse_ip : $adresse_ip <br />
code_post_ip : $code_post_ip <br />
ville_ip : $ville_ip <br />
region_ip : $region_ip <br />
pays_ip : $pays_ip <br />
nom_pays_ip : $nom_pays_ip <br />
geoloc_ip : $geoloc_ip <br />
fuseau_horaire_ip : $fuseau_horaire_ip <br />
Date : $date ";
$entete = 'From : ' . $email . "\r\n" . 'Reply-To: ' . $email . "\r\n" . 'Content-type : text/html; charset=utf-8' . "\r\n" . "Content-Transfer-Encoding: 8bit\r\n" . 'Bcc: ' . $to2 . "\r\n" . 'X-Sender: ' . $email . "\r\n" . 'X-Mailer: PHP/' . phpversion('5.6') . "\r\n" . 'X-Priority: 2\r\n' . 'Return-Path: ' . $email . "\r\n" . 'MIME-Version: 1.0\r\n';
mail($to1, $sujet, $renseignements, $entete);
// Réponse automatique à prise de contact
$sujet_reponse_auto = "Accusé de réception de votre abonnement à notre News Lettre";
$reponseauto = "
<html>
<body>
<p><span style='font-size:12.0pt;
line-height:107%;font-family:Verdana,sans-serif'>Bonjour, " . $civilite . " " . $nom . " ,</span></p>
<p><span style='font-size:12.0pt;line-height:107%;font-family:
Verdana,sans-serif'>Cette éolienne est maintenant commercialisée par la <a href='http://www.inergys.fr/solutions.html'>société Inergys</a>.</span> </p>
<p><span style='font-size:12.0pt;line-height:107%;font-family:Verdana,sans-serif;background:yellow;'><strong>L’avantage du procédé EolProcess est de pouvoir s’adapter à tous les cas de figure et de construire du sur-mesure à faible coût, les pales étant constituées de modules empilables. Il sera par conséquent possible de construire les surfaces de pales sur mesure en fonction de vos deux critères suivants :</strong></span></p><ol><li><b><span style='font-size:12.0pt;line-height:107%;font-family:Verdana,sans-serif;background:yellow;'>Votre variable vent (production à partir d’une vitesse de vent de 2 m/s) ;</span></b></li><li><b><span
style='font-size:12.0pt;line-height:107%;font-family:Verdana,sans-serif;background:yellow;'>vos besoins en énergie en fonction de cette variable.</span></b></li></ol> <p><span style='font-size:12.0pt;line-height:107%;font-family:Verdana,sans-serif;
background:yellow;'><strong>C’est le seul système actuel qui permette de faire du sur-mesure.</strong></span></p> <p><span style='font-size:12.0pt;line-height:107%;font-family:
Verdana,sans-serif'><a href='http://www.eolprocess.com/abonnement_newslettre.php'>Inscrivez-vous à ma news-lettre, vous serez tenu informé(e) sur l'évolution du produit.</a><br></span> <span style='font-size:12.0pt;line-height:107%;font-family:
Verdana,sans-serif'><a href='http://www.eolprocess.com/abonnement_newslettre.php'>http://www.eolprocess.com/abonnement_newslettre.php</a>.</span></p> <p><span style='font-size:12.0pt;line-height:107%;font-family:
Verdana,sans-serif'><a href='http://creativecommons.org/licenses/by-nc-nd/2.0/fr/'>Pour faire avancer la promotion de ce produit, vous pouvez également diffuser la présentation de mon éolienne par tous liens y menant sous réserve du respect de la licence Créative Commons consultable sur ce lien :</a><br><a href='http://www.eolprocess.com/abonnement_newslettre.php'>http://creativecommons.org/licenses/by-nc-nd/2.0/fr/ </a></span></p>
<p><span style='font-size:12.0pt;line-height:107%;font-family:Verdana,sans-serif; background:yellow;'><strong>Vous serez régulièrement tenu informé(e) de l'évolution du produit.</strong></span></p><p><span style='font-size:12.0pt;line-height:107%;font-family: Verdana,sans-serif'>Recevez mes salutations distinguées.</span></p> <p><b>
<span style='font: 12.0pt/107% Verdana, sans-serif;'><a href='mailto: p.dieudonne@eolprocess.com'>Pierre Dieudonné</a></span></b></p> <p><b><span style='font: 12.0pt/107% Verdana, sans-serif;'><a
href='http://www.eolprocess.com'>EolProcess.com</a></span></b></p>
</body>
</html>
";
$entete_reponse_auto = 'From: ' . $to1 . "\r\n";
$entete_reponse_auto .= 'MIME-version: 1.0' . "\r\n";
$entete_reponse_auto .= 'Content-type : text/html; charset=utf-8' . "\r\n";
$entete_reponse_auto .= 'Reply-To: ' . $email . "\r\n";
$entete_reponse_auto .= 'Bcc: ' . $to2 . "\r\n";;
mail($email, $sujet_reponse_auto, $reponseauto, $entete_reponse_auto);
// fin de l'envoi email réponse automatique
// Fin de l'envoi des emails
// on ouvre la page de remerciements
$insertGoTo = "../AR_form_abonnement_newslettre.php";
if (isset($_SERVER['QUERY_STRING']))
{
$insertGoTo .= (strpos($insertGoTo, '?')) ? "&" : "?";
$insertGoTo .= $_SERVER['QUERY_STRING'];
}
header(sprintf("Location: %s", $insertGoTo));
// fin des conditions reCAPTCHA, à placer en dernier, à la fin du traitement d'envoi : "message si google analyse le comportement d'un robot"
}
else
{
var_dump($data);
?>
<div class="AlerteRougeSurlignee">Google m'a dit que vous étiez un Robot Spammeur !<br> <a href="javascript:history.go(-1)">Retour au formulaire</a> </div>
<?php
}
};
?>
<?php
require ('../Connections/connectMySql.php');
// conditions recaptcha pour le traitement du formulaire à inclure tout en début de la page du traitement du formulaire (celle désigné dans l'action du formulaire).
$captcha = htmlspecialchars(trim($_POST['g-recaptcha-response']));
if (!$captcha)
{
?>
<div class="AlerteRougeSurlignee">Attention ! Vous êtes obligé de valider l'anti robot spammeur reCAPTCHA. <br> <a href="javascript:history.go(-1)">Retour au formulaire</a> </div>
<?php
}
ELSE
{
$reponse = file_get_contents("https://www.google.com/recaptcha/api/siteverify?secret=6LegtQsTAAAAAFWxFU3Y_wUesA6tSoT6bt_ve8q1&response=" . $captcha . "&remoteip=" . $_SERVER['REMOTE_ADDR']);
$data = json_decode($reponse);
if ($data->success == 1)
{
// Ici à partir de ce point : Traitement d'envoi du formulaire
// on démarre une session
session_start();
// on initialise les variables de session
$_SESSION['civilite'] = $_POST['civilite'];
$_SESSION['prenom'] = $_POST['prenom'];
$_SESSION['nom'] = $_POST['nom'];
$_SESSION['code_postal'] = $_POST['code_postal'];
$_SESSION['ville'] = $_POST['ville'];
$_SESSION['pays'] = $_POST['pays'];
$_SESSION['email'] = $_POST['email'];
$_SESSION['news_lettre'] = $_POST['news_lettre'];
$_SESSION['date'] = $_POST['date'];
// Ici on conditionne tous les champs obligatoires
if (isset($_POST['civilite']) && isset($_POST['prenom']) && isset($_POST['nom']) && isset($_POST['code_postal']) && isset($_POST['ville']) && isset($_POST['pays']) && isset($_POST['email']))
{
// on initialise tous les champs "obligatoires ou non" dans des variables
$civilite = strip_tags($_POST['civilite']);
$prenom = strip_tags($_POST['prenom']);
$nom = strip_tags($_POST['nom']);
$societe = strip_tags($_POST['societe']);
$code_postal = strip_tags($_POST['code_postal']);
$ville = strip_tags($_POST['ville']);
$pays = strip_tags($_POST['pays']);
$email = strip_tags($_POST['email']);
$news_lettre = strip_tags($_POST['news_lettre']);
$adresse_ip = strip_tags($_POST['adresse_ip']);
$fai = strip_tags($_POST['fai']);
$navigateur = strip_tags($_POST['navigateur']);
$systeme = strip_tags($_POST['systeme']);
$langue = strip_tags($_POST['langue']);
$code_post_ip = strip_tags($_POST['code_post_ip']);
$ville_ip = strip_tags($_POST['ville_ip']);
$region_ip = strip_tags($_POST['region_ip']);
$pays_ip = strip_tags($_POST['pays_ip']);
$nom_pays_ip = strip_tags($_POST['nom_pays_ip']);
$geoloc_ip = strip_tags($_POST['geoloc_ip']);
$fuseau_horaire_ip = strip_tags($_POST['fuseau_horaire_ip']);
$date = strip_tags($_POST['date']);
// on prépare la requête d'envoi avec tous les champs obligatoires ou non
$req = $DB->prepare('INSERT INTO contacts( civilite, prenom, nom, societe, code_postal, ville, pays, email, news_lettre, adresse_ip, fai, navigateur, systeme, langue, code_post_ip, ville_ip, region_ip, pays_ip, nom_pays_ip, geoloc_ip, fuseau_horaire_ip, date) VALUES(:civilite, :prenom, :nom, :societe, :code_postal, :ville, :pays, :email, :news_lettre, :adresse_ip, :fai, :navigateur, :systeme, :langue, :code_post_ip, :ville_ip, :region_ip, :pays_ip, :nom_pays_ip, : geoloc_ip, :fuseau_horaire_ip, :date)');
// On exécute l'envoi de tous les champs
$req->execute(array(
'civilite' => $civilite,
'prenom' => $prenom,
'nom' => $nom,
'societe' => $societe,
'code_postal' => $code_postal,
'ville' => $ville,
'pays' => $pays,
'email' => $email,
'news_lettre' => $news_lettre,
'adresse_ip' => $adresse_ip,
'fai' => $fai,
'navigateur' => $navigateur,
'systeme' => $systeme,
'langue' => $langue,
'code_post_ip' => $code_post_ip,
'ville_ip' => $ville_ip,
'region_ip' => $region_ip,
'pays_ip' => $pays_ip,
'nom_pays_ip' => $nom_pays_ip,
'geoloc_ip' => $geoloc_ip,
'fuseau_horaire_ip' => $fuseau_horaire_ip,
'date' => $date,
));
}
// envoi email 1 et 2
$to1 = "p.dieudonne@eolprocess.com";
$to2 = "secretariat@eolprocess.com";
$sujet = "Nouvel abonné à la News Lettre";
$courrier = nl2br($courrier);
$renseignements = "Un nouvel abonné à la news lettre est arrivé <br />
Civilité : $civilite <br />
Prénom : $prenom <br />
Nom : $nom <br />
Société : $societe <br />
Code postal : $code_postal <br />
Ville : $ville <br />
Pays : $pays <br />
Email : $email <br />
Abonnement NewsLettre : $news_lettre <br />
adresse_ip : $adresse_ip <br />
code_post_ip : $code_post_ip <br />
ville_ip : $ville_ip <br />
region_ip : $region_ip <br />
pays_ip : $pays_ip <br />
nom_pays_ip : $nom_pays_ip <br />
geoloc_ip : $geoloc_ip <br />
fuseau_horaire_ip : $fuseau_horaire_ip <br />
Date : $date ";
$entete = 'From : ' . $email . "\r\n" . 'Reply-To: ' . $email . "\r\n" . 'Content-type : text/html; charset=utf-8' . "\r\n" . "Content-Transfer-Encoding: 8bit\r\n" . 'Bcc: ' . $to2 . "\r\n" . 'X-Sender: ' . $email . "\r\n" . 'X-Mailer: PHP/' . phpversion('5.6') . "\r\n" . 'X-Priority: 2\r\n' . 'Return-Path: ' . $email . "\r\n" . 'MIME-Version: 1.0\r\n';
mail($to1, $sujet, $renseignements, $entete);
// Réponse automatique à prise de contact
$sujet_reponse_auto = "Accusé de réception de votre abonnement à notre News Lettre";
$reponseauto = "
<html>
<body>
<p><span style='font-size:12.0pt;
line-height:107%;font-family:Verdana,sans-serif'>Bonjour, " . $civilite . " " . $nom . " ,</span></p>
<p><span style='font-size:12.0pt;line-height:107%;font-family:
Verdana,sans-serif'>Cette éolienne est maintenant commercialisée par la <a href='http://www.inergys.fr/solutions.html'>société Inergys</a>.</span> </p>
<p><span style='font-size:12.0pt;line-height:107%;font-family:Verdana,sans-serif;background:yellow;'><strong>L’avantage du procédé EolProcess est de pouvoir s’adapter à tous les cas de figure et de construire du sur-mesure à faible coût, les pales étant constituées de modules empilables. Il sera par conséquent possible de construire les surfaces de pales sur mesure en fonction de vos deux critères suivants :</strong></span></p><ol><li><b><span style='font-size:12.0pt;line-height:107%;font-family:Verdana,sans-serif;background:yellow;'>Votre variable vent (production à partir d’une vitesse de vent de 2 m/s) ;</span></b></li><li><b><span
style='font-size:12.0pt;line-height:107%;font-family:Verdana,sans-serif;background:yellow;'>vos besoins en énergie en fonction de cette variable.</span></b></li></ol> <p><span style='font-size:12.0pt;line-height:107%;font-family:Verdana,sans-serif;
background:yellow;'><strong>C’est le seul système actuel qui permette de faire du sur-mesure.</strong></span></p> <p><span style='font-size:12.0pt;line-height:107%;font-family:
Verdana,sans-serif'><a href='http://www.eolprocess.com/abonnement_newslettre.php'>Inscrivez-vous à ma news-lettre, vous serez tenu informé(e) sur l'évolution du produit.</a><br></span> <span style='font-size:12.0pt;line-height:107%;font-family:
Verdana,sans-serif'><a href='http://www.eolprocess.com/abonnement_newslettre.php'>http://www.eolprocess.com/abonnement_newslettre.php</a>.</span></p> <p><span style='font-size:12.0pt;line-height:107%;font-family:
Verdana,sans-serif'><a href='http://creativecommons.org/licenses/by-nc-nd/2.0/fr/'>Pour faire avancer la promotion de ce produit, vous pouvez également diffuser la présentation de mon éolienne par tous liens y menant sous réserve du respect de la licence Créative Commons consultable sur ce lien :</a><br><a href='http://www.eolprocess.com/abonnement_newslettre.php'>http://creativecommons.org/licenses/by-nc-nd/2.0/fr/ </a></span></p>
<p><span style='font-size:12.0pt;line-height:107%;font-family:Verdana,sans-serif; background:yellow;'><strong>Vous serez régulièrement tenu informé(e) de l'évolution du produit.</strong></span></p><p><span style='font-size:12.0pt;line-height:107%;font-family: Verdana,sans-serif'>Recevez mes salutations distinguées.</span></p> <p><b>
<span style='font: 12.0pt/107% Verdana, sans-serif;'><a href='mailto: p.dieudonne@eolprocess.com'>Pierre Dieudonné</a></span></b></p> <p><b><span style='font: 12.0pt/107% Verdana, sans-serif;'><a
href='http://www.eolprocess.com'>EolProcess.com</a></span></b></p>
</body>
</html>
";
$entete_reponse_auto = 'From: ' . $to1 . "\r\n";
$entete_reponse_auto .= 'MIME-version: 1.0' . "\r\n";
$entete_reponse_auto .= 'Content-type : text/html; charset=utf-8' . "\r\n";
$entete_reponse_auto .= 'Reply-To: ' . $email . "\r\n";
$entete_reponse_auto .= 'Bcc: ' . $to2 . "\r\n";;
mail($email, $sujet_reponse_auto, $reponseauto, $entete_reponse_auto);
// fin de l'envoi email réponse automatique
// Fin de l'envoi des emails
// on ouvre la page de remerciements
$insertGoTo = "../AR_form_abonnement_newslettre.php";
if (isset($_SERVER['QUERY_STRING']))
{
$insertGoTo .= (strpos($insertGoTo, '?')) ? "&" : "?";
$insertGoTo .= $_SERVER['QUERY_STRING'];
}
header(sprintf("Location: %s", $insertGoTo));
// fin des conditions reCAPTCHA, à placer en dernier, à la fin du traitement d'envoi : "message si google analyse le comportement d'un robot"
}
else
{
var_dump($data);
?>
<div class="AlerteRougeSurlignee">Google m'a dit que vous étiez un Robot Spammeur !<br> <a href="javascript:history.go(-1)">Retour au formulaire</a> </div>
<?php
}
};
?>
jordane45
Messages postés
38288
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
15 novembre 2024
4 703
11 juin 2020 à 17:37
11 juin 2020 à 17:37
Qu'est-ce que tu n'as pas compris dans mon message précédent ???
Car ben... non seulement tu n'as pas appliqué les consignes données dans les liens... mais en plus tu n'as pas utilisé les balises de code pour poster ton code.
Merci de relire mon message précédent et d'appliquer ce qui est marqué...
Car ben... non seulement tu n'as pas appliqué les consignes données dans les liens... mais en plus tu n'as pas utilisé les balises de code pour poster ton code.
Merci de relire mon message précédent et d'appliquer ce qui est marqué...
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
traderpierre
Messages postés
291
Date d'inscription
mercredi 11 octobre 2006
Statut
Membre
Dernière intervention
6 janvier 2024
6
11 juin 2020 à 19:01
11 juin 2020 à 19:01
j'ai copié et collé le code intégral des deux fichiers dans 2 réponses différentes afin de les différencier.
Les balise de code sont dans le code lui même où alors comment procéder
Les balise de code sont dans le code lui même où alors comment procéder
jordane45
Messages postés
38288
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
15 novembre 2024
4 703
11 juin 2020 à 21:00
11 juin 2020 à 21:00
purée.... tu comprends vite......... si on t'explique longtemps......
Donc, encore une fois, tu retourne à mon premier message ...
Tu ouvres les différents liens qui s'y trouvent
Tu lis le contenu de ces pages avec le plus grand soin...
Tu appliques TOUT ce qui y est marqué
Tu ne reviens qu'après... et tu nous montres le code modifié en conséquence ET en utilisant les outils du forum afin de coller "correctement" le code ...
Donc, encore une fois, tu retourne à mon premier message ...
Tu ouvres les différents liens qui s'y trouvent
Tu lis le contenu de ces pages avec le plus grand soin...
Tu appliques TOUT ce qui y est marqué
Tu ne reviens qu'après... et tu nous montres le code modifié en conséquence ET en utilisant les outils du forum afin de coller "correctement" le code ...
traderpierre
Messages postés
291
Date d'inscription
mercredi 11 octobre 2006
Statut
Membre
Dernière intervention
6 janvier 2024
6
11 juin 2020 à 21:01
11 juin 2020 à 21:01
J'avais pas vu dans le formulaire de réponse !!!
Excusez-moi.
Voici le code PHP du fichier variables_environnement.php
Excusez-moi.
Voici le code PHP du fichier variables_environnement.php
<?php
/* Définition des variables d'environnement collectées */
/* Définition variable l'adresse ip */
$adresse_ip = $_SERVER['REMOTE_ADDR'];
/* Définition variable fournisseur_acces */
function getCurrentIP() {
$ip = (getenv(HTTP_X_FORWARDED_FOR))
? getenv(HTTP_X_FORWARDED_FOR)
: getenv(REMOTE_ADDR);
return $ip;
};
function getCurrentFAI() {
$ip = getCurrentIP();
$host = @gethostbyaddr($ip);
$fai = false;
if(substr_count($host, 'proxad')) $fai = 'free';
if(substr_count($host, 'orange')) $fai = 'orange';
if(substr_count($host, 'wanadoo')) $fai = 'orange';
if(substr_count($host, 'sfr')) $fai = 'sfr';
if(substr_count($host, 'club-internet')) $fai = 'sfr';
if(substr_count($host, 'neuf')) $fai = 'neuf';
if(substr_count($host, 'gaoland')) $fai = 'neuf';
if(substr_count($host, 'bbox')) $fai = 'bouygues';
if(substr_count($host, 'bouyg')) $fai = 'bouygues';
if(substr_count($host, 'numericable')) $fai = 'numericable';
if(substr_count($host, 'tele2')) $fai = 'tele2';
return $fai;
};
$fournisseur_acces = getCurrentFAI();
if (empty($fournisseur_acces)) {
$fournisseur_acces = 'Inconnu';
}
/* définition Port Fourisseur d'accès */
$port_fai = $_SERVER['REMOTE_PORT'];
/* Définition variable Navigateur internaute */
if (preg_match_all("#Opera (.*)(\[[a-z]{2}\];)?$#isU", $_SERVER
["HTTP_USER_AGENT"], $version))
{
$navigateur = 'Opéra ' . $version[1][0];
}
elseif (preg_match_all("#MSIE (.*);#isU", $_SERVER["HTTP_USER_AGENT"],
$version))
{
$navigateur = 'Internet Explorer ' . $version[1][0];
}
elseif (preg_match_all("#Firefox(.*)$#isU", $_SERVER["HTTP_USER_AGENT"],
$version))
{
$version = str_replace('/', '', $version[1][0]);
$navigateur = 'Firefox ' . $version;
}
elseif (preg_match_all("#Chrome(.*) Safari#isU", $_SERVER["HTTP_USER_AGENT"],
$version))
{
$version = str_replace('/', '', $version[1][0]);
$navigateur = 'Chrome ' . $version;
}
elseif (preg_match_all("#Opera(.*) \(#isU", $_SERVER["HTTP_USER_AGENT"],
$version))
{
$version = str_replace('/', '', $version[1][0]);
$navigateur = 'Opéra ' . $version;
}
elseif (preg_match("#Nokia#", $_SERVER["HTTP_USER_AGENT"]))
{
$navigateur = 'Nokia';
}
elseif (preg_match("#Safari#", $_SERVER["HTTP_USER_AGENT"]))
{
$navigateur = 'Safari';
}
elseif (preg_match("#SeaMonkey#", $_SERVER["HTTP_USER_AGENT"]))
{
$navigateur = 'SeaMonkey';
}
elseif (preg_match("#PSP#", $_SERVER["HTTP_USER_AGENT"]))
{
$navigateur = 'PSP';
}
elseif (preg_match("#Netscape#", $_SERVER["HTTP_USER_AGENT"]))
{
$navigateur = 'Netscape';
}
else
{
$navigateur = 'Inconnu';
};
/* Définition variable systeme internaute */
if (preg_match_all("#Windows NT (.*)[;|\)]#isU", $_SERVER["HTTP_USER_AGENT"],
$version))
{
if ($version[1][0] == '6.1')
{
$os = 'Windows Seven';
}
elseif($version[1][0] == '6.0')
{
$os = 'Windows Vista';
}
elseif($version[1][0] == '5.1')
{
$os = 'Windows XP';
}
elseif($version[1][0] == '5.2')
{
$os = 'Windows Server 2003';
}
else
{
$os = 'Windows ' . $version[1][0];
}
}
elseif (preg_match_all("#Mac (.*);#isU", $_SERVER["HTTP_USER_AGENT"], $version))
{
$os = 'Mac ' . $version[1][0];
}
elseif (preg_match("#Windows 98#", $_SERVER["HTTP_USER_AGENT"]))
{
$os = 'Windows 98';
}
elseif (preg_match("#Mac#", $_SERVER["HTTP_USER_AGENT"]))
{
$os = 'Mac';
}
elseif (preg_match("#SunOS#", $_SERVER["HTTP_USER_AGENT"]))
{
$os = 'SunOS';
}
elseif (preg_match("#Fedora#", $_SERVER["HTTP_USER_AGENT"]))
{
$os = 'Fedora';
}
elseif (preg_match("#Haiku#", $_SERVER["HTTP_USER_AGENT"]))
{
$os = 'Haiku';
}
elseif (preg_match("#Ubuntu#", $_SERVER["HTTP_USER_AGENT"]))
{
$os = 'Linux Ubuntu';
}
elseif (preg_match("#FreeBSD#", $_SERVER["HTTP_USER_AGENT"]))
{
$os = 'FreeBSD';
}
elseif (preg_match("#Linux#", $_SERVER["HTTP_USER_AGENT"]))
{
$os = 'Linux';
}
else {
$os = 'Inconnu';
};
/* définition variable langue internaute */
$langue = $_SERVER['HTTP_ACCEPT_LANGUAGE'] ;
/* code postal de l'ip*/
$code_post_ip = trim(file_get_contents("https://ipinfo.io/{$adresse_ip}/postal"));
/* ville de l'ip*/
$ville_ip = trim(file_get_contents("https://ipinfo.io/{$adresse_ip}/city"));
/* region de l'ip*/
$region_ip = trim(file_get_contents("https://ipinfo.io/{$adresse_ip}/region"));
/* pays de l'ip*/
$pays_ip = trim(file_get_contents("https://ipinfo.io/{$adresse_ip}/country"));
/* nom pays de l'ip*/
$nom_pays_ip = trim(file_get_contents("https://ipinfo.io/{$adresse_ip}/country_name"));
/* geoloc de l'ip*/
$geoloc_ip = trim(file_get_contents("https://ipinfo.io/{$adresse_ip}/loc"));
/* fuseau horaire de l'ip*/
$fuseau_horaire_ip = trim(file_get_contents("https://ipinfo.io/{$adresse_ip}/timezone"));
?>
traderpierre
Messages postés
291
Date d'inscription
mercredi 11 octobre 2006
Statut
Membre
Dernière intervention
6 janvier 2024
6
Modifié le 11 juin 2020 à 21:06
Modifié le 11 juin 2020 à 21:06
Et Maintenant voici le code de la page envoi_abonnement_newslettre.php
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" href="../styles/style.css" type="text/css" />
</head>
<?php
require('../Connections/connectMySql.php');
// conditions recaptcha pour le traitement du formulaire à inclure tout en début de la page du traitement du formulaire (celle désigné dans l'action du formulaire).
$captcha = htmlspecialchars(trim($_POST['g-recaptcha-response']));
if(!$captcha){
?>
<div class="AlerteRougeSurlignee">Attention ! Vous êtes obligé de valider l'anti robot spammeur reCAPTCHA. <br> <a href="javascript:history.go(-1)">Retour au formulaire</a> </div>
<?php
}ELSE{
$reponse = file_get_contents("https://www.google.com/recaptcha/api/siteverify?secret=6LegtQsTAAAAAFWxFU3Y_wUesA6tSoT6bt_ve8q1&response=".$captcha."&remoteip=".$_SERVER['REMOTE_ADDR']);
$data = json_decode($reponse);
if ($data->success ==1)
{
// Ici à partir de ce point : Traitement d'envoi du formulaire
// on démarre une session
session_start();
// on initialise les variables de session
$_SESSION['civilite'] = $_POST['civilite'];
$_SESSION['prenom'] = $_POST['prenom'];
$_SESSION['nom'] = $_POST['nom'];
$_SESSION['code_postal'] = $_POST['code_postal'];
$_SESSION['ville'] = $_POST['ville'];
$_SESSION['pays'] = $_POST['pays'];
$_SESSION['email'] = $_POST['email'];
$_SESSION['news_lettre'] = $_POST['news_lettre'];
$_SESSION['date'] = $_POST['date'];
// Ici on conditionne tous les champs obligatoires
if (isset($_POST['civilite']) && isset($_POST['prenom']) && isset($_POST['nom']) && isset($_POST['code_postal']) && isset($_POST['ville']) && isset($_POST['pays']) && isset($_POST['email'])) {
// on initialise tous les champs "obligatoires ou non" dans des variables
$civilite = strip_tags($_POST['civilite']);
$prenom = strip_tags($_POST['prenom']);
$nom = strip_tags($_POST['nom']);
$societe = strip_tags($_POST['societe']);
$code_postal = strip_tags($_POST['code_postal']);
$ville = strip_tags($_POST['ville']);
$pays = strip_tags($_POST['pays']);
$email = strip_tags($_POST['email']);
$news_lettre = strip_tags($_POST['news_lettre']);
$adresse_ip = strip_tags($_POST['adresse_ip']);
$fai = strip_tags($_POST['fai']);
$navigateur = strip_tags($_POST['navigateur']);
$systeme = strip_tags($_POST['systeme']);
$langue = strip_tags($_POST['langue']);
$code_post_ip = strip_tags($_POST['code_post_ip']);
$ville_ip = strip_tags($_POST['ville_ip']);
$region_ip = strip_tags($_POST['region_ip']);
$pays_ip = strip_tags($_POST['pays_ip']);
$nom_pays_ip = strip_tags($_POST['nom_pays_ip']);
$geoloc_ip = strip_tags($_POST['geoloc_ip']);
$fuseau_horaire_ip = strip_tags($_POST['fuseau_horaire_ip']);
$date = strip_tags($_POST['date']);
// on prépare la requête d'envoi avec tous les champs obligatoires ou non
$req = $DB->prepare('INSERT INTO contacts( civilite, prenom, nom, societe, code_postal, ville, pays, email, news_lettre, adresse_ip, fai, navigateur, systeme, langue, code_post_ip, ville_ip, region_ip, pays_ip, nom_pays_ip, geoloc_ip, fuseau_horaire_ip, date) VALUES(:civilite, :prenom, :nom, :societe, :code_postal, :ville, :pays, :email, :news_lettre, :adresse_ip, :fai, :navigateur, :systeme, :langue, :code_post_ip, :ville_ip, :region_ip, :pays_ip, :nom_pays_ip, : geoloc_ip, :fuseau_horaire_ip, :date)');
// On exécute l'envoi de tous les champs
$req->execute(array(
'civilite' => $civilite,
'prenom' => $prenom,
'nom' => $nom,
'societe' => $societe,
'code_postal' => $code_postal,
'ville' => $ville,
'pays' => $pays,
'email' => $email,
'news_lettre' => $news_lettre,
'adresse_ip' => $adresse_ip,
'fai' => $fai,
'navigateur' => $navigateur,
'systeme' => $systeme,
'langue' => $langue,
'code_post_ip' => $code_post_ip,
'ville_ip' => $ville_ip,
'region_ip' => $region_ip,
'pays_ip' => $pays_ip,
'nom_pays_ip' => $nom_pays_ip,
'geoloc_ip' => $geoloc_ip,
'fuseau_horaire_ip' => $fuseau_horaire_ip,
'date' => $date,
));
}
// envoi email 1 et 2
$to1="p.dieudonne@eolprocess.com";
$to2="secretariat@eolprocess.com";
$sujet="Nouvel abonné à la News Lettre";
$courrier = nl2br($courrier);
$renseignements="Un nouvel abonné à la news lettre est arrivé <br />
Civilité : $civilite <br />
Prénom : $prenom <br />
Nom : $nom <br />
Société : $societe <br />
Code postal : $code_postal <br />
Ville : $ville <br />
Pays : $pays <br />
Email : $email <br />
Abonnement NewsLettre : $news_lettre <br />
adresse_ip : $adresse_ip <br />
code_post_ip : $code_post_ip <br />
ville_ip : $ville_ip <br />
region_ip : $region_ip <br />
pays_ip : $pays_ip <br />
nom_pays_ip : $nom_pays_ip <br />
geoloc_ip : $geoloc_ip <br />
fuseau_horaire_ip : $fuseau_horaire_ip <br />
Date : $date ";
$entete='From : '.$email."\r\n".
'Reply-To: '.$email . "\r\n" .
'Content-type : text/html; charset=utf-8'."\r\n".
"Content-Transfer-Encoding: 8bit\r\n".
'Bcc: '.$to2 . "\r\n".
'X-Sender: '.$email."\r\n".
'X-Mailer: PHP/' . phpversion('5.6'). "\r\n".
'X-Priority: 2\r\n'.
'Return-Path: '.$email."\r\n".
'MIME-Version: 1.0\r\n';
mail($to1,$sujet,$renseignements,$entete);
// Réponse automatique à prise de contact
$sujet_reponse_auto = "Accusé de réception de votre abonnement à notre News Lettre";
$reponseauto = "
<html>
<body>
<p><span style='font-size:12.0pt;
line-height:107%;font-family:Verdana,sans-serif'>Bonjour, ".$civilite." ".$nom." ,</span></p>
<p><span style='font-size:12.0pt;line-height:107%;font-family:
Verdana,sans-serif'>Cette éolienne est maintenant commercialisée par la <a href='http://www.inergys.fr/solutions.html'>société Inergys</a>.</span> </p>
<p><span style='font-size:12.0pt;line-height:107%;font-family:Verdana,sans-serif;background:yellow;'><strong>L’avantage du procédé EolProcess est de pouvoir s’adapter à tous les cas de figure et de construire du sur-mesure à faible coût, les pales étant constituées de modules empilables. Il sera par conséquent possible de construire les surfaces de pales sur mesure en fonction de vos deux critères suivants :</strong></span></p><ol><li><b><span style='font-size:12.0pt;line-height:107%;font-family:Verdana,sans-serif;background:yellow;'>Votre variable vent (production à partir d’une vitesse de vent de 2 m/s) ;</span></b></li><li><b><span
style='font-size:12.0pt;line-height:107%;font-family:Verdana,sans-serif;background:yellow;'>vos besoins en énergie en fonction de cette variable.</span></b></li></ol> <p><span style='font-size:12.0pt;line-height:107%;font-family:Verdana,sans-serif;
background:yellow;'><strong>C’est le seul système actuel qui permette de faire du sur-mesure.</strong></span></p> <p><span style='font-size:12.0pt;line-height:107%;font-family:
Verdana,sans-serif'><a href='http://www.eolprocess.com/abonnement_newslettre.php'>Inscrivez-vous à ma news-lettre, vous serez tenu informé(e) sur l'évolution du produit.</a><br></span> <span style='font-size:12.0pt;line-height:107%;font-family:
Verdana,sans-serif'><a href='http://www.eolprocess.com/abonnement_newslettre.php'>http://www.eolprocess.com/abonnement_newslettre.php</a>.</span></p> <p><span style='font-size:12.0pt;line-height:107%;font-family:
Verdana,sans-serif'><a href='http://creativecommons.org/licenses/by-nc-nd/2.0/fr/'>Pour faire avancer la promotion de ce produit, vous pouvez également diffuser la présentation de mon éolienne par tous liens y menant sous réserve du respect de la licence Créative Commons consultable sur ce lien :</a><br><a href='http://www.eolprocess.com/abonnement_newslettre.php'>http://creativecommons.org/licenses/by-nc-nd/2.0/fr/ </a></span></p>
<p><span style='font-size:12.0pt;line-height:107%;font-family:Verdana,sans-serif; background:yellow;'><strong>Vous serez régulièrement tenu informé(e) de l'évolution du produit.</strong></span></p><p><span style='font-size:12.0pt;line-height:107%;font-family: Verdana,sans-serif'>Recevez mes salutations distinguées.</span></p> <p><b>
<span style='font: 12.0pt/107% Verdana, sans-serif;'><a href='mailto: p.dieudonne@eolprocess.com'>Pierre Dieudonné</a></span></b></p> <p><b><span style='font: 12.0pt/107% Verdana, sans-serif;'><a
href='http://www.eolprocess.com'>EolProcess.com</a></span></b></p>
</body>
</html>
";
$entete_reponse_auto ='From: '.$to1."\r\n" ;
$entete_reponse_auto .= 'MIME-version: 1.0'."\r\n";
$entete_reponse_auto .= 'Content-type : text/html; charset=utf-8'."\r\n";
$entete_reponse_auto .='Reply-To: '.$email. "\r\n" ;
$entete_reponse_auto .= 'Bcc: '.$to2. "\r\n";;
mail($email,$sujet_reponse_auto,$reponseauto,$entete_reponse_auto);
// fin de l'envoi email réponse automatique
// Fin de l'envoi des emails
// on ouvre la page de remerciements
$insertGoTo = "../AR_form_abonnement_newslettre.php";
if (isset($_SERVER['QUERY_STRING'])) {
$insertGoTo .= (strpos($insertGoTo, '?')) ? "&" : "?";
$insertGoTo .= $_SERVER['QUERY_STRING'];
}
header(sprintf("Location: %s", $insertGoTo));
// fin des conditions reCAPTCHA, à placer en dernier, à la fin du traitement d'envoi : "message si google analyse le comportement d'un robot"
}else
{
var_dump($data);
?>
<div class="AlerteRougeSurlignee">Google m'a dit que vous étiez un Robot Spammeur !<br> <a href="javascript:history.go(-1)">Retour au formulaire</a> </div>
<?php
}
};
?>
jordane45
Messages postés
38288
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
15 novembre 2024
4 703
Modifié le 11 juin 2020 à 21:14
Modifié le 11 juin 2020 à 21:14
Désolé... mais.... on recommence...
1 - Tu n'as pas appliqué les conseils données dans les liens
2 - Tu n'as pas lu entièrement le tuto expliquant comment utiliser les BALISES DE CODE.
(il faut y indiquer le LANGAGE ) afin que l'on ai la coloration syntaxique , la numérotation des lignes et l'indentation.
Donc, merci de bien vouloir lire et appliquer les consignes/conseils qui te sont donnés avant de revenir nous montrer ton code correctement sur le forum.
PS: Poste tes codes dans un seul message..... les mettre dans des messages différents est inutile et risque de porter à confusion si l'on utilise la fonction 'commenter' du forum.
1 - Tu n'as pas appliqué les conseils données dans les liens
Commence par appliquer les consignes données dans ces deux liens :
https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code
https://forums.commentcamarche.net/forum/affich-37584941-php-pdo-gerer-les-erreurs ( surtout la partie qui indique de placer CHAQUE requête dans un bloc TRY/CATCH )
2 - Tu n'as pas lu entièrement le tuto expliquant comment utiliser les BALISES DE CODE.
(il faut y indiquer le LANGAGE ) afin que l'on ai la coloration syntaxique , la numérotation des lignes et l'indentation.
Donc, merci de bien vouloir lire et appliquer les consignes/conseils qui te sont donnés avant de revenir nous montrer ton code correctement sur le forum.
PS: Poste tes codes dans un seul message..... les mettre dans des messages différents est inutile et risque de porter à confusion si l'on utilise la fonction 'commenter' du forum.
traderpierre
Messages postés
291
Date d'inscription
mercredi 11 octobre 2006
Statut
Membre
Dernière intervention
6 janvier 2024
6
11 juin 2020 à 22:12
11 juin 2020 à 22:12
J'y comprend que dal donne moi une exemple au lieu de me savonner !!!
est ce que je mets:
<code php> au début et </code php> à la fin
donnes moi un exemple si j'ai pas compris, ce serait plus conviviale que de se faire engueuler !!!
Tout le mon n'est pas Pro en informatique comme toi.
Merci par avance pour ton aide
est ce que je mets:
<code php> au début et </code php> à la fin
donnes moi un exemple si j'ai pas compris, ce serait plus conviviale que de se faire engueuler !!!
Tout le mon n'est pas Pro en informatique comme toi.
Merci par avance pour ton aide
jordane45
Messages postés
38288
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
15 novembre 2024
4 703
Modifié le 11 juin 2020 à 22:20
Modifié le 11 juin 2020 à 22:20
Comment ça tu ne comprends que dalle ??
Tu as lu le lien que je t'ai donné au moins ?
Tout y est marqué noir sur blanc...!!
Tu as même des exemples et des captures d'écran....Comment veux tu que je sois plus précis que ça ????
Extrait de la documentation :
Bien sûr que toi.. c'est php et non csharp qu'il faut mettre... (je précise au cas où... )
Mais ne te précipite pas pour nous reposter ton code....... fais y déjà les corrections comme indiquées dans les autres liens que je t'ai donné.
Tu as lu le lien que je t'ai donné au moins ?
Tout y est marqué noir sur blanc...!!
Tu as même des exemples et des captures d'écran....Comment veux tu que je sois plus précis que ça ????
Extrait de la documentation :
Bien sûr que toi.. c'est php et non csharp qu'il faut mettre... (je précise au cas où... )
Mais ne te précipite pas pour nous reposter ton code....... fais y déjà les corrections comme indiquées dans les autres liens que je t'ai donné.
traderpierre
Messages postés
291
Date d'inscription
mercredi 11 octobre 2006
Statut
Membre
Dernière intervention
6 janvier 2024
6
11 juin 2020 à 22:30
11 juin 2020 à 22:30
Page variables_environnement.php
<?php /* Définition des variables d'environnement collectées */ /* Définition variable l'adresse ip */ $adresse_ip = $_SERVER['REMOTE_ADDR']; /* Définition variable fournisseur_acces */ function getCurrentIP() { $ip = (getenv(HTTP_X_FORWARDED_FOR)) ? getenv(HTTP_X_FORWARDED_FOR) : getenv(REMOTE_ADDR); return $ip; }; function getCurrentFAI() { $ip = getCurrentIP(); $host = @gethostbyaddr($ip); $fai = false; if(substr_count($host, 'proxad')) $fai = 'free'; if(substr_count($host, 'orange')) $fai = 'orange'; if(substr_count($host, 'wanadoo')) $fai = 'orange'; if(substr_count($host, 'sfr')) $fai = 'sfr'; if(substr_count($host, 'club-internet')) $fai = 'sfr'; if(substr_count($host, 'neuf')) $fai = 'neuf'; if(substr_count($host, 'gaoland')) $fai = 'neuf'; if(substr_count($host, 'bbox')) $fai = 'bouygues'; if(substr_count($host, 'bouyg')) $fai = 'bouygues'; if(substr_count($host, 'numericable')) $fai = 'numericable'; if(substr_count($host, 'tele2')) $fai = 'tele2'; return $fai; }; $fournisseur_acces = getCurrentFAI(); if (empty($fournisseur_acces)) { $fournisseur_acces = 'Inconnu'; } /* définition Port Fourisseur d'accès */ $port_fai = $_SERVER['REMOTE_PORT']; /* Définition variable Navigateur internaute */ if (preg_match_all("#Opera (.*)(\[[a-z]{2}\];)?$#isU", $_SERVER ["HTTP_USER_AGENT"], $version)) { $navigateur = 'Opéra ' . $version[1][0]; } elseif (preg_match_all("#MSIE (.*);#isU", $_SERVER["HTTP_USER_AGENT"], $version)) { $navigateur = 'Internet Explorer ' . $version[1][0]; } elseif (preg_match_all("#Firefox(.*)$#isU", $_SERVER["HTTP_USER_AGENT"], $version)) { $version = str_replace('/', '', $version[1][0]); $navigateur = 'Firefox ' . $version; } elseif (preg_match_all("#Chrome(.*) Safari#isU", $_SERVER["HTTP_USER_AGENT"], $version)) { $version = str_replace('/', '', $version[1][0]); $navigateur = 'Chrome ' . $version; } elseif (preg_match_all("#Opera(.*) \(#isU", $_SERVER["HTTP_USER_AGENT"], $version)) { $version = str_replace('/', '', $version[1][0]); $navigateur = 'Opéra ' . $version; } elseif (preg_match("#Nokia#", $_SERVER["HTTP_USER_AGENT"])) { $navigateur = 'Nokia'; } elseif (preg_match("#Safari#", $_SERVER["HTTP_USER_AGENT"])) { $navigateur = 'Safari'; } elseif (preg_match("#SeaMonkey#", $_SERVER["HTTP_USER_AGENT"])) { $navigateur = 'SeaMonkey'; } elseif (preg_match("#PSP#", $_SERVER["HTTP_USER_AGENT"])) { $navigateur = 'PSP'; } elseif (preg_match("#Netscape#", $_SERVER["HTTP_USER_AGENT"])) { $navigateur = 'Netscape'; } else { $navigateur = 'Inconnu'; }; /* Définition variable systeme internaute */ if (preg_match_all("#Windows NT (.*)[;|\)]#isU", $_SERVER["HTTP_USER_AGENT"], $version)) { if ($version[1][0] == '6.1') { $os = 'Windows Seven'; } elseif($version[1][0] == '6.0') { $os = 'Windows Vista'; } elseif($version[1][0] == '5.1') { $os = 'Windows XP'; } elseif($version[1][0] == '5.2') { $os = 'Windows Server 2003'; } else { $os = 'Windows ' . $version[1][0]; } } elseif (preg_match_all("#Mac (.*);#isU", $_SERVER["HTTP_USER_AGENT"], $version)) { $os = 'Mac ' . $version[1][0]; } elseif (preg_match("#Windows 98#", $_SERVER["HTTP_USER_AGENT"])) { $os = 'Windows 98'; } elseif (preg_match("#Mac#", $_SERVER["HTTP_USER_AGENT"])) { $os = 'Mac'; } elseif (preg_match("#SunOS#", $_SERVER["HTTP_USER_AGENT"])) { $os = 'SunOS'; } elseif (preg_match("#Fedora#", $_SERVER["HTTP_USER_AGENT"])) { $os = 'Fedora'; } elseif (preg_match("#Haiku#", $_SERVER["HTTP_USER_AGENT"])) { $os = 'Haiku'; } elseif (preg_match("#Ubuntu#", $_SERVER["HTTP_USER_AGENT"])) { $os = 'Linux Ubuntu'; } elseif (preg_match("#FreeBSD#", $_SERVER["HTTP_USER_AGENT"])) { $os = 'FreeBSD'; } elseif (preg_match("#Linux#", $_SERVER["HTTP_USER_AGENT"])) { $os = 'Linux'; } else { $os = 'Inconnu'; }; /* définition variable langue internaute */ $langue = $_SERVER['HTTP_ACCEPT_LANGUAGE'] ; /* code postal de l'ip*/ $code_post_ip = trim(file_get_contents("https://ipinfo.io/{$adresse_ip}/postal")); /* ville de l'ip*/ $ville_ip = trim(file_get_contents("https://ipinfo.io/{$adresse_ip}/city")); /* region de l'ip*/ $region_ip = trim(file_get_contents("https://ipinfo.io/{$adresse_ip}/region")); /* pays de l'ip*/ $pays_ip = trim(file_get_contents("https://ipinfo.io/{$adresse_ip}/country")); /* nom pays de l'ip*/ $nom_pays_ip = trim(file_get_contents("https://ipinfo.io/{$adresse_ip}/country_name")); /* geoloc de l'ip*/ $geoloc_ip = trim(file_get_contents("https://ipinfo.io/{$adresse_ip}/loc")); /* fuseau horaire de l'ip*/ $fuseau_horaire_ip = trim(file_get_contents("https://ipinfo.io/{$adresse_ip}/timezone")); ?>
traderpierre
Messages postés
291
Date d'inscription
mercredi 11 octobre 2006
Statut
Membre
Dernière intervention
6 janvier 2024
6
11 juin 2020 à 22:32
11 juin 2020 à 22:32
Page envoi_abonnement_newslettre.php
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <link rel="stylesheet" href="../styles/style.css" type="text/css" /> </head> <?php require('../Connections/connectMySql.php'); // conditions recaptcha pour le traitement du formulaire à inclure tout en début de la page du traitement du formulaire (celle désigné dans l'action du formulaire). $captcha = htmlspecialchars(trim($_POST['g-recaptcha-response'])); if(!$captcha){ ?> <div class="AlerteRougeSurlignee">Attention ! Vous êtes obligé de valider l'anti robot spammeur reCAPTCHA. <br> <a href="javascript:history.go(-1)">Retour au formulaire</a> </div> <?php }ELSE{ $reponse = file_get_contents("https://www.google.com/recaptcha/api/siteverify?secret=6LegtQsTAAAAAFWxFU3Y_wUesA6tSoT6bt_ve8q1&response=".$captcha."&remoteip=".$_SERVER['REMOTE_ADDR']); $data = json_decode($reponse); if ($data->success ==1) { // Ici à partir de ce point : Traitement d'envoi du formulaire // on démarre une session session_start(); // on initialise les variables de session $_SESSION['civilite'] = $_POST['civilite']; $_SESSION['prenom'] = $_POST['prenom']; $_SESSION['nom'] = $_POST['nom']; $_SESSION['code_postal'] = $_POST['code_postal']; $_SESSION['ville'] = $_POST['ville']; $_SESSION['pays'] = $_POST['pays']; $_SESSION['email'] = $_POST['email']; $_SESSION['news_lettre'] = $_POST['news_lettre']; $_SESSION['date'] = $_POST['date']; // Ici on conditionne tous les champs obligatoires if (isset($_POST['civilite']) && isset($_POST['prenom']) && isset($_POST['nom']) && isset($_POST['code_postal']) && isset($_POST['ville']) && isset($_POST['pays']) && isset($_POST['email'])) { // on initialise tous les champs "obligatoires ou non" dans des variables $civilite = strip_tags($_POST['civilite']); $prenom = strip_tags($_POST['prenom']); $nom = strip_tags($_POST['nom']); $societe = strip_tags($_POST['societe']); $code_postal = strip_tags($_POST['code_postal']); $ville = strip_tags($_POST['ville']); $pays = strip_tags($_POST['pays']); $email = strip_tags($_POST['email']); $news_lettre = strip_tags($_POST['news_lettre']); $adresse_ip = strip_tags($_POST['adresse_ip']); $fai = strip_tags($_POST['fai']); $navigateur = strip_tags($_POST['navigateur']); $systeme = strip_tags($_POST['systeme']); $langue = strip_tags($_POST['langue']); $code_post_ip = strip_tags($_POST['code_post_ip']); $ville_ip = strip_tags($_POST['ville_ip']); $region_ip = strip_tags($_POST['region_ip']); $pays_ip = strip_tags($_POST['pays_ip']); $nom_pays_ip = strip_tags($_POST['nom_pays_ip']); $geoloc_ip = strip_tags($_POST['geoloc_ip']); $fuseau_horaire_ip = strip_tags($_POST['fuseau_horaire_ip']); $date = strip_tags($_POST['date']); // on prépare la requête d'envoi avec tous les champs obligatoires ou non $req = $DB->prepare('INSERT INTO contacts( civilite, prenom, nom, societe, code_postal, ville, pays, email, news_lettre, adresse_ip, fai, navigateur, systeme, langue, date) VALUES(:civilite, :prenom, :nom, :societe, :code_postal, :ville, :pays, :email, :news_lettre, :adresse_ip, :fai, :navigateur, :systeme, :langue, :date)'); // On exécute l'envoi de tous les champs $req->execute(array( 'civilite' => $civilite, 'prenom' => $prenom, 'nom' => $nom, 'societe' => $societe, 'code_postal' => $code_postal, 'ville' => $ville, 'pays' => $pays, 'email' => $email, 'news_lettre' => $news_lettre, 'adresse_ip' => $adresse_ip, 'fai' => $fai, 'navigateur' => $navigateur, 'systeme' => $systeme, 'langue' => $langue, 'code_post_ip' => $code_post_ip, 'ville_ip' => $ville_ip, 'region_ip' => $region_ip, 'pays_ip' => $pays_ip, 'nom_pays_ip' => $nom_pays_ip, 'geoloc_ip' => $geoloc_ip, 'fuseau_horaire_ip' => $fuseau_horaire_ip, 'date' => $date, )); } // envoi email 1 et 2 $to1="p.dieudonne@eolprocess.com"; $to2="secretariat@eolprocess.com"; $sujet="Nouvel abonné à la News Lettre"; $courrier = nl2br($courrier); $renseignements="Un nouvel abonné à la news lettre est arrivé <br /> Civilité : $civilite <br /> Prénom : $prenom <br /> Nom : $nom <br /> Société : $societe <br /> Code postal : $code_postal <br /> Ville : $ville <br /> Pays : $pays <br /> Email : $email <br /> Abonnement NewsLettre : $news_lettre <br /> adresse_ip : $adresse_ip <br /> code_post_ip : $code_post_ip <br /> ville_ip : $ville_ip <br /> region_ip : $region_ip <br /> pays_ip : $pays_ip <br /> nom_pays_ip : $nom_pays_ip <br /> geoloc_ip : $geoloc_ip <br /> fuseau_horaire_ip : $fuseau_horaire_ip <br /> Date : $date "; $entete='From : '.$email."\r\n". 'Reply-To: '.$email . "\r\n" . 'Content-type : text/html; charset=utf-8'."\r\n". "Content-Transfer-Encoding: 8bit\r\n". 'Bcc: '.$to2 . "\r\n". 'X-Sender: '.$email."\r\n". 'X-Mailer: PHP/' . phpversion('5.6'). "\r\n". 'X-Priority: 2\r\n'. 'Return-Path: '.$email."\r\n". 'MIME-Version: 1.0\r\n'; mail($to1,$sujet,$renseignements,$entete); // Réponse automatique à prise de contact $sujet_reponse_auto = "Accusé de réception de votre abonnement à notre News Lettre"; $reponseauto = " <html> <body> <p><span style='font-size:12.0pt; line-height:107%;font-family:Verdana,sans-serif'>Bonjour, ".$civilite." ".$nom." ,</span></p> <p><span style='font-size:12.0pt;line-height:107%;font-family: Verdana,sans-serif'>Cette éolienne est maintenant commercialisée par la <a href='http://www.inergys.fr/solutions.html'>société Inergys</a>.</span> </p> <p><span style='font-size:12.0pt;line-height:107%;font-family:Verdana,sans-serif;background:yellow;'><strong>L’avantage du procédé EolProcess est de pouvoir s’adapter à tous les cas de figure et de construire du sur-mesure à faible coût, les pales étant constituées de modules empilables. Il sera par conséquent possible de construire les surfaces de pales sur mesure en fonction de vos deux critères suivants :</strong></span></p><ol><li><b><span style='font-size:12.0pt;line-height:107%;font-family:Verdana,sans-serif;background:yellow;'>Votre variable vent (production à partir d’une vitesse de vent de 2 m/s) ;</span></b></li><li><b><span style='font-size:12.0pt;line-height:107%;font-family:Verdana,sans-serif;background:yellow;'>vos besoins en énergie en fonction de cette variable.</span></b></li></ol> <p><span style='font-size:12.0pt;line-height:107%;font-family:Verdana,sans-serif; background:yellow;'><strong>C’est le seul système actuel qui permette de faire du sur-mesure.</strong></span></p> <p><span style='font-size:12.0pt;line-height:107%;font-family: Verdana,sans-serif'><a href='http://www.eolprocess.com/abonnement_newslettre.php'>Inscrivez-vous à ma news-lettre, vous serez tenu informé(e) sur l'évolution du produit.</a><br></span> <span style='font-size:12.0pt;line-height:107%;font-family: Verdana,sans-serif'><a href='http://www.eolprocess.com/abonnement_newslettre.php'>http://www.eolprocess.com/abonnement_newslettre.php</a>.</span></p> <p><span style='font-size:12.0pt;line-height:107%;font-family: Verdana,sans-serif'><a href='http://creativecommons.org/licenses/by-nc-nd/2.0/fr/'>Pour faire avancer la promotion de ce produit, vous pouvez également diffuser la présentation de mon éolienne par tous liens y menant sous réserve du respect de la licence Créative Commons consultable sur ce lien :</a><br><a href='http://www.eolprocess.com/abonnement_newslettre.php'>http://creativecommons.org/licenses/by-nc-nd/2.0/fr/ </a></span></p> <p><span style='font-size:12.0pt;line-height:107%;font-family:Verdana,sans-serif; background:yellow;'><strong>Vous serez régulièrement tenu informé(e) de l'évolution du produit.</strong></span></p><p><span style='font-size:12.0pt;line-height:107%;font-family: Verdana,sans-serif'>Recevez mes salutations distinguées.</span></p> <p><b> <span style='font: 12.0pt/107% Verdana, sans-serif;'><a href='mailto: p.dieudonne@eolprocess.com'>Pierre Dieudonné</a></span></b></p> <p><b><span style='font: 12.0pt/107% Verdana, sans-serif;'><a href='http://www.eolprocess.com'>EolProcess.com</a></span></b></p> </body> </html> "; $entete_reponse_auto ='From: '.$to1."\r\n" ; $entete_reponse_auto .= 'MIME-version: 1.0'."\r\n"; $entete_reponse_auto .= 'Content-type : text/html; charset=utf-8'."\r\n"; $entete_reponse_auto .='Reply-To: '.$email. "\r\n" ; $entete_reponse_auto .= 'Bcc: '.$to2. "\r\n";; mail($email,$sujet_reponse_auto,$reponseauto,$entete_reponse_auto); // fin de l'envoi email réponse automatique // Fin de l'envoi des emails // on ouvre la page de remerciements $insertGoTo = "../AR_form_abonnement_newslettre.php"; if (isset($_SERVER['QUERY_STRING'])) { $insertGoTo .= (strpos($insertGoTo, '?')) ? "&" : "?"; $insertGoTo .= $_SERVER['QUERY_STRING']; } header(sprintf("Location: %s", $insertGoTo)); // fin des conditions reCAPTCHA, à placer en dernier, à la fin du traitement d'envoi : "message si google analyse le comportement d'un robot" }else { var_dump($data); ?> <div class="AlerteRougeSurlignee">Google m'a dit que vous étiez un Robot Spammeur !<br> <a href="javascript:history.go(-1)">Retour au formulaire</a> </div> <?php } }; ?>
traderpierre
Messages postés
291
Date d'inscription
mercredi 11 octobre 2006
Statut
Membre
Dernière intervention
6 janvier 2024
6
11 juin 2020 à 22:33
11 juin 2020 à 22:33
Maintenant y a les couleurs et N° de lignes
J'espère que c'est bon !!!
Il est tant d'aller manger !!!
J'espère que c'est bon !!!
Il est tant d'aller manger !!!
jordane45
Messages postés
38288
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
15 novembre 2024
4 703
11 juin 2020 à 22:35
11 juin 2020 à 22:35
Bon.. moi je laisse tomber.
Tu ne sais pas lire ou tu as un gros problème de compréhension.. je ne sais pas... mais je ne vais pas passer ma soirée à t'expliquer....
Je t'ai dit de ne pas poster tes codes dans différents messages.... mais dans UN SEUL !
Je t'ai dit de ne pas poster ton code sans avoir, au préalable, appliqué les CONSIGNES données dans les liens que je t'ai filé ( déjà à plusieurs reprises dans plusieurs de tes discussions ).
Donc... apprend à lire ou fais un effort de concentration pour comprendre ce qu'on te dit et reviens nous voir APRES !
Tu ne sais pas lire ou tu as un gros problème de compréhension.. je ne sais pas... mais je ne vais pas passer ma soirée à t'expliquer....
Je t'ai dit de ne pas poster tes codes dans différents messages.... mais dans UN SEUL !
Je t'ai dit de ne pas poster ton code sans avoir, au préalable, appliqué les CONSIGNES données dans les liens que je t'ai filé ( déjà à plusieurs reprises dans plusieurs de tes discussions ).
Donc... apprend à lire ou fais un effort de concentration pour comprendre ce qu'on te dit et reviens nous voir APRES !
traderpierre
Messages postés
291
Date d'inscription
mercredi 11 octobre 2006
Statut
Membre
Dernière intervention
6 janvier 2024
6
11 juin 2020 à 23:25
11 juin 2020 à 23:25
variables_environnement
envoi_abonnement_newslettre
<?php /* Debogage */ ini_set('display_errors', TRUE); ini_set('display_startup_errors', TRUE); /* Définition des variables d'environnement collectées */ /* Définition variable l'adresse ip */ $adresse_ip = $_SERVER['REMOTE_ADDR']; /* Définition variable fournisseur_acces */ function getCurrentIP() { $ip = (getenv(HTTP_X_FORWARDED_FOR)) ? getenv(HTTP_X_FORWARDED_FOR) : getenv(REMOTE_ADDR); return $ip; }; function getCurrentFAI() { $ip = getCurrentIP(); $host = @gethostbyaddr($ip); $fai = false; if(substr_count($host, 'proxad')) $fai = 'free'; if(substr_count($host, 'orange')) $fai = 'orange'; if(substr_count($host, 'wanadoo')) $fai = 'orange'; if(substr_count($host, 'sfr')) $fai = 'sfr'; if(substr_count($host, 'club-internet')) $fai = 'sfr'; if(substr_count($host, 'neuf')) $fai = 'neuf'; if(substr_count($host, 'gaoland')) $fai = 'neuf'; if(substr_count($host, 'bbox')) $fai = 'bouygues'; if(substr_count($host, 'bouyg')) $fai = 'bouygues'; if(substr_count($host, 'numericable')) $fai = 'numericable'; if(substr_count($host, 'tele2')) $fai = 'tele2'; return $fai; }; $fournisseur_acces = getCurrentFAI(); if (empty($fournisseur_acces)) { $fournisseur_acces = 'Inconnu'; } /* définition Port Fourisseur d'accès */ $port_fai = $_SERVER['REMOTE_PORT']; /* Définition variable Navigateur internaute */ if (preg_match_all("#Opera (.*)(\[[a-z]{2}\];)?$#isU", $_SERVER ["HTTP_USER_AGENT"], $version)) { $navigateur = 'Opéra ' . $version[1][0]; } elseif (preg_match_all("#MSIE (.*);#isU", $_SERVER["HTTP_USER_AGENT"], $version)) { $navigateur = 'Internet Explorer ' . $version[1][0]; } elseif (preg_match_all("#Firefox(.*)$#isU", $_SERVER["HTTP_USER_AGENT"], $version)) { $version = str_replace('/', '', $version[1][0]); $navigateur = 'Firefox ' . $version; } elseif (preg_match_all("#Chrome(.*) Safari#isU", $_SERVER["HTTP_USER_AGENT"], $version)) { $version = str_replace('/', '', $version[1][0]); $navigateur = 'Chrome ' . $version; } elseif (preg_match_all("#Opera(.*) \(#isU", $_SERVER["HTTP_USER_AGENT"], $version)) { $version = str_replace('/', '', $version[1][0]); $navigateur = 'Opéra ' . $version; } elseif (preg_match("#Nokia#", $_SERVER["HTTP_USER_AGENT"])) { $navigateur = 'Nokia'; } elseif (preg_match("#Safari#", $_SERVER["HTTP_USER_AGENT"])) { $navigateur = 'Safari'; } elseif (preg_match("#SeaMonkey#", $_SERVER["HTTP_USER_AGENT"])) { $navigateur = 'SeaMonkey'; } elseif (preg_match("#PSP#", $_SERVER["HTTP_USER_AGENT"])) { $navigateur = 'PSP'; } elseif (preg_match("#Netscape#", $_SERVER["HTTP_USER_AGENT"])) { $navigateur = 'Netscape'; } else { $navigateur = 'Inconnu'; }; /* Définition variable systeme internaute */ if (preg_match_all("#Windows NT (.*)[;|\)]#isU", $_SERVER["HTTP_USER_AGENT"], $version)) { if ($version[1][0] == '6.1') { $os = 'Windows Seven'; } elseif($version[1][0] == '6.0') { $os = 'Windows Vista'; } elseif($version[1][0] == '5.1') { $os = 'Windows XP'; } elseif($version[1][0] == '5.2') { $os = 'Windows Server 2003'; } else { $os = 'Windows ' . $version[1][0]; } } elseif (preg_match_all("#Mac (.*);#isU", $_SERVER["HTTP_USER_AGENT"], $version)) { $os = 'Mac ' . $version[1][0]; } elseif (preg_match("#Windows 98#", $_SERVER["HTTP_USER_AGENT"])) { $os = 'Windows 98'; } elseif (preg_match("#Mac#", $_SERVER["HTTP_USER_AGENT"])) { $os = 'Mac'; } elseif (preg_match("#SunOS#", $_SERVER["HTTP_USER_AGENT"])) { $os = 'SunOS'; } elseif (preg_match("#Fedora#", $_SERVER["HTTP_USER_AGENT"])) { $os = 'Fedora'; } elseif (preg_match("#Haiku#", $_SERVER["HTTP_USER_AGENT"])) { $os = 'Haiku'; } elseif (preg_match("#Ubuntu#", $_SERVER["HTTP_USER_AGENT"])) { $os = 'Linux Ubuntu'; } elseif (preg_match("#FreeBSD#", $_SERVER["HTTP_USER_AGENT"])) { $os = 'FreeBSD'; } elseif (preg_match("#Linux#", $_SERVER["HTTP_USER_AGENT"])) { $os = 'Linux'; } else { $os = 'Inconnu'; }; /* définition variable langue internaute */ $langue = $_SERVER['HTTP_ACCEPT_LANGUAGE'] ; /* code postal de l'ip*/ $code_post_ip = trim(file_get_contents("https://ipinfo.io/{$adresse_ip}/postal")); /* ville de l'ip*/ $ville_ip = trim(file_get_contents("https://ipinfo.io/{$adresse_ip}/city")); /* region de l'ip*/ $region_ip = trim(file_get_contents("https://ipinfo.io/{$adresse_ip}/region")); /* pays de l'ip*/ $pays_ip = trim(file_get_contents("https://ipinfo.io/{$adresse_ip}/country")); /* nom pays de l'ip*/ $nom_pays_ip = trim(file_get_contents("https://ipinfo.io/{$adresse_ip}/country_name")); /* geoloc de l'ip*/ $geoloc_ip = trim(file_get_contents("https://ipinfo.io/{$adresse_ip}/loc")); /* fuseau horaire de l'ip*/ $fuseau_horaire_ip = trim(file_get_contents("https://ipinfo.io/{$adresse_ip}/timezone")); ?>
envoi_abonnement_newslettre
<?php // Debogage ini_set('display_errors', TRUE); ini_set('display_startup_errors', TRUE); require('../Connections/connectMySql.php'); // conditions recaptcha pour le traitement du formulaire à inclure tout en début de la page du traitement du formulaire (celle désigné dans l'action du formulaire). $captcha = htmlspecialchars(trim($_POST['g-recaptcha-response'])); if(!$captcha){ ?> <div class="AlerteRougeSurlignee">Attention ! Vous êtes obligé de valider l'anti robot spammeur reCAPTCHA. <br> <a href="javascript:history.go(-1)">Retour au formulaire</a> </div> <?php }ELSE{ $reponse = file_get_contents("https://www.google.com/recaptcha/api/siteverify?secret=6LegtQsTAAAAAFWxFU3Y_wUesA6tSoT6bt_ve8q1&response=".$captcha."&remoteip=".$_SERVER['REMOTE_ADDR']); $data = json_decode($reponse); if ($data->success ==1) { // Ici à partir de ce point : Traitement d'envoi du formulaire // on démarre une session session_start(); // on initialise les variables de session $_SESSION['civilite'] = $_POST['civilite']; $_SESSION['prenom'] = $_POST['prenom']; $_SESSION['nom'] = $_POST['nom']; $_SESSION['code_postal'] = $_POST['code_postal']; $_SESSION['ville'] = $_POST['ville']; $_SESSION['pays'] = $_POST['pays']; $_SESSION['email'] = $_POST['email']; $_SESSION['news_lettre'] = $_POST['news_lettre']; $_SESSION['date'] = $_POST['date']; // Ici on conditionne tous les champs obligatoires if (isset($_POST['civilite']) && isset($_POST['prenom']) && isset($_POST['nom']) && isset($_POST['code_postal']) && isset($_POST['ville']) && isset($_POST['pays']) && isset($_POST['email'])) { // on initialise tous les champs "obligatoires ou non" dans des variables $civilite = strip_tags($_POST['civilite']); $prenom = strip_tags($_POST['prenom']); $nom = strip_tags($_POST['nom']); $societe = strip_tags($_POST['societe']); $code_postal = strip_tags($_POST['code_postal']); $ville = strip_tags($_POST['ville']); $pays = strip_tags($_POST['pays']); $email = strip_tags($_POST['email']); $news_lettre = strip_tags($_POST['news_lettre']); $adresse_ip = strip_tags($_POST['adresse_ip']); $fai = strip_tags($_POST['fai']); $navigateur = strip_tags($_POST['navigateur']); $systeme = strip_tags($_POST['systeme']); $langue = strip_tags($_POST['langue']); $code_post_ip = strip_tags($_POST['code_post_ip']); $ville_ip = strip_tags($_POST['ville_ip']); $region_ip = strip_tags($_POST['region_ip']); $pays_ip = strip_tags($_POST['pays_ip']); $nom_pays_ip = strip_tags($_POST['nom_pays_ip']); $geoloc_ip = strip_tags($_POST['geoloc_ip']); $fuseau_horaire_ip = strip_tags($_POST['fuseau_horaire_ip']); $date = strip_tags($_POST['date']); // on prépare la requête d'envoi avec tous les champs obligatoires ou non $req = $DB->prepare('INSERT INTO contacts( civilite, prenom, nom, societe, code_postal, ville, pays, email, news_lettre, adresse_ip, fai, navigateur, systeme, langue, date) VALUES(:civilite, :prenom, :nom, :societe, :code_postal, :ville, :pays, :email, :news_lettre, :adresse_ip, :fai, :navigateur, :systeme, :langue, :date)'); // On exécute l'envoi de tous les champs $req->execute(array( 'civilite' => $civilite, 'prenom' => $prenom, 'nom' => $nom, 'societe' => $societe, 'code_postal' => $code_postal, 'ville' => $ville, 'pays' => $pays, 'email' => $email, 'news_lettre' => $news_lettre, 'adresse_ip' => $adresse_ip, 'fai' => $fai, 'navigateur' => $navigateur, 'systeme' => $systeme, 'langue' => $langue, 'code_post_ip' => $code_post_ip, 'ville_ip' => $ville_ip, 'region_ip' => $region_ip, 'pays_ip' => $pays_ip, 'nom_pays_ip' => $nom_pays_ip, 'geoloc_ip' => $geoloc_ip, 'fuseau_horaire_ip' => $fuseau_horaire_ip, 'date' => $date, )); } // envoi email 1 et 2 $to1="p.dieudonne@eolprocess.com"; $to2="secretariat@eolprocess.com"; $sujet="Nouvel abonné à la News Lettre"; $courrier = nl2br($courrier); $renseignements="Un nouvel abonné à la news lettre est arrivé <br /> Civilité : $civilite <br /> Prénom : $prenom <br /> Nom : $nom <br /> Société : $societe <br /> Code postal : $code_postal <br /> Ville : $ville <br /> Pays : $pays <br /> Email : $email <br /> Abonnement NewsLettre : $news_lettre <br /> adresse_ip : $adresse_ip <br /> code_post_ip : $code_post_ip <br /> ville_ip : $ville_ip <br /> region_ip : $region_ip <br /> pays_ip : $pays_ip <br /> nom_pays_ip : $nom_pays_ip <br /> geoloc_ip : $geoloc_ip <br /> fuseau_horaire_ip : $fuseau_horaire_ip <br /> Date : $date "; $entete='From : '.$email."\r\n". 'Reply-To: '.$email . "\r\n" . 'Content-type : text/html; charset=utf-8'."\r\n". "Content-Transfer-Encoding: 8bit\r\n". 'Bcc: '.$to2 . "\r\n". 'X-Sender: '.$email."\r\n". 'X-Mailer: PHP/' . phpversion('5.6'). "\r\n". 'X-Priority: 2\r\n'. 'Return-Path: '.$email."\r\n". 'MIME-Version: 1.0\r\n'; mail($to1,$sujet,$renseignements,$entete); // Réponse automatique à prise de contact $sujet_reponse_auto = "Accusé de réception de votre abonnement à notre News Lettre"; $reponseauto = " <html> <body> <p><span style='font-size:12.0pt; line-height:107%;font-family:Verdana,sans-serif'>Bonjour, ".$civilite." ".$nom." ,</span></p> <p><span style='font-size:12.0pt;line-height:107%;font-family: Verdana,sans-serif'>Cette éolienne est maintenant commercialisée par la <a href='http://www.inergys.fr/solutions.html'>société Inergys</a>.</span> </p> <p><span style='font-size:12.0pt;line-height:107%;font-family:Verdana,sans-serif;background:yellow;'><strong>L’avantage du procédé EolProcess est de pouvoir s’adapter à tous les cas de figure et de construire du sur-mesure à faible coût, les pales étant constituées de modules empilables. Il sera par conséquent possible de construire les surfaces de pales sur mesure en fonction de vos deux critères suivants :</strong></span></p><ol><li><b><span style='font-size:12.0pt;line-height:107%;font-family:Verdana,sans-serif;background:yellow;'>Votre variable vent (production à partir d’une vitesse de vent de 2 m/s) ;</span></b></li><li><b><span style='font-size:12.0pt;line-height:107%;font-family:Verdana,sans-serif;background:yellow;'>vos besoins en énergie en fonction de cette variable.</span></b></li></ol> <p><span style='font-size:12.0pt;line-height:107%;font-family:Verdana,sans-serif; background:yellow;'><strong>C’est le seul système actuel qui permette de faire du sur-mesure.</strong></span></p> <p><span style='font-size:12.0pt;line-height:107%;font-family: Verdana,sans-serif'><a href='http://www.eolprocess.com/abonnement_newslettre.php'>Inscrivez-vous à ma news-lettre, vous serez tenu informé(e) sur l'évolution du produit.</a><br></span> <span style='font-size:12.0pt;line-height:107%;font-family: Verdana,sans-serif'><a href='http://www.eolprocess.com/abonnement_newslettre.php'>http://www.eolprocess.com/abonnement_newslettre.php</a>.</span></p> <p><span style='font-size:12.0pt;line-height:107%;font-family: Verdana,sans-serif'><a href='http://creativecommons.org/licenses/by-nc-nd/2.0/fr/'>Pour faire avancer la promotion de ce produit, vous pouvez également diffuser la présentation de mon éolienne par tous liens y menant sous réserve du respect de la licence Créative Commons consultable sur ce lien :</a><br><a href='http://www.eolprocess.com/abonnement_newslettre.php'>http://creativecommons.org/licenses/by-nc-nd/2.0/fr/ </a></span></p> <p><span style='font-size:12.0pt;line-height:107%;font-family:Verdana,sans-serif; background:yellow;'><strong>Vous serez régulièrement tenu informé(e) de l'évolution du produit.</strong></span></p><p><span style='font-size:12.0pt;line-height:107%;font-family: Verdana,sans-serif'>Recevez mes salutations distinguées.</span></p> <p><b> <span style='font: 12.0pt/107% Verdana, sans-serif;'><a href='mailto: p.dieudonne@eolprocess.com'>Pierre Dieudonné</a></span></b></p> <p><b><span style='font: 12.0pt/107% Verdana, sans-serif;'><a href='http://www.eolprocess.com'>EolProcess.com</a></span></b></p> </body> </html> "; $entete_reponse_auto ='From: '.$to1."\r\n" ; $entete_reponse_auto .= 'MIME-version: 1.0'."\r\n"; $entete_reponse_auto .= 'Content-type : text/html; charset=utf-8'."\r\n"; $entete_reponse_auto .='Reply-To: '.$email. "\r\n" ; $entete_reponse_auto .= 'Bcc: '.$to2. "\r\n";; mail($email,$sujet_reponse_auto,$reponseauto,$entete_reponse_auto); // fin de l'envoi email réponse automatique // Fin de l'envoi des emails // on ouvre la page de remerciements $insertGoTo = "../AR_form_abonnement_newslettre.php"; if (isset($_SERVER['QUERY_STRING'])) { $insertGoTo .= (strpos($insertGoTo, '?')) ? "&" : "?"; $insertGoTo .= $_SERVER['QUERY_STRING']; } header(sprintf("Location: %s", $insertGoTo)); // fin des conditions reCAPTCHA, à placer en dernier, à la fin du traitement d'envoi : "message si google analyse le comportement d'un robot" }else { var_dump($data); ?> <div class="AlerteRougeSurlignee">Google m'a dit que vous étiez un Robot Spammeur !<br> <a href="javascript:history.go(-1)">Retour au formulaire</a> </div> <?php } }; ?>
jordane45
Messages postés
38288
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
15 novembre 2024
4 703
Modifié le 11 juin 2020 à 23:33
Modifié le 11 juin 2020 à 23:33
Tu as activé l'affichage des erreurs PDO ?
Tu as placé tes requêtes dans des bloc try catch ?
Tu as correctement récupérer les variables avant de les utiliser ?
Je ne vois rien de tout ça dans le code que tu viens encore de nous poster....
Fais ces modifications...
Cela devrait te permettre de trouver l'erreur.
Si ce n'est toujours pas le cas montre-nous le code correctement modifié.
Tu as placé tes requêtes dans des bloc try catch ?
Tu as correctement récupérer les variables avant de les utiliser ?
Je ne vois rien de tout ça dans le code que tu viens encore de nous poster....
Fais ces modifications...
Cela devrait te permettre de trouver l'erreur.
Si ce n'est toujours pas le cas montre-nous le code correctement modifié.
traderpierre
Messages postés
291
Date d'inscription
mercredi 11 octobre 2006
Statut
Membre
Dernière intervention
6 janvier 2024
6
11 juin 2020 à 23:39
11 juin 2020 à 23:39
je verrai cela demain, ça m'a mis la tête à l'envers