Problème formulaire php

Résolu
Bonjour,
j'ai créé un formulaire,
un fichier formmail, dans lequel j'ai inclus un code de sécurité:

<?php echo "<?xml version=\"1.0\" encoding=\"iso-8859-1\"?".">"; ?>
<?php session_start(); ?>
<?php
if (isset($_POST['submitform'])){
$secure = isset($_POST['secure']) ? strtolower($_POST['secure']) : '';
if ($secure == $_SESSION['securecode']) {
echo 'Le code de sécurité est ok';
unset($_SESSION['securecode']);
}
else { echo 'Le code de sécurité est incorrecte!';
}
}
?>
/*jusque là ça fonctionne, si le code n'est pas bon j'ai le message d'erreur,
si le code est ok, je reçois le message ok

si j'ajoute le code pour recevoir l'émail : */

<?php
$TO = "info@moi.net";

$h = "From: " . $TO;

$message = "";

while (list($key, $val) = each($_POST)) {
$message .= "$key : $val\n";
}

mail($TO, $subject, $message, $h);

Header("Location: http://www.moi.net/reception/youpi.php");

?>

il ignore la partie sécurité et envoi le message que reçois par email

En bref mes deux codes fonctionnent séparément, mais ensemble ça va pas...
merci de votre aide
Jacques

9 réponses

  1. je tâtonne
    merci de votre intervention, mais maintenant ça marche..0
    je ne suis pas un phpiste, je recopie des codes plic ploc et j'essaie de les agencer...
    j'ai beaucoup à apprendre, et maintenant que suis "pensionné" (avec des cacahuètes) je m'occupe, une occupation passionnante qui ne coûte pas grand-chose
    merci à vous les jeunes (peu nombreux, motivés pour ce job)
    1. ok un grand merci, mais je reviendrai, je suis un perfectioniste!
      encore merci, je peux travailler
      jjaco
      1. <?php echo "<?xml version=\"1.0\" encoding=\"iso-8859-1\"?".">"; ?>
        <?php session_start(); ?>
        <?php
        if(isset($_POST['submitform'])) {
        	$secure = isset($_POST['secure']) ? strtolower($_POST['secure']) : '';
        	if($secure == $_SESSION['securecode']) {
        		unset($_SESSION['securecode']);
        
        		$TO = "info@moi.net";
        		$h = "From: " . $TO;
        		$subject = 'On vous écrit';
        		$message = "";
        
        		while (list($key, $val) = each($_POST)) {
        			$message .= "$key : $val\n";
        		}
        		mail($TO, $subject, $message, $h);
        		Header("Location: http://www.moi.net/reception/youpi.php");
        	} else {
        		echo 'Le code de sécurité est incorrecte!';
        	}
        }
        ?>
        1. pour info, avec comment ca marche, je n'arrive à décaler les codes vers la droite si c'est l'indentation...
          1. twinpics a bien compris mon problème, quant à l'indentation, j'ai bien compris la question, mais...
            donc:
            <?php echo "<?xml version=\"1.0\" encoding=\"iso-8859-1\"?".">"; ?>
            <?php session_start(); ?>
            <?php
            if (isset($_POST['submitform']))
            {
            $secure = isset($_POST['secure']) ? strtolower($_POST['secure']) : '';
            if ($secure == $_SESSION['securecode'])
            {
            echo 'Le code de sécurité est ok';
            unset($_SESSION['securecode']);
            }
            else { echo 'Le code de sécurité est incorrecte!';
            }
            }
            ?>

            donc il me manque une " { " quelque part.... il y a comme un courant d'air!

            l'autre code:

            <?php
            $TO = "info@moi.net";

            $h = "From: " . $TO;

            $message = "";

            while (list($key, $val) = each($_POST))
            {
            $message .= "$key : $val\n";
            }

            mail($TO, $subject, $message, $h);

            Header("Location: http://www.moi.net/reception/youpi.php");

            ?>
            et ce deuxième code,
            je le met avec <?php ou je commence avec $TO= et je le met avant ou après la { de: if($secure....)
            1. Pas trop leurs en demander non plus !
              C'est souvent des codes qu'ils n'ont pas écrit eux-mêmes alors quand tu leurs parles indentation, c'est comme si tu leurs demandait à quelle distance se trouve la lune ;-)
              1. Bonjour,
                Mets la portion de script qui concerne l'envoi du message dans la condition if