Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/262.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用数据库中的日期(包括时间)作为php表中隐藏字段的值_Php_Mysql_Database_Forms - Fatal编程技术网

如何使用数据库中的日期(包括时间)作为php表中隐藏字段的值

如何使用数据库中的日期(包括时间)作为php表中隐藏字段的值,php,mysql,database,forms,Php,Mysql,Database,Forms,我有一个php表和表中的一个表单字段,它显示一些设备的状态。我正在显示日期、电压、电流等值。用户可以选择任何值,以便在下一页中使用与所选值对应的时间进行平均计算。对于平均值计算,我应该选择立即5个值作为所选值。因此,日期列的时间值很重要(例如2019-04-17 16:14:44)。问题是,当我使用隐藏表单值字段时,我只得到日期(例如2019-04-17),而不是“时间” form.php $sql = "SELECT Date, Voltage, Current FROM DataTable

我有一个php表和表中的一个表单字段,它显示一些设备的状态。我正在显示日期、电压、电流等值。用户可以选择任何值,以便在下一页中使用与所选值对应的时间进行平均计算。对于平均值计算,我应该选择立即5个值作为所选值。因此,日期列的时间值很重要(例如2019-04-17 16:14:44)。问题是,当我使用隐藏表单值字段时,我只得到日期(例如2019-04-17),而不是“时间”

form.php

$sql = "SELECT Date, Voltage, Current FROM DataTable WHERE Date>= (CURDATE() - INTERVAL 90 DAY)  ORDER BY Datum DESC";

    $result = $conn->query($sql);
    $i=1;
    if ($result->num_rows > 0) {
     while($row = $result->fetch_assoc()) {
     echo "<form action = 'formProcess.php' method =get>";

        echo "<tr>

            <td>" . $i. "</td>
            <td>" . $row["Date"]. "</td>
            <td>" . $row["Voltage"] . "</td>
            <td>" . $row["Current"]. "</td>


            <td>"." <input type=hidden  name=getTime value =" .$row["Date"]."  </td>
            <td>"." <input type=submit    name=timesubmit value=select  class = classSubmit"."  </td>
        </tr>";
        $i++;
    echo "</form>";
  }
  echo "</table>";
  } else { echo "0 results"; }

$sql=“从数据表中选择日期、电压、电流,其中日期>=(CURDATE()-间隔90天)按数据描述排序”;
$result=$conn->query($sql);
$i=1;
如果($result->num_rows>0){
而($row=$result->fetch_assoc()){
回声“;
回声“
“$i。”
“$行[“日期”]”
“$行[“电压”]”
“$row[“Current”]”
“$selectedTime AND ORDER BY Date DESC LIMIT 5”;
$conn=mysqli_connect($dbhost、$dbuser、$dbpass、$db);
如果($conn->connect\u错误){
die(“连接失败:”.$conn->connect\U错误);
}
$result\u 5\u values=$conn->query($sql);
$i=1;
如果($result\u 5\u values->num\u rows>0){
而($row=$result\u 10\u values->fetch\u assoc()){
回声“
“$i。”
“$行[“日期”]”
“$行[“电压”]”
“$row[“Current”]”
";
$i++;
}
回声“;
}else{echo“0结果”;}
}否则{echo“未进行选择”;}

由于您没有html引号,这将为您提供
值的日期。请查看创建的html代码(您可以看到stackoverflow的语法高亮显示已经突出显示了浏览器如何查看您的html):


您应该在PHPs echo中为HTML添加其他引号:

echo ' <input type="hidden" name="getTime" value="' . $row["Date"] . '" />';
echo';
…要创建有效的html输出,请执行以下操作:

<input type="hidden" name="getTime" value="2019-04-17 16:14:44" />


为了克服这个问题,我建议您在php和
用于html。这在php方面也有一些性能改进,但不会对您的代码产生太大的影响…;)

由于您没有html引号,这将为您提供
值的日期。请查看创建的html代码(您可以看到stackoverflow的语法高亮显示已经突出显示了浏览器如何查看html):


您应该在PHPs echo中为HTML添加其他引号:

echo ' <input type="hidden" name="getTime" value="' . $row["Date"] . '" />';
echo';
…要创建有效的html输出,请执行以下操作:

<input type="hidden" name="getTime" value="2019-04-17 16:14:44" />


为了克服这个问题,我建议您在php中使用单引号
,在html中使用单引号
。这在php方面也有一些性能改进,但不会对您的代码产生太大影响…;)

输入标记未关闭

 <input type=hidden  name=getTime value =" .$row["Date"]."  </td>

输入标记未关闭

 <input type=hidden  name=getTime value =" .$row["Date"]."  </td>
试试这个

$sql = "SELECT Date, Voltage, Current FROM DataTable WHERE Date>= (CURDATE() - INTERVAL 90 DAY)  ORDER BY Datum DESC";

    $result = $conn->query($sql);
    $i=1;
    if ($result->num_rows > 0) {
     while($row = $result->fetch_assoc()) {
     echo "<form action='formProcess.php' method ='get'>";

        echo "<tr>

            <td>" . $i. "</td>
            <td>" . $row["Date"]. "</td>
            <td>" . $row["Voltage"] . "</td>
            <td>" . $row["Current"]. "</td>


            <td>"." <input type='hidden'  name='getTime' value='" .$row["Date"]."'  /></td>
            <td>"." <input type='submit'    name='timesubmit' value='select'  class='classSubmit'"."  </td>
        </tr>";
        $i++;
    echo "</form>";
  }
  echo "</table>";
  } else { echo "0 results"; }
$sql=“从数据表中选择日期、电压、电流,其中日期>=(CURDATE()-间隔90天)按数据描述排序”;
$result=$conn->query($sql);
$i=1;
如果($result->num_rows>0){
而($row=$result->fetch_assoc()){
回声“;
回声“
“$i。”
“$行[“日期”]”
“$行[“电压”]”
“$row[“Current”]”
"." 
“试试这个

$sql = "SELECT Date, Voltage, Current FROM DataTable WHERE Date>= (CURDATE() - INTERVAL 90 DAY)  ORDER BY Datum DESC";

    $result = $conn->query($sql);
    $i=1;
    if ($result->num_rows > 0) {
     while($row = $result->fetch_assoc()) {
     echo "<form action='formProcess.php' method ='get'>";

        echo "<tr>

            <td>" . $i. "</td>
            <td>" . $row["Date"]. "</td>
            <td>" . $row["Voltage"] . "</td>
            <td>" . $row["Current"]. "</td>


            <td>"." <input type='hidden'  name='getTime' value='" .$row["Date"]."'  /></td>
            <td>"." <input type='submit'    name='timesubmit' value='select'  class='classSubmit'"."  </td>
        </tr>";
        $i++;
    echo "</form>";
  }
  echo "</table>";
  } else { echo "0 results"; }
$sql=“从数据表中选择日期、电压、电流,其中日期>=(CURDATE()-间隔90天)按数据描述排序”;
$result=$conn->query($sql);
$i=1;
如果($result->num_rows>0){
而($row=$result->fetch_assoc()){
回声“;
回声“
“$i。”
“$行[“日期”]”
“$行[“电压”]”
“$row[“Current”]”
"." 

““什么是
SHOW CREATE TABLE DataTable
?什么是
SHOW CREATE TABLE DataTable
?请澄清问题。现在我感到困惑。问题在哪里?问题是缺少html引号
getTime
是一个字符串,中间有一个空格,这个空格将分割值,这样您只能看到
2019-04-17
,时间
16:14:44
被忽略。在这个日期时间前后添加
(请参阅我上次的html输出),该值是包含空格的完整日期时间。请澄清问题。现在我感到困惑。问题在哪里?问题是缺少html引号
getTime
是一个字符串,中间有一个空格,这个空格将分割值,这样您只能看到
2019-04-17
,时间
16:14:44
被忽略。在这个日期时间前后添加
(请参阅我上次的html输出),该值是包含空间的完整日期时间。是否尝试此操作:
$sql=“从DataTable WHERE date中选择*是否尝试此操作:
$sql=“从DataTable WHERE date中选择*