Новости Joomla

Как тестировать Joomla PHP-разработчику? Компонент Patch tester.

👩‍💻 Как тестировать Joomla PHP-разработчику? Компонент Patch tester.Joomla - open source PHP-фреймворк с готовой админкой. Его основная разработка ведётся на GitHub. Для того, чтобы международному сообществу разработчиков было удобнее тестировать Pull Requests был создан компонент Patch Tester, который позволяет "накатить" на текущую установку Joomla именно те изменения, которые необходимо протестировать. На стороне инфраструктуры Joomla для каждого PR собираются готовые пакеты, в которых находится ядро + предложенные изменения. В каждом PR обычно находятся инструкции по тестированию: куда зайти, что нажать, ожидаемый результат. Тестировщики могут предположить дополнительные сценарии, исходя из своего опыта и найти баги, о которых сообщить разработчику. Или не найти, и тогда улучшение или исправление ошибки быстрее войдёт в ядро Joomla. Напомню, что для того, чтобы PR вошёл в ядро Joomla нужны минимум 2 положительных теста от 2 участников сообщества, кроме автора. Видео на YouTubeВидео на VK ВидеоВидео на RuTubeКомпонент на GitHub https://github.com/joomla-extensions/patchtester@joomlafeed#joomla #php #webdev #community

Вышел релиз Revo PageBuilder Toolkit for YOOtheme Pro 1.6

Вышел релиз Revo PageBuilder Toolkit for YOOtheme Pro 1.6.2PageBuilder Toolkit - это специализированный плагин для конструктора страниц Yootheme Pro, содержит набор различных утилит для ускорения процесса работы и отладки макета, множественные улучшения в интерфейсе, включая поддержку dark mode, подсказки, быстрая смена разрешения в окне просмотра и много чего еще.v.1.6.2 Что нового?- Индикатор статусов: теперь не просто показывает состояние запросов, но и делает автоматические попытки их отправки при кратковременных сбоях в сети, а если это не помогло, то переводит конструктор в ручной режим, что позволяет сохранит макет и настройки темы прежде чем вы потеряете все, что было сделано с момента последнего сохранения- Подсветка ошибок в макете: плагин анализирует код страницы и может автоматически подсвечивать data атрибуты с кучей мусора, которые попадают в код страницы при копипасте из Figma в TinyMCE (пригодится для старых макетов, в текущей работе плагин сам очищает код мусора). Также есть подсветка семантических ошибок сборки - дубли h1 тега на странице и вложенных друг в друга заголовков.- Улучшена поддержка будущего релиза Yootheme Pro 5 и редактора CodeMirror 6Плагин для русскоязычных пользователей доступен в каталоге расширений SovMart и распространяется за символическую плату (100р). Разработчики Joomla расширений и партнеры автора могут получить плагин бесплатно.Для работы плагина необходим конструктор страниц Yootheme Pro.Разработчик плагина - участник нашего сообщества Александр Судьбинов (@alexrevo), член официальной группы поддержки Yootheme Pro. Страница расширенияОписание на сайте автора@joomlafeed#joomla #yootheme

0 Пользователей и 1 Гость просматривают эту тему.
  • 59 Ответов
  • 89928 Просмотров
*

kreolka_8

  • Захожу иногда
  • 153
  • 2 / 0
Дополню решением с JRequest::getVar и JRequest::setVar
Код: php-brief
JRequest::setVar('name', 'Myname', 'post');//задаем
echo JRequest::getVar('name', '', 'post'); //считываем

А можно ли уже имеющейся функции в файле обработчике
Код
$juribase = str_replace ("www.","", JURI::base()); 
$url_for_mail = $juribase.'index.php?page=shop.product_details&category_id='.$category_id.'&flypage='.$flypage.'product_id='.$product_id.'&option=com_virtuemart&Itemid='.$Itemid;

задать считывание?

