[PHP] - Sessions et redirections

Résolu
ben85350 Messages postés 610 Date d'inscription   Statut Membre Dernière intervention   -  
ben85350 Messages postés 610 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour à tous !
Ma page permet d'envoyer un mail. Voici en gros le corps de ma page :
<?php
   session_start();

   // récupérations des données via $_GET et base de données 

   // rédaction du message 
   // au format html avec variables php
   // et variables de sessions
   // et ajout de pièces jointes

  // envoi du mail

  // redirection vers une autre page en javascript et non avec header(Location ....)

?>
Le mail est correctement envoyé au destinataire (avec pièces jointes) mais je n'ai pas de redirection et j'ai ce message d'erreur :
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent
J'ai regardé dans de nombreux forum, car le problème semble bien répandu ; mais je ne comprends la signification de mon erreur, dans mon cas

7 réponses

arthezius Messages postés 3538 Date d'inscription   Statut Membre Dernière intervention   475
 
Ton message veux dire que tu dois avoir du code html avant le code php
session_start();

Celui-ci doit être mis en tout premier sur la page.
0
ben85350 Messages postés 610 Date d'inscription   Statut Membre Dernière intervention   27
 
Pourtant le début de mon fichier commence comme ceci :
<?php
	session_start();

	//Recuperation des donnees du devis
		require 'config.php';
		$req = "Select ....;
		$connexion = @mysql_connect("$host","$login","$password");
	...

?>
0
arthezius Messages postés 3538 Date d'inscription   Statut Membre Dernière intervention   475
 
Celui n'est pas inclu dans un autre? T'a pas des espaces avant? j'ai déjà lu que ça pouvais poser problème.
0
ben85350 Messages postés 610 Date d'inscription   Statut Membre Dernière intervention   27
 
oui j'avais vu ça aussi mais rien y fait !!
Ça te dérange si je poste mon code source sur un de mes sites pour trouver mon erreur ?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
le père
 
Parmi les causes classiques, si tu utilises Notepad++ et que tu écris en UTF-8, il faut bien enregistrer en UTF-8 SANS BOM sinon il insère un caractère invisible (BOM) avant le <
0
ben85350 Messages postés 610 Date d'inscription   Statut Membre Dernière intervention   27
 
Comment "enregistrer en UTF-8 SANS BOM" ?
0
le père > ben85350 Messages postés 610 Date d'inscription   Statut Membre Dernière intervention  
 
Je n'ai pas de notepad++ sous la main, mais ça apparaît sans doute dans un menu qui s'appelle "encodage" ou "jeu de caractères" ou quelque chose comme ça.
0
ben85350 Messages postés 610 Date d'inscription   Statut Membre Dernière intervention   27 > le père
 
ALELOUIA mon père !!
Je vois ça, je teste et je te tiens au courant !!
0
ben85350 Messages postés 610 Date d'inscription   Statut Membre Dernière intervention   27 > ben85350 Messages postés 610 Date d'inscription   Statut Membre Dernière intervention  
 
Problème résolu en enregistrant en UTF-8 (sans BOM)
Merci à tous pour votre aide !
0
platypus69 Messages postés 108 Date d'inscription   Statut Membre Dernière intervention   7
 
il es probable que cela nienne du faite que tu ne referme pas ta session
0
ben85350 Messages postés 610 Date d'inscription   Statut Membre Dernière intervention   27
 
J'ai testé en refermant la session mais ça ne change rien
0
dolmenhir Messages postés 246 Date d'inscription   Statut Membre Dernière intervention   25
 
Salut,

Moi je vérifie toujours qu'il n'y pas déjà une session en cours

essaye donc avec ça :
if (!isset($_SESSION)) {
  session_start();
}
0