Новости Joomla

Вышли релизы Joomla 6.1 и Joomla 5.4.5: новые возможности и стабильность

Релиз Joomla 6.1.0

Проект Joomla! объявил о доступности Joomla 6.1 [Nyota] — новой минорной версии шестой серии, а также о выпуске релиза исправлений ошибок Joomla 5.4.5. Релиз 6.1 приносит ряд долгожданных функций, повышающих удобство управления контентом и защиту от спама.

👩‍💻 Компонент "CS Афиши" для Joomla.

👩‍💻 Компонент "CS Афиши" для Joomla.

Расширение "CS Афиши" позволяет выводить список мероприятий, фильтровать их по датам, поиск по заголовкам и описанию.

В состав пакета расширений входят:
- Компонент "CS Афиши"
- Модуль "Календарь событий"
- Модуль "Предстоящие события"
- Библиотека "ImgResize"

Расширение "CS Афиши" позволяет выводить список мероприятий, фильтровать их по датам, поиск по заголовкам и описанию.

Модуль "Календарь событий" отображает предстоящие и прошедшие мероприятие на календаре, с отображением мероприятий на конкретную дату во всплывающем окне.

Модуль "Предстоящие события" показывает список предстоящий событий по порядку их наступления.

P.S. Расширение платное, но плата символическая, чисто для отработки приема платежей. Ключи без ограничения по времени, купившие сейчас - смогут обновляться без ограничений.

Разработчик - участник нашего сообщества Дмитрий Денисов (@codersite).

Страница расширения
Демо

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

megaboy161

  • Новичок
  • 9
  • 0 / 0
Добрый день, достался мне по наследству модуль вывода информации из БД, и его срочно надо оживить. А я в этом не особо понимаю, может кто сможет помочь.
не могу исправить Backend log: PHP Warning: Invalid argument supplied for foreach() in /var/www/user31926/data/www/vd.shakhty-duma.ru/modules/mod_yourdeputy/tmpl/default.php on line 12\n

Из за данного цикла

foreach ($list as $item ) {
// echo "<p> $i: $item->name id- $item->id </p>\n";
$arr[] = JHTML::_('select.option', $item['id'], JText::_($item['name']));
}

Не отображается корректно список улиц и домов. Кто сможет помочь
*

sivers

  • Живу я здесь
  • 2610
  • 363 / 0
