2012-01-14 138 views
0

嗯,我有一个任务将“报价”存储到数据库中(已完成此操作)并将它们显示出来供&排序以获得最新报价。我假设要得到“最近的”,我需要存储提交报价的日期/时间。在数据库中存储日期

我是新来的PHP和试图学习,所以我不知道如何做到这一点。

这里是用于将引号添加到数据库的PHP。表中有两列称为“引号”和“ID”。我猜我还需要为日期制作一个专栏?

require('includes/connect.php'); 


    $quote = $_POST['quote']; 
    $quotes = mysql_real_escape_string($quote); 


    mysql_query("INSERT INTO entries (quote) VALUES('$quotes')") 
    or die(mysql_error()); 

我怎样才能插入日期?

回答

0

是的,你需要第三个栏让说most_recent(定义为日期或日期时间):如果你想插入current日期

例如

mysql_query("INSERT INTO entries (quote, most_recent) VALUES('$quotes', now())") 
+0

新列的结构是什么? – nowayyy 2012-01-14 01:00:35

1

使用CURDATE()

$query_auto = "INSERT INTO tablename (col_name, col_date) VALUE ('DATE: Auto CURDATE()', CURDATE())"; 

但如果你手动手动则应该使用这个:

$query_manual = "INSERT INTO tablename (col_name, col_date) VALUES ('DATE: Manual Date', '2008-07-04')"; 

UPDATE

CREATE TABLE auto_ins 
    (
     `MySQL_Function` VARCHAR(30), 
     `DateTime` DATETIME, 
     `Date` DATE, 
     `Time` TIME, 
     `Year` YEAR, 
     `TimeStamp` TIMESTAMP 
    ); 

INSERT INTO auto_ins 
    (`MySQL_Function`, `DateTime`, `Date`, `Time`, `Year`, `TimeStamp`) 
VALUES 
    (“CURDATE()”, CURDATE(), CURDATE(), CURDATE(), CURDATE(), CURDATE()); 

SCREEN SHOT

+0

所以我不需要一个新的专栏? – nowayyy 2012-01-14 01:01:05

+0

不,你应该有一个日期列。 – 2012-01-14 01:02:57

+0

当然'NOW()'在这里显示的时间分量也更加相关。 – cmbuckley 2012-01-14 01:56:25

0

你将需要至少夫妇谁提交的报价及报价表本身的表。

create table users(id int primary key not null, username varchar(32),pwd varchar(32)); 

您可以添加任何信息到该表,如电子邮件地址等。

create table quotes (
id int not null , 
user_id integer, 
quote_text varchar(256), 
inserted_date timestamp default current_timestamp ,primary key (id)); 
alter table quotes add constraint fk_users foreign key(user_id) references users(id); 

否则随时修改它们。 这不是关于PHP在这里关于一般的DB设计。

0

使用此代码:

require('includes/connect.php'); 


$quote = $_POST['quote']; 
$quotes = now().' - '.mysql_real_escape_string($quote); 
// THIS WILL ADD THE DATE AND TIME TO YOUR $quotes STRING. 


mysql_query("INSERT INTO entries (quote) VALUES('$quotes')") 
or die(mysql_error()); 
1

如果你只想要最新的报价,你可以简单的排序结果通过id DESC设定假设ID是自动递增的值。

+0

DUH!谢谢! – nowayyy 2012-01-14 02:01:53

相关问题