web-dev-qa-db-fra.com

Comment puis-je économiser de la valeur dans ma propre variable de session dans Magento?

J'utilise Magento et j'essaie d'enregistrer une valeur dans la session comme suit dans son fichier index.php, mais la valeur n'est pas conservée.

$_SESSION['myvar'] = '1';

Comment fait-on ça?

Merci

48
Ali

Supposons que vous souhaitiez enregistrer la valeur "Hello world" dans la variable "message de bienvenue" de la session. Le code serait:

$inputMessage = 'Hello World';
Mage::getSingleton('core/session')->setWelcomeMessage($inputMessage);

Vous voulez maintenant faire écho au "message de bienvenue" ailleurs dans votre code/site.

$outputMessage = Mage::getSingleton('core/session')->getWelcomeMessage();
echo $this->__($outputMessage);
80
Hervé Guétin

En suivant l'exemple donné par ALi Nasrullah, je ferais:

$session = Mage::getSingleton("core/session",  array("name"=>"frontend"));
// set data
$session->setData("device_id", 4);
// get data
$myDeviceId = $session->getData("device_id");

Assurez-vous d'inclure [Mage-root] /app/Mage.php avant d'appeler le code ci-dessus!

@ALi Nasrullah: transmettez la valeur de device: id comme deuxième paramètre de la fonction setData.

35
NiBa
  Mage::getSingleton('core/session')->setMySessionVariable('MyValue'); 

  $myValue  =  Mage::getSingleton('core/session')->getMySessionVariable();

  echo $myValue;

 Take Look For More: 

Voici le code pour obtenir, définir et annuler la session dans Magento

Voici le code pour obtenir, définir et annuler la session dans Magento

12
Jyotiranjan
frontend: Mage::getSingleton('core/session')->setYourNameSession($session_value);

backend: Mage::getSingleton('admin/session')->setYourNameSession($session_value);
8
Ansyori