我目前正尝试首先使用ajax将我尝试从数据库检索的用户名发布到我的php代码中。然后在调用的成功部分,我试图创建一个函数来从数据库中检索数据,该数据库与我之前发送到页面的用户的名称相匹配,但是没有数据返回到javascript代码。
这是我的ajax调用的函数。
function checkPatientAnswers(event) {
window.open("../src/clinicreview.php", "_self");
var patientname = event.data.patientname;
var dataToSend = 'patientname=' + patientname;
var clinicquestions = getQuestionsForClinic();
var answers = [];
$.ajax({
type: "POST",
url: "../src/getselectedpatient.php",
data: dataToSend,
cache: false,
success: function(result) {
$.ajax({
url: "../src/getselectedpatient.php",
data: "",
dataType: "json",
success: function(row) {
answers = row;
console.log(row);
}
})
}
})
console.log(answers);
for (i in clinicquestions) {
$('#patientanswers').append("<h2>" + clinicquestions[i] + " = " + answers[i]);
}
$('#patientanswers').append("Patient Status = " + answers[answers.length - 1]);
}
这是我的PHP代码:
<?php
session_start();
$con = mysql_connect("devweb2015.cis.strath.ac.uk","uname","mypass") or ('Failed to connect' . mysql_error());
$currentdb = mysql_select_db('yyb11163', $con) or die('Failed to connect' . mysql_error());
$patientname = $_POST['patientname'];
$_SESSION['patient'] = $POST['patientname'];
$data = array();
$query = mysql_query("SELECT question1, question2, question3, question4, patient_status FROM patient_info where real_name = '$patientname'");
$data = mysql_fetch_row($query);
echo json_encode($data);
mysql_close($con);
?>
答案 0 :(得分:1)
<强>的jQuery 强>
player.api('paused', function(paused) {
// paused will be true or false here
});
<强> PHP 强>
var dataToSend = {'patientname':patientname};
$.ajax({
type : "POST",
url : "../src/getselectedpatient.php",
data : dataToSend,
dataType : "json",
cache : false,
success: function(result) {
console.log(result);
}
})
为了记录,我不容忍使用你的<?php
session_start();
$_SESSION['patient'] = $POST['patientname'];
$con = mysql_connect("devweb2015.cis.strath.ac.uk","uname","mypass") or ('Failed to connect' . mysql_error());
$currentdb = mysql_select_db('yyb11163', $con) or die('Failed to connect' . mysql_error());
$query = mysql_query("SELECT question1, question2, question3, question4, patient_status FROM patient_info where real_name = '".$_POST['patientname']."'");
$data = mysql_fetch_row($query);
mysql_close($con);
echo json_encode($data);
?>
恶作剧。在PHP 7中它已被完全删除,并且不要试图告诉我你将使用PHP 5直到你死亡。
其次,您对SQL注入开放了8000%。
我知道你很可能只是英国一所学校的学生,但如果你的老师/教授对你的代码没问题,那么你就不会得到你的钱了。
答案 1 :(得分:0)
您可能忘记在第二次通话中设置data
:
$.ajax({
url : "../src/getselectedpatient.php",
data : result,
或result.id
或其他。