У меня есть такой PHP-скрипт:
<?php
include 'authorization_script.php';
foreach ($_POST as $key => $value){
//do something here
}
?>
Проблема в , если , то в "authorization_script.php" передается переменная $ _POST с только числовым именем, сценарийпотерпит крахВместо того, чтобы исправить эту проблему, я просто хочу убедиться, что переменные $ _POST никогда не передаются в сценарий включения.
Для работы этого сценария authorization_script не нужны никакие внешние переменные, но поскольку переменные $ _POSTпо умолчанию являются глобальными, они передаются в этот скрипт.В одном из моих предыдущих вопросов было предложено *1009* решить эту проблему с помощью пространств имен в PHP.
Могу ли я изменить пространство имен переменных $ _POST, чтобы они не передавались вскрипт включения?Если это так, может кто-нибудь помочь, как это сделать?Или есть лучший способ?
Thx
РЕДАКТИРОВАТЬ: вместо того, чтобы взломать мой выход из этого путем переименования переменной $ _POST, как некоторые из вас предложили мне исправить настоящую проблему,Это скрипт AJAX на сайте Joomla.Когда я вызываю этот сценарий ajax, я все еще хочу аутентифицировать пользователя, а затем оценивать учетные данные из локальной базы данных.Я нашел способ аутентификации пользователей из скрипта AJAX следующим образом:
define( '_JEXEC', 1 );
define('JPATH_BASE', dirname(__FILE__));
define( 'DS', DIRECTORY_SEPARATOR );
require_once ( JPATH_BASE .DS.'includes'.DS.'defines.php' );
require_once ( JPATH_BASE .DS.'includes'.DS.'framework.php' );
/* Create the Application */
$mainframe =& JFactory::getApplication('site');
/* Make sure we are logged in at all. */
if (JFactory::getUser()->id == 0)
die("Access denied: login required.");
Я думаю, что ошибка генерируется в скрипте фреймворка joomla (строка 528 в этот скрипт ),
Какие-нибудь идеи лучшего способа аутентификации пользователей из опытных людей Joomla?