Session_start()

Fermé
shreek69 Messages postés 228 Date d'inscription jeudi 29 mai 2008 Statut Membre Dernière intervention 1 juillet 2011 - 3 juin 2008 à 15:31
shreek69 Messages postés 228 Date d'inscription jeudi 29 mai 2008 Statut Membre Dernière intervention 1 juillet 2011 - 3 juin 2008 à 16:46
Bonjour,
J'ai un probleme avec session_start();
au tt debut j'au une fonction java pour interdire les champ vide apre j'ai du code html pour le formulaire avec login et mdp apre j'ai mon code php avc la connexion a ma bdd acess et apre g les requetes et les redirection de page
j'ai mi session_start() au debut du code php mai sa met le message d'erreur :
Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by

please help me

14 réponses

ben54120 Messages postés 66 Date d'inscription dimanche 18 mai 2008 Statut Membre Dernière intervention 9 août 2010 1
3 juin 2008 à 15:46
Je veux bien t'aider, mais il me faut ton code...
1
Xil Messages postés 350 Date d'inscription vendredi 18 janvier 2008 Statut Membre Dernière intervention 11 juin 2009 257
3 juin 2008 à 16:10
Ton session_start doit être au tout début de ton fichier principal de la page, et nulle part ailleurs.
Avant le HTML, avant le Javascript, avant tout.
1
LegGohan Messages postés 199 Date d'inscription vendredi 21 septembre 2007 Statut Membre Dernière intervention 2 août 2017 54
3 juin 2008 à 15:32
Essaie de mettre ton session_start avant meme ton code <html><head>.
C'est la 1ere chose a faire
0
shreek69 Messages postés 228 Date d'inscription jeudi 29 mai 2008 Statut Membre Dernière intervention 1 juillet 2011 4
3 juin 2008 à 15:34
salu merci pour la reponse

Mais il ne le comprend pas il n'est pas en 'bleu'
il mecri sur ma page session start
0
Xil Messages postés 350 Date d'inscription vendredi 18 janvier 2008 Statut Membre Dernière intervention 11 juin 2009 257
3 juin 2008 à 15:47
Il faut aussi mettre les balises PHP :
<?php session_start(); ?>

Sinon ce n'est pas interpreté comme étant du PHP, mais du HTML, sans balises, donc du texte.
0

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

