2012-11-06 105 views
0

有人可以告訴我如何在提交此頁面時自動添加日期嗎?數據庫ID是「table1」,實際ID是「日期」。自動插入日期

我的代碼:

<?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;">&nbsp;</p> 
</body> 
+0

您使用了哪個數據庫? –

+0

Mysql,字段類型和ID是「日期」 – user1801996

回答

0

如果你無論如何更新表,你可以做使用NOW()簡單的東西這方面的一個例子是:

UPDATE table1 SET date=NOW() 

確保您的字段dateDATETIME,如果您轉到此路線。編輯條目時,您還可以使用TIMESTAMP來更新字段。要創建此,只需要創建一個列和數據類型設置爲TIMESTAMP:

CREATE TABLE test (
    last_edited TIMESTAMP 0 ON UPDATE CURRENT_TIMESTAMP 
); 

這將創建一個表(測試)和一列(last_edited)和默認值設置爲0。無論何時以任何方式編輯此記錄,last_edited列都將隨時間和日期更新。

退房此鏈接多一點信息:http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html

+0

解析錯誤:語法錯誤,意外的T_STRING。你能給我一個關於如何把更新代碼放入的想法嗎? – user1801996

+0

它看起來不像你正在使用的'INSERT'語句有'日期'列。一旦創建'日期'列(鍵入'DATETIME'),就可以像插入其他數據一樣插入NOW()。你可以使用INSERT INTO table1('carriername','fromzip','tozip',...,'date')VALUES('$ carriername','$ fromzip','$ tozip',.. 。,NOW())'(代表你輸入表格的所有其他數據) – burmat

+0

工作感謝! – user1801996

0

我沒有看到你插入的列date參考表1成。如果要插入當前日期,請將插入值設置爲NOW()。

+0

你可以給我一個例子使用我的插入? – user1801996

+0

$ insert =「INSERT INTO table1('carriername','fromzip','tozip','typeofequipment','weight','length','paymentamount','contactperson','loadtype','date')VALUES ('$ carriername','$ fromzip','$ tozip','$ typeofequipment','$ weight','$ length','$ paymentamount','$ contactperson','$ loadtype','now() 「);「; 是否這樣? – user1801996

+0

'insert into table1(...,now());' – thaspius

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");

0

設置您的日期列DATETIME在phpMyAdmin,並設置它的默認值「當前時間戳」,這樣做,每當行插入日期越來越當前時間值並自動保存在行中,不需要以這種方式爲每個插入日期列生成值...

+0

你離我最近。但是當我嘗試保存時,我會得到這個。 – user1801996

+0

SQL查詢: ALTER TABLE'Carriers' CHANGE''date' DATETIME date' NOT NULL DEFAULT CURRENT_TIMESTAMP MySQL表示: #1067 - 對 '日期' – user1801996

+0

做出的列時間戳和它的工作 – user1801996