Hallo,
vielleicht kann mir/uns einer helfen. Wir setzten für die Feuerwehr ein Modul ein, um den letzten Einsatz anzuzeigen. Nach der Umstellung von php7.4 auf 8.x erscheint folgende Fehlermeldung:
0
Cannot access offset of type string on string
Es gibt diese beiden .php Dateien und leider habe ich keine Ahnung davon
Danke
Jan
PHP
<?php
defined('_JEXEC') or die('Illegal Access');
$url = JUri::base(true);
JHTML::_('stylesheet', 'reports.css', $url.'modules/'.$module->module.'/assets/');
foreach ($display as $key => $val)
{
if ($val == 1)
{
$outputs[] = $key;
}
}
if (count($frontReports))
{
$outData = '';
$outData .= '<div style="background-image: url(..'.$url.'/modules/mod_eiko_melder/images/'.$melder.');
background-repeat: no-repeat;
background-position: center -2px;
height: '.$height.'px;">
<div style="line-height: '.$line_height.'em;
padding-top: '.$padding_top.'px;
color:#'.$color.';
font-size: '.$font_size.'px;
display: block;
text-align: center;
vertical-align: center;">';
?>
<?php
foreach ($frontReports as $frontReport)
{
$link = JRoute::_('index.php?option=com_einsatzkomponente&Itemid='.$mymenuitem.'&view=einsatzbericht&id=' . (int)$frontReport->id);
$outData .= '<a class="melder_link" style="color:#'.$color.'" href="'.$link.'"';
$outData .= '<p><font color="red"><b>'.$last.'</b></font></p>';
$outData .= '';
foreach ($outputs as $output)
{
if ($output == 'date1' || $output == 'date2' || $output == 'date3')
{
$outData .= ''.date('d.m.Y - H:i ', strtotime($frontReport->$output)).'';
}
else
{
$outData .= '<b>'.$frontReport->$output.'</b><p></p>';
}
}
$outData .= '</a> ';
$outData .= '<p></p>';
}
$outData .= '';
}
else
{
$outData = '';
$outData .= '<div style="background-image: url(..'.$url.'/modules/mod_eiko_melder/images/'.$melder.');
background-repeat: no-repeat;
background-position: center -2px;
height: '.$height.'px;">
<div style="line-height: '.$line_height.'em;
padding-top: '.$padding_top.'px;
color:#'.$color.';
font-size: '.$font_size.'px;
display: block;
text-align: center;
vertical-align: center;">';
$outData .= $menuNone;
}
$outData .= '</div></div>';
echo $outData;
?>
Alles anzeigen
PHP
<?php
defined('_JEXEC') or die('Illegal Access');
$moduleclass_sfx = $params->get('moduleclass_sfx', '');
$font_size = $params->get('font_size', '');
$line_height = $params->get('line_height', '');
$padding_top = $params->get('padding_top', '');
$color = $params->get('color', '');
$last = $params->get('last', '');
$height = $params->get('height', '');
$melder = $params->get('melder', '');
$menuStyle = $params->get('menu_style', 'block');
$menuCount = 1;
$menuNone = $params->get('menu_none', 'No Reports Found');
$display['einsatzart'] = 1;
$display['address'] = 1;
$display['date1'] = 1;
$title['einsatzart'] = 'Einsatzart';
$title['address'] = 'Adresse';
$title['date1'] = 'Alarmierung um';
$title['date2'] = 'Ausfahrt um';
$title['date3'] = 'Einsatzbereitschaft hergestellt';
$title['summary'] = 'Kurzbeschreibung';
$title['boss'] = 'Einsatzleiter';
$title['people'] = 'Mannschaft';
$frontReports = getReports($menuCount);
$mymenuitem = $params->get('mymenuitem', '');
require JModuleHelper::getLayoutPath('mod_eiko_melder', $params->get('layout', 'default'));
function getReports($count = 1)
{
$db = JFactory::getDBO();
$query = 'SELECT r.id,r.image as foto,rd.marker,r.address,r.summary,r.auswahl_orga,r.desc,r.date1,r.data1,r.counter,r.alerting,r.presse,re.image,rd.list_icon,r.auswahl_orga,r.state,rd.title as einsatzart FROM #__eiko_einsatzberichte r JOIN #__eiko_einsatzarten rd ON r.data1 = rd.id LEFT JOIN #__eiko_alarmierungsarten re ON re.id = r.alerting WHERE r.state = "1" and rd.state = "1" and re.state = "1" ORDER BY r.date1 DESC LIMIT '.$count.' ' ;
$db->setQUery($query);
$fpReports = $db->loadObjectList();
return $fpReports;
}
?>
Alles anzeigen