Как в этом случае:
Код
<?php
$product_name = JRequest::getVar('product_name');
$product_id = JRequest::getVar('product_id');
$text_to_be_parsed = '{aicontactsafeform pf=5|use_css=1|use_ajax=1|aics_prod_url='.$url_for_mail.'|aics_prod_name='.$product_name.'}';
echo JHTML::_('content.prepare',$text_to_be_parsed);?>
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
Зачем писать $juribase = str_replace ("www.","", JURI::base());  убирает www из ссылки. А если основной домен с www и вообще не вижу смысла в этой строчке.
задать считывание? чего?
из приведенного вами кода видно что вы формируете строку которая далее обрабатывается плагином. Не понятно чего вы хотите и ваш вопрос.
*

kreolka_8

  • Захожу иногда
  • 153
  • 2 / 0
При помощи aicontactsafe +плагин jce_mediabox сделала форму Купить в 1 клик.
Ссылка на вывод формы:
Код
<a href="index.php?option=com_aicontactsafe&view=message&layout=message&pf=5&product_name=<?php echo $product_name?>">Купить в один клик</a>

Далее файл component.php обрабатывает и передает имя товара, ссылку страницы товара из VM в форму
Код
<?php
$juribase = str_replace ("www.","", JURI::base());
$url_for_mail = $juribase.'index.php?page=shop.product_details&category_id='.$category_id.'&flypage='.$flypage.'product_id='.$product_id.'&option=com_virtuemart&Itemid='.$Itemid;
$product_name = JRequest::getVar('product_name');
$product_id = JRequest::getVar('product_id');
$text_to_be_parsed = '{aicontactsafeform pf=5|use_css=1|use_ajax=1|aics_prod_url='.$url_for_mail.'|aics_prod_name='.$product_name.'}';
echo JHTML::_('content.prepare',$text_to_be_parsed);?>
Собственно, url передается в таком виде index.php?page=shop.product_details&category_id=&flypage=product_id=&option=com_virtuemart&Itemid= т.е. пустой.

Если данную форму вписать в саму карточку товара с обработкой запроса, то ссылка правильная передается в письме формы.
В ссылку формы нужно тоже добавить считываение и передачу url страницы, так же как и $product_name, но как правильно в component.php описать функцию $url_for_mail?
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
Как то так наверно
Код: php-brief
<?php
$juribase = str_replace ("www.","", JURI::base());
$input = JFactory::getApplication()->input;
$category_id = $input->getCmd('category_id', '');
$flypage = $input->getCmd('flypage', '');
$product_id = $input->getCmd('product_id', '');
$Itemid = $input->getCmd('Itemid', '');
$product_name = $input->get('product_name', '');
$url_for_mail = $juribase.'index.php?page=shop.product_details&category_id='.$category_id.'&flypage='.$flypage.'product_id='.$product_id.'&option=com_virtuemart&Itemid='.$Itemid;
$text_to_be_parsed = '{aicontactsafeform pf=5|use_css=1|use_ajax=1|aics_prod_url='.$url_for_mail.'|aics_prod_name='.$product_name.'}';
echo JHTML::_('content.prepare',$text_to_be_parsed);
?>
это для 2,5 для  1,5 нужно вместо JINPUT использовать JRequest
*

kreolka_8

  • Захожу иногда
  • 153
  • 2 / 0
Форма не выводится, пишет, что ошибка в строке
Код
$category_id = $input->getCmd('category_id', '');

Цитировать
Fatal error: Call to a member function getCmd() on a non-object in /home/deepvv/public_html/templates/wdsimplegray/component.php on line 13
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
для Joomla 1.5
Код: php-brief
<?php
$juribase = str_replace ("www.","", JURI::base());
$category_id =  JRequest::getVar('category_id', '');
$flypage =  JRequest::getVar('flypage', '');
$product_id =  JRequest::getVar('product_id', '');
$Itemid =  JRequest::getVar('Itemid', '');
$product_name =  JRequest::getVar('product_name', '');
$url_for_mail = $juribase.'index.php?page=shop.product_details&category_id='.$category_id.'&flypage='.$flypage.'product_id='.$product_id.'&option=com_virtuemart&Itemid='.$Itemid;
$text_to_be_parsed = '{aicontactsafeform pf=5|use_css=1|use_ajax=1|aics_prod_url='.$url_for_mail.'|aics_prod_name='.$product_name.'}';
echo JHTML::_('content.prepare',$text_to_be_parsed);
?>
*

kreolka_8

  • Захожу иногда
  • 153
  • 2 / 0
