Перейти к содержимому


Фотография
- - - - -

файл отвечающий за добавление материала в #__zoo_item


Лучший Ответ Cheren-dow , 04 December 2014 - 21:23

snserg, извените, виноват сам из-за невнимательности. Замените метод на этот вариант.

/**
 * On submission saved
 * @param AppEvent $event
 */
public static function saved($event)
{
    $item = $event->getParameters();
    $_SESSION['id_order'] = $item['item']->id;
}

теперь в сессию должен поподать id материала

Перейти к сообщению


  • Закрытая тема Тема закрыта
Сообщений в теме: 16

#1 snserg

snserg

Отправлено 04 December 2014 - 11:46

Какой файл отвечает за добавление материала, введенного с фронта в таблицу zoo_item?


  • 0

#2 Cheren-dow

Cheren-dow

Отправлено 04 December 2014 - 12:16

snserg, вам нужен контроллер submission,php

сайт\components\com_zoo\controllers\submission.php 

  • 0
Изображение
 

#3 snserg

snserg

Отправлено 04 December 2014 - 12:26

перефразирую. мне нужно сделать это

$_SESSION['id_order'] = mysqli_insert_id($link);

  • 0

#4 Cheren-dow

Cheren-dow

Отправлено 04 December 2014 - 12:58

snserg, почитайте о событиях Zoo/JBZoo в документации. Вам нужен файл

сайт\media\zoo\applications\jbuniversal\framework\events\jbevent.submission.php

метод saved. Попробуйте получить данные материала следующим образом

$params = $event->getParameters();
$item   = $params['item'];

а из $item уже можно получить id


  • 0
Изображение
 

#5 snserg

snserg

Отправлено 04 December 2014 - 16:44

обязательно свой класс создавать для обработки события ради такой ерунды?


  • 0

#6 Cheren-dow

Cheren-dow

Отправлено 04 December 2014 - 16:50

snserg, выше в сообщении я написал какой нужен вам файл. И метод в котором нужно писать свой код 


  • 0
Изображение
 

#7 snserg

snserg

Отправлено 04 December 2014 - 17:46

 public static function saved($event)
    {
        
        $params = $event->getParameters();
        $item   = $params['item'];
        
        
    }

так?


  • 0

#8 Cheren-dow

Cheren-dow

Отправлено 04 December 2014 - 18:21

snserg, да, посмотрите, в $item должны быть данные о сохраненном материале 


  • 0
Изображение
 

#9 snserg

snserg

Отправлено 04 December 2014 - 18:46

каким образом посмотреть данные $item?

public static function saved($event)
    {
        
        $params = $event->getParameters();
        $item   = $params['item'];
        print_r($item);
        
    }

есть делаю так, то при сохранении материала получаю белый экран


  • 0

#10 Cheren-dow

Cheren-dow

Отправлено 04 December 2014 - 18:55

получаю белый экран

Это ошибка - нужен ее текст. Почитайте документацию по API как и что получить - там все описанно.

Попробуйте получить объект

 $subject = $event->getSubject();

скорей всего именно в $subject будут лежать данные


  • 0
Изображение
 




Click to return to top of page in style!