2013-11-14 42 views
0

根据用户输入编译和构建动态SQL语句的最佳方式是什么?基于用户输入动态生成SQL语句

我看到它的方式是一堆if语句,通过使用.length> 0方法检查每个字段和每个字段都包含任何数据。

我不认为这是实现这一目标的最有效方式。还有另一种这种疯狂的方法吗?

<!DOCTYPE html> 

<html> 

<head> 

<script type="text/javascript"> 
function test() { 

var sql = "SELECT * FROM tbl_imts WHERE" 

var date1 = document.getElementById('date1').value 
var action = document.getElementById('action').value 
var date2 = document.getElementById('date2').value 
var reqtype = document.getElementById('reqtype').value 
var status = document.getElementById('status').value 
var assignto = document.getElementById('assignto').value 


} 
</script> 
</head> 
<body> 
<table border="1" cellspacing="1" width="100" id="table1"> 
    <tr> 
     <td>Date Received</td> 
     <td>Action Required</td> 
     <td>Due Date</td> 
    </tr> 
    <tr> 
     <td><input type="text" id="date1"/></td> 
     <td><input type="text" id="action"/></td> 
     <td><input type="text" id="date2"/></td> 
    </tr> 
    <tr> 
     <td>Request Type</td> 
     <td>Status</td> 
     <td>Assigned to</td> 
    </tr> 
    <tr> 
     <td><input type="text" id="reqtype"/></td> 
     <td><input type="text" id="status"/></td> 
     <td><input type="text" id="assignto"/></td> 
    </tr> 
</table> 
<br> 
<input type="button" value="test it" onclick="test()"/> 
</body> 
</html> 
+2

对于一些明显的安全原因,**从来不写任何SQL查询在你的JavaScript **。任何人都可以修改JavaScript,因为它是在客户端执行的。有人可以修改您的查询以获取...用户列表及其密码,例如。 – OlivierH

+0

为此目的,它将是一个简单的HTA应用程序。这里的员工仅限于他们所知道的。我们假设它是安全的。 –

+0

你在这个应用程序中使用PHP吗? – OlivierH

回答