2017-02-20 177 views
0

根據狀態填寫數據的表格/表格。所以表中的行是動態生成的。提交前檢查表格

我想要的是想要提交表單的人填寫了三個字段(STIN/STOUT/REASON)(是下拉菜單的),並且必須從數據庫填寫字段ITEM(不是用戶輸入)。

如果是一行,我認爲它會很容易,但它取決於訂單的狀態,它將顯示多少行,並取決於ITEM項目,如果它有ITEM。

實施例:

行1具有STIN被選擇STOUT的項被選擇的原因是 選擇

行2沒有項目STIN被選擇STOUT原因是 選擇

被選擇

必須檢查沒有項目的第二行或第3行,並且必須檢查所有其他可用行,如果生成xml按鈕被點擊。

<?php 
     while ($row = sqlsrv_fetch_array($result)) { 
      $S1 = $row['Qty_ExchangeStock']; 
      $S2 = $row['Qty_InService']; 
      $S3 = $row['Qty_TotalStock']; 
      $status = '1'; 

      $Stock = $S1 - $S2; 
      if ($Stock < 1) { 
       $status = '2'; 
       $Stock = 0; 
      } 


      echo '<tr>'; 
      echo '<td><input type="text"  name="SONR-'.$counter.'" value="'.$row['No_'].'" size="6" readonly /></td>'; 
      echo '<td><div>'.$row['Brand'].     '</div></td>'; 
      echo '<td><div>'.$row['Model'].     '</div>'; 
      echo '  <input type="hidden" name="SIGC-'.$counter.'" value="'.$row['Service Item Group Code']. '" /></td>'; 
      echo '<td><input type="text"  name="ITEM-'.$counter.'" value="'.$row['Item No_'].'" size="8" readonly /></td>'; 
      echo '<td class="center"><div>'.$Stock.      '</div></td>'; 
      echo '<td class="center"><div>'.$row['Claim'].     '</div></td>'; 
      echo '<td><input type="text" class="small" maxlength="20" placeholder="Serienummer" name="SNR-'.$counter.'" /></td>'; 
      echo '<td><input type="text" class="small" maxlength="10" placeholder="Approval NR" name="APPNR-'.$counter.'" /></td>'; 
      echo '<td><select id="check" name="STIN-'.$counter.'" class="small">'.$ruilin.'</select></td>'; 
      echo '<td><select name="STOUT-'.$counter.'" class="small">'.$ruiluit.'</select></td>'; 
      echo '<td><select name="REASON-'.$counter.'" class="small">'.$dropdown.'</select></td>'; 
      echo '<td><input type="text" maxlength="70" title="Opmerking: maximaal 80 tekens" name="OPM-'.$counter.'" /></td>'; 

      echo "</tr>\r\n"; 
      $counter++; 



     } 
?> 
     </tbody> 
    </table> 
    <input type="submit" value="Generate XML"> 
</form> 
    </div> 
    </div> 
<?php 
} 
?> 
+2

如果你想在表單提交前檢查,你必須在Javascript中完成。表單提交後,PHP將在服務器上運行。 – Barmar

回答

0

您可能想從服務器端驗證開始。原因是人們可以關閉驗證或使用腳本進行調用,並且您需要能夠在服務器上正確驗證邏輯。

在這種情況下,您需要定義一個服務器端API(服務器必須知道哪些數據?),檢查並記錄它。但是,這從設計開始,我認爲你還沒有。

一旦你完成了,你可以在Javascript中添加類似的檢查。這改善了用戶體驗,但它不能替代服務器端檢查。