php - 从php中的特定sql命令检索数据

标签 php mysql mysqli

我有一个包含一些温度数据和日期的数据库。要绘制数据,我需要将日期时间转换为 ISO8601。 我找到了选择正确数据并转换它们的命令:

SELECT DATE_FORMAT(`datelog`, '%Y-%m-%dT%TZ') AS date_formatted FROM `tempo` ORDER BY id ASC

在 phpmyadmin 中,数据显示正确,但是当我使用相同的命令运行我的 php 脚本时,它会显示存储在数据库中的数据(例如:{"datelog":"2016-12-18 11:54: 11","donnee":"16.937"})。我该如何改变它?

<?php
//setting header to json
header('Content-Type: application/json');

//database
define('DB_HOST', '127.0.0.1');
define('DB_USERNAME', 'root');
define('DB_PASSWORD', '******');
define('DB_NAME', 'tempo');

//get connection
$mysqli = new mysqli(DB_HOST, DB_USERNAME, DB_PASSWORD, DB_NAME);

if(!$mysqli){
    die("Connection failed: " . $mysqli->error);
}

//query to get data from the table
$query = "SELECT DATE_FORMAT(`datelog`, \'%Y-%m-%dT%TZ\') AS date_formatted\n" . "FROM `tempo`\n" . "ORDER BY id ASC ";

//execute query
$result = $mysqli->query($query);

//loop through the returned data
$data = array();
foreach ($result as $row) {
    $data[] = $row;
}

//free memory associated with result
$result->close();

//close connection
$mysqli->close();

//now print the data
print json_encode($data);

最佳答案

它可以串联起来:

$query = "SELECT DATE_FORMAT(`datelog`, \'%Y-%m-%dT%TZ\') AS date_formatted\n" . "FROM `tempo`\n" . "ORDER BY id ASC ";

试试这个,如果功能:

$query = "SELECT DATE_FORMAT(`datelog`, \'%Y-%m-%dT%TZ\') AS date_formatted\n . " " . FROM `tempo`\n . " " . ORDER BY id ASC . ";

关于php - 从php中的特定sql命令检索数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41208726/

相关文章:

php - 使用加入或别名获取具有相同报告电子邮件地址的用户的详细信息

php - MySQL - 获取平均值不起作用

php - 检测整数是否可以写成给定整数的总和

php - Laravel Controller 中非重复请求验证的解决方案?

php - 在 CodeIgniter 中列出表的一些用户

mysql - 从 MySQL 中的预订表获取所有可用时段范围

php - 从 sum 中将一个可选值插入到数据库列中

php - 隐藏文件夹内容但保持文件可访问

php - 苹果推送通知反馈服务

mysql - 根据其他字段的总和更新表中的字段