2016-07-25 7 views
0

ユーザーが日付を入力できるテーブルがあります。正しくデータベースに移動し、以前の入力を置き換えてテーブルに表示します。データベースにすべての入力を投稿し、最後の入力を表示しますが、置き換えません。

ここでは、すべてのユーザーの入力をデータベースに格納し、最後の入力のみを表示します。アップデートと呼ばれるボタンがあります。

私はそれがこの更新ボタンで何かと信じています。あなたは私がこれを解決するのを助けることができると思う。助けてください。ありがとう

if(isset($_POST['update'])){ 
$UpdateQuery = "UPDATE `fiber`.`fiberexcel` SET Quotation11='$_POST[A12]', 
ApprovalJFSRequest13='$_POST[A14]', 
ApprovalJFSReceived15='$_POST[A16]', 
JFSDone17='$_POST[A18]', 
OFNtoSAQ19='$_POST[A20]', 
ApprovalDrawing21='$_POST[A22]', 
TechEvaluation23='$_POST[A24]' , 
AllQuotationsRecieved25='$_POST[A26]' , 
MailConfirmationWorkStart27='$_POST[A28]', 
POReceived28='$_POST[A29]', 
WorkApprovalRequest30='$_POST[A31]', 
WorkApprovalReceived32='$_POST[A33]', 
IBWStarted34='$_POST[A35]', 
IBWCompleted36='$_POST[A37]', 
HandOverContractor38='$_POST[A39]', 
RequestAuthority40='$_POST[A41]', 
EstimateReceivedDialog42='$_POST[A43]', 
SystemPRRequested44='$_POST[A45]', 
SystemPODone46='$_POST[A47]', 
DocumentToFIN48='$_POST[A49]', 
PaymentFin50='$_POST[A51]', 
PaymentContractor52='$_POST[A53]', 
PaymentAuthority54='$_POST[A55]', 
OSPWorkStart56='$_POST[A57]', 
OSPWorkComplete58='$_POST[A59]', 
TestingCompleted60='$_POST[A61]', 
Remarks65='$_POST[Remarks]' 
WHERE `fiberexcel`.`SiteID0`='$_POST[hidden]'"; 

//echo($UpdateQuery); 

mysqli_query($conn, $UpdateQuery); 

}; 
+0

まずステップ、その本当に、直接内部の$ _POST VARSで1つのクエリを実行有害なあなたはコードインジェクションを許可します。それをフィルタリングしてみてください。 – Grommy

+0

更新または挿入しますか? – Avishake

+0

データベースにユーザー入力を挿入したい。しかし、最後に追加された入力ユーザーのみを表示します。 – Sugs

答えて

0

まず、UPDATEクエリをINSERTクエリに変更する必要があります。そのプライマリキーをautoincrementにする必要があります。その後あなたは、単に

ORDER BY DATE_TO_ORDER LIMIT 1,1; 

を行うことができ、これはあなたが実際にデータベースに最新のインサートであるだけ第一のレコードを与えるだろう。

コードがSQLインジェクション可能になったため、クエリで直接$ _POSTを使用しないでください。各投稿の新しい変数を作成し、クエリに挿入します。

PDO prepared statementsを使用することをお勧めします。

更新クエリ:

UPDATE table_name 
SET column1=value1,column2=value2,... 
WHERE some_column=some_value; 

INSERTクエリ: 'を挿入する変更UPDATE' で

INSERT INTO table_name (column1,column2,column3,...) 
VALUES (value1,value2,value3,...); 
+0

ありがとうAleksandar。 $ {POST [A12] '$ {POST [A12]')これは正しいのでしょうか?それでも、({_ POST {[update '])データベース – Sugs

+0

@Sugs残念なことに...私の答えを更新させてください。 –

関連する問題