Новости Joomla

Вышли релизы безопасности Joomla 6.0.2 и Joomla 5.4.2

Релиз безопасности Joomla 6.0.2 и 5.4.2

Проект Joomla спешит сообщить о выпуске Joomla 6.0.2 и Joomla 5.4.2. Это релиз безопасности для серии Joomla 6.0 и релиз безопасности для серии Joomla 5.4.

JL Content Fields Filter 4.0.0

JL Content Fields Filter 4.0.0

JL Content Fields Filter - Это бесплатный модуль, который фильтрует материалы в категории Joomla согласно настраиваемым полям.

Данный крупный релиз включает полную совместимость с Joomla 6, критические исправления безопасности, полностью модернизированный интерфейс администратора и обширный рефакторинг кода.

Ключевые Особенности:

- Полная совместимость с Joomla 6: Полная миграция на PSR-4, удаление устаревших методов, исправления для PHP 8.2+ и современные взаимодействия с базой данных.

- Полностью переписанный интерфейс компонента:

- Современный JS стек (Native Fetch, ES6+, модальные окна Bootstrap 5)

- Новое поле FilterfieldsField для предварительного просмотра фильтров в реальном времени.

- Полный CRUD, улучшенные функции SEO и улучшенный UX.

- Критические исправления безопасности:

- 5 SQL-инъекций устранены в нескольких файлах.

- Добавлена защита от XSS, улучшены токены CSRF и проверки разрешений.

- Улучшения модуля и плагина: Улучшенная функциональность слайдера, лучшие сбросы форм, динамическое обнаружение контекста для плагинов и оптимизированная логика фильтрации.

Страница расширения:
https://joomline.ru/rasshirenija/moduli/jlcontentfieldsfilter.html

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

pantela

  • Захожу иногда
  • 257
  • 1 / 0
Проблема с IE
« : 12.08.2010, 04:12:11 »
Eсть самописный комопнет под 1.5.x. комопнент доски объявления. всё хорошо работате, вот только.

при заполнени формы для объявления там есть фозможноть загрузит фото, так вот в OPERA и в FF фото грузится и на сервер передаётся файлы и в базе в поле объявления прописывается имя фото.
А вот если через IE подавать объявения, тогда ни фото не переаётся на сервер (файл) ни в базу не идёт запрос на поле фото... - а объявления просто добавляется без фото

Вчём по ваему может быть причина . -

Мне говрили что JS возожно, но я вроде отключила всё JS файлы которые подключались, но смысла не было.

Думаю проблема в функции т.к. IE  гулчит с функциями по сравнению с OPER и FF.


\components\com_ads\views\as_adsaddsrv\tmpl\default.php
Код
<?php

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

$model = $this->model;

?>

<form name="ads_addsrv" onsubmit="return validForm();" action="index.php?option=com_as_ads" method="post" enctype="multipart/form-data">
<table cellspacing="0" cellpadding="0" border="0" class="ads_add">
<tbody>
<tr>
<td><small><font color="red">*</font></small> Доп инфо</td>
<td nowrap="nowrap">
<textarea name="dop_info" cols="50" rows="6" class="inputbox"></textarea>
</td>
</tr>
<tr>
<td nowrap="nowrap">Фото</td>
<td>
<input type="file" name="adsphoto[]" value="" class="inputbox" /><br />
<input type="file" name="adsphoto[]" value="" class="inputbox" /><br />
<input type="file" name="adsphoto[]" value="" class="inputbox" /><br />
<input type="file" name="adsphoto[]" value="" class="inputbox" /><br />
<input type="file" name="adsphoto[]" value="" class="inputbox" />
</td>
</tr>
</tbody>
</table>
<input type="hidden" name="ajax_file" value="<?php echo JURI::base().'administrator/components/com_as_ads/ajax.php'; ?>" />
<input type="hidden" name="option" value="com_as_ads" />
<input type="hidden" name="task" value="ads_addsrv" />
<br />
<center><input type="submit" name="ads_submit" class="ads_submit" value="Добавить" /></center>
</form>

\components\com_ads\views\as_adsaddsrv\view.html.php
Код
<?php

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

jimport( 'joomla.application.component.view');