Похоже, что $list в цикле не является массивом. Попробуйте добавить проверку перед циклом, вместо:
Код
foreach ($list as $item ) {
напишите:
Код
if(is_array($list)) foreach ($list as $item ) {

Корректней отображаться не начнет, но ошибка должна исчезнуть
На связи в telegram @sivers
sivers @ inbox . ru
https://sivers.su/
*

megaboy161

  • Новичок
  • 9
  • 0 / 0
В том то и дело что мне надо выводить информацию из БД а он этого упорно не знает делать
*

AlexB

  • Завсегдатай
  • 1973
  • 54 / 2
а ранее он работал?
после чего перестал?
*

megaboy161

  • Новичок
  • 9
  • 0 / 0
Да когда то он работал, потом сайт закрыли а сейчас спустя годы решили запустить заново этот модуль, только отдела который занимался сайтом и конкретно модулем нет уже давно и его передали мне а я вообще не знаю как его запустить
*

megaboy161

  • Новичок
  • 9
  • 0 / 0
Кто сможет помочь запустить плагин, не за бесплатно конечно же
*

megaboy161

  • Новичок
  • 9
  • 0 / 0
Да.

<?php
   
   // no direct access
   defined('_JEXEC') or die('Restricted access');

   class modyourdeputy
{
   function getListStreet()

   {
      //get database
      $db =& JFactory::getDBO();
      $query = 'SELECT id, name FROM `jos_street` ORDER BY name;';
      $db->setQuery($query, 0 );
      $lists = $db->loadObjectList();
       return $lists;
   }
   
}
?>
*

sivers

  • Живу я здесь
  • 2610
  • 363 / 0
А, вот. В хелпере $lists, а в макете в цикле $list.

Либо в макете поменяйте (в цикле) $list => $lists, либо в хелпере $lists => $list.
На связи в telegram @sivers
sivers @ inbox . ru
https://sivers.su/
*

megaboy161

  • Новичок
  • 9
  • 0 / 0
Исправил после чего модуль совсем полег.

Strict Standards: Non-static method modyourdeputy::getListStreet() should not be called statically in /var/www/user31926/data/www/vd.shakhty-duma.ru/modules/mod_yourdeputy/mod_yourdeputy.php on line 12

Strict Standards: Only variables should be assigned by reference in /var/www/user31926/data/www/vd.shakhty-duma.ru/modules/mod_yourdeputy/helper.php on line 12
*

sivers

  • Живу я здесь
  • 2610
  • 363 / 0
Исправил после чего модуль совсем полег.

Strict Standards: Non-static method modyourdeputy::getListStreet() should not be called statically in /var/www/user31926/data/www/vd.shakhty-duma.ru/modules/mod_yourdeputy/mod_yourdeputy.php on line 12

Strict Standards: Only variables should be assigned by reference in /var/www/user31926/data/www/vd.shakhty-duma.ru/modules/mod_yourdeputy/helper.php on line 12
Выкладывайте тогда целиком хелпер и макет
На связи в telegram @sivers
sivers @ inbox . ru
https://sivers.su/
*

megaboy161

  • Новичок
  • 9
  • 0 / 0
helper.php

Код
<?php
   
   // no direct access
   defined('_JEXEC') or die('Restricted access');

   class modyourdeputy
{
function getListStreet()

{
//get database
$db =& JFactory::getDBO();
$query = 'SELECT id, name FROM `jos_street` ORDER BY name;';
$db->setQuery($query, 0 );
$lists = $db->loadObjectList();
  return $lists;
}

}
?>

default.php

Код
<?php
    // no direct access
    defined('_JEXEC') or die('Restricted access');
 ?>
<div id="divStr" style="text-align: left; ">
<?php
// Формирую выпадающий спискок улиц
    $arr = array();
    $arr[] = JHTML::_('select.option',  '0', "Выберите улицу", 'value', 'text', $disable=true );

     foreach ($list as $item) {
      //echo "<p> $i:  $item->name id- $item->id </p>\n";
      $arr[] = JHTML::_('select.option', $item->id, JText::_($item->name));
     }

    echo  "<br/>";

     $currentValue = '0'; // текущее значение (например выбрано из БД)
     echo JHTML::_('select.genericlist', $arr, 'street','class="inputbox" size="1" onchange="process();"', 'value', 'text', $currentValue);
    echo  "<br/>";
    echo  "<br/>";

 ?>
    </div>

    <div id="myDiv" >     

    </div>

    <div id="myDivElement" >     
    </div>

<div id="divMessage" style="display: none; text-align: left; ">

<?php
        $arr1 = array();
        $arr1[] = JHTML::_('select.option',  '0', "Выберите № дома", 'value', 'text', $disable=true );
        $currentValue = '0'; // текущее значение (например выбрано из БД)
        echo JHTML::_('select.genericlist', $arr1, 'buildings', 'class="inputbox" size="1" onchange="process1();"', 'value', 'text', $currentValue);

 ?>

     </div>

     <div id="divInformation" style="display: none">
     
          <br/>
      <table width="200" border="0">
          <tr>
              <td><img src="modules/mod_yourdeputy/Picture/Btn/uch_.png" width="100" height="46" onClick="onPressBtnUch();" ></td>
              <td><img src="modules/mod_yourdeputy/Picture/Btn/okr.png" width="100" height="46" onClick="onPressBtnCounty();"></td>
              <td><img src="modules/mod_yourdeputy/Picture/Btn/dep.png" width="100" height="46" onClick="onPressBtnDeputy();"></td>
          </tr>
        </table>
           <br/>


          <div id="divUch" style="text-align: left; font-weight: bold;" >
          </div>           

          <div id="divMCounty" style="display: none;  font-weight: bold;">
          </div>

          <div id="divMDeputy" style="display: none; text-align: left; font-weight: bold;">
          </div>
   
     </div>


mod_youdeputy.php

Код
<?php

    defined('_JEXEC') or die('Restricted access');

    //Подключаем наш helper
   require_once (dirname(__FILE__).DS.'helper.php');
 
    echo "<script type='text/javascript' src='" . JURI::base() . "modules/mod_yourdeputy/js/mod_yourdeputy.js'></script>\n";



   $list = modyourdeputy::getListStreet();
   require(JModuleHelper::getLayoutPath('mod_yourdeputy'));


?>

GetBuildings.php

Код
<?php
require_once('config.php');

// load the error handling module
//require_once('error_handler.php');

// specify that we're outputting an XML document
  header('Content-Type: text/xml');
// calculate the the result
//$firstNumber = $_GET['firstNumber'];
//$result = $firstNumber;
// create a new XML document


$dom = new DOMDocument();


  // connect to the database
  $mMysqli = new mysqli(DB_HOST, DB_USER, DB_PASSWORD, DB_DATABASE);   

  $idStreet = $_GET['firstNumber'];


  // what SQL query you want executed?
  $query = 'SELECT ID_Areas As Id_bui, Builds As Bui FROM jos_Buildings WHERE ID_Street =  '. (int) $idStreet ;


  // execute the query
  $result = $mMysqli->query($query); 

// Создаю элемент response

  $response = $dom->appendChild($dom->createElement('response'));

  while ($row = $result->fetch_array(MYSQLI_ASSOC))
  {

  $Buildings = $response->appendChild($dom->createElement('Buildings'));

  $RangeV = $row['Bui'];
  // $RangeV = iconv("WINDOWS-1251", "UTF-8", $RangeV);

  $Id = $Buildings->appendChild($dom->createElement('Id'));
  $Id->appendChild($dom->createTextNode($row['Id_bui']));
  $Range = $Buildings->appendChild($dom->createElement('Range'));
  $Range->appendChild($dom->createTextNode($RangeV));


  }

// build the XML structure in a string variable

$xmlString = $dom->saveXML();

// output the XML string
echo $xmlString;

  $dom->formatOutput = true;
  $dom->save('test2.xml');


  $result->close();
 
  // close the database connection
  $mMysqli->close();

?>

GetArea.php

Код
<?php
require_once('config.php');

// load the error handling module
//require_once('error_handler.php');

// specify that we're outputting an XML document
  header('Content-Type: text/xml');
// calculate the the result
//$firstNumber = $_GET['firstNumber'];
//$result = $firstNumber;
// create a new XML document
$dom = new DOMDocument();


  // connect to the database
  $mMysqli = new mysqli(DB_HOST, DB_USER, DB_PASSWORD, DB_DATABASE);   

  $idArea = $_GET['firstNumber'];

// ***** Выбираю информацию по избирательному участку

  $query = 'SELECT nom AS nm, ADDRESS AS Addr, ID_MCOUNTY, ID_RCOUNTY, MapAreas, InfoAreas, PlaceAreas FROM jos_Areas WHERE ID =  '. (int) $idArea ;


  // execute the query
  $result = $mMysqli->query($query); 


// Создаю  XML элемент‚ response

  $response = $dom->appendChild($dom->createElement('response'));

// Создаю переменную $ID_MCOUNTY и $ID_RCOUNTY

  $ID_MCOUNTY = "";
  $ID_RCOUNTY = "";
 


  while ($row = $result->fetch_array(MYSQLI_ASSOC))
  {

    $Area = $response->appendChild($dom->createElement('Area'));
    $Address = $row['Addr'];
    // $Address = iconv("WINDOWS-1251", "UTF-8", $Address);
   
    $Nom = $Area->appendChild($dom->createElement('Nom'));
    $Nom->appendChild($dom->createTextNode($row['nm']));

    $ADDR = $Area->appendChild($dom->createElement('Address'));
    $ADDR->appendChild($dom->createTextNode($Address));

    $MapAreas = $Area->appendChild($dom->createElement('MapAreas'));
    $MapAreas->appendChild($dom->createTextNode($row['MapAreas']));

    $InfoAreas = $Area->appendChild($dom->createElement('InfoAreas'));   
    // $InfoAreas_ = iconv("WINDOWS-1251", "UTF-8", $row['InfoAreas']);
    // $InfoAreas->appendChild($dom->createTextNode($InfoAreas_));
    $InfoAreas->appendChild($dom->createTextNode($row['InfoAreas']));

    $PlaceAreas = $Area->appendChild($dom->createElement('PlaceAreas'));   
    // $PlaceAreas_ = iconv("WINDOWS-1251", "UTF-8", $row['PlaceAreas']);
    // $PlaceAreas->appendChild($dom->createTextNode($PlaceAreas_));
    $PlaceAreas->appendChild($dom->createTextNode($row['PlaceAreas']));

  $ID_MCOUNTY = $row['ID_MCOUNTY'];
  $ID_RCOUNTY = $row['ID_RCOUNTY'];

  }

  $result->close();
 


// ***** Выбираю информацию по депутатам муниципального уровня


  $query = 'SELECT NOM, STATUS, NAMEDEPUTY, MP1, ADRMP1, PRDN1, VRPR1, MP2, ADRMP2,
     PRDN2, VRPR2, PHONE, MAIL, DR, DOLG, OBRAZ, FOTO, InfoMCounty, VoterMCounty, MapMCounty FROM jos_MCounty WHERE ID =  '. (int) $ID_MCOUNTY ;

  // execute the query
  $result = $mMysqli->query($query); 

  while ($row = $result->fetch_array(MYSQLI_ASSOC))
  {

    $MCounty = $response->appendChild($dom->createElement('MCounty'));
   
    $Nom = $MCounty->appendChild($dom->createElement('Nom'));
    $Nom->appendChild($dom->createTextNode($row['NOM']));

    $STATUS = $MCounty->appendChild($dom->createElement('Status'));
    // $Status_ = iconv("WINDOWS-1251", "UTF-8", $row['STATUS']);
    // $STATUS->appendChild($dom->createTextNode($Status_));
    $STATUS->appendChild($dom->createTextNode($row['STATUS']));

    $NAMEDEPUTY = $MCounty->appendChild($dom->createElement('NameDeputy'));
    //$NameDep = iconv("WINDOWS-1251", "UTF-8", $row['NAMEDEPUTY']);
    //$NAMEDEPUTY->appendChild($dom->createTextNode($NameDep));
    $NAMEDEPUTY->appendChild($dom->createTextNode($row['NAMEDEPUTY']));

    $MP1 = $MCounty->appendChild($dom->createElement('Mp1'));   
    //$Mp_1 = iconv("WINDOWS-1251", "UTF-8", $row['MP1']);
    //$MP1->appendChild($dom->createTextNode($Mp_1));
    $MP1->appendChild($dom->createTextNode($row['MP1']));
   
    $ADRMP1 = $MCounty->appendChild($dom->createElement('AdrMp1'));   
    // $AdrMp_1 = iconv("WINDOWS-1251", "UTF-8", $row['ADRMP1']);
    // $ADRMP1->appendChild($dom->createTextNode($AdrMp_1));
    $ADRMP1->appendChild($dom->createTextNode($row['ADRMP1']));
   

    $PRDN1 = $MCounty->appendChild($dom->createElement('PrDn1'));   
    // $PrDn_1 = iconv("WINDOWS-1251", "UTF-8", $row['PRDN1']);
    // $PRDN1->appendChild($dom->createTextNode($PrDn_1));
    $PRDN1->appendChild($dom->createTextNode($row['PRDN1']));

    $VRPR1 = $MCounty->appendChild($dom->createElement('VrPr1'));   
    // $VrPr_1 = iconv("WINDOWS-1251", "UTF-8", $row['VRPR1']);
    // $VRPR1->appendChild($dom->createTextNode($VrPr_1));
    $VRPR1->appendChild($dom->createTextNode($row['VRPR1']));

    $MP2 = $MCounty->appendChild($dom->createElement('Mp2'));   
    // $Mp_2 = iconv("WINDOWS-1251", "UTF-8", $row['MP2']);
    // $MP2->appendChild($dom->createTextNode($Mp_2));
    $MP2->appendChild($dom->createTextNode($row['MP2']));

    $ADRMP2 = $MCounty->appendChild($dom->createElement('AdrMp2'));   
    // $AdrMp_2 = iconv("WINDOWS-1251", "UTF-8", $row['ADRMP2']);
    // $ADRMP2->appendChild($dom->createTextNode($AdrMp_2));
    $ADRMP2->appendChild($dom->createTextNode($row['ADRMP2']));

    $PRDN2 = $MCounty->appendChild($dom->createElement('PrDn2'));   
    // $PrDn_2 = iconv("WINDOWS-1251", "UTF-8", $row['PRDN2']);
    // $PRDN2->appendChild($dom->createTextNode($PrDn_2));
    $PRDN2->appendChild($dom->createTextNode($row['PRDN2']));

    $VRPR2 = $MCounty->appendChild($dom->createElement('VrPr2'));   
    // $VrPr_2 = iconv("WINDOWS-1251", "UTF-8", $row['VRPR2']);
    // $VRPR2->appendChild($dom->createTextNode($VrPr_2));
    $VRPR2->appendChild($dom->createTextNode($row['VRPR2']));

    $PHONE = $MCounty->appendChild($dom->createElement('Phone'));
    $PHONE->appendChild($dom->createTextNode($row['PHONE']));

    $MAIL = $MCounty->appendChild($dom->createElement('Mail'));
    $MAIL->appendChild($dom->createTextNode($row['MAIL']));

    $DR = $MCounty->appendChild($dom->createElement('Dr'));   
    // $Dr_ = iconv("WINDOWS-1251", "UTF-8", $row['DR']);
    // $DR->appendChild($dom->createTextNode($Dr_));
    $DR->appendChild($dom->createTextNode($row['DR']));

    $DOLG = $MCounty->appendChild($dom->createElement('Dolg'));   
    // $Dolg_ = iconv("WINDOWS-1251", "UTF-8", $row['DOLG']);
    // $DOLG->appendChild($dom->createTextNode($Dolg_));
    $DOLG->appendChild($dom->createTextNode($row['DOLG']));

    $OBRAZ = $MCounty->appendChild($dom->createElement('Obraz'));   
    // $Obraz_ = iconv("WINDOWS-1251", "UTF-8", $row['OBRAZ']);
    // $OBRAZ->appendChild($dom->createTextNode($Obraz_));
    $OBRAZ->appendChild($dom->createTextNode($row['OBRAZ']));

    $FOTO = $MCounty->appendChild($dom->createElement('Foto'));
    $FOTO->appendChild($dom->createTextNode($row['FOTO']));

    $InfoMCounty= $MCounty->appendChild($dom->createElement('InfoMCounty'));   
    // $InfoMCounty_ = iconv("WINDOWS-1251", "UTF-8", $row['InfoMCounty']);
    // $InfoMCounty->appendChild($dom->createTextNode($InfoMCounty_));
    $InfoMCounty->appendChild($dom->createTextNode($row['InfoMCounty']));

    $VoterMCounty= $MCounty->appendChild($dom->createElement('VoterMCounty'));   
    // $VoterMCounty_ = iconv("WINDOWS-1251", "UTF-8", $row['VoterMCounty']);
    // $VoterMCounty->appendChild($dom->createTextNode($VoterMCounty_));
    $VoterMCounty->appendChild($dom->createTextNode($row['VoterMCounty']));

    $MapMCounty = $MCounty->appendChild($dom->createElement('MapMCounty'));
    $MapMCounty->appendChild($dom->createTextNode($row['MapMCounty']));


  }

  $result->close();

// ***** Выбираю информацию по депутатам регионального уровня

  $query = 'SELECT NOM, STATUS, NAMEDEPUTY, RPHONE, DR, DOLG, OBRAZ, DP1, DP2,
      FOTO, PARTY FROM jos_RCounty WHERE ID = 2';
// '. (int) $ID_RCOUNTY ;

  // execute the query
  $result = $mMysqli->query($query); 

  while ($row = $result->fetch_array(MYSQLI_ASSOC))
  {
 
    $RCounty = $response->appendChild($dom->createElement('RCounty'));
    $Nom = $RCounty->appendChild($dom->createElement('Nom'));
    $Nom->appendChild($dom->createTextNode($row['NOM']));

    $STATUS = $RCounty->appendChild($dom->createElement('Status'));
    $Status_ = iconv("WINDOWS-1251", "UTF-8", $row['STATUS']);
    $STATUS->appendChild($dom->createTextNode($Status_));

    $NAMEDEPUTY = $RCounty->appendChild($dom->createElement('NameDeputy'));
    $NameDep = iconv("WINDOWS-1251", "UTF-8", $row['NAMEDEPUTY']);
    $NAMEDEPUTY->appendChild($dom->createTextNode($NameDep));




  }

  $result->close();



  // close the database connection
  $mMysqli->close();

// build the XML structure in a string variable

  $xmlString = $dom->saveXML();

// output the XML string
  echo $xmlString;

  $dom->formatOutput = true;
  $dom->save('test3.xml');

?>
« Последнее редактирование: 20.01.2020, 16:34:17 от megaboy161 »
*

draff

  • Гуру
  • 5801
  • 434 / 7
  • ищу работу
Strict Standards: Non-static method modyourdeputy::getListStreet() should not be called statically
Пропишите
Код
static function getListStreet()
Удалите чтобы было так
Код
 $db = JFactory::getDBO();
*

megaboy161

  • Новичок
  • 9
  • 0 / 0
Не помогло, сайт лег
*

draff

  • Гуру
  • 5801
  • 434 / 7
  • ищу работу
Включите в админке отображение ошибок на для разработчиков,
*

megaboy161

  • Новичок
  • 9
  • 0 / 0
включено
*

sivers

  • Живу я здесь
  • 2610
  • 363 / 0
Исправил после чего модуль совсем полег.
Верните исправления обратно - они там не нужны.
Добавьте в верхней части макета:
Код
print_r($list);
Это чтоб проверить, что данные приходят (после этого уберите). Если ничего не выведет, то надо точно так же проверить в хелпере между строк:
Код
$lists = $db->loadObjectList();
  return $lists;
добавить
Код
print_r($lists);
Если и здесь будет пусто, то открыть таблицу `jos_street` в БД (через phpMyAdmin или Adminer) и посмотреть не пустая ли она, не изменилась ли структура.
На связи в telegram @sivers
sivers @ inbox . ru
https://sivers.su/
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

AJAX для модуля на 1.5

Автор voland

Ответов: 2
Просмотров: 1650
Последний ответ 04.03.2016, 12:08:41
от b2z
Как получить ID для каждого выводимого модуля на странице

Автор enshtein

Ответов: 6
Просмотров: 6532
Последний ответ 12.01.2012, 08:54:19
от enshtein
Модуля кнопка с кодом для Joomla 1.5 или Наш баннер,

Автор leo78

Ответов: 12
Просмотров: 8300
Последний ответ 19.12.2011, 00:35:25
от leo78
Создание модуля с выпадающим списком и кнопками

Автор Romik

Ответов: 2
Просмотров: 2804
Последний ответ 26.09.2010, 07:05:19
от danik.html
Типы параметров модуля/плагина - редактор как в mod_custom

Автор Kverde3

Ответов: 1
Просмотров: 2737
Последний ответ 09.09.2010, 18:57:42
от danik.html