Bonjour à tous !
Comme énoncé dans l'intitulé, je viens à cause d'un problème de variable de session.
J'ai bien sûr étudié les autres sujets mais aucun ne ressemble au mien.
Voici une courte description :
J'ai une application (donc en local) réalisée en HTML qui fait appel à du PHP situé sur un serveur.
Sur la page de connexion, aucun soucis mais lorsque je tente d'accéder aux variables de session, rien ne fonctionnent.
J'ai reussi à réduire mon code à ceci :
Application :
test.html :
Sur le serveur :
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 <!DOCTYPE html> <html> <head> blablabla <script src="js/jQuery.js"></script> </head> <body> <section id="view"> <a onclick="getUserData()">Click</a> </section> </body> <script> function getUserData() { var userData = "Error"; $.ajax({ type : 'GET', url : 'url/test2.php', success : function (userData) { console.log(userData) }, error : function(d) { console.log(d); } }); } $(document).ready(function() { $.post( 'url/test.php', { id : 120 }, function(data){ console.log(data); }, 'text' ); }) </script> </html>
test.php
test2.php :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 <?php header("Access-Control-Allow-Origin: *"); session_start(); if(!isset($_POST['id'])) echo "Post didn't work"; $_SESSION['id'] = $_POST['id']; ?>
Précisions :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 <?php session_start(); header("Access-Control-Allow-Origin: *"); if(!isset($_SESSION['id'])) echo "no session id"; echo $_SESSION['id']; ?>
-Je reçois bien "no session id" sur mon application
-Les variables de session marchent chez mon hébergeur quand je fais un site normal où tout est sur le serveur.
Dès que je passe par mon application via ce code ci dessus, plus rien ne marche.
Merci d'avoir porté attention à mon post.
Partager