Précédent   Forum des professionnels en informatique > PHP > Langage > Sessions
Sessions Forum d'entraide sur les sessions avec PHP. Avant de poster -> FAQ sessions, Cours sessions et Sources sécurité
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 09/03/2011, 21h04   #1
Membre actif
 
Homme David
Inscription : septembre 2007
Messages : 353
Détails du profil
Informations personnelles :
Nom : Homme David
Localisation : France

Informations professionnelles :
Secteur : Agroalimentaire - Agriculture

Informations forums :
Inscription : septembre 2007
Messages : 353
Points : 195
Points : 195
Par défaut Problème de session non créée

bonjour,

je tente de créer pour un usage perso un petit site hébergé chez mon FAI (free), j'utilise les sessions pour accéder au site et postgresql mais c'est la galère

sur la page d'accueil (ci dessous) j'ai les erreurs suivantes
Citation:
Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /mnt/153/sdd/e/2/toto/cuisine/index.php:1) in /mnt/153/sdd/e/2/toto/cuisine/index.php on line 2

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /mnt/153/sdd/e/2/toto/cuisine/index.php:1) in /mnt/153/sdd/e/2/toto/cuisine/index.php on line 2
ça fait des soirées entières que je tripote le code dans tous les sens, que je cherche sur le net mais rien à faire

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
 
<?php
session_start();
?>
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
   <head>
       <title>La galetouze à Manu</title>
       <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<body>
<form action="#" method="post">
<fieldset>
	<legend> Identifiez-vous!! </legend>
	<link rel="stylesheet" media="screen" type="text/css"
	title="Mon style" href="style.css" />
    <br />Identifiant  <br /> <input name="name" type="text" size="12" value="" /> <br />
    <br />Mot de passe <br /> <input name="pass" type="password" size="12" value="" /> <br />
    <input type="image" src="valid.png"  name="img1" alt="Supprimer">
	</fieldset>
</form>
</body>
</head>
</html>
 
 
<?php
//si les champs ont été remplis
if (!$_POST['name']=="" && !$_POST['pass']=="") 
{
  //on récupère les valeurs des champs
  $name = $_POST['name'];
  $pass = $_POST['pass'];
  //connexion à la base de donnée
  $connect = @pg_connect("host=toto.sql.free.fr  port=5432 dbname=toto user=$name password=$pass");
	if (!$connect) {
	print("<script type=\"text/javascript\">setTimeout('location=(\"stop.php\")' ,1000);</script>");
	}
 
    else {
	$_SESSION['name'] = $name;
	$_SESSION['pass']= $pass;
 
	print("<script type=\"text/javascript\">setTimeout('location=(\"accueil.php\")' ,1000);</script>");
	}
}
?>
merci d'avance
damalaan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/03/2011, 21h31   #2
Membre Expert
 
Inscription : septembre 2010
Messages : 1 239
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 1 239
Points : 1 561
Points : 1 561
Faut pas d'espace ni de ligne vide avant ta balise <?php
ni rien faire afficher avant session_start();
__________________
- Réalisations
- Interface graphique : génération en javascript d'objets défilants, texte et/ou images, mode horizontal ou vertical.
ABCIWEB est actuellement connecté   Envoyer un message privé Réponse avec citation 10
Vieux 10/03/2011, 09h53   #3
Membre actif
 
Homme David
Inscription : septembre 2007
Messages : 353
Détails du profil
Informations personnelles :
Nom : Homme David
Localisation : France

Informations professionnelles :
Secteur : Agroalimentaire - Agriculture

Informations forums :
Inscription : septembre 2007
Messages : 353
Points : 195
Points : 195
il n'y a rien avant!!
la ligne vide du premier message a été inséré avec la balise code!!

voici donc le code tel qu'il est réellement dans le fichier

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
<?php
session_start();
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
   <head>
       <title>La galetouze à Manu</title>
       <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<body>
