Salut,
Ben oui, tu as raison, comment ais-je pu oublier une telle chose.
J'avais de l'ajax dans mon site, j'en ai donc profité pour l'utiliser.
j'utilise donc toujours la même div :
1 2 3 4 5 6 7 8 9 10 11 12 13
| <div class="btn" onmouseover="afficher_masque_sous_menu('afficher');" >
<a href="#" onclick="div_centrale('liens_utiles');" class="btn">Dossiers</a>
<div id="sousmenu" style="display:none">
<div class="btn">
<a href="#" onclick="div_centrale('dossiers_chiens'); afficher_masque_sous_menu('masquer');" class="btn">Chiens</a>
</div>
<div class="btn">
<a href="#" onclick="div_centrale('dossiers_chats'); afficher_masque_sous_menu('masquer');" class="btn">Chats</a>
</div>
<div class="btn">
<a href="#" onclick="div_centrale('dossiers_NAC'); afficher_masque_sous_menu('masquer');" class="btn">NAC</a>
</div>
</div> |
Sur le onclick, j'ai donc ceci :
onclick="div_centrale('dossiers_chats');
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
| function div_centrale(page)
{
alert(page);
var xhr = getXhr();
xhr.onreadystatechange = function()
{
//alert(xhr.status);
//alert(xhr.readyState);
if(xhr.readyState == 4 && (xhr.status == 200 || xhr.status == 0 ) )
{
LeRetour = xhr.responseText;
//alert(LeRetour);
document.getElementById('centre').innerHTML = LeRetour;
div_images(page);
//j'appelle la fonction afficher_photo afin d'afficher les photos qui se trouvent dans la bd et le dossier vos_photos
if(page == 'vos_photos')
{
afficher_photo();
}
}
}
//alert("ici");
xhr.open("POST","AJAX/div_centrale.php",true);
xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
xhr.send("page="+page);
} |
ça, c'est côté client.
Côté serveur (PHP) j'ai ceci :
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 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75
| <?php
switch($_POST['page'])
{
case 'accueil':
include('../includes/accueil.php');
break;
case 'cabinet_bus':
include('../includes/joindre_cabinet_bus.php');
break;
case 'cabinet_voiture':
include('../includes/joindre_cabinet_voiture.php');
break;
case 'chiens_accueil':
include('../includes/chiens_accueil.php');
break;
case 'chats_accueil':
include('../includes/chats_accueil.php');
break;
case 'liens_utiles':
include('../includes/liens_utiles.php');
break;
case 'alimentations':
include('../includes/alimentations.php');
break;
case 'vos_photos':
include('../includes/photos.php');
break;
case 'accueil_nl':
include('../includes/accueil_nl.php');
break;
case 'nac_accueil':
include('../includes/nac_accueil.php');
break;
case 'furet':
include('../includes/furet.php');
break;
case 'lapin':
include('../includes/lapin.php');
break;
case 'CAVIOMORPHES':
include('../includes/CAVIOMORPHES.php');
break;
case 'alim_chats':
include('../includes/alim_chats.php');
break;
case 'alim_chiens':
include('../includes/alim_chiens.php');
break;
case 'MYOMORPHES':
include('../includes/MYOMORPHES.php');
break;
case 'annonces':
include('../includes/annonces.php');
break;
case 'dossiers_chats':
$_SESSION['animal'] = 'chats';
include('../includes/dossiers_chats.php');
break;
case 'dossiers_chiens':
$_SESSION['animal'] = 'chiens';
include('../includes/dossiers_chiens.php');
break;
case 'mort':
include('../includes/mort_animal.php');
break;
case 'obesite_feline':
include('../includes/obesite_feline.php');
break;
}
?> |
Ce qui nous intéresse, c'est donc ceci :
1 2 3 4 5 6 7 8 9
|
case 'dossiers_chats':
$_SESSION['animal'] = 'chats';
include('../includes/dossiers_chats.php');
break;
case 'dossiers_chiens':
$_SESSION['animal'] = 'chiens';
include('../includes/dossiers_chiens.php');
break; |
Je change la valeur de la variable de session.
Seul hic, la valeur vaut toujours "chiens".
array(2) { ["langue"]=> string(2) "FR" ["animal"]=> string(6) "chiens" }
Comprends pas ce qu'il se passe.
EDIT :
1 2 3 4 5
| case 'dossiers_chats':
var_dump($_SESSION);
$_SESSION['animal'] = '';
$_SESSION['animal'] = 'chats';
include('../includes/dossiers_chats.php'); |
le var_dump me donne ceci :
Notice: Undefined variable: _SESSION in C:\wamp\www\Cocquereaux\AJAX\div_centrale.php on line 57
NULL
la ligne 57 :
Merci pour l'aide.
beegees
Partager