pb header

crevette pourrie
Invité n'ayant pas de compte PHPfrance

12 févr. 2006, 16:38

Bonjour à tous

j'ai un ptit pb après l'ouverture d'une session

Si l'utilisateur est mal identifié il est renvoyé à mon index ça fonctionne avec un javascript mais pas avec un header location

message d'erreur :


Warning: Cannot modify header information - headers already sent by (output started at c:\program files\easyphp1-8\www\show u on line\recueil_fonction\fonction.php:92) in c:\program files\easyphp1-8\www\show u on line\accueiladmin.php on line 18

code :

Code : Tout sélectionner

<?php if (isset($_POST['user_name']) && isset ($_POST['password']) ){ include ("recueil_fonction/fonction.php"); $pseudo = $_POST['user_name']; $pwd = $_POST['password']; conexion(); if (verification($pseudo,$pwd)){ session_start(); $_SESSION ['user_name'] = $pseudo; $message = "Bienvenue en zone administrateur $pseudo <br /> "; } else { /*echo"<script language ='javascript'>alert('Cette zone est protégée vous devez vous identifier pour y avoir accès');location.href='index.php'</script>";*/ header ('Location:index.php'); exit(); } } else { echo ""; } $PHP_SELF=""; echo '<div class="bannermenu">'; echo $message; echo '<div>'; echo'<br /><br />'; // présentation du menu principale d'administration echo '<div class="bannermenu2">'; echo'<br />'; echo '<a class ="black" href="admin.php"><li>Accèdez au listage de la base</li></a>'; echo'<br /><br />'; echo '<a class="black" href="http://imp4-g19.free.fr/" target="_blank"><li>Accéder au demande d\'ouverture de compte via webmail</li></a>'; echo'<br /><br />'; echo '<a class ="black" href="admin_mp.php"><li>Créer des comptes utilisateurs</li></a> '; echo'<br /><br />'; echo '<a class ="black" href="index.php"><li>Retour à l\'accueil</li></a> '; echo'<br /><br />'; echo '<u>Notes :</u> En zone utilisateur vous n\'avez accès qu\'au listage de la base où vous pouvez simplement ajouter vos photos.'; echo '</div>'; ?>
un ptit conseil ??? merci

Modérateur PHPfrance
Modérateur PHPfrance | 6373 Messages

12 févr. 2006, 16:49

Salut,

tu dois avoir du texte ou du code HTML affiché avant l'utilisation de ehader()

regarde bien, même un espace fait planter la chose
apparament ce serait dans ton fichier inclus fonction.php

Eléphant du PHP | 180 Messages

12 févr. 2006, 16:57

Salut !

Je n'ai pas regardé tout ton code donc il y a peut-être d'autres erreurs que celle que j'ai remarqué :

Remplace :
header ('Location:index.php'); 
par :
header ('Location: index.php'); // il faut un espace entre : et index
Voir aussi cette page.

A+

Didier
Giant steps are what you take ... walking on the moon ;-)

Invité
Invité n'ayant pas de compte PHPfrance

12 févr. 2006, 17:06

dans ma page de fonction j'ai :

Code : Tout sélectionner

<?php function conexion() { $username="root"; $password=""; $hostname="localhost"; $nombase="mj"; $nomtable="client"; //conexion au serveur de base de données if(!($link=mysql_connect($hostname,$username,$password))) { die("erreur de connexion"); exit(); } // $nombase devient la base de données active if (!mysql_select_db($nombase,$link)) { die("erreur de sélection de la base de données"); exit(); } } // -------------- fonction verification login pass function verification ($pseudo,$pwd){ $username="root"; $password=""; $hostname="localhost"; $nombase="mj"; $nomtable="client"; if(!($link2=mysql_connect($hostname,$username,$password))) { die("erreur de connexion"); exit(); } // $nombase devient la base de données active if (!mysql_select_db($nombase,$link2)) { die("erreur de sélection de la base de données"); exit(); } $pseudo_sql = mysql_real_escape_string($pseudo); $pwd_sql = mysql_real_escape_string ($pwd); $requete = "SELECT * FROM user WHERE user_name='$pseudo_sql' AND user_pwd='$pwd_sql'"; $result = mysql_query($requete,$link2); if(mysql_num_rows($result)>0){ return TRUE; } else { return FALSE; } } // ---------- Conversion dates américaines en fr function dateconvert($date){ $d=explode("-",$date); $annee= $d[0]; $mois= $d[1]; $jour= $d[2]; //echo '<br /><br />'; $datefr =("$jour/$mois/$annee"); return $datefr; } ?>


je vois pas quelle lien il peut y avoir avec mon erreur

Invité
Invité n'ayant pas de compte PHPfrance

12 févr. 2006, 17:33

personne n'a une petite idée ??? please

Eléphant du PHP | 180 Messages

12 févr. 2006, 17:53

personne n'a une petite idée ??? please
T'as essayé ce que je te propose dans mon précédent message ???

A+

Didier
Giant steps are what you take ... walking on the moon ;-)