【发布时间】:2016-10-29 03:26:19
【问题描述】:
下面我插入了我的两个表格
<html>
<body>
<center>
<h2>working time</h2>
<form action="" method="post">
<button name="starttime" class="starttime">starttime</button>
<?php
session_start();
$name = $_SESSION["name"];
echo $name;
if(isset($_POST["starttime"])){
$date = date('Y-m-d');
require "database.php";
$sql = "SELECT name, ddate FROM karthick.date WHERE name = '$name' AND ddate = '$date'";
$result = $conn->query($sql);
if($result->num_rows > 0){
while($row = $result->fetch_assoc()){
$n = $row["name"];
$d = $row["ddate"];
}
}
if($n == $name && $d == $date){
echo'<script>
alert("Time already registered");
</script>';
}else{
header("location:http://localhost/karthick/attendance/datedata.php");
exit;
}
}
?>
</form>
<form action = "datedata.php" method="post">
<button name="endtime" class="endtime">Endtime</button>
</form>
<form action="user.php" method="post">
<button name= "logout" class="logout">Logout</button>
</form>
</body>
</html>
在上面的表格中,当点击开始时间时,它会获取日期并使用数据库检查日期是否已经注册。如果日期尚未注册,它会移动到我在标题中给出的下一个表格:链接。
编码格式
<?php
require 'database.php';
session_start();
$name = $_SESSION["name"];
echo $name;
if(isset($_POST["starttime"]))
{
$date_clicked = date('H:i:s');
echo $date_clicked;
$date_clicked1 = date('Y-m-d');
echo $date_clicked1;
$sql = "INSERT INTO karthick.date (name, ddate, starttime) VALUES ('$name', '$date_clicked1', '$date_clicked')";
if($conn->query($sql) === TRUE){
echo "inserted";
}else{
echo "error";
}
}elseif(isset($_POST['endtime']))
{
$date_clicked = date('H:i:s');
$date_clicked1 = date('Y-m-d');
$sql = "UPDATE karthick.date SET endtime='$date_clicked' WHERE name = '$name' AND ddate = '$date_clicked1'";
if($conn->query($sql) === TRUE){
echo "inserted";
}else{
echo "error";
echo $name;
}
}
$conn->close();
?>
所以我面临的问题是当它移动到第二种形式时,它只获取名称而不获取日期和时间。所以请帮助我。
【问题讨论】:
-
尝试在
if(isset($_POST["starttime"]))这一行之后添加echo语句来检查它是否达到那个条件 -
我以第二种形式呼应了 isset 函数,但它不起作用
-
将
die(var_dump($_POST))作为第一行来检查是否确实设置了字段。 -
那么它不会去那个条件。
-
也尝试去掉header函数后的exit。
标签: javascript php html mysql