while($tag = mysqli_fetch_assoc($result))
{
$arrayresult[$tag['id']][$tag['name']] = $tag['count'];
}
$result содержит 4 строки из таблицы базы данных.
Я хочу, чтобы это было как:
$arrayresult[1]['mac'] = 34
$arrayresult[22]['pc'] = 32
$arrayresult[31]['windows'] = 14
$arrayresult[4]['linux'] = 23
приведенный выше код не работает, потому что он просто возвращает один элемент. кажется, что он сохраняет предыдущий.
как мне это сделать?
EDIT: print_r говорит
Array ( [4] => Array ( [linux] => 23 ) )
Нам нужно знать запрос, прежде чем мы действительно сможем вам помочь, но вам, вероятно, понадобится что-то вроде
while($tag = mysqli_fetch_assoc($result))
{
$arrayresult[$tag['id']][$tag['name']]++;
}
или
while($tag = mysqli_fetch_assoc($result))
{
$arrayresult[$tag['id']][$tag['name']] = $tag['count'];
}
это зависит от вашего запроса
Проверьте запрос в phpmyadmin или что-то подобное. Код может работать нормально, возможно, у вас есть только данные, которые вы подозреваете.
Также посмотрим ваш запрос.
$tagcount
? Должно ли это быть$tag['count'];
? Если все хорошо, это должно работать хорошо.