Здесь у меня есть dataRange
цикла, но в этом случае его не важен, важнее dateRange
является $i
:Получить данные строк из базы с PHP
Так у меня есть:
$dateString = '09.03.2014';
$startDate = new DateTime($dateString);
$period = new DateInterval('P1M');
$endDate = clone $startDate;
$endDate->add($period);
$interval = new DateInterval('P1D');
$daterange = new DatePeriod($startDate, $interval ,$endDate);
$i=1;
foreach($daterange as $date){
$temp = array();
// the following line will be used to slice the Pie chart
$temp['ID'] = $i;
$temp['datum'] = $date->format("d/m") . PHP_EOL;
$rs1 = $db->prepare('SELECT naziv FROM aktivnosti WHERE user_id=:idd');
$rs1->bindParam(':idd', $i);
$rs1->execute();
$naz = $rs1->fetchColumn();
if ($naz != false) {
$temp['vrsta'] = $naz;
} else {
$temp['vrsta'] = '';
}
$output['data'][] = $temp;
$i++;
}
$jsonTable = json_encode($output);
Как вы можете см. У меня есть цикл и с $ temp ['vrsta'] Я хочу получить данные из таблицы активности.
У меня также есть слой JS UI на веб-интерфейсе, который сделать HTML из данных:
$('#example').dataTable({
"ajax": "table1.php",
"columns": [
{ "data": "ID" },
{ "data": "datum" },
{ "data": "naziv" },
{ "data": "vrsta" },
],
"lengthMenu": [ 31 ],
"columnDefs": [ {
"targets": 3,
"data": "download_link",
"render": function (data, type, full, meta) {
if (data != '') {
return '<button class="btn btn-success">'+data+'</button>';
}else {
return data;
}
}
} , etc...
Теперь мой код выборки только первые строки данных, так проблема в том, becouse У меня есть много строк на столе aktivnosti с тем же user_id, поэтому, когда у меня есть много одинаковых user_id по активности, мне также нужно создать «+ данные +»; для каждой строки из таблицы активности, но у меня нет идеи, как это сделать?
Некоторые идеи? Как я могу это сделать?
Вы должны спрятать эти идентификаторы в строку, а затем запросить базу данных один раз. Но я дам вам ответ, основываясь на том, как вы это сделали. Дайте мне минуту – KyleK
Основываясь на том, что вы сказали в моем удаленном ответе, вам не нужно было бы указывать данные data.data. Потому что вы называете свой массив в PHP как данные. Это означает, что вы придаете ему дополнительный слой, который ему не нужен. Данные в коде DataTable относятся к массиву ответов. – KyleK
, пожалуйста, напишите ответ –