首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >mySQL/PHP --如何将创建日期发布到新的表条目?

mySQL/PHP --如何将创建日期发布到新的表条目?
EN

Stack Overflow用户
提问于 2018-04-07 03:21:58
回答 2查看 400关注 0票数 0

作为大学作业的一部分,我正在开发一个类似论坛的网站,使用PHP、Bootstrap和mySQL

我设法使一些基本的工作-创建新的用户帐户以及新的线程供公众观看。

可悲的是,有很多事情我不知道如何去做--其中一件事是,当我创建一个新的用户帐户或论坛线程时,恰好记录了当前的日期。

例如,我希望_users_table下的每条新记录(将所有现有用户帐户的数据存储在mySQL中)都有自己的创建日期,确切的创建日期。

,这是我迄今为止尝试过的.

下面的代码是我的PHP格式的用户注册文件的顶部。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<?php require_once('../private/initialize.php'); ?>

<?php
if(is_post_request()) {
    $user = [];
    $user['username'] = $_POST['username'] ?? '';
    $user['email'] = $_POST['email'] ?? '';
    $user['password'] = $_POST['password'] ?? '';
    $user['confirm_password'] = $_POST['confirm_password'] ?? '';
    $mysqldate = $_POST['joined_date'] ?? '';


    $result = insert_user($user); //Keep this function in mind, readers
    if($result === true) {
        $new_id = mysqli_insert_id($db);
        log_in_user($user);
        $_SESSION['message'] = 'You successfully created a new account.';
        redirect_to(url_for('/index.php'));
    } else {
        $errors = $result;
    }
} else {
        $user = [];
        $user['username'] = '';
        $user['email'] = '';
        $user['password'] = '';
        $user['confirm_password'] = '';
        $user['joined_dated'] = '';
    }
?>

为了将所有内容放到上下文中,I的网站被构造成两个文件夹:“public”(包含普通公众要访问的文件)和“”(包含在整个站点中使用的通用函数,并包含函数)。

initialize.php行引用的require_once文件包含大量的require_once行,这些行调用了我提到的其余文件。没有它,网站就无法正常运行。

注意:我已经编辑了代码,只显示了与这篇文章相关的信息。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<?php

  session_start(); // turn on sessions 

  require_once('query_functions.php');

  $db = db_connect();
  $errors = [];

?>

query_functions.php

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
function insert_user($user) {
        global $db;

        $errors = validate_user($user);
        if (!empty($errors)) {
            return $errors;
        }

        $mysqldate = date( 'Y-m-d H:i:s', $phpdate );
        $phpdate = strtotime( $mysqldate );

        $hashed_password = password_hash($user['password'], PASSWORD_BCRYPT);

        $sql = "INSERT INTO users ";
        $sql .= "(username, email, hashed_password, joined_date) ";
        $sql .= "VALUES (";
        $sql .= "'" . db_escape($db, $user['username']) . "',";
        $sql .= "'" . db_escape($db, $user['email']) . "',";
        $sql .= "'" . db_escape($db, $hashed_password) . "',";
        $sql .= "'" . db_escape($db, $mysqldate) . "'";
        $sql .= ")";
        $result = mysqli_query($db, $sql);

        // For INSERT statements, $result is true/false
        if($result) {
            return true;
        } else {
            // INSERT failed
            echo mysqli_error($db);
            db_disconnect($db);
            exit;
        }
    }

这两个码,$mysqldate = date(‘Y:I:S’,$phpdate );$phpdate = strtotime( $mysqldate );

我读了一篇我找到的文章后试了一试。它在每个新的用户帐户中记录了一个日期,除了那些日期总是显示为"0000-00-00“。

