IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

AJAX Discussion :

[AJAX] Session PHP et Ajax


Sujet :

AJAX

  1. #1
    Membre confirmé Avatar de oceane751
    Profil pro
    Intégrateur Web
    Inscrit en
    Novembre 2004
    Messages
    1 280
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Intégrateur Web

    Informations forums :
    Inscription : Novembre 2004
    Messages : 1 280
    Points : 575
    Points
    575
    Par défaut [AJAX] Session PHP et Ajax
    Bonjour à tous,

    Grâce à l'ajax, je vérifie si les identifiants de connexion sont ok.
    J'ai donc un un fichier ajax et un autre fichier php (pour les requetes mysql)

    Le hic, est que je ne peux pas récupérer la session..

    Voici mes codes :

    le fichier ajax :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    48
    49
    50
    51
    function putain()
    {
     
     
     
        if(window.XMLHttpRequest){
        // Pour tous les navigateurs
            req = new XMLHttpRequest();
        }
        else{
        if(window.ActiveXObject){
          // Pour IE
              req = new ActiveXObject("Microsoft.XMLHTTP");
        }
        }
     
    	pseudo=  document.connexion.pseudo.value;
     
     
    	mdp = document.connexion.mdp.value;
     
     
    	content_mdp = document.getElementById("mauvais");
     
    	req.open("POST","connexion.php", "true");
     
    	req.onreadystatechange = function()
      	{
     
          if (req.readyState == 4 && req.status==200)
          { 
     
    		if(req.responseText  == "non") {
    			content_mdp.innerHTML ="mauvais identifiants";
     
    			return false;
     
    		}
     
    		if(req.responseText  == "ok") {
    			document.location.href="main.php";
    		}
     
     
    	 }
     
    	}
    	 req.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
      	req.send('pseudo='+pseudo+'&mdp='+mdp);
     
    }
    le fichier PHP (connexion.php) :

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    <?php
    session_start();
     header('Content-Type: text/html; charset=UTF-8');
    mysql_connect("sql.free.fr", "artysport6", "290881", "artysport6")
        or die("Impossible de se connecter : " . mysql_error());
     
    mysql_select_db("artysport6") or die("erreur de connexion a la base de donnees");
     
    $requete = "SELECT COUNT(*) AS nbr, id_users FROM users WHERE pseudo = '".$_POST['pseudo']."' AND mdp = '".$_POST['mdp']."'";
     
    $quer = mysql_query($requete) or die("requete non envoyée");
    $res = mysql_fetch_assoc($quer) or die("requete non reçue");
    if($res[nbr] == 1){
    	echo "ok"; 
    	$insert = "UPDATE users SET connexion='oui' WHERE id_users = '".$res['id_users']."'";
    	mysql_query($insert);
    	$_SESSION['pseudo'] = $_POST['pseudo'];
     
    }
    else { 
    	echo "non";
    }
     
     
     
    ?>

    et là ou je récupère la session (main.php)

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
      <?php  echo $_SESSION['pseudo']."session"; ?>

    ma session ne passe pas du tout..
    donc j'ai mis dans mon main.php (où j'affiche le $_SESSION['pseudo']), j'ai mis session_start() et j'ai ça comme erreur..

    Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at...

    comment est ce que je pourrai faire?

    en attendant une réponse, je continue ma recherche..

    merci d'avance !

  2. #2
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    Le fichier dans lequel se trouve l'appel AJAX contient-il bien un session_start() ?

    Sinon, si ton identifiant de session se trouve dans un cookie, il n'y a pas de raison qu'il ne soit pas transmit, dans le cas contraire, alors il est passé en paramètre GET et il faut le rajouter à l'URL que tu appelles en AJAX.
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  3. #3
    Membre confirmé Avatar de oceane751
    Profil pro
    Intégrateur Web
    Inscrit en
    Novembre 2004
    Messages
    1 280
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Intégrateur Web

    Informations forums :
    Inscription : Novembre 2004
    Messages : 1 280
    Points : 575
    Points
    575
    Par défaut
    Après quelques tests, il fallait mettre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <?php session_start(); ?>
    tout en haut du fichier

    Boulet je suis !


+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 19/05/2009, 12h48
  2. [AJAX] autocompletion php bdd ajax
    Par fasyr dans le forum AJAX
    Réponses: 1
    Dernier message: 14/04/2009, 19h25
  3. [AJAX] AJAX & Session php problème.
    Par prosciuto dans le forum AJAX
    Réponses: 9
    Dernier message: 09/04/2009, 12h17
  4. [AJAX] "injection php" avec Ajax.
    Par tomo0013 dans le forum Général JavaScript
    Réponses: 10
    Dernier message: 25/06/2008, 09h58
  5. [PHP-JS] Ajax et PHP, framework?
    Par Empty_body dans le forum Langage
    Réponses: 3
    Dernier message: 10/08/2006, 16h41

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo