javascript - 使用php从库中获取行数据

标签 javascript php mysql pdo

这里我有一个 dataRange 循环,但对于本例来说它并不重要,比 dateRange 更重要的是 $i:

所以我有:

  $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);

如您所见,我有 for 循环,并且通过 $temp['vrsta'] 我想从表 aktivnosti 获取数据。

我在前端也有 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...

现在我的代码只获取第一行数据,所以问题是因为我在表 aktivnosti 上有许多行具有相同的 user_id,所以当我在 aktivnosti 上有许多相同的 user_id 时,我还需要创建 '' +数据+'';对于表 aktivnosti 中的每一行,但我不知道该怎么做?

一些想法?我怎样才能做到这一点?

最佳答案

事情会是这样的......

      $startDate = date('Y-m-d',strtotime("2013-01-01")); //put first date here
      $endDate = date('Y-m-d',,strtotime("2013-12-31")); //put second date here

      $rs1 = $db->prepare('SELECT * FROM aktivnosti WHERE DATE(start_date)>=DATE('.$startDate.') AND DATE(end_date)<=('.$endDate.') GROUP BY user_id');
      $rs1->execute();
      $naz = $rs1->fetchAll();

      $jsonTable = json_encode($naz);

请注意我命名为 start_date 和 end_date 的日期列。我不知道你的专栏叫什么。

关于javascript - 使用php从库中获取行数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26723818/

相关文章:

javascript - 如何让 ESLint 对 VSCode 中的 HTML 文件进行 lint?

javascript - Nodejs 'res is not defined' 内需要

javascript - IIFE、模块和 JS

php - MySQL 对唯一列组合执行检查

php - Yii2:Kartik Gridview 导出配置?

javascript - 基于数据填充和设计 D3 树节点

php - 根据一列中的值对行数组进行自然排序

mysql - 为了授予我错误 1064 (42000)

带有操作按钮的 php 分页

mysql - SQL "OR"在 where 子句导致没有索引被使用