Почти сработало, ссылка теперь такая: /index.php?page=shop.product_details&category_id=&flypage=product_id=5221&option=com_virtuemart&Itemid=

Но не хватает цифры для Itemid= и страница не найдена.
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
я предполагаю что $Itemid  здесь Id меню к которому привязан Virt
Потому самым простым решением здесь было бы посмотреть id меню Virta в админке
и прописать $Itemid =55; (пример, надеюсь вы не собираетесь менять пункт меню магазина)
*

kreolka_8

  • Захожу иногда
  • 153
  • 2 / 0
Спасибочки ОГРОМНОЕ, очередной +

Вы были правы с $Itemid, подставила свой. Но заработало не сразу, почему то не подхватывалось в ссылку значения: $category_id и $flypage, в итоге ссылка была Неправильной.
Изменила формирование ссылки:
Код
$url_for_mail = $juribase.'index.php?page=shop.product_details&product_id='.$product_id.'&option=com_virtuemart&Itemid='.$Itemid;
*

bearn

  • Новичок
  • 9
  • 0 / 0
Как быть если есть дочерние товары и их несколько, а выводится только последний в списке, и во всех товарах?
« Последнее редактирование: 01.03.2013, 16:27:05 от bearn »
*

lokomativ64

  • Новичок
  • 7
  • 0 / 0
В компонент код
Код: php-brief
<?php
$document =  JFactory::getDocument();
$document->setBuffer( json_encode( $image), 'component', 'image' );
?>
В модуль
Код: php-brief
<?php
$document =  JFactory::getDocument();
$image = json_decode($document->getBuffer('component', 'image'));
$image_product_path = "Введите путь к папке картинок он постоянный";
?>
<img id = "main_image_<?php print $image->image_id?>" src = "<?php print $image_product_path;?>/<?php print $image->image_name;?>" alt="<?php print htmlspecialchars($image->_title)?>" title="<?php print htmlspecialchars($image->_title)?>" />

Fedor Vlasenko как передать титле и цену я смог с djcatalog(а) на RSForm а вот как передать картинку ? не могу разобраться help

Спойлер
[свернуть]

*

waterfly

  • Захожу иногда
  • 83
  • 0 / 0
Спасибо за решение.
*

waterfly

  • Захожу иногда
  • 83
  • 0 / 0