class As_AdsViewAs_AdsAddSrv extends JView {

function display($tpl = null) {
global $mainframe, $option;

JHTML::_('stylesheet', 'as_adsaddsrv.css', 'components/com_as_ads/css/');

$user = &JFactory::getUser();
$uri =& JFactory::getURI();
$model = &$this->getModel('as_adsaddsrv');
$document =& JFactory::getDocument();
$document =& JFactory::getDocument(); $this->assignRef('document', $document);

$conf =& JFactory::getConfig();
$siteName = $conf->getValue('config.sitename');
$document->setTitle($siteName.' - Добавить объявление');

$this->assignRef('model', $model);

parent::display();
}

}

?>

\components\com_ads\controller.php
Код
<?php

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

jimport( 'joomla.application.component.controller' );

class As_AdsController extends JController {
  
function display() {
$document =& JFactory::getDocument();

$viewName = JRequest::getCmd('view', 'as_ads');
$viewType = $document->getType();

$view = &$this->getView($viewName, $viewType);

$model = &$this->getModel( $viewName );
if (!JError::isError( $model )) {
$view->setModel( $model, true );
}

$view->display();
  }

function ads_addsrv() {
$model =& $this->getModel( 'as_adsaddsrv' );
$post = JRequest::get( 'post' );
$files = JRequest::get( 'files' );
$images = $files['adsphoto'];
$imgCount = 1;

$obj = new stdClass();
$obj->publish = 0;
$obj->ads_view = 0;
$obj->date_start = date('Y-m-d');
$obj->date_end = date('Y-m-d', strtotime('+365 day'));
$obj->tip_servisa = $post['tip_servisa'];
$obj->dop_info = $post['dop_info'];
$imgNames = $model->loadImages($images);

if ($imgNames) {
foreach ($imgNames AS $img) {
eval('$obj->photo'.$imgCount.' = $img;');
$imgCount++;
}
}

if ($id = $model->adsAdd($obj)) {
$this->setRedirect( 'index.php?option=com_as_ads&view=as_adsmessage&adsid='.$id );
//$this->setMessage( JText::_('Ваше объявление добавленно с ID '.$id) );
} else {
$this->setRedirect( 'index.php?option=com_as_ads&view=as_adslistsrv' );
JError::raiseWarning(500, JText::_('Error'));
}
}

?>

\components\com_ads\models\as_adsaddsrv.php
Код
<?php

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

jimport('joomla.application.component.model');

class As_AdsModelAs_AdsAddSrv extends JModel {
function __construct() {
parent::__construct();
}

function adsAdd($data) {
$db = &JFactory::getDBO();

if (!is_object($data))
return false;

if ($db->insertObject('#__as_ads_serv', $data))
return $db->insertid();
else
return false;
}

function loadImages($images) {
$imgTypes = array('image/jpeg', 'image/gif', 'image/png');
$imgList = array();
$imgName = '';

for ($i=0; $i<count($images['name']); $i++) {
if (in_array(strtolower($images['type'][$i]), $imgTypes)) {
$imgName = md5($images['name'][$i].mt_rand()).'.'.strtolower(array_pop(explode('.', $images['name'][$i])));
if (copy($images['tmp_name'][$i], AS_ADS_IMG_PATH.$imgName)) {
$imgList[] = $this->resizeImage(AS_ADS_IMG_PATH.$imgName, AS_ADS_IMG_PATH.$imgName);
}
}
}

if (!count($imgList))
return false;
else
return $imgList;
}

function resizeImage($imgFromPath, $imgToPath, $imgNWidth=400) {
if (!is_file($imgFromPath))
return false;

$imgExt = strtolower($this->getImageType($imgFromPath));
eval('$imgFrom = imagecreatefrom'.$imgExt.'("$imgFromPath");');
$imgFromX = imagesx($imgFrom);
$imgFromY = imagesy($imgFrom);

if ($imgFromX > $imgNWidth) {
$imgNHeight = round($imgNWidth * $imgFromY / $imgFromX);

$imgTo = imagecreatetruecolor($imgNWidth, $imgNHeight);
imagecopyresized($imgTo, $imgFrom, 0, 0, 0, 0, $imgNWidth, $imgNHeight, $imgFromX, $imgFromY);
imagejpeg($imgTo, $imgToPath);

imagedestroy($imgTo);
}
imagedestroy($imgFrom);

$this->addWatermark($imgToPath, AS_ADS_IMG_PATH.'watermark.png');

return basename($imgToPath);
}

function addWatermark($imgPath, $watermarkPath) {
    
    if (!file_exists($imgPath) || !file_exists($watermarkPath)) {
      return false;
    }
    
    $typeImg = $this->getImageType($imgPath);
    
    eval('$img = imagecreatefrom'.$typeImg.'($imgPath);');
    $wm = imagecreatefrompng($watermarkPath);
    
    if (!$img || !$wm)
      return false;
      
    $img_w = $img_h = $wm_w = $wm_h = $img_x = $img_y = 0;
      
    $img_w = imagesx($img);
    $img_h = imagesy($img);
    
    $wm_w = $wm_w_t = imagesx($wm);
    $wm_h = $wm_h_t = imagesy($wm);

if (($wm_w + 10) >= $img_w) {
$wm_w_t = round($wm_w - 10 - ($wm_w - $img_w));
$wm_h_t = round($wm_h * $wm_w_t / $wm_w);
}

if (($wm_h + 10) >= $img_h) {
$wm_h_t = round($wm_h - 10 - ($wm_h - $img_h));
$wm_w_t = round($wm_w * $wm_h_t / $wm_h);
}
    
    $img_x = $img_w-$wm_w_t-10;
    $img_y = $img_h-$wm_h_t-10;
      
imagecopyresized($img, $wm, $img_x, $img_y, 0, 0, $wm_w_t, $wm_h_t, $wm_w, $wm_h);
    
    eval('image'.$typeImg.'($img, $imgPath);');
    
    imagedestroy($img);
    imagedestroy($wm);
    
    return true;
  }

function getImageType($imgPath) {
    $type = getimagesize($imgPath);
    if (!$type)
      return false;
    switch ($type[2]) {
      case 1:
        return 'gif';
      break;
      case 2:
        return 'jpeg';
      break;
      case 3:
        return 'png';
      break;
    }
  }

}

?>

Кокой кусок кода с кокого файла вам предостаивть ещё?   :'(
*

ShadowXak

