我目前正在做一个客户必须做调查表的表格,我将有一个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);
答案 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安全。