Posez votre question
shreek69 Messages postés 228 Date d'inscription jeudi 29 mai 2008 Statut Membre Dernière intervention 1 juillet 2011 4
3 juin 2008 à 15:48
ok Tien:
<script language="javascript">
function recupere_info ()
{
if(document.form1.login.value == "" || document.form1.mdp.value == "")
{
alert ("Veuillez remplir tous les champs!!!");
return false;
}
return true;
}
</script>
<html>
<div align="left">
<table border="22" cellpadding="6" width="100%">
<tr>
<td>
<table border="22" cellpadding="40" >
<tr bgcolor="#B22222">
<td valign="top" colspan="2">
<center>
<font size="1" color="yellow"><b><br>
</b></font>
<font size="10" color="white"><b>Site <p>
<font size="6" color="white"><b>Identifiez-Vous
</td></tr>
<form id="form1" name="form1" method="post" action="?" onsubmit=" return (recupere_info());">
<table>
<tr>
<td width="102"><strong>Login</strong></td>
<td width="267"><label>
<input name="login" type="text" size="20" />
</label></td>
</tr>
<tr><td colspan="2"> </td></tr>
<tr>
<td height="41"><strong>Mot de passe</strong></td>
<td><label>
<input name="mdp" type="password" size="20" />
</label></td>
</tr>
</table>
<?php
session_start();
$bd="BDD";
$user="...";
$password="...";
$cnx = odbc_connect( $bd , $user, $password );
if( ! $cnx ) echo "Impossible de se connecter";
$login = $_POST['login'];
$mdp = $_POST['mdp'];
$q=("SELECT Login FROM identification WHERE Login='$login'");
$valeur=odbc_exec($cnx,$q);
while(odbc_fetch_row( $valeur))
{
$zz= odbc_result( $valeur,1);
}
$r =("SELECT Mot_de_passe FROM identification WHERE Login='$login'");
$val= odbc_exec($cnx,$r);
while(odbc_fetch_row($val))
{
$vv= odbc_result( $val,1);
}
$aaa=("SELECT * FROM identification WHERE Login='$login'");
$va=odbc_exec($cnx,$aaa);
while(odbc_fetch_row( $va))
{
$rr= odbc_result( $va,6);
}
$_SESSION['$rr'] = $nivo ;
echo '<p><input type="submit" id="submit" name="submit" value="IDENTIFICATION" /></p>'."\n";
if (isset($_POST['submit']))
{
if (($login ==$zz) AND ($mdp ==$vv))
{
if ((((($login ==...) AND ($mdp ==a))OR ($login==...) AND ($mdp==e)) OR ($login==...) AND ($mdp==b)) OR ($login==...) AND ($mdp==p)){
echo '<a href="http://127.0.0.1/site_intra-extranet/formulaireinscription.php"><font size="5">Inscrire un utilisateur</font>';
echo "<br>";
echo '<a href="http://127.0.0.1/site_intra-extranet/mapage.php"><font size="8"><strong>Aller sur le site</strong></font>';}
else {
echo '<a href="http://127.0.0.1/site_intra-extranet/mapage.php"><font size="8"><strong>Aller sur le site</strong></font>';}
}
else
{
echo '<p style="color:#FF0000; font-weight:bold;">Erreur d identification</p>';
}
};
echo "<br>";
?>
<img src="Vague 100 ad3.jpg" width="1016" height="301">
</html>
0
shreek69 Messages postés 228 Date d'inscription jeudi 29 mai 2008 Statut Membre Dernière intervention 1 juillet 2011 4
3 juin 2008 à 15:50
En faite je fais une requete sur le niveau d'acces de l'utilisateur et je voudrai garder en memoire ou transferer cette variable ($rr) donc je pense qu'il faut que j'utilise les session mais ji arrive pas
0
shreek69 Messages postés 228 Date d'inscription jeudi 29 mai 2008 Statut Membre Dernière intervention 1 juillet 2011 4
3 juin 2008 à 15:56
Meme quand je met en commentaire tout mon code php je met juste:
<?php
session_start();
?>
Il me met l'erreur:
Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by
0
shreek69 Messages postés 228 Date d'inscription jeudi 29 mai 2008 Statut Membre Dernière intervention 1 juillet 2011 4
3 juin 2008 à 16:15
ok mai sa marche pas
sa fe rien tu pe m'ecrire comment sa doit etre avec $_session [???????]
je te fe ???? car moi c une variable
please
0
Xil Messages postés 350 Date d'inscription vendredi 18 janvier 2008 Statut Membre Dernière intervention 11 juin 2009 257
3 juin 2008 à 16:17
Je t'invite à lire ce cours, qui est très bien fait :
https://php.developpez.com/cours/sessions/
0
shreek69 Messages postés 228 Date d'inscription jeudi 29 mai 2008 Statut Membre Dernière intervention 1 juillet 2011 4
3 juin 2008 à 16:19
ok sa c bon tu pe maider pour lecriture de $_session..... car moi c'est une varible
0
Xil Messages postés 350 Date d'inscription vendredi 18 janvier 2008 Statut Membre Dernière intervention 11 juin 2009 257
3 juin 2008 à 16:21
Je t'invite à lire ce cours, qui est très bien fait :
https://php.developpez.com/cours/sessions/
0
shreek69 Messages postés 228 Date d'inscription jeudi 29 mai 2008 Statut Membre Dernière intervention 1 juillet 2011 4
3 juin 2008 à 16:23
Merci bcp mais ji ai deja lu mai eux il font avecsa:
$_session['variable']=$aaa
mai moi le prob c'est dans le 'variable' c'est deja une varible comment ji ecri
?????
MERCI£
0
Xil Messages postés 350 Date d'inscription vendredi 18 janvier 2008 Statut Membre Dernière intervention 11 juin 2009 257
3 juin 2008 à 16:35
Le tableau de session $_SESSION s'utilise de la même facon que n'importe quel tableau PHP, à ceci près que son contenu est sauvegardé entre plusieurs pages.

Si tu as mal compris le fonctionnement des tableaux en PHP, il faut aller relire un cours là dessus.
0
shreek69 Messages postés 228 Date d'inscription jeudi 29 mai 2008 Statut Membre Dernière intervention 1 juillet 2011 4
3 juin 2008 à 16:37
J'ai tre bien compri le fonctionnement mais sa marche pas
J'ai mi $_session[mavarible]=$11111111111
et apre dans mon otre page echo $11111111111111111111111111111
et toujours rien donc si tu pe maider rep
0
ben54120 Messages postés 66 Date d'inscription dimanche 18 mai 2008 Statut Membre Dernière intervention 9 août 2010 1
3 juin 2008 à 16:41
Forcément, dans l'autre page on fait pas echo $11111111111111, mais echo $_SESSION["mavarible"]
0
dracucharles Messages postés 58 Date d'inscription lundi 17 mars 2008 Statut Membre Dernière intervention 13 novembre 2009 6
3 juin 2008 à 16:42
Salut,
comme l'a dit Xil, il faut que tu mette ton session_start() en premier, au debut de ton fichier
ex:
<?php
session_start()
?>
blablabla le reste de ton code ...


Si l'erreur persiste, vérifie l'encodage de ton fichier, il faut que celui-ci soit en UTF8 sans BOM pour qu'il y ait pas de caractères invisibles au début de ton fichier, ce qui pourrait expliquer le message d'erreur que tu as: Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent ...

Pour vérifier ça je te conseil d'utiliser un éditeur de texte hexadécimal (ex: Notepad ++), comme ça tu verra s'il y a des caractères invisibles devant ton code ou pas.

Bon courage.
0
shreek69 Messages postés 228 Date d'inscription jeudi 29 mai 2008 Statut Membre Dernière intervention 1 juillet 2011 4
3 juin 2008 à 16:46
ok merci tout le monde jve voir tt sa
0