Probleme de formulaire sur IE
Résolu
steff974
Messages postés
7
Date d'inscription
Statut
Membre
Dernière intervention
-
bienvu.ch Messages postés 27 Date d'inscription Statut Membre Dernière intervention -
bienvu.ch Messages postés 27 Date d'inscription Statut Membre Dernière intervention -
Bonjour à tous !
Je cherche désespérément à trouver le problème du formulaire de mon site web,
Étant novice en développement, je remercie tous ceux qui pourrons m'aider par leurs connaissances.
j'ai un formulaire classique php contenant une session et qui fonctionne nickel sur firefox, par contre sur IE, j'ai du code php qui s'affiche dans les champs à remplir au lieu qu'il soit vide.
merci,
Je cherche désespérément à trouver le problème du formulaire de mon site web,
Étant novice en développement, je remercie tous ceux qui pourrons m'aider par leurs connaissances.
j'ai un formulaire classique php contenant une session et qui fonctionne nickel sur firefox, par contre sur IE, j'ai du code php qui s'affiche dans les champs à remplir au lieu qu'il soit vide.
merci,
A voir également:
- Probleme de formulaire sur IE
- Whatsapp formulaire opposition - Guide
- Formulaire de réclamation facebook - Guide
- Formulaire de reclamation instagram - Guide
- Ie tab - Télécharger - Outils pour navigateurs
- Bill ie cork ✓ - Forum Consommation & Internet
8 réponses
Bonjour
Normalement, un script d'envoie pas son code PHP en ligne. Peu importe que ce soit IE ou autre chose qui est à l'écoute.
C'est du code php ou des message d'erreur php qui s'affichent dans les champs ?
Normalement, un script d'envoie pas son code PHP en ligne. Peu importe que ce soit IE ou autre chose qui est à l'écoute.
C'est du code php ou des message d'erreur php qui s'affichent dans les champs ?
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
J'ai terminé traitement.php avec %> qui manquait.
Ensuite ça a passé avec FF, IE et Chrome.
Néamoins quelques points:
1) <?= n'est pas très propre. <% echo est préférable
2) définir $headers pour que les caractères spéciaux accents passent (charset) et envoyer en HTML
$headers = "MIME-Version: 1.0" . "\r\n";
$headers .= "Content-type:text/html;charset=UTF-8" . "\r\n";
3) les lignes
var_dump($errors);
die();
ne seront jamais exécutées.
Regarde si ça règle tes problèmes.
Seb
Ensuite ça a passé avec FF, IE et Chrome.
Néamoins quelques points:
1) <?= n'est pas très propre. <% echo est préférable
2) définir $headers pour que les caractères spéciaux accents passent (charset) et envoyer en HTML
$headers = "MIME-Version: 1.0" . "\r\n";
$headers .= "Content-type:text/html;charset=UTF-8" . "\r\n";
3) les lignes
var_dump($errors);
die();
ne seront jamais exécutées.
Regarde si ça règle tes problèmes.
Seb
voila mon formulaire :
<?php
session_start();
?><!DOCTYPE html>
<html lang="fr-FR" prefix="og: http://ogp.me/ns#">
<head>
<meta charset="utf-8" />
<title>seit multiservices installation et dépannage, sud et ouest de l'ile de la reunion 974</title>
<meta name="description" content="Specialise dans les travaux de construction et de renovation, notre entreprise realise vos projets d'electricite, plomberie, amenagement interieur et exterieur">
<meta name="robots" CONTENT="all">
<meta name="Language" CONTENT="fr"/>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" href="seit-multiservices.css">
<link rel="shortcut icon" HREF="images/commun/favicon-seit.png">
<meta property="og:title" content="Installation de portail & arrosage automatique, maçonnerie & menuiserie à la réunion 974">
<meta property="og:description" content="Spécialiste de l'aménagement extérieur, notre entreprise intervient pour vos travaux de maconnerie, menuiserie et finitions de votre logement">
<meta property="og:type" content="website">
<meta property="og:url" content="seit-multiservices-974.orange.fr">
<meta property="og:site_name" content="SEIT Multiservices">
<meta property="og:locale" content="fr_FR"/>
<!--pour les balise html5-->
<!--[if lt IE 9]>
<script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script>
<![endif]-->
<!--pour les media query-->
<!--[if lt IE 9]>
<script src="https://oss.maxcdn.com/libs/respond.js/1.3.0/respond.min.js"></script>
<![endif]-->
</head>
<body>
<div id="conteneur">
<!--
======================================================================================================
HEADER
======================================================================================================
BANNIERE-->
<header>
<img id="image-banniere" src="images/Acceuil/banniere-multiservices.png" alt="Multiservices image">
<a href="index.html" rel="nofollow noopener noreferrer" target="_blank"><div id="logo">
<h1>SEIT Multiservices</h1>
<h2>Electricité - Plomberie - Rénovation</h2>
</div></a>
</header>
<div class="separateur-section"></div>
<!--======================================================================================================
ASIDE LEFT - NAVIGATION-->
<main class="main-contact">
<div class="titre-acceuil"><h1 id="titre-page">Formulaire de contact</h1></div>
<aside id="aside-left">
<a href="contact.php" rel="nofollow noopener noreferrer" target="_blank"><div id="zone-contact">
<span id="contactez-nous">Contactez-nous au</span>
<span id="telephone">0692 00 00 00</span>
</div></a>
<nav id="site-navigation" class="main-navigation">
<ul>
<li><a href="index.html" rel="nofollow noopener noreferrer" target="_blank">Acceuil</a></li>
<li><a href="travaux-electricite-974.html" rel="nofollow noopener noreferrer" target="_blank">Electricité générale</a></li>
<li><a href="travaux-plomberie-974.html" rel="nofollow noopener noreferrer" target="_blank">Plomberie générale</a></li>
<li><a href="renovation-interieur-974.html" rel="nofollow noopener noreferrer" target="_blank">Rénovation intérieur</a></li>
<li><a href="travaux-exterieur-974.html" rel="nofollow noopener noreferrer" target="_blank">Travaux extérieur</a></li>
<li><a href="contact.php" rel="nofollow noopener noreferrer" target="_blank">Nous contacter</a></li>
</ul>
</nav>
</aside>
<?php if(array_key_exists('errors', $_SESSION)): ?>
<div class="alert-danger">
<?= implode('<br>', $_SESSION['errors']); ?>
</div>
<?php unset($_SESSION['errors']); endif; ?>
<?php if(array_key_exists('success', $_SESSION)): ?>
<div class="alert-success">
Votre demande a bien été envoyé
</div>
<?php endif; ?>
<form action="traitement.php" method="post">
<p>
<label for="input_name">Votre nom* :</label><br>
<input type="text" name="name" id="input_name" autofocus="autofocus" value="<?= isset($_SESSION['inputs']['name']) ? $_SESSION['inputs']['name'] : ''; ?>">
</p>
<p>
<label for="input_email">Votre e-mail* :</label><br>
<input type="email" name="email" id="input_email" value="<?= isset($_SESSION['inputs']['email']) ? $_SESSION['inputs']['email'] : ''; ?>">
</p>
<p>
<label for="input_tel">Téléphone :</label><br>
<input type="tel" name="tel" id="input_tel" value="<?= isset($_SESSION['inputs']['tel']) ? $_SESSION['inputs']['tel'] : ''; ?>">
</p>
<p>
<label for="select_communes">Communes :</label><br>
<select name="communes" id="select_communes">
<option value="Saint-Paul">97460 - Saint-Paul</option>
<option value="Les Trois-bassins">97426 - Les trois-Bassins</option>
<option value="Saint-Leu">97436 - St-Leu</option>
<option value="Les Avirons">97425 - Les Avirons</option>
<option value="Etang-Salé">97427 - Etang-Salé</option>
<option value="Saint-Louis">97450 - Saint-Louis</option>
<option value="Entre-Deux">97414 - Entre-Deux</option>
<option value="Saint-Pierre">97410 - Saint-Pierre</option>
<option value="Le Tampon">97430 - Le Tampon</option>
<option value="Petite-Ile">97429 - Petite-Ile</option>
<option value="Saint-Josepsh">97480 - Saint-Joseph</option>
</select>
</p>
<p>
<label for="message">Votre message* :</label><br />
<textarea name="message" id="message"><?= isset($_SESSION['inputs']['message']) ? $_SESSION['inputs']['message'] : ''; ?></textarea>
</p>
<p>
<button type="submit">Envoyer</button>
</p>
</form>
<!--<h2>Debug :</h2>
<?= var_dump($_SESSION); ?>-->
</main>
<div class="ajout-footer"></div>
<div class="separateur-footer"><a href="#conteneur" rel="nofollow noopener noreferrer" target="_blank">(Haut)</a></div>
<!--======================================================================================================
FOOTER
=======================================================================================================
CONTACT FOOTER-->
<footer>
<p id="contact-adress-footer">
<span>mon adresse</span>
<span>97421</span>
<span>LA RIVIERE / LES MAKES</span>
</p>
<p id="copyright">
copyright © 2017 SEIT Multiservices - <a href="mentions.html" rel="nofollow noopener noreferrer" target="_blank">Mentions légales</a>
</p>
</footer>
<div class="fin-footer"></div>
</div>
</body>
</html>
<?php
unset($_SESSION['inputs']);
unset($_SESSION['success']);
unset($_SESSION['errors']);
?>
et mon code de traitement :
<?php
$errors = [];
if(!array_key_exists('name', $_POST) || $_POST['name'] == ''){
$errors['name'] = "Vous n'avez pas renseigné votre nom";
}
if(!array_key_exists('email', $_POST) || $_POST['email'] == '' || !filter_var($_POST['email'], FILTER_VALIDATE_EMAIL)){
$errors['email'] = "Vous n'avez pas renseigné un email valide";
}
if(!array_key_exists('message', $_POST) || $_POST['message'] == ''){
$errors['message'] = "Vous n'avez pas renseigné votre message";
}
session_start();
if(!empty($errors)){
$_SESSION['errors'] = $errors;
$_SESSION['inputs'] = $_POST;
header('Location: contact.php');
}else{
$_SESSION['success'] = 1;
$message = htmlspecialchars($_POST['name'])."\r\n";
$message .= htmlspecialchars($_POST['tel'])."\r\n";
$message .= htmlspecialchars($_POST['email'])."\r\n";
$message .= htmlspecialchars($_POST['communes'])."\r\n\r\n";
$message .= htmlspecialchars($_POST['message']);
$headers = 'From: ' . $_POST['email'];
mail('seit@live.fr', 'Formulaire de contact de ' . $_POST['name'], $message, $headers);
header('Location: contact.php');
}
var_dump($errors);
die();
Stef