到目前为止,我找到的其他每一篇文章都显示了一个代码解决方案,它不完全遵循我所写的公式(这是我从Lynda.com -https://www.lynda.com/PHP-tutorials/PHP-MySQL-Essential-Training-1-Basics/587674-2.html课程中学到的)。

所以我希望我已经解释了所有关于我的问题的事情。那我错过了什么?我做错了什么?我如何最终使该网站记录当前日期,以放入每个新的用户帐户?

谢谢。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-04-07 03:27:44

query_function.php,中,$phpdate是未定义的:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$mysqldate = date( 'Y-m-d H:i:s', $phpdate );

这一行未使用:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$phpdate = strtotime( $mysqldate );

用这一行代替这两行:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$mysqldate = date('Y-m-d H:i:s');
票数 0
EN

Stack Overflow用户

发布于 2018-04-07 04:09:17

让MySQL为您完成所有工作并使用NOW() SQL函数更简单。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$sql = "INSERT INTO users ";
$sql .= "(username, email, hashed_password, joined_date) ";
$sql .= "VALUES (";
$sql .= "'" . db_escape($db, $user['username']) . "',";
$sql .= "'" . db_escape($db, $user['email']) . "',";
$sql .= "'" . db_escape($db, $hashed_password) . "',";
$sql .= "NOW()";
$sql .= ")";
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49706851

复制
相关文章
批量查看mysql表条目数
适用:centos6+ 语言:中文 注意:适用于5.7版本,其它版本要更改变量hang为2
陈不成i
2021/06/16
6.5K0
Power BI: 日期表的创建
文章背景: 最近在学习Power BI进行报表的制作,其中有一项内容是日期表。日期表是使用时间智能函数的基础,Power BI可以为具有日期或日期/时间类型的字段自动创建一个隐藏的日期表(见下图),但不能很好地满足要求,一般需要手动创建日期表。
Exploring
2022/12/18
7.7K0
Power BI: 日期表的创建
使用PHP脚本创建MySQL 数据表
通过 mysql> 命令窗口可以很简单的创建MySQL数据表。你可以使用 SQL 语句 CREATE TABLE 来创建数据表。
用户9239730
2021/11/29
3K0
MySQL创建日期序列
场景: grafana看板,需要有个下拉菜单,选择相关的日期,自动计算出对应日期的统计数据。
保持热爱奔赴山海
2022/05/09
4.4K0
MySQL创建日期序列
php案例:创建日期时间目录
贵哥的编程之路
2023/10/16
1850
php案例:创建日期时间目录
如何在MySQL数据库中创建新表
[IF NOT EXISTS]主要是用于判定新建的表是否存在 engine需要指定存储引擎。可以使用任何存储引擎,如:InnoDB,MyISAM,HEAP,EXAMPLE,CSV,ARCHIVE,MERGE, FEDERATED或NDBCLUSTER。如果不明确声明存储引擎,MySQL将默认使用InnoDB。 column_list较为复杂,为指定表的列表。字段的列用逗号(,)分隔。 column_list的语法如下:
用户7639835
2021/08/26
10K0
Power BI创建日期表的几种方式概览
几乎所有的报表模型都涉及到日期和时间,因此要创建Power BI报表,日期表就必须得有。虽然最新的Power BI版本已经可以自动为每一个时间列创建日期表。
陈学谦
2020/04/14
6.6K0
Power BI创建日期表的几种方式概览
在PowerBI中创建时间表(非日期表)
在powerquery中创建日期表是使用powerbi过程中一个必不可少的内容(当然,你也可以使用DAX来创建):
陈学谦
2020/07/01
4.4K0
在PowerBI中创建时间表(非日期表)
MySQL创建表失败的问题
今天有一个朋友问我一个MySQL的建表问题,问题的现象是创建表失败,根据他的反馈,问题比较奇怪, CREATE TABLE XXX ..此处省略260多个字段 `xxxxIsAllowIn` varchar(4) COLLATE utf8_bin DEFAULT NULL COMMENT 'xx是否准入(是,否)', `xxxxIsAllowIn` varchar(30) COLLATE utf8_bin DEFAULT NULL COMMENT '理财-准入', PRIMARY KEY (
jeanron100
2018/03/22
5K0
mysql5.7 创建新表时提示时间戳非法
# 背景 mysql版本5.7.8,需要创建新表,研发提供的sql文件,执行后报错如下: ERROR 1067 (42000): Invalid default value for 'deleted_at' 就猜测到时因为5.7版本的mysql默认的时间戳不允许输入0000-00-00 00:00:00这种格式,之前碰到过类似问题,需要修改配置 查看了研发提供的sql文件,果真如此: ‘create_at` TIMESTAMP NOT NULL DEFAULT '0000-00-00 00:00:00' C
千往
2018/03/28
1.5K0
sqlserver怎么用语句创建表_mysql查询表的创建语句
原文地址:http://database.51cto.com/art/201010/231018.htm
全栈程序员站长
2022/11/02
8.7K0
PHP MySQL向数据库表中插入新记录
INSERT INTO table_name (column1,column2,...)
哆哆Excel
2022/10/25
20.5K0
PHP MySQL向数据库表中插入新记录
MySQL基础之写表(创建表)
当然,IDEA也是集成了数据库可视化功能的。除了这些,还有DBeaver、SQLyog等等。
JanYork_简昀
2022/04/21
7.2K0
MySQL基础之写表(创建表)
7.5.1 创建条目列表示例
7.5.1 创建条目列表示例 #include <QApplication> #include <QTabWidget> #include <QLineEdit> #include <QSpinBox> #include <QFormLayout> #include <QListWidget> #include <QLabel> int main(int argc, char *argv[]) { QApplication a(argc, argv); /*创建QListWidget*/ QLis
DS小龙哥
2022/01/12
6600
7.5.1 创建条目列表示例
PHP利用phpexcel导入Excel表到Mysql数据库
最近在搞PHP项目,后台很多课题信息需要导入数据库,考虑过一条条导入,但是这样太费时费力。 所以找了下phpexcel的资料,打算利用这个工具把excel表导入数据库,但是发现很多教程都太久远,拿来
刺_猬
2018/06/21
16.2K1
MySQL 创建数据表
通过 mysql> 命令窗口可以很简单的创建MySQL数据表。你可以使用 SQL 语句 CREATE TABLE 来创建数据表。
用户6884826
2021/07/07
8.2K0
MySQL 创建数据表
创建MySQL数据表需要以下信息: 表名 表字段名 定义每个表字段 语法 以下为创建MySQL数据表的SQL通用语法: CREATE TABLE table_name (column_name column_type); 以下例子中我们将在 test 数据库中创建数据表test: CREATE TABLE IF NOT EXISTS `test`( `test_id` INT UNSIGNED AUTO_INCREMENT, `test_title` VARCHAR(100) NOT NULL,
福贵
2018/04/12
8.9K0
MySQL 创建数据表
MySQL创建数据表
使用mysql二进制方式连接 您可以使用MySQL二进制方式进入到mysql命令提示符下来连接MySQL数据库。
爱学iOS的小麦子
2023/05/09
4.3K0
MySQL创建数据表
使用mysql二进制方式连接 您可以使用MySQL二进制方式进入到mysql命令提示符下来连接MySQL数据库。
iOS程序应用
2023/04/17
15.3K0
mysql创建数据表
使用mysql二进制方式连接 您可以使用MySQL二进制方式进入到mysql命令提示符下来连接MySQL数据库。
iOS Magician
2023/03/22
6.3K0

相似问题

通过PHP多个条目到MySQL表

10

如何将php数组值发布到mysql表中?

10

从多行查询创建单行SQL条目,并将其发布到新表中

32

使用新id创建新表条目

211

Php发布到Mysql中的两个表

51
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文