  • Завсегдатай
  • 1602
  • 162 / 6
  • no more programming
Re: Проблема с IE
« Ответ #1 : 12.08.2010, 07:24:58 »
Прикольный пост :)
Цитировать
у меня не работает авто(не заводится), вот вам карбюратор поглядите, если что то еще нужно я вам принесу, хоть колеса, аккумулятор, а хотите двигатель принесу, а?
---
по теме, вы может урл на сайт дадите, так проще увидеть ошибку которая влияет на IE, а не сидеть и из кускоф файлов перебирать что куда.
*

pantela

  • Захожу иногда
  • 257
  • 1 / 0
Re: Проблема с IE
« Ответ #2 : 12.08.2010, 07:37:24 »
IE - Вобще никоких ERROR не выводит в статусе баре...  :(

Как я понял у меня проблема в этой функции вроде:

Код
function loadImages($images) {
                $imgTypes = array('image/jpeg', 'image/gif', 'image/png');
                $imgList = array();
                $imgName = '';
                
                for ($i=0; $i<count($images['name']); $i++) {
                        if (in_array(strtolower($images['type'][$i]), $imgTypes)) {
                                $imgName = md5($images['name'][$i].mt_rand()).'.'.strtolower(array_pop(explode('.', $images['name'][$i])));
                                if (copy($images['tmp_name'][$i], AS_ADS_IMG_PATH.$imgName)) {
                                        $imgList[] = $this->resizeImage(AS_ADS_IMG_PATH.$imgName, AS_ADS_IMG_PATH.$imgName);
                                }
                        }
                }
 
                if (!count($imgList))
                        return false;
                else
                        return $imgList;
        }


т.к. когда я её вырезаю,

Код
for ($i=0; $i<count($images['name']); $i++) {
                        if (in_array(strtolower($images['type'][$i]), $imgTypes)) {
                                $imgName = md5($images['name'][$i].mt_rand()).'.'.strtolower(array_pop(explode('.', $images['name'][$i])));
                                if (copy($images['tmp_name'][$i], AS_ADS_IMG_PATH.$imgName)) {
                                        $imgList[] = $this->resizeImage(AS_ADS_IMG_PATH.$imgName, AS_ADS_IMG_PATH.$imgName);
                                }
                        }
                }
таже проблема просиходит и в ОПЕРЕ и ФФ. - помоему логично я рассуждаю.
*

ShadowXak

  • Завсегдатай
  • 1602
  • 162 / 6
  • no more programming
Re: Проблема с IE
« Ответ #3 : 12.08.2010, 07:40:26 »
Вам веднее :) вы видите сайт и видите код воочию, нам достаются только обрывки, сложно дать урл на сайт? или он у вас на локалке?
*

