Session_start()

shreek69 Messages postés 236 Date d'inscription   Statut Membre Dernière intervention   -  
shreek69 Messages postés 236 Date d'inscription   Statut Membre Dernière intervention   -
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
Configuration: Windows XP
Internet Explorer 7.0

14 réponses

  1. ben54120 Messages postés 68 Statut Membre 1
     
    Je veux bien t'aider, mais il me faut ton code...
    1
  2. Xil Messages postés 351 Statut Membre 257
     
    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
  3. LegGohan Messages postés 205 Date d'inscription   Statut Membre Dernière intervention   54
     
    Essaie de mettre ton session_start avant meme ton code <html><head>.
    C'est la 1ere chose a faire
    0
  4. shreek69 Messages postés 236 Date d'inscription   Statut Membre Dernière intervention   4
     
    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
    1. Xil Messages postés 351 Statut Membre 257
       
      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
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. shreek69 Messages postés 236 Date d'inscription   Statut Membre Dernière intervention   4
     
    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
  7. shreek69 Messages postés 236 Date d'inscription   Statut Membre Dernière intervention   4
     
    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
  8. shreek69 Messages postés 236 Date d'inscription   Statut Membre Dernière intervention   4
     
    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
  9. shreek69 Messages postés 236 Date d'inscription   Statut Membre Dernière intervention   4
     
    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
  10. shreek69 Messages postés 236 Date d'inscription   Statut Membre Dernière intervention   4
     
    ok sa c bon tu pe maider pour lecriture de $_session..... car moi c'est une varible
    0
  11. shreek69 Messages postés 236 Date d'inscription   Statut Membre Dernière intervention   4
     
    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
    1. Xil Messages postés 351 Statut Membre 257
       
      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
  12. shreek69 Messages postés 236 Date d'inscription   Statut Membre Dernière intervention   4
     
    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
    1. ben54120 Messages postés 68 Statut Membre 1
       
      Forcément, dans l'autre page on fait pas echo $11111111111111, mais echo $_SESSION["mavarible"]
      0
  13. dracucharles Messages postés 58 Statut Membre 6
     
    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
  14. shreek69 Messages postés 236 Date d'inscription   Statut Membre Dernière intervention   4
     
    ok merci tout le monde jve voir tt sa
    0