2

I need to check that a user is registered and get your information, but all in a file within the same domain but outside the structure of Magento: /mymagento/islogged.php

require_once ('app/Mage.php');
Mage::app(); 

define('ROOT', Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_WEB));

$sessionCustomer = Mage::getSingleton("customer/session");
if($sessionCustomer->isLoggedIn()) {
    $customer = $sessionCustomer->getCustomer();
    $telefono = $customer->getTelefonoMovil();
} else {
    header('Location: '.ROOT.'customer/account/login/');
}

But it does not work, can not find the session. I have reviewed the following threads:

Community
  • 1
  • 1
Derekthar
  • 533
  • 2
  • 12
  • 23

1 Answers1

2

In the end I did as follows:

require_once ('app/Mage.php');
Mage::app(); 

// Define the path to the root of Magento installation.
define('ROOT', Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_WEB));

// Obtain the general session and search for an item called 'customer_id'
$coreSession = Mage::getSingleton('core/session', array('name' => 'frontend'));
if(isset($coreSession['visitor_data']['customer_id'])){
    $customerId = $coreSession['visitor_data']['customer_id'];
} else {
    header('Location: '.ROOT.'customer/account/login/');
}

// Load the user session.
Mage::getSingleton('customer/session')->loginById($customerId);
$customerSession = Mage::getSingleton("customer/session");

// We verified that created successfully (not required)
if(!$customerSession->isLoggedIn()) {
    header('Location: '.ROOT.'customer/account/login/');
}

// Load customer
$customer = $customerSession->getCustomer();

// We get cell phone
$telefono = $customer->getTelefonoMovil();
Derekthar
  • 533
  • 2
  • 12
  • 23