2017-08-31 14 views
0

J'ai essayé de définir une variable lorsque la page d'index se charge et y accéder plus tard dans un fichier .php, mais je n'arrive pas à le faire fonctionner. J'ai essayé d'utiliser des variables globales et le superglobal $ GLOBALS, mais je n'ai pas réussi.

est ici une version simplifiée de ce que j'ai essayé d'utiliser superglobales:

index.php:

<html> 
<body> 
    <?php 
     $GLOBALS['a'] = 5; 
    ?> 
    <div id="myDiv"></div> 
</body> 


<script src="https://code.jquery.com/jquery-3.2.1.min.js"></script> 

<script type="text/javascript"> //set the content of the "myDiv" 
     $.ajax({ 
      url:"functions.php", 
      success:function(result){ 
       $("#myDiv").html(result);}}) 
</script> 

fichier functions.php:

<?php 
    echo $a; 
?> 
//got error: Notice: Undefined index: a in C:\xampp\htdocs\function.php on line 2. 

I J'ai également essayé de modifier functions.php pour:

<?php 
    echo $GLOBALS['a']; 
?> 

Mais j'ai eu la même erreur.

Est-ce juste une simple erreur ou est-ce que je manque le point entier des variables globales? Obs1: Dans l'application actuelle, j'essaie d'exécuter une fonction qui lit un fichier csv et le charge comme un tableau en mémoire, qui doit être accessible plus tard.

OBS2: J'utilise XAMP 3.2.2

Répondre

0

Si je comprends bien que vous essayez d'accéder à une variable dans une requête qui est déclarée dans une autre demande. Le fichier index.php que vous appelez et la requête ajax que vous envoyez à function.php sont des requêtes http différentes. Vous devez utiliser $ _SESSION à cette fin ou vous pouvez inclure le fichier de déclaration dans function.php lui-même.

+0

oui, @Pedrusco vous devez ajouter l'inclusion de index.php à function.php Ou utiliser la session autrement. – naf4me