<form action="#" method="post">
<fieldset>
	<legend> Identifiez-vous!! </legend>
	<link rel="stylesheet" media="screen" type="text/css"
	title="Mon style" href="style.css" />
    <br />Identifiant  <br /> <input name="name" type="text" size="12" value="" /> <br />
    <br />Mot de passe <br /> <input name="pass" type="password" size="12" value="" /> <br />
    <input type="image" src="valid.png"  name="img1" alt="Supprimer">
	</fieldset>
</form>
</body>
</head>
</html>
<?php
//si les champs ont été remplis
if (!$_POST['name']=="" && !$_POST['pass']=="") 
{
  //on récupère les valeurs des champs
  $name = $_POST['name'];
  $pass = $_POST['pass'];
  //connexion à la base de donnée
  $connect = @pg_connect("host=toto.sql.free.fr  port=5432 dbname=toto user=$name password=$pass");
	if (!$connect) {
	print("<script type=\"text/javascript\">setTimeout('location=(\"stop.php\")' ,1000);</script>");
	}
else {
	$_SESSION['name'] = $name;
	$_SESSION['pass']= $pass;
 
	print("<script type=\"text/javascript\">setTimeout('location=(\"accueil.php\")' ,1000);</script>");
	}
}
?>
damalaan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/03/2011, 10h23   #4
Membre Expert
 
Avatar de transgohan
 
Homme Baptiste ROUSSEL
Étudiant
Inscription : janvier 2011
Messages : 802
Détails du profil
Informations personnelles :
Nom : Homme Baptiste ROUSSEL
Localisation : France, Territoire de Belfort (Franche Comté)

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : janvier 2011
Messages : 802
Points : 1 515
Points : 1 515
Vérifies avec un éditeur montrant les caractères spéciaux (par exemple notepad++) qu'il n'y a pas un caractère invisible.

Sinon solution de facilité sans se poser de question :
Tu recopies à la main le code dans un nouveau fichier.
transgohan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/03/2011, 11h09   #5
Membre émérite
 
Avatar de alain31tl
 
Alain
Inscription : novembre 2005
Messages : 897
Détails du profil
Informations personnelles :
Nom : Alain
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations forums :
Inscription : novembre 2005
Messages : 897
Points : 910
Points : 910
Salut

Tu as bien créé un repertoire "sessions" à la racine de ton site ?
Il me semble que c'est nécessaire chez free.
__________________
Ce n'est pas parce que les choses sont difficiles qu'on n'ose pas les entreprendre.
C'est parce qu'on n'ose pas les entreprendre qu'elles sont difficiles.
alain31tl est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/03/2011, 11h43   #6
Membre émérite
 
Avatar de alain31tl
 
Alain
Inscription : novembre 2005
Messages : 897
Détails du profil
Informations personnelles :
Nom : Alain
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations forums :
Inscription : novembre 2005
Messages : 897
Points : 910
Points : 910
Regarde aussi comment tu construis ta page.

Tu penses vraiment que c'est leur vraie place ?
__________________
Ce n'est pas parce que les choses sont difficiles qu'on n'ose pas les entreprendre.
C'est parce qu'on n'ose pas les entreprendre qu'elles sont difficiles.
alain31tl est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/03/2011, 21h22   #7
Membre actif
 
Homme David
Inscription : septembre 2007
Messages : 353
Détails du profil
Informations personnelles :
Nom : Homme David
Localisation : France

Informations professionnelles :
Secteur : Agroalimentaire - Agriculture

Informations forums :
Inscription : septembre 2007
Messages : 353
Points : 195
Points : 195
merci de vos remarque, le débutant que je suis en php a appris des choses puisque toutes mes erreurs ont disparu et mon "mini site" fonctionne bien

les session_start n'étaient pas tjs bien placé, ou avec le jeu des require, je me retrouvait avec 2 session-start dans la même page!

effectivement la syntaxe au niveau de l'html est loin d'être conforme au standard

je vais me replonger dans les bouquins, ça fera du bien

faut dire aussi que ça marchait nickel en local (wamp2.0, php5.3, postgresql 9)
donc j'ai été désagréablement surpris qd tout est parti en vrille!!


merci à tous
damalaan est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 18h22.


 
 
 
 
Partenaires

Hébergement Web