2017-10-02 8 views
-1

サブテーブルに詳細を挿入するとき、メインテーブルからその量を減らしたいと思います。たとえば、メインテーブルに10個のアイテムがある場合、フォームを介して6個のアイテムを減らします。メインテーブルには、そのアイテムから4個のアイテムが必要です。 私のメインテーブルはメインステーションであり、サブテーブルはです。 これは私のコードです。メインテーブルから数量を減らす

[![<form id="details" action="" method="POST"> 
     <label for="Item">Item</label> 
     <select id="Item" name="Item"> 
      <option value="item one">One</option> 
      <option value="item two">Two</option> 
      <option value="item three">Three</option> 
     </select> 
     <label for="Quantity">Quantity</label> 
     <input type="text" id="Quantity" name="Quantity" placeholder="Enter the Quantity"> 
     <label for="Location">Location</label> 
     <select id="Location" name="Location"> 
      <option value="item one">One</option> 
      <option value="item two">Two</option> 
      <option value="item three">Three</option> 
     </select> 
     <label for="FromDate">From</label> 
     <input <label type="text" id="FromDate" name="FromDate" placeholder="YYYY-MM-DD"> 
     <label for="ToDate">To</label> 
     <input <label type="text" id="ToDate" name="ToDate" placeholder="YYYY-MM-DD"> 

     <center><button name="submit" type="submit" id="submit">Submit</button> 
     <button onclick="win();" name="Back" type="back" id="details-back">Back</button></center> 
    </form> 

<!-- INSERT DATA INTO DATABASE --> 
<?php 

    if(isset($_POST\['submit'\])){ 


    $Item = $_POST\['Item'\]; 
    $Quantity = $_POST\['Quantity'\]; 
    $Location = $_POST\['Location'\]; 
    $FromDate = $_POST\['FromDate'\]; 
    $ToDate = $_POST\['ToDate'\]; 

    //Insert Query of SQL 
    $query = mysql_query("INSERT INTO request(Item,Quantity,Location,FromDate,ToDate) VALUES ('$Item','$Quantity','$Location' ,'$FromDate', '$ToDate')",$connection); 
    } 

?>   
<!-- END INSERT DATA INTO DATABASE  -->] 

enter image description here

+0

あなたの質問は明確ではありません。あなたはそれを分解できますか?あなたの**主力**はどこですか? –

+1

あなたのクエリはMySQLインジェクションに対して脆弱ですが、あなたは非難される関数も使用しています。 [prepared statements](http://php.net/manual/en/mysqli.quickstart.prepared-statements.php)を使用するか、[PDO](http://php.net/manual/en/)を使用してください。 book.pdo.php) – IsThisJavascript

+0

"mainstock"と "request"はデータベーステーブルです – Lisa234

答えて

-1

私が正しく理解していれば、あなたは要求テーブルに挿入した後mainStock表の数量を更新します。

このために、メインテーブルで&の選択クエリを実行することができます。例えば

=>

//選択クエリ

$query = mysql_query("select Quantity from mainstock where Item = '$Item'"),$connection) 

あなたは数量の現在の値を取得したら、あなたは残りの計算することができます。

$remaining = $current - $Quantity; 

//このことができます:)

0

をあなたは手で数量を持っているので、あなたがmainstockを更新することができます更新クエリ

$query = mysql_query("update mainstock SET Qauantity = '$remaning' where Item = '$Item'"),$connection); 

希望を使用してメインテーブルを更新します。

UPDATE `mainstock` SET `quantity`=`quantity` - '.$Quantity.' WHERE `item`="'.$Item.'"' 
関連する問題