pantela

  • Захожу иногда
  • 257
  • 1 / 0
Re: Проблема с IE
« Ответ #4 : 12.08.2010, 07:45:57 »
Да нет, вот залилвю сайт ан сервер
« Последнее редактирование: 13.08.2010, 22:10:25 от pantela »
*

ShadowXak

  • Завсегдатай
  • 1602
  • 162 / 6
  • no more programming
Re: Проблема с IE
« Ответ #5 : 12.08.2010, 07:54:44 »
круто, я вот даже х.з. добавилось или нет
« Последнее редактирование: 14.08.2010, 06:49:24 от ShadowXak »
*

pantela

  • Захожу иногда
  • 257
  • 1 / 0
Re: Проблема с IE
« Ответ #6 : 12.08.2010, 07:59:25 »
так я же написа что добавить добавляется, вот только фото не леписят через ИЕ
*

ShadowXak

  • Завсегдатай
  • 1602
  • 162 / 6
  • no more programming
Re: Проблема с IE
« Ответ #7 : 12.08.2010, 08:15:04 »
то что я добавил есть фото?
*

pantela

  • Захожу иногда
  • 257
  • 1 / 0
Re: Проблема с IE
« Ответ #8 : 12.08.2010, 08:19:15 »
Да есть, как видно ты только 1 фото добавил и то не через IE. да ?
« Последнее редактирование: 13.08.2010, 22:09:42 от pantela »
*

ShadowXak

  • Завсегдатай
  • 1602
  • 162 / 6
  • no more programming
Re: Проблема с IE
« Ответ #9 : 12.08.2010, 08:40:57 »
да не через ie на работе к сожалению этот зверь уничтожен, как и дома :)
подождем может появится кто у кого этот зверюга стоит
*

pantela

  • Захожу иногда
  • 257
  • 1 / 0
Re: Проблема с IE
« Ответ #10 : 12.08.2010, 08:57:59 »
ок подождём спс коненчо, но на 100% уврене что в ИЕ не работат на 5 комопв тестил...
*

SmokerMan

  • Гуру
  • 5290
  • 720 / 26
Re: Проблема с IE
« Ответ #11 : 12.08.2010, 09:11:21 »
Для начала
PHP - это серверный язык программирования.
И теперь объясните, каким боком он может зависеть от используемого браузера? Если конечно сами там не прописывали условий для определенных браузеров.
*

pantela

  • Захожу иногда
  • 257
  • 1 / 0
Re: Проблема с IE
« Ответ #12 : 12.08.2010, 09:16:45 »
Вот втом и дело то что запутался...

Условии не прописаны, JS файлы не подключены, форма как форма вроде добавления,
но вот вчём косяк... первый раз столкнулся...
*

pantela

  • Захожу иногда
  • 257
  • 1 / 0
Re: Проблема с IE
« Ответ #13 : 12.08.2010, 09:40:48 »
Проблема решена, тип файла не был добавлен в контейнер,
почему-то в IE токо тип надо было добавить "image/pjpeg" откуда IE берёт эту букву "p" к типу странно

P.S. пожалуйсто удалите тему.
Большое спасибо и извините.
*

ShadowXak

  • Завсегдатай
  • 1602
  • 162 / 6
  • no more programming
Re: Проблема с IE
« Ответ #14 : 12.08.2010, 10:24:23 »
Удалять не нужно, вдруг кому пригодится :)
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Проблема со входом в Админ панель после переноса сайта

Автор Vlad Ermolaev

Ответов: 11
Просмотров: 4325
Последний ответ 12.12.2019, 15:48:25
от SeBun
[Решено] Проблема с авторизацией Invalid Token

Автор treX

Ответов: 100
Просмотров: 97503
Последний ответ 06.10.2019, 16:55:45
от PaLyCH
Проблема c MobileJoomla

Автор alexmishka

Ответов: 0
Просмотров: 1813
Последний ответ 25.02.2018, 20:32:10
от alexmishka
Вопрос при переходе на https/ Проблема с внутренними ссылками

Автор krot

Ответов: 4
Просмотров: 2175
Последний ответ 06.02.2018, 09:21:33
от krot
Проблема при переносе Joomla на xampp

Автор sbabaev

Ответов: 6
Просмотров: 7530
Последний ответ 28.07.2017, 09:06:10
от pro100skill