Как проверить, вошел ли пользователь в opencart версии 3.x - PullRequest
2 голосов
/ 13 июля 2020

Я использую OpenCart 3.0.3.2

Я хочу проверить, вошел ли пользователь в систему или нет в файле с именем test.php, расположенном вне папки opencart. например, если URL-адрес магазина http://www.example.com/shop, то файл PHP для проверки находится в http://www.example.com/test.php

Я видел в этой ссылке, что кто-то спрашивает тот же вопрос до 2 лет. проверить, вошел ли пользователь в opencart или нет

Это было для версии 2.x, и когда я попробовал, это не сработало. Итак, как это сделать в версии 3.0.3.2?

Я пробовал разные вещи в сеансе, но ничего не работает.

1 Ответ

1 голос
/ 14 июля 2020

Только что проверил оба этих ответа вместе взятых. Прекрасно работает. Проверьте следующее:

  1. OpenCart и test. php должны находиться в одном домене и на одном сервере. Папка на уровне выше OpenCart root в порядке, потому что мы работаем с PHP $_SESSION.
  2. Сначала пользователь должен go в OpenCart и войти в систему (или нет), чтобы сеанс получит новые данные.

Давайте соберем все эти решения вместе. Откройте в OpenCart 3 root catalog / controller / common / header. php и найдите

class ControllerCommonHeader extends Controller {
    public function index() {

добавьте ниже

session_start();
$_SESSION['opencart'] = $this->session->data;   

Сейчас go к вашему тесту . php и добавьте

<?php
if(!empty($_SESSION['opencart']['customer_id'])){
  // User Loged in
}
?>
...