Dram

Рейтинг
1115
Регистрация
28.06.2008

Понял спс!!!

Ох какая ядерная регулярка :))) спасибо, в жизни бы такую не сотряпал :)))

Из-за неопытности, я пхп всего месяц учу :))

С ошибкой разобрался. Запустил из корня и все стало ок.

Дикий пионер:
Предлагаю вставить в самое начало файла
print_r(debug_backtrace ());
- так выведет файл, из которого index.php подключается второй раз

В результате получил 100500 строк кода - все внутренности джумлы вытащило

А если попробовать уйти от функции - как мне ее код корректно в цикл засунуть?

Ты меня уже знаешь :)) Вот весь код

<?php

ini_set('error_reporting', E_ALL);
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);

set_time_limit(0);

define('DS', DIRECTORY_SEPARATOR);

require_once '/var/www/ugs/includes/defines.php';
require_once '/var/www/ugs/includes/framework.php';

$app = JFactory::getApplication('site')->initialise();
$db = JFactory::getDBO();
$query = $db->getQuery(true);


function createCategory( $data )
{
$data['rules'] = array(
'core.edit.state' => array(),
'core.edit.delete' => array(),
'core.edit.edit' => array(),
'core.edit.state' => array(),
'core.edit.own' => array(1=>true)
);

$basePath = JPATH_ADMINISTRATOR.'/components/com_categories';
require_once $basePath.'/models/category.php';
$config = array('table_path' => $basePath.'/tables');
$category_model = new CategoriesModelCategory($config);
if(!$category_model->save($data)){
$err_msg = $category_model->getError();
return false;
}else{
$id = $category_model->getItem()->id;
return $id;
}
}

$db->setQuery("SELECT `name` FROM #__level1");
$result = $db->loadObjectList();
$alias = 0;

foreach ($result as $res) {
$alias++;
$res->name = str_ireplace("&amp; ", "& ", $res->name);
$res->name = str_ireplace("'", "\'", $res->name);
$category_data['id'] = NULL;
$category_data['parent_id'] = 0;
$category_data['title'] = $res->name;
$category_data['alias'] = $alias;
$category_data['extension'] = 'com_content';
$category_data['published'] = 1;
$category_data['language'] = '*';
$category_data['params'] = array('category_layout' => '','image' => '');
$category_data['metadata'] = array('author' => '','robots' => '');

$category_id = createCategory($category_data);
var_dump($category_id);
}

Что самое интересное - если последние строки скрипта изменить так

$category_id = createCategory($category_data); заменить на

var_dump ($category_data);

То я вижу вывод данных которые должен видеть.

если так:

$category_id = createCategory($category_data);
var_dump($category_id);

то выводит bool(false) bool(false) bool(false) bool(false) .....

Первое что попробовал - переименовал, ошибка не пропала, только имя изменилось.

Я привел весь код скрипта, нет ничего похожего... 20 строка это и есть первое упоминание createCategory

Всего: 6928