Magento Mage无法按预期从外部php文件工作

时间:2017-12-14 09:35:21

标签: php magento mage

我有一个外部php文件,我在Magento注册页面上使用ajax调用。这个PHP代码应该有助于验证文本输入字段的值是否有效。请参阅php代码:

require_once ('app/Mage.php');
Mage::app()->getStore();
Mage::getSingleton('core/session', array('name' => 'frontend'));
$request = Mage::app()->getRequest();
$customer = Mage::getModel('customer/customer');
$inviteCode = $request->getParam('code');

if (($inviteCode) && ($inviteCode != '')) {
        $websiteId = Mage::app()->getWebsite()->getId();
        $customerId = $customer->setWebsiteId($websiteId)->loadByEmail($inviteCode)->getId();

        if ($customerId && ($customerId != '')) {
                $account = Mage::getModel('affiliateplus/account')->getCollection()->addFieldToFilter('customer_id', $customerId)->getFirstItem();

                if ($account && ($account->getAccountId())) {   
                 $result = "Valid Invite Code";
                } 
        }
}

//echo json_encode($result);
echo ($account );

我有多个网站安装。此代码位于托管在子文件夹yyy中的插件域中。

  1. $websiteId应该返回" 5" (xxx.com/yyy),但它一直在返回" 1" (xxx.com)。
  2. 如果我手动将$websiteId设置为" 5",$account将返回空值
  3. 代码在模型函数中正常工作。任何帮助将不胜感激。

    感谢。

1 个答案:

答案 0 :(得分:0)

首先,您需要找到app/Mage.php文件并在php文件中要求它。 require_once' app/Mage.php';

在php文件中添加以下代码:

$mageFilename = 'app/Mage.php';
if (!file_exists($mageFilename)) {
    echo $mageFilename." was not found";
    exit;
}
require_once $mageFilename;
Mage::app();