有人可以告诉我如何在提交到此页面时自动添加日期吗? DB id是“table1”,而feild id是“date”。
我的代码:
<?php
if (isset($_POST["submit"]) && $_POST["submit"] == "Submit")
{
for ($count = 1; $count <= 9; $count++)
{
$fields[$count] = "";
if (isset($_POST["field" . $count . ""]))
{
$fields[$count] = trim($_POST["field" . $count . ""]);
//echo $fields[$count] . "<br />";
}
}
$con = mysql_connect("local", "user", "pass");
mysql_select_db("DB", $con);
$carriername = mysql_real_escape_string($_POST['carriername']);
$fromzip = mysql_real_escape_string($_POST['fromzip']);
$tozip = mysql_real_escape_string($_POST['tozip']);
$typeofequipment = mysql_real_escape_string($_POST['typeofequipment']);
$weight = mysql_real_escape_string($_POST['weight']);
$length = mysql_real_escape_string($_POST['length']);
$paymentamount = mysql_real_escape_string($_POST['paymentamount']);
$contactperson = mysql_real_escape_string($_POST['contactperson']);
$loadtype = mysql_real_escape_string($_POST['loadtype']);
$insert = "INSERT INTO table1 (`carriername` ,`fromzip` ,`tozip` ,`typeofequipment` ,`weight` ,`length` ,`paymentamount` ,`contactperson` ,`loadtype`) VALUES('$carriername' ,'$fromzip' ,'$tozip' ,'$typeofequipment' ,'$weight' ,'$length' ,'$paymentamount' ,'$contactperson' ,'$loadtype');";
mysql_query($insert) or die(mysql_error());
$select = "SELECT `carriername` ,`fromzip` ,`tozip` ,`typeofequipment` ,`weight` ,`length` ,`paymentamount` ,`contactperson` ,`loadtype` FROM `table1` ORDER BY `paymentamount` DESC;";
$result = mysql_query($select) or die(mysql_error());
}
?>
</script>
<style ="text-align: center; margin-left: auto; margin-right: auto;"></style>
</head>
<body>
<div
style="border: 2px solid rgb(0, 0, 0); margin: 16px 20px 20px; width: 400px; background-color: rgb(236, 233, 216); text-align: center; float: left;">
<form action="" method="post";">
<div
style="margin: 8px auto auto; width: 300px; font-family: arial; text-align: left;"><br>
<table style="font-weight: normal; width: 100%; font-size: 12px;"
border="1" bordercolor="#929087" cellpadding="6" cellspacing="0">
<table
style="font-weight: normal; width: 100%; text-align: right; font-size: 12px;"
border="1" bordercolor="#929087" cellpadding="6" cellspacing="0">
<tbody>
<tr>
<td style="width: 10%;">Carrier:</td><td>
<?php
$con = mysql_connect("local", "user", "pass");
mysql_select_db("DB", $con);
$query=("SELECT * FROM table2");
$result=mysql_query($query) or die ("Unable to Make the Query:" . mysql_error() );
echo "<select name=carriername>";
while($row=mysql_fetch_array($result)){
echo "<OPTION VALUE=".$row['carriername'].">".$row['carriername']."</OPTION>";
}
echo "</select>";
?>
</td>
</tr>
<tr>
<td style="width: 35%;">Pick Zip:</td><td> <input id="fromzip" name="fromzip" maxlength="50"
style="width: 100%;" type="text">
</tr>
<tr>
<td style="width: 35%;">Drop Zip:</td><td> <input id="tozip" name="tozip" maxlength="50"
style="width: 100%;" type="text">
</tr>
<tr>
<td style="width: 35%;">Load Type:</td><td> <input id="loadtype" name="loadtype" maxlength="50"
style="width: 100%;" type="text">
</tr>
<tr>
<td style="width: 35%;">Rate:</td><td> <input id="paymentamount" name="paymentamount" maxlength="50"
style="width: 100%;" type="text">
</tr>
</tbody>
</table>
<p style="text-align: center;"><input name="submit" value="Submit"
class="submit" type="submit"></p>
</div>
</form>
</div>
<p style="margin-bottom: -20px;"> </p>
</body>
答案 0 :(得分:2)
您可以在查询中使用CURRENT_TIMESTAMP功能,如下所示:
INSERT INTO table1 (carriername, ..., CURRENT_TIMESTAMP)
如果您的字段属于TIMESTAMP
如果类型为DATE
,则可以使用NOW()
。
您还可以将表配置为具有字段的默认值(CURRENT_TIMESTAMP
,并在插入时将其留空:
CREATE TABLE `database`.`test` (
`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`created` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP
);
如果您想在PHP中执行此操作,请插入/格式化您的日期:
date("m/d/y g:i A");
答案 1 :(得分:0)
我在插入table1时没有看到对date
列的引用。如果要插入当前日期,请将插入值设置为NOW()。
答案 2 :(得分:0)
如果您要更新表格,可以使用NOW()
这样简单的操作。这方面的一个例子是:
UPDATE table1 SET date=NOW()
如果您选择此路线,请确保您的字段date
的类型为DATETIME
。每当编辑条目时,您还可以使用TIMESTAMP
更新字段。要创建它,只需创建一个列并将数据类型设置为TIMESTAMP:
CREATE TABLE test (
last_edited TIMESTAMP 0 ON UPDATE CURRENT_TIMESTAMP
);
这将创建一个表(test)和一列(last_edited),并将默认值设置为0
。无论何时以任何方式编辑此记录,last_edited列都将使用时间和日期进行更新。
请查看此链接以获取更多信息:http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html
答案 3 :(得分:0)
在phpMyAdmin中将日期列设置为DATETIME,并将其默认值设置为'CURRENT TIMESTAMP',这样,每当插入一行时,日期获取当前时间值并自动保存,无需进行以这种方式在每个插入的日期列的值...