function get_category_id($con, $image, $category)
{
    // Function to get the category id corresponding to the category name
    //$sql = "SELECT GroupID from WordGroup WHERE GroupName = '" . $category . "'";
    $sql = "SELECT GroupID from WordGroup WHERE GroupName=:groupname";
    // Run query and fetch category id if category exists
    $query = $con->prepare($sql);
    $query->execute(array(":groupname" => $category));
    $results = $query->fetchAll();
    if ($results != False && $query->rowCount() > 0) {
        $category_id = $results[0][0];
        return $category_id;
    } else {
        create_new_category($con, $image, $category);
        $category_id = get_category_id($con, $image, $category);
        return $category_id;
    }
}
function create_category_from_json_array($data)
{
    $userName = (int) $_SESSION['userID'];
    $category_name = $data['category_name'];
    $number_of_exams = (int) $data['number_of_exams'];
    $catID = create_new_category($category_name, $number_of_exams);
    for ($i = 0; $i < $number_of_exams; $i++) {
        $examID = create_new_exam($data['exams'][$i]['exam_name'], $catID, $data['exams'][$i]['number_of_questions']);
        for ($y = 0; $y < $data['exams'][$i]['number_of_questions']; $y++) {
            $questionID = create_question($examID, $data['exams'][$i]['questions'][$y]['question_name'], $data['exams'][$i]['questions'][$y]['question_type'], $increment_questions = false);
            switch ($data['exams'][$i]['questions'][$y]['question_type']) {
                case 'single_answers':
                    create_single_answer($data['exams'][$i]['questions'][$y]['answers'], $questionID);
                    break;
                case 'mult_answers':
                    create_multiple_choice_answers_from_json($questionID, $data['exams'][$i]['questions'][$y]['answers']);
                    break;
                case 'keyword_answers':
                    create_keyword_answers($questionID, $data['exams'][$i]['questions'][$y]['answers']);
                    break;
            }
        }
    }
}
<?php

session_start();
require_once $_SERVER['DOCUMENT_ROOT'] . "/exam-simulator/private/functions/sql_functions.php";
require_once $_SERVER['DOCUMENT_ROOT'] . "/exam-simulator/private/functions/session_functions.php";
require_once $_SERVER['DOCUMENT_ROOT'] . "/exam-simulator/private/functions/input.php";
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
    $new_cat_name = fix_string($_POST['new_cat']);
    remove_non_alphanumeric($new_cat_name);
    create_new_category($new_cat_name);
} else {
    go_home();
}