captcha, fonction mail et "Cannot send session cache limiter"

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : captcha, fonction mail et "Cannot send session cache limiter"

par bob_the_noob » 19 avr. 2009, 16:31

ok merci.
Je comprends le problème mais je ne sais pas trop comment le régler...
Il faudrait que j'arrive à passer toutes les infos dans le header en une seule fois.

Si vous avez des suggestions, je suis preneur.

par @rthur » 19 avr. 2009, 16:12

Bonjour,

Voici un point de départ:
http://www.phpfrance.com/forums/voir_sujet-47.php

captcha, fonction mail et "Cannot send session cache li

par bob_the_noob » 19 avr. 2009, 15:58

Salut,

Je débute en php et je galère pour intégrer un captcha sur mon formulaire d'envoi de mail...
Mon code fonctionne mais j'ai toujours une erreur qui me dit :
"Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent"

Voila mon code :
<?php
$email_webmaster = "[email protected]";
if (isset($_POST["envoyer"])){
        $etat = "erreur";
        if (isset($_POST["email_expediteur"])) {
                 $_POST["email_expediteur"]=trim(stripslashes($_POST["email_expediteur"]));
        }
        if (isset($_POST["message"])) {
                 $_POST["message"]=trim(stripslashes($_POST["message"]));
        }
        if (isset($_POST["nom"])) {
                 $_POST["nom"]=trim(stripslashes($_POST["nom"]));
        }
        if (isset($_POST["prenom"])) {
                 $_POST["prenom"]=trim(stripslashes($_POST["prenom"]));
        }
        if (empty($_POST["email_expediteur"])) {
                 $erreur="Merci de saisir votre E-Mail.";
        }
        elseif (!eregi("^[0-9a-z]([-_.]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\.[a-z]{2,3}$",$_POST["email_expediteur"])){
                 $erreur="Adresse email non valide";
        }
        elseif (empty($_POST["message"])) {
                 $erreur="Saisissez un message";
        }
		elseif (empty($_POST["nom"])) {
                 $erreur="Merci de saisir votre nom";
        }
		elseif (empty($_POST["prenom"])) {
                 $erreur="Merci de saisir votre prenom";
        }
		if(isset($_POST['captchaResult']))
{
	session_start();
	
	if(isset($_POST['caseInsensitive']))
	{
		$_POST['captchaResult'] = strtolower($_POST['captchaResult']);
		$_SESSION['captchaResult'] = strtolower($_SESSION['captchaResult']);
	}
	
	if($_POST['captchaResult'] === $_SESSION['captchaResult'])
		$etat = "ok";
			else
				$erreur = '<div class="result false">Mauvaise r&eacute;ponse... pas de chance... il fallait r&eacute;pondre '.$_SESSION['captchaResult'].'... .. !</div><br />';
        }
		else {
                 $etat="ok";
        }
}
else {
           $etat="attente";
}
?>
Est ce que vous pouvez m'aider à trouver ce qui pose problème ?

Merci de votre aide !