Внимание! Форум временно закрыт. Все вопросы вы можете задать на странице MaxSite CMS в Github

PHP код начинается с if (!defined('BASEPATH'))

Здесь можно задать вопрос по PHP, не боясь нарваться на злых админов за возможно глупый вопрос. Форум имеет обучающую направленность, поэтому можно создавать обучалки.
SalavatElite
Сообщений: 2
Зарегистрирован: 29 авг 2013, 20:17

PHP код начинается с if (!defined('BASEPATH'))

Сообщение SalavatElite » 29 авг 2013, 20:23

Привет.

В любом php файле есть строка

Код: Выбрать все

if (!defined('BASEPATH')) exit('No direct script access allowed');

Что будет, если при переносе плагина его не добавить?

Портирую плагин с WP на MaxSite. Точнее сказать, собираюсь портировать. Пока что кромешно-темный лес, что и как делать.

Спасибо.

Аватар пользователя
searchingman
Модератор
Сообщений: 1392
Зарегистрирован: 28 май 2012, 16:02

Re: PHP код начинается с if (!defined('BASEPATH'))

Сообщение searchingman » 30 авг 2013, 12:22

Добавлять нужно для организации "единой точки входа" в движке, т.е. через index.php
Константа определяется в корневом index.php

Код: Выбрать все

   define('BASEPATH', str_replace("\\", "/", $system_path));

SalavatElite
Сообщений: 2
Зарегистрирован: 29 авг 2013, 20:17

Re: PHP код начинается с if (!defined('BASEPATH'))

Сообщение SalavatElite » 30 авг 2013, 12:28

searchingman писал(а):Добавлять нужно для организации "единой точки входа" в движке, т.е. через index.php
Константа определяется в корневом index.php

Код: Выбрать все

   define('BASEPATH', str_replace("\\", "/", $system_path));


Что будет, если его не указать ?

Аватар пользователя
searchingman
Модератор
Сообщений: 1392
Зарегистрирован: 28 май 2012, 16:02

Re: PHP код начинается с if (!defined('BASEPATH'))

Сообщение searchingman » 30 авг 2013, 12:33

Если не указывать , то сможете напрямую запускать скрипты по адресу, н-р, site.ru/myscript.php будет выполняться.
Иначе скрипт будет выполняться только , если он запущен в контексте движка.


Вернуться в «PHP»

Кто сейчас на форуме

Пользователь просматривает форум: нет зарегистрированных пользователей