Header en php

Résolu
over-bird Messages postés 6 Date d'inscription   Statut Membre Dernière intervention   -  
over-bird Messages postés 6 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

J'ai transféré mon site sur mon serveur web, voilà l'erreur qu'il m'affiche :

Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /mnt/141/sda/2/b/boby15000/admin/nav.php:4) in /mnt/141/sda/2/b/boby15000/donnees/Fonctions.php on line 22

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /mnt/141/sda/2/b/boby15000/admin/nav.php:4) in /mnt/141/sda/2/b/boby15000/donnees/Fonctions.php on line 22

Warning: Cannot modify header information - headers already sent by (output started at /mnt/141/sda/2/b/boby15000/admin/nav.php:4) in /mnt/141/sda/2/b/boby15000/donnees/Fonctions.php on line 25


Je tiens à présicer que sous Easyphp tout fonctionne bien, mais sur le serveur Free, sa plante...

Je pense que sa doit venir du fichier php.ini, mais si par hasard çà vient de là, je ne sais pas quel paramètre il faut changer.

Merci pour à tous votre aide...
A voir également:

7 réponses

Alain42
 
Bonsoir,

attention, avant session_start()
header

tu ne doit avoir envoyé aucun caractère HTML avant

même pas un espace !

@lain
0
naruto-94 Messages postés 865 Date d'inscription   Statut Membre Dernière intervention   188
 
Salut ,

dans ton code avant la fonction session_start() y a t'il un code (html,javascript...) écrit ? car si il y en a c'est normal qu'il y a un probleme session_start() doit etre placé avant tous les codes obligatoirement.
0
over-bird Messages postés 6 Date d'inscription   Statut Membre Dernière intervention  
 
En faite, je connais le système des headers et des session_start(), mais ce que je ne comprends pas c'est pourquoi celà fonctionne bien avec Easyphp et pas sur le serveur

A savoir, et je pense que le soucis vien de là (mais ça n'explique pas pourquoi sa fonctionne sous Easyphp) mais j'utilise les Speudo-frame
soit :

<?php
include('entete.htm');
?>
</div>
<div class="colonneGauche" >
<?php
include('page.php'); // L'erreur est affiché sur page.php ligne 2 au niveau de session_start(); mais en faite le problème vient du fait qu'il y a un include..

Comment détourner celà ?
0
Alain42
 
He oui, c'est ton include ('entete.html') qui gène le header

si tu mets un header, c'est que tu veux rediriger vers une autre page, alors pourquoi ne mets tu pas l'include('entete.html') dans cette page appelée ?

ou comme tu es encore dans le php avec le header, mets ton HTML de mise en forme après
0

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

Posez votre question
over-bird Messages postés 6 Date d'inscription   Statut Membre Dernière intervention  
 
Oui, pour le Header, j'ai pu régler le problème, j'ai mis un include à la place, et sa fonctionne bien, mais reste le problème de
session_start().
0
Alain42
 
Si c'est pour faire une verif de login/pass pour ouvrir une session:

sépare le html et le php dans des fichiers différents:

- un index.html pour le formulaire de saisie login/pass et qui appelle le script login.php
- un script login.php contenant exclusivement du php qui ferra la verif

si non ok =>> header index.html

si ok =>> session_start() et header (la suite du site

@lain
0
over-bird Messages postés 6 Date d'inscription   Statut Membre Dernière intervention  
 
Merci pour ton aide, je vais faire comme tu dis....


Thanks...
0