File: //var/www/selfanalyse/interest-test/test_save.php
<?php
include_once '../wp-config.php';
# test taken msg
include_once '../wp-content/plugins/psychometrics/api/psy_mail_sms_functions.php';
global $wpdb;
$PSY_EXAMS = $wpdb->prefix . PSY_EXAMS;
$PSY_USERS_DETAILS = $wpdb->prefix . PSY_USERS_DETAILS;
$PSY_TEST_GEN_TEST_TAKEN = $wpdb->prefix . PSY_TEST_GEN_TEST_TAKEN;
$PSY_INTEREST_TEST_TAKEN_QUSTION_ANSWER = $wpdb->prefix . PSY_INTEREST_TEST_TAKEN_QUSTION_ANSWER;
# get cuurent user
global $current_user;
$user_id = $current_user->ID;
$type = $_REQUEST['type'];
$time_taken_in_seconds = $_REQUEST['time_taken_in_seconds'];
$jsonDecodeQues = $_REQUEST['param'];
$testID = $jsonDecodeQues[1]['test_taken_id'];
$curDate = date('Y-m-d H:i:s');
$statusArray = array();
$checkTestExist = $wpdb->get_var("SELECT count(*) from $PSY_INTEREST_TEST_TAKEN_QUSTION_ANSWER where test_taken_id='$testID'");
# student name
$user_name = $wpdb->get_var("SELECT first_name FROM $PSY_USERS_DETAILS where user_id='$user_id'");
# get exam name
$examName = $wpdb->get_var("SELECT e.category_name FROM $PSY_TEST_GEN_TEST_TAKEN as t INNER JOIN $PSY_EXAMS as e on e.exam_category_id=t.exam_category_id WHERE t.test_taken_id='$testID'");
if($checkTestExist>0){
foreach($jsonDecodeQues as $quesAr){
$question_id = $quesAr['question_id'];
$test_taken_id = $quesAr['test_taken_id'];
$answer = $quesAr['answer'];
$updateTest = $wpdb->query("UPDATE $PSY_TEST_GEN_TEST_TAKEN set status='Y', finish_date='$curDate' WHERE test_taken_id='$testID'");
$updateTestQuestion = $wpdb->query("UPDATE $PSY_INTEREST_TEST_TAKEN_QUSTION_ANSWER set answer='$answer' where test_taken_id='$test_taken_id' and test_question_id='$question_id'");
}
# send msg on test completion
$examNamenew = str_replace('Test','',$examName);
sendTestakenSms('9873224446', $user_name, $examNamenew);
$statusArray[] = array('type_test'=>$type, 'status' =>'success', 'test_taken_id' => $testID);
}
else{
$statusArray[] = array('type_test'=>$type, 'status' =>'fail', 'test_taken_id' => $testID);
}
echo json_encode($statusArray);