有一个Ajax Save按钮并保存在数据库中

时间:2013-06-12 01:26:33

标签: php jquery ajax database

我目前正在做一个客户必须做调查表的表格,我将有一个AJAX" Save"当客户没有设法完成表单本身时,允许我将数据保存到数据库中的按钮,然后当客户再次登录时,他们中途执行的表单将再次弹出并要求他们继续完成调查表单。

AJAX / javascript / jQuery可以在其中使用php代码(因为插入查询)吗?

使用AJAX并不是很确定,所以感谢您的帮助!

这适用于" Save"按钮。

<input type="button" onClick="save();" value="Save">

这是插入查询,它将被插入数据库中。

    <?php
        include("dbFunctions.php");


        $idQuery = "SELECT id,question,input FROM db_ExtApp1.scFormLayout WHERE surveyID ='$lastID'";
$idResult = sqlsrv_query($conn, $idQuery);

while ($row = sqlsrv_fetch_array($idResult)) {
    $fcID = $row['id'];
    $question = $row['question'];
    $surveyTitle = $_SESSION['surveyTitle'];
    $input = $row['input'];

    if (isset($_POST['qns' . $fcID])) {
    $answer = implode(",", $_POST['qns' . $fcID]);
    $newAns = str_replace($singleQuote,$changeQuote,$answer);
    } else {
        $newAns = '';
    }
    if (isset($_POST['others'.$fcID])) {
    $others = $_POST['others' . $fcID];
    $newOthers = str_replace($singleQuote,$changeQuote,$others);
    }else {
        $newOthers = 'N.A.';
    }

$connectionInfo['ConnectionPooling']=0; // this creates a new connection on the next line...
$newconn = sqlsrv_connect($serverName, $connectionInfo); 
if ($input != 'Normal text line, no input required*') {
    $query = "INSERT INTO db_ExtApp1.scFormResult(surveyID, answer, others, title, question, name)
VALUES ('$lastID','$newAns','$newOthers', '$surveyTitle','$question', '$name')";

    $status = sqlsrv_query($newconn, $query);
} }
    if ($status === false) {
        die(print_r(sqlsrv_errors(), true));
    } 
sqlsrv_close($conn);

1 个答案:

答案 0 :(得分:1)

您可以使用jquery $ .ajax()将数据从客户端发送到PHP。 (例如)

$.ajax({
url : 'path/to/php/page',
data : { id : '1', name : 'name' },
dataType : 'JSON',
type : 'POST',
cache: false,
success : function(succ) {
alert(succ);
},
error : function(err) {
alert(err);
}
});

然后在PHP页面中,使用$ _POST []捕获数据并将其插入数据库。

$id = $_POST['id'];
$name = $_POST['name'];

确保转义值并使其对sql insert安全。