我正在使用自定义php代码创建客户登录。我正在使用API调用来创建前端,因此我需要在客户登录后通过所有页面维护登录的会话值。
a.php中的代码
require_once "../magento/app/Mage.php";
Mage::app('default');
umask(0);
Mage::getSingleton('core/session', array('name' => 'frontend'));
$session = Mage::getSingleton('customer/session', array('name' => 'frontend'));
$session->start();
if (!empty($email) && !empty($password )) {
try {
$a = $session->login($email, $password );
$session->setCustomerAsLoggedIn( $session->getCustomer() );
if ($session->getCustomer()->getIsJustConfirmed()) {
$this->_welcomeCustomer($session->getCustomer(), true);
}
}
}
我可以使用此代码登录,但我需要在所有页面中维护此登录会话。
我试图从其他页面获取登录的用户信息。但我不能。
b.php中的代码
require_once "../magento/app/Mage.php";
umask(0);
Mage::app('default');
Mage::getSingleton('core/session', array('name' => 'frontend'));
$session = Mage::getSingleton('customer/session');
$session->start();
var_dump(Mage::getSingleton('customer/session')->isLoggedIn());
if($session->isLoggedIn()) {
echo 'User logged In';
} else {
echo 'User not logged In';
}
在调用页面a.php后,当我在同一浏览器中调用b.php时,我需要使用a.php登录的用户的客户信息?那可能吗?任何人都可以帮助我吗?
答案 0 :(得分:1)
试试这个
public void RollDice(int NumberOfDice)
{
Random numgen = new Random();
for (int roll = 0; roll <= 10; roll++)
{
for (int i = 0; i < NumberOfDice; i++)
{
Console.WriteLine(numgen.Next(1, 7) + "\t" + numgen.Next(1, 7));
}
}
Console.ReadLine();
}
&#13;
答案 1 :(得分:0)
<?php
require_once "../magento/app/Mage.php";
Mage::app('default');
umask(0);
Mage::getSingleton('core/session', array('name' => 'frontend'));
var_dump(Mage::getSingleton('customer/session')->isLoggedIn());
// print true
if(Mage::getSingleton('customer/session')->isLoggedIn()) {
$customerData = Mage::getSingleton('customer/session')->getCustomer();
echo $customerData->getId();
// return customer's id
}