首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >php检查用户是否已签入

php检查用户是否已签入
EN

Stack Overflow用户
提问于 2015-11-11 00:52:05
回答 2查看 44关注 0票数 1

我正在尝试编写一个PHP服务器端,以检查用户是否已签入或记录。PHP文件将查询MySQL数据库,以查看userID是否已签入日期。如果不是,PHP文件将根据userID插入日期。如果该日期已有记录,则会提示消息“已签入”。我写了下面的代码,但它不能检测记录是否存在(它总是插入一个新记录)。错误的部分是什么?

代码语言:javascript
复制
<?php



if($_SERVER['REQUEST_METHOD']=='POST'){
 $staffID = $_POST['staffID'];
 $date = $_POST['localDate'];

 require_once('dbconnect.php');


 $sqlcheck = "SELECT Date FROM StaffAttendacne WHERE StaffID = '$staffID' AND Date ='$date'";

 $res = mysqli_query($con,$sqlcheck);


 if ((mysqli_num_rows($res)) > 0){
 echo "You have already checked in";
 }else {
     echo "Perform Check in $date";
     $sql = "INSERT INTO StaffAttendance (StaffID, Date) VALUES ('$staffID','$date')";
     mysqli_query($con,$sql);
 }
 }
 mysqli_close($con);
EN

回答 2

Stack Overflow用户

发布于 2015-11-11 00:55:05

如果您想检查今天的日期,可以尝试使用CURDATE()函数

代码语言:javascript
复制
$sqlcheck = "SELECT Date FROM StaffAttendacne WHERE StaffID = '$staffID' AND Date = CURDATE() ";
票数 0
EN

Stack Overflow用户

发布于 2015-11-11 01:10:38

可能过帐数据和数据库表的日期格式不一致。您可以使用date_format sql函数。这可能会有所帮助。下面是一个例子。谢谢。

$sqlcheck = "SELECT Date FROM StaffAttendacne WHERE StaffID = '$staffID‘AND DATE_FORMAT(Date,'%Y-%m-%d') = DATE_FORMAT('$date',’%Y-%m-%d‘)’;

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33635275

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档