Problème sur formulaire
Résolu/Fermé
patdu17000
Messages postés
6
Date d'inscription
samedi 14 janvier 2017
Statut
Membre
Dernière intervention
14 janvier 2017
-
14 janv. 2017 à 12:23
patdu17000 Messages postés 6 Date d'inscription samedi 14 janvier 2017 Statut Membre Dernière intervention 14 janvier 2017 - 14 janv. 2017 à 17:30
patdu17000 Messages postés 6 Date d'inscription samedi 14 janvier 2017 Statut Membre Dernière intervention 14 janvier 2017 - 14 janv. 2017 à 17:30
A voir également:
- Problème sur formulaire
- Formulaire de réclamation facebook - Guide
- Formulaire instagram compte suspendu - Guide
- Le formulaire rempli - Guide
- Formulaire de contact le bon coin introuvable - Forum Réseaux sociaux
- Confirmer le nouvel envoi du formulaire err_cache_miss ✓ - Forum HTML
4 réponses
NHenry
Messages postés
15175
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
25 décembre 2024
350
14 janv. 2017 à 12:26
14 janv. 2017 à 12:26
Sans le code concerné, impossible de répondre.
patdu17000
Messages postés
6
Date d'inscription
samedi 14 janvier 2017
Statut
Membre
Dernière intervention
14 janvier 2017
Modifié par NHenry le 14/01/2017 à 14:08
Modifié par NHenry le 14/01/2017 à 14:08
voici maintenant le code du traitement :
merci
<?php error_reporting(E_ALL); ini_set('display_errors', 'On'); $TO = "patrick.gillet@location-bateau-la-rochelle.fr"; $h = "From: " . $TO; $message = ""; while (list($key, $val) = each($HTTP_POST_VARS)) { $message .= "$key : $val\n"; } mail($TO, $subject, $message, $h); header('Location: [http://www.location-bateaux-la-rochelle.com/index.php%27); http://www.location-bateaux-la-rochelle.com/index.php');|nofollow] exit(); ?>
merci
EDIT : Ajout du LANGAGE dans les balises de code (la coloration syntaxique).
Explications disponibles ici : ICI Merci d'y penser dans tes prochains messages. |
NHenry
Messages postés
15175
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
25 décembre 2024
350
14 janv. 2017 à 14:11
14 janv. 2017 à 14:11
Pour récupérer les données d'un formulaire, ce n'est plus $HTTP_POST_VARS, mais $_POST (ou $_GET, $_REQUEST, $_SERVER, ... ).
De plus, tu récupère directement la valeur du champ, il est donc possible d'injecter un code HTML malveillant dans ton mail sans aucun problème (voir htmlspecialchars).
De plus, tu récupère directement la valeur du champ, il est donc possible d'injecter un code HTML malveillant dans ton mail sans aucun problème (voir htmlspecialchars).
patdu17000
Messages postés
6
Date d'inscription
samedi 14 janvier 2017
Statut
Membre
Dernière intervention
14 janvier 2017
>
NHenry
Messages postés
15175
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
25 décembre 2024
14 janv. 2017 à 14:43
14 janv. 2017 à 14:43
merci Henry
de ta réponse rapide mais en configuration PHP 5.6
voici le code erreur que j'ai :
Avis : Undefined variable: sujet dans /home/locationli/www/traitement.php sur la ligne 13
Avertissement : Vous ne pouvez pas modifier les informations d' en- tête - headers already sent by (output started at /home/locationli/www/traitement.php:13) dans / home / locationli / www / traitement.php sur la ligne 15
voici le code du traitement que je viens de faire suite à ta modification :
de ta réponse rapide mais en configuration PHP 5.6
voici le code erreur que j'ai :
Avis : Undefined variable: sujet dans /home/locationli/www/traitement.php sur la ligne 13
Avertissement : Vous ne pouvez pas modifier les informations d' en- tête - headers already sent by (output started at /home/locationli/www/traitement.php:13) dans / home / locationli / www / traitement.php sur la ligne 15
voici le code du traitement que je viens de faire suite à ta modification :
<?php
error_reporting(E_ALL);
ini_set('display_errors', 'On');
$TO = "patrick.gillet@location-bateau-la-rochelle.fr";
$h = "From: " . $TO;
$message = "";
while (list($key, $val) = each($_POST)) {
$message .= "$key : $val\n";
}
mail($TO, $subject, $message, $h);
header('Location: http://www.location-bateaux-la-rochelle.com/index.php');
exit();
?>
NHenry
Messages postés
15175
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
25 décembre 2024
350
14 janv. 2017 à 15:37
14 janv. 2017 à 15:37
Merci de mettre les messages d'erreur dans leur langue d'origine, cela évite es approximations de la traduction.
Où assignes-tu la variable $subject ?
Comme tu as un avertissement qui s'affiche, il y a déjà un envoi de contenu, donc ça verrouille les headers.
Où assignes-tu la variable $subject ?
Comme tu as un avertissement qui s'affiche, il y a déjà un envoi de contenu, donc ça verrouille les headers.
patdu17000
Messages postés
6
Date d'inscription
samedi 14 janvier 2017
Statut
Membre
Dernière intervention
14 janvier 2017
14 janv. 2017 à 17:13
14 janv. 2017 à 17:13
voici le message non traduit :
Notice: Undefined variable: subject in /home/locationli/www/traitement.php on line 13
Warning: Cannot modify header information - headers already sent by (output started at /home/locationli/www/traitement.php:13) in /home/locationli/www/traitement.php on line 15
ce que je ne comprend pas c'est que si mon hébergement sur ovh est réglé sur php 4.4,
il fonctionne correctement sans message d'erreur,
hors dès que je le réglé en PHP 5.6 le message d'erreur arrive
Notice: Undefined variable: subject in /home/locationli/www/traitement.php on line 13
Warning: Cannot modify header information - headers already sent by (output started at /home/locationli/www/traitement.php:13) in /home/locationli/www/traitement.php on line 15
ce que je ne comprend pas c'est que si mon hébergement sur ovh est réglé sur php 4.4,
il fonctionne correctement sans message d'erreur,
hors dès que je le réglé en PHP 5.6 le message d'erreur arrive
jordane45
Messages postés
38350
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
26 décembre 2024
4 719
14 janv. 2017 à 17:18
14 janv. 2017 à 17:18
Bonjour,
Sans oublier les lignes suivantes dans le code
Qui active l'affichage des erreurs PHP ....
Mais comme le dit NHENRY, la variable $subject n'est pas initialisée dans ton code .. d'où le message d'erreur !
Ajoute un truc du genre :
avant la fonction mail et tout devrait rentrer dans l'ordre.
Sans oublier les lignes suivantes dans le code
error_reporting(E_ALL); ini_set('display_errors', 'On');
Qui active l'affichage des erreurs PHP ....
Mais comme le dit NHENRY, la variable $subject n'est pas initialisée dans ton code .. d'où le message d'erreur !
Ajoute un truc du genre :
$subject = "Le sujet du mail que tu veux mettre";
avant la fonction mail et tout devrait rentrer dans l'ordre.
patdu17000
Messages postés
6
Date d'inscription
samedi 14 janvier 2017
Statut
Membre
Dernière intervention
14 janvier 2017
14 janv. 2017 à 17:30
14 janv. 2017 à 17:30
mille mercis Jordane
c’était en effet que ça
patrick
c’était en effet que ça
patrick
Modifié par NHenry le 14/01/2017 à 14:08
voici le code html du formulaire
Explications disponibles ici : ICI
Merci d'y penser dans tes prochains messages.