我有一个“小”问题,因为我不知道处理ajax jquery数据库请求的最佳方法是什么?
到目前为止,我已经这样做了: 对于永远(单个)数据库请求,我创建了一个新的.php文件,如:
newbill.php
newcosumer.php
listallbills.php
updatecostumer.php
..依此类推并通过以下方式提取数据:
$.ajax({
type: "POST",
url: "ajax/newbill.php",
data: "..."
success: function(msg){
...
}
});
..我不喜欢的是所有.php文件只有一个!数据库请求!? 必须有更好的方法来解决这个问题吗?
答案 0 :(得分:2)
我会这样做。
为每个实体创建一个php文件(例如:consumerajax.php,billajax.php等等),然后为每个数据库查询分配单独的函数。当从javascript调用时,传递一个querystring变量来确定哪个函数在ajax服务器页面中执行
Ex:在consumerajax.php
<?php
$mode= $_GET["mode"] ;
if($mode=="getconsumerdet")
{
$consumerId=$_GET["cid"];
GetConsumerDetails($consumerId)
}
else if($mode=="updateconsumer")
{
$consumerId=$_GET["cid"];
$name=$_GET["name"];
UpdateConsumerInfo($consumerId, $name)
}
function GetConsumerDetails($consumerId)
{
// execute query the table here and return the result from here
echo"Have the data and return"
}
function UpdateConsumerInfo($consumerId,$name)
{
//execute query to update
echo "updated";
}
?>
并来自您的脚本调用,如
$.ajax({ type: "POST", url: "ajax/consumerajax.php?mode=getconsumerdet&cid=34", data: "..." success: function(msg){ });
或
$.ajax({ type: "POST", url: "ajax/consumerajax.php?mode=updateconsumer&cid=34&name=shyju", data: "..." success: function(msg){ });
答案 1 :(得分:1)
你可以创建一个名为ie的文件。 dbrequest.php
并传递参数,然后从php读取并向数据库发出适当的请求..
但这取决于你在网页内做了什么,以及是否很容易在一个文件中维护..