Помогите передать цикл подкатегорий K2 в модуль. Уже все перепробовал(((
Код шаблона category.php
Код
<?php
/**
 * @version $Id: category.php 1812 2013-01-14 18:45:06Z lefteris.kavadas $
 * @package K2
 * @author JoomlaWorks http://www.joomlaworks.net
 * @copyright Copyright (c) 2006 - 2013 JoomlaWorks Ltd. All rights reserved.
 * @license GNU/GPL license: http://www.gnu.org/copyleft/gpl.html
 */

// no direct access
defined('_JEXEC') or die;

?>

<!-- Start K2 Category Layout -->
<div id="k2Container" class="itemListView<?php if($this->params->get('pageclass_sfx')) echo ' '.$this->params->get('pageclass_sfx'); ?>">

<?php if($this->params->get('show_page_title')): ?>
<!-- Page title -->
<div class="componentheading<?php echo $this->params->get('pageclass_sfx')?>">
<?php echo $this->escape($this->params->get('page_title')); ?>
</div>
<?php endif; ?>

<?php if($this->params->get('catFeedIcon')): ?>
<!-- RSS feed icon -->
<div class="k2FeedIcon">
<a href="<?php echo $this->feed; ?>" title="<?php echo JText::_('K2_SUBSCRIBE_TO_THIS_RSS_FEED'); ?>">
<span><?php echo JText::_('K2_SUBSCRIBE_TO_THIS_RSS_FEED'); ?></span>
</a>
<div class="clr"></div>
</div>
<?php endif; ?>

<?php if(isset($this->category) || ( $this->params->get('subCategories') && isset($this->subCategories) && count($this->subCategories) )): ?>
<!-- Blocks for current category and subcategories -->
<div class="itemListCategoriesBlock">

<?php if(isset($this->category) && ( $this->params->get('catImage') || $this->params->get('catTitle') || $this->params->get('catDescription') || $this->category->event->K2CategoryDisplay )): ?>
<!-- Category block -->
<div class="itemListCategory">

<?php if(isset($this->addLink)): ?>
<!-- Item add link -->
<span class="catItemAddLink">
<a class="modal" rel="{handler:'iframe',size:{x:990,y:650}}" href="<?php echo $this->addLink; ?>">
<?php echo JText::_('K2_ADD_A_NEW_ITEM_IN_THIS_CATEGORY'); ?>
</a>
</span>
<?php endif; ?>

<?php if($this->params->get('catImage') && $this->category->image): ?>
<!-- Category image -->
<img alt="<?php echo K2HelperUtilities::cleanHtml($this->category->name); ?>" src="<?php echo $this->category->image; ?>" style="width:<?php echo $this->params->get('catImageWidth'); ?>px; height:auto;" />
<?php endif; ?>

<?php if($this->params->get('catTitle')): ?>
<!-- Category title -->
<h2><?php echo $this->category->name; ?><?php if($this->params->get('catTitleItemCounter')) echo ' ('.$this->pagination->total.')'; ?></h2>
<?php endif; ?>

<?php if($this->params->get('catDescription')): ?>
<!-- Category description -->
<p><?php echo $this->category->description; ?></p>
<?php endif; ?>

<!-- K2 Plugins: K2CategoryDisplay -->
<?php echo $this->category->event->K2CategoryDisplay; ?>

<div class="clr"></div>
</div>
<?php endif; ?>

<?php if($this->params->get('subCategories') && isset($this->subCategories) && count($this->subCategories)): ?>
<!-- Subcategories -->
<div class="itemListSubCategories">
<h3><?php echo JText::_('K2_CHILDREN_CATEGORIES'); ?></h3>

<?php foreach($this->subCategories as $key=>$subCategory): ?>

<?php
// Define a CSS class for the last container on each row
if( (($key+1)%($this->params->get('subCatColumns'))==0))
$lastContainer= ' subCategoryContainerLast';
else
$lastContainer='';
?>

<div class="subCategoryContainer<?php echo $lastContainer; ?>"<?php echo (count($this->subCategories)==1)? '' : ' style="width:'.number_format(100/$this->params->get('subCatColumns'), 1).'%;"'; ?>>
<div class="subCategory">
<?php if($this->params->get('subCatImage') && $subCategory->image): ?>
<!-- Subcategory image -->
<a class="subCategoryImage" href="<?php echo $subCategory->link; ?>">
<img alt="<?php echo K2HelperUtilities::cleanHtml($subCategory->name); ?>" src="<?php echo $subCategory->image; ?>" />
</a>
<?php endif; ?>

<?php if($this->params->get('subCatTitle')): ?>
<!-- Subcategory title -->
<h2>
<a href="<?php echo $subCategory->link; ?>">
<?php echo $subCategory->name; ?><?php if($this->params->get('subCatTitleItemCounter')) echo ' ('.$subCategory->numOfItems.')'; ?>
</a>
</h2>
<?php endif; ?>

<?php if($this->params->get('subCatDescription')): ?>
<!-- Subcategory description -->
<p><?php echo $subCategory->description; ?></p>
<?php endif; ?>

<!-- Subcategory more... -->
<a class="subCategoryMore" href="<?php echo $subCategory->link; ?>">
<?php echo JText::_('K2_VIEW_ITEMS'); ?>
</a>

<div class="clr"></div>
</div>
</div>
<?php if(($key+1)%($this->params->get('subCatColumns'))==0): ?>
<div class="clr"></div>
<?php endif; ?>
<?php endforeach; ?>

<div class="clr"></div>
</div>



<?php endif; ?>

</div>
<?php endif; ?>



<?php if((isset($this->leading) || isset($this->primary) || isset($this->secondary) || isset($this->links)) && (count($this->leading) || count($this->primary) || count($this->secondary) || count($this->links))): ?>
<!-- Item list -->
<div class="itemList">

<?php if(isset($this->leading) && count($this->leading)): ?>
<!-- Leading items -->
<div id="itemListLeading">
<?php foreach($this->leading as $key=>$item): ?>

<?php
// Define a CSS class for the last container on each row
if( (($key+1)%($this->params->get('num_leading_columns'))==0) || count($this->leading)<$this->params->get('num_leading_columns') )
$lastContainer= ' itemContainerLast';
else
$lastContainer='';
?>

<div class="itemContainer<?php echo $lastContainer; ?>"<?php echo (count($this->leading)==1)? '' : ' style="width:'.number_format(100/$this->params->get('num_leading_columns'), 1).'%;"'; ?>>
<?php
// Load category_item.php by default
$this->item=$item;
echo $this->loadTemplate('item');
?>
</div>
<?php if(($key+1)%($this->params->get('num_leading_columns'))==0): ?>
<div class="clr"></div>
<?php endif; ?>
<?php endforeach; ?>
<div class="clr"></div>
</div>
<?php endif; ?>

<?php if(isset($this->primary) && count($this->primary)): ?>
<!-- Primary items -->
<div id="itemListPrimary">
<?php foreach($this->primary as $key=>$item): ?>

<?php
// Define a CSS class for the last container on each row
if( (($key+1)%($this->params->get('num_primary_columns'))==0) || count($this->primary)<$this->params->get('num_primary_columns') )
$lastContainer= ' itemContainerLast';
else
$lastContainer='';
?>

<div class="itemContainer<?php echo $lastContainer; ?>"<?php echo (count($this->primary)==1)? '' : ' style="width:'.number_format(100/$this->params->get('num_primary_columns'), 1).'%;"'; ?>>
<?php
// Load category_item.php by default
$this->item=$item;
echo $this->loadTemplate('item');
?>
</div>
<?php if(($key+1)%($this->params->get('num_primary_columns'))==0): ?>
<div class="clr"></div>
<?php endif; ?>
<?php endforeach; ?>
<div class="clr"></div>
</div>
<?php endif; ?>

<?php if(isset($this->secondary) && count($this->secondary)): ?>
<!-- Secondary items -->
<div id="itemListSecondary">
<?php foreach($this->secondary as $key=>$item): ?>

<?php
// Define a CSS class for the last container on each row
if( (($key+1)%($this->params->get('num_secondary_columns'))==0) || count($this->secondary)<$this->params->get('num_secondary_columns') )
$lastContainer= ' itemContainerLast';
else
$lastContainer='';
?>

<div class="itemContainer<?php echo $lastContainer; ?>"<?php echo (count($this->secondary)==1)? '' : ' style="width:'.number_format(100/$this->params->get('num_secondary_columns'), 1).'%;"'; ?>>
<?php
// Load category_item.php by default
$this->item=$item;
echo $this->loadTemplate('item');
?>
</div>
<?php if(($key+1)%($this->params->get('num_secondary_columns'))==0): ?>
<div class="clr"></div>
<?php endif; ?>
<?php endforeach; ?>
<div class="clr"></div>
</div>
<?php endif; ?>

<?php if(isset($this->links) && count($this->links)): ?>
<!-- Link items -->
<div id="itemListLinks">
<h4><?php echo JText::_('K2_MORE'); ?></h4>
<?php foreach($this->links as $key=>$item): ?>

<?php
// Define a CSS class for the last container on each row
if( (($key+1)%($this->params->get('num_links_columns'))==0) || count($this->links)<$this->params->get('num_links_columns') )
$lastContainer= ' itemContainerLast';
else
$lastContainer='';
?>

<div class="itemContainer<?php echo $lastContainer; ?>"<?php echo (count($this->links)==1)? '' : ' style="width:'.number_format(100/$this->params->get('num_links_columns'), 1).'%;"'; ?>>
<?php
// Load category_item_links.php by default
$this->item=$item;
echo $this->loadTemplate('item_links');
?>
</div>
<?php if(($key+1)%($this->params->get('num_links_columns'))==0): ?>
<div class="clr"></div>
<?php endif; ?>
<?php endforeach; ?>
<div class="clr"></div>
</div>
<?php endif; ?>

</div>

<!-- Pagination -->
<?php if(count($this->pagination->getPagesLinks())): ?>
<div class="k2Pagination">
<?php if($this->params->get('catPagination')) echo $this->pagination->getPagesLinks(); ?>
<div class="clr"></div>
<?php if($this->params->get('catPaginationResults')) echo $this->pagination->getPagesCounter(); ?>
</div>
<?php endif; ?>

<?php endif; ?>
</div>
<!-- End K2 Category Layout -->
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
waterfly, у вас неправильная логика. Поясните, что вы хотите
Если вы хотите вывести компонент в виде модуля, тогда вам
Вывод компонента в качестве модуля
*

waterfly

  • Захожу иногда
  • 83
  • 0 / 0
Спасибо за скорый ответ. Fedor Vlasenko, я хочу вывести в модуль подкатегории шаблона к2 в качестве второго навигационного меню и не плодить несколько сотен модулей категорий. Структура сайта следующая, несколько сотен категорий делятся на одинаковые(за редким исключением) подкатегории:
Проект1
  Новости
  Статьи
  Рекомендации
  Видео
  Изображения
Проект2
  Новости
  Статьи
  Рекомендации
  Видео
  Изображения
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
Можно еще пользоваться к примеру классами одиночками. Простой пример(посмотрел на первый взгляд не увидел там магических методов, но работает)
Код: php-brief
$doc = JFactory::getDocument();
$doc->test = 'AAAA';
// и нужном месте выводить
$doc = JFactory::getDocument();
echo $doc->test; // AAAA'
*

dr_gonzales

  • Захожу иногда
  • 106
  • 3 / 0
Помогите передать переменную из одной формы в другую.
Есть магазин http://www.briochecafe.ru/zakaznie-torti/detskie-torti.html
на Joomla 2.5+joomshopping
и форма оплаты от Яндекс.кассы http://www.briochecafe.ru/oplata.html.
Яндекс.касса подключена по email-схеме.
Нужно что бы значение почты, адреса и телефона из формы, при оформлении заказа в JoomShopping, передавалось в форму оплаты от яндекса.

*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
Самый простой способ если ты в одном окне делаешь пиши в window.name и считывай от туда js
*

dr_gonzales

  • Захожу иногда
  • 106
  • 3 / 0
Спасибо за ответ, но делаю в разных окнах.
В начале оформляется заказ с заполнением полей, потом появляется окно с оплатой.
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
Может я Неправильно выразился
вот тебе пример по запускай его
ты увидишь, что состояние хранится, остальное дело техник, кодировать декодировать объект в строку и записывать в window.name
передавать же данные внутри одной вкладки, да и вкладок (window.Worker) не  представляет никаких проблем
иначе это куки, window.storage
или передавать данные на сервер записывать в сессию и из сесию отправлять обратно
*

newvideo

  • Захожу иногда
  • 194
  • 2 / 0
Всем привет! помогите разобраться с проблемой!
в index.php шаблона хочу прописать условие для вывода модуля на компе и запрет для вывода его в мобиле с маленьким экраном, так как модуль содержит много информации и не читаем на мобиле. Я не стал прикручивать различные крутые плагины и классы, так как хочу сделать максимально просто для понимания: получил через сессию размер экрана и теперь пишу условие, но переменная обнуляется:
$a = 1;
$b = 2;
echo $a + $b; //выдает 3
echo $screen; // выдает 1920 - значение взято из сесии = разрешение экрана
echo $screen + 0; //выдает 0

$screen текстовая переменная, при попытке перевести её в int она обнуляется.
тоже самое когда есть условие if ($screen > 0) - не работает
if ($screen == '1920') тоже не работает.

Что за чехарда с переменными в Joomla?
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Задавая вопросы, вечно что-то не договаривают и во всем обвиняют Joomla :(.
У меня этот код
Код: php-brief
$screen = '1920';
echo $screen + 1;
выдает 1921.
Что-то не так с вашей переменной или она совсем не та, за что вы ее принимаете.
Не будь паразитом, сделай что-нибудь самостоятельно!
*

newvideo

  • Захожу иногда
  • 194
  • 2 / 0
Что-то не так с вашей переменной или она совсем не та, за что вы ее принимаете.
да что-то не то, разбираюсь, echo переменной выводит значение, а по структуре она какая-то в 69 символов от скрипта видимо))))
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
echo (int)$screen + 1;
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
echo (int)$screen + 1;
Да нет, он это уже пытался делать. И потом, PHP умеет складывать строки с числами. Подзреваю, что $screen - это какой-то объект с соответствующей __toString().
Не будь паразитом, сделай что-нибудь самостоятельно!
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
тогда для начала var_dump($screen);
*

