Php 从表格中选择*,其中fec<;=de服务器的日期和时间(无PC时间)

Php 从表格中选择*,其中fec<;=de服务器的日期和时间(无PC时间),php,mysql,date,Php,Mysql,Date,这是我的第一个问题,希望你能帮助我 我在做一个系统,在表“fec”上有一个名为“fec”的表,手动插入一个日期,格式为“22/05/2014 23:30”。该日期必须手动写入(因此我希望) 我在查询中: SELECT * FROM table WHERE fec < = NOW () 从表中选择*,其中fec

这是我的第一个问题,希望你能帮助我

我在做一个系统,在表“fec”上有一个名为“fec”的表,手动插入一个日期,格式为“22/05/2014 23:30”。该日期必须手动写入(因此我希望)

我在查询中:

SELECT * FROM table WHERE fec < = NOW () 
从表中选择*,其中fec<=现在()
我想要实现的是:在您获得日期之前,查询结果将显示未来日期(节目门票跨度为30分钟)

问题是:查询需要PC机的时间,当日期到达时,显示基于当前PC机时间的查询(我猜这会使
NOW()
)。 因此,它不会同时向所有用户显示,因为这可能会改变信息的时间不同,用户会更早或更晚地看到其他信息,具体取决于时间

我想要实现的是:查询是
<=服务器日期
。由此大家将同时看到帖子。(我确信
NOW()
是基于PC时间的,因为更改PC上的时间可以更改查询中显示的结果,这是我想要避免的)

我希望你能理解,这是复杂的解释,我希望你能帮助我,并感谢你非常提前


致以最诚挚的问候。

您的SQL server和PHP server可能不同,因此NOW()函数返回的时间可能与PHP中的time函数返回的时间不同

你需要比较它们

在MySQL运行中:

SELECT NOW()
在PHP运行中:

echo date('Y-m-d H:i:s');
并确保它们完全相同。如果没有,请要求服务器管理员将它们设置为相同

(我确信NOW()是以PC时间为基础的,因为它改变了计算机上的时间 PC我可以改变查询中显示的结果,这就是我所做的 想要避免)

你所说的“PC时间”是指用户的时钟吗?事实并非如此。mysql
now()
命令将为服务器提供时间,只有您或系统管理员可以更改。对于
now()
所有用户,无论其时区或时钟设置如何,都将获得相同的结果

如果希望
now()
命令以默认时区以外的其他时区给出日期,可以将其设置为:
设置时区='美国/纽约'


(在引号中插入您自己的时区)

如果我更改电脑上的时间,查询结果会被更改为隐藏或显示结果,这是我不理解的,现在应该是()服务器时间,如果我更改电脑上的时间,我不应该在网站上花费任何时间,值得一提的是,我正在本地工作,但我发现这与此无关,因为如果我用PHP打印日期(echo date('Ymd H:I:s');),我返回了服务器时间,比我的PC多5个小时。我不明白。这是正确的,我发现问题是我在本地主机上,如果我在服务器更改时更改PC时间,这在真正的服务器上是不会发生的,因为它是共享的,无法更改时间,很抱歉,但我对这一点不熟悉,我想到更改PC的时间会在服务器上更改,这只是一个思考的问题。如果我更改PC上的时间,查询结果会更改为隐藏或显示结果,这是我不理解的,应该是现在()应该是服务器时间,如果我在我的PC上更改时间,不应该在网站上花费任何东西,值得一提的是我在本地工作,但我发现这与此无关,因为如果我用PHP打印日期(echo date('Ymd H:I:s');我返回了服务器时间,比我的电脑多5个小时。我不明白。它当然连接到PHP/MySQL中设置的时区。您需要设置正确的PHP/MySQL时区,以确保时间与您预期的相同。我可以更改godaddy共享服务器的时间?您可以在PHP中毫无问题地执行此操作。您可以使用日期\默认\时区\设置功能。-有一个描述和可能的时区列表,你可以设置完美,因为它是纠正时,现在一切都很完美,问候。谢谢你的回复。