Я пытаюсь сделать календарь с днями рождения в Joomla, и у меня есть этот код:
include '../../../../connect.php';
$sql="select * from intranetUsers";
$result = ($db->setQuery($sql));
$USER_hbd = array();
$USER_shortName = array();
if( $rows = $db->loadObjectList() )
{
foreach( $rows as $row )
{
$USER_hbd[] = $row->USER_hbd;
$USER_shortName[] = $row->USER_shortName;
echo "var Events = '".$USER_hbd[] = $row->USER_hbd."':"."'<a href='#'><span>'".$USER_shortName[] = $row->USER_shortName."</span></a>'";
}
}
И я хотел бы получить это
var Events = {
'01-02-2018' : '<a href="#">'+'Luz Naranjo<span>(Campo Pereira)</span></a>',
'01-09-2018' : '<a href="#">'+'Martha Leguizamon<span>(Campo Armenia)</span></a>'+
'<a href="#"> Stefania Rosso<span>(Comercial Medellín)</span></a>',
'01-28-2018' : '<a href="#">'+'Lorena Cortes<span>(Campo Barranquilla)</span></a>'
};
Но если поставить эхо внутри предлога, я получил следующее:
var Events = '01-02-2018':'Luz Naranjo'
var Events = '01-09-2018':'Martha Leguizamon'
var Events = '01-09-2018':'Stefania Rosso'
var Events = '01-28-2018':'Lorena Cortes'
И если я поставлю эхо после того, как я получил только последний результат
var Events = '01-28-2018':'Lorena Cortes'
Я не знаю, как просто иметь один var Events со всей информацией и заметить, что в некоторых случаях два человека относятся к одной дате (день рождения). Надеюсь, ты поможешь мне, спасибо.
вы должны сохранить данные php, в ассоциативный массив, а затем использовать json_encode
$events = array();
if( $rows = $db->loadObjectList() )
{
foreach( $rows as $row )
{
$events[$row->USER_hbd][] = $row->USER_shortName;
}
}
echo json_encode($events);
Результат не будет превышен, как вы хотите, но он будет более полезен, чем то, что у вас есть сейчас.