newvideo

  • Захожу иногда
  • 194
  • 2 / 0
Да нет, он это уже пытался делать. И потом, PHP умеет складывать строки с числами. Подзреваю, что $screen - это какой-то объект с соответствующей __toString().
да вы правы, ничего не помогало ни var_dump, ни print_r ни (int), просто тупо обнулялась переменная при любой попытке арифмитической операции. Даже перебор в цикле переменной как массива не работал, вернее выдавал одни >>>>. А вот конструкция $screen[0].%screen[1]. и т.д. заработала, но результат был не 1920. Также когда я сделал свой коронный прием: var_dump (new $screen) о ужас ошибка звучала примерно так: переменная <script ... не является объектом, и только после этого я понял что $screen = не 1920, а string (69), но отчего то же echo $screen отображало всё же 1920. Вообщем я нашел где спряталось извращение: $screen = '<script ....'. Теперь я передал куку непосредственно из onload средствами js, затем в php считал в $screen - теперь всё работает. Спасибо за отклик.
*

bybus

  • Захожу иногда
  • 86
  • 2 / 1
Использую метод с сессиями для связки k2 и ChronoForms 6. По какой-то причине, если зайти в один материал, а потом в другой, в форму подставляется значение из первого. Если обновить страницу, то все становится как надо. Кто-нибудь знает, может можно как-то принудительно обновить сессию, или как-то иначе решить эту проблему?
В шаблоне материала K2:
Код
<?php
    $session = JFactory::getSession();
    $session->set("articul",  $this->item->extraFields->articul->value);
    $session->set("nametxt",  $this->item->extraFields->dostoinstva->value);
    $session->set("tsena",  $this->item->extraFields->tsena->value);   
 ?>
В Chronoforms:
Код
<?php
   $session = JFactory::getSession();
   $art = $session->get("articul");
   $dostoin = $session->get("nametxt");
   $ts = $session->get("tsena");
   $this->data['prjname'] = $art.' - '.$dostoin.' - '.$ts.'руб';
 ?>

Может сессию в какой-то момент закрыть надо?
« Последнее редактирование: 27.11.2017, 20:59:45 от bybus »
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
По какой-то причине
По причине того, что код в К2 исполняется позже, чем код в ChronoForms.
можно как-то принудительно обновить сессию, или как-то иначе решить эту проблему?
Ну, обновите страницу :) или поменяйте порядок исполнения кода.
Не будь паразитом, сделай что-нибудь самостоятельно!
*

bybus

  • Захожу иногда
  • 86
  • 2 / 1
По причине того, что код в К2 исполняется позже, чем код в ChronoForms.Ну, обновите страницу :) или поменяйте порядок исполнения кода.
Даже не подумал об этом. Думал, раз у меня хроноформы вставлены в доп. поле в виде шорткода, то и выполняются они позже.
Подскажите, как изменить порядок исполнения кода. (В плагинах ChronoForms стоит самым последним)

Скорее всего сессия одна на все и в ней не может быть загружено что-то раньше, что-то позже в пределах одной страницы.
« Последнее редактирование: 29.11.2017, 23:15:08 от bybus »
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Модуль mod_custom: где сохраняется добавляемый код?

Автор r0m4n

Ответов: 8
Просмотров: 3575
Последний ответ 20.12.2023, 09:52:48
от kit2m2
Формирование ссылок для компонента Joomla Tags

Автор stepan39

Ответов: 6
Просмотров: 3965
Последний ответ 05.02.2023, 15:22:13
от tweenpix
URL компонента меток

Автор tweenpix

Ответов: 0
Просмотров: 2106
Последний ответ 04.02.2023, 11:08:54
от tweenpix
Не могу установить языковой пакет для компонента Joomla Events Manager ((jem))

Автор Ded Magomed

Ответов: 0
Просмотров: 1857
Последний ответ 24.05.2022, 15:06:38
от Ded Magomed
Передать значение из шаблона в модель

Автор ruyurik

Ответов: 4
Просмотров: 1226
Последний ответ 02.04.2020, 04:47:44
от ruyurik