Php 如何在mysql中添加时间戳
我正在尝试从我的传感器表中插入一些温度数字,我想在这些温度出现时有一个时间戳。数字存储在我的表中。。。什么时间和日期 我的数据库中的自动时间戳距离我的当地时间Php 如何在mysql中添加时间戳,php,mysql,Php,Mysql,我正在尝试从我的传感器表中插入一些温度数字,我想在这些温度出现时有一个时间戳。数字存储在我的表中。。。什么时间和日期 我的数据库中的自动时间戳距离我的当地时间Europe/Skopje8小时 因为我不知道如何在我的数据库中更改它,所以我试图设置我的时间戳。。我的字段类型为0000-00-00:00:00 以下是我的PHP代码: <?php // Connect to MySQL include("dbconnect.php"); date_default_
Europe/Skopje
8小时
因为我不知道如何在我的数据库中更改它,所以我试图设置我的时间戳。。我的字段类型为0000-00-00:00:00
以下是我的PHP代码:
<?php
// Connect to MySQL
include("dbconnect.php");
date_default_timezone_set('Europe/Skopje');
$Data=date("Y-m-d H:i:s");
// Prepare the SQL statement
$SQL = "INSERT INTO tanjaarduino.sensors (Data, sensor1 ,sensor2, sensor3, sensor4, sensor5, sensor6 ,sensor7, sensor8, sensor9, sensor10, sensor11, sensor12) VALUES (Data=".$Data.", '".$_GET["s1"]."', '".$_GET["s2"]."','".$_GET["s3"]."','".$_GET["s4"]."','".$_GET["s5"]."','".$_GET["s6"]."','".$_GET["s7"]."','".$_GET["s8"]."','".$_GET["s9"]."','".$_GET["s10"]."','".$_GET["s11"]."','".$_GET["s12"]."')";
echo "The time is " . $Data;
// Execute SQL statement
mysql_query($SQL);
?>
正如其他人所指出的,mysql不受欢迎,所以我自己不会详细讨论这个问题(但您应该解决它),以回答您的实际问题
您需要将日期用引号括起来,并删除数据=
... VALUES (Data=".$Data.", ...
应该成为
... VALUES ('".$Data."', ...
这是您当前的代码结构,应该再次强调,如果/当您使用准备好的语句更新到更合适的mysqli\uPDO系统时,这将发生变化,但说明了您所犯的错误,这应该证明是有用的。请使用准备好的语句。这意味着什么。。。我是php新手。。。感谢1)Data=“.$Data.”
是一个语法错误,$Data
不是时间戳,而是一个带日期的字符串。2) 非常容易受到SQL注入的影响,您应该学习如何在准备好的语句中使用MySQLi或PDO。3) 您的数据
字段是什么数据类型?您需要使用绑定,而不是将用户输入附加到SQL语句中。此脚本将使您的数据库受到SQL注入攻击。至于日期插入,您需要将日期格式化为包含时区的字符串。然后您应该将其存储在日期类型字段中,并使用to_date来解析字符串。@tanjamaya在这里阅读您会理解:谢谢我这么做了:)
<?php
// Connect to MySQL
include("dbconnect1.php");
date_default_timezone_set('Europe/Skopje');
$Data=date("Y-m-d H:i:s");
// Prepare the SQL statement
mysqli_query($dbcon,"SELECT * FROM sensors");
mysqli_query($dbcon,"INSERT INTO sensors (Data, sensor1 ,sensor2, sensor3, sensor4, sensor5, sensor6 ,sensor7, sensor8, sensor9, sensor10, sensor11, sensor12)
VALUES ('".$Data."','".$_GET["s1"]."', '".$_GET["s2"]."','".$_GET["s3"]."','".$_GET["s4"]."','".$_GET["s5"]."','".$_GET["s6"]."','".$_GET["s7"]."','".$_GET["s8"]."','".$_GET["s9"]."','".$_GET["s10"]."','".$_GET["s11"]."','".$_GET["s12"]."')");
echo "The time is " . $Data;
mysqli_close($dbcon);