function getData($fields)
{
    $apiKey = $fields['api'];
    $jotform = new JotForm($apiKey);
    $form = "";
    $output = array();
    $columns = array();
    $includeForm = array_key_exists('includeForm', $fields);
    if ($includeForm) {
        array_push($columns, 'Form Name');
    }
    foreach ($fields as $field => $on) {
        if (strpos($field, '_') === false) {
            continue;
        }
        $question = explode('_', $field);
        if ($question[0] != $form) {
            $submissions = $jotform->getFormSubmissions($question[0]);
            $form = $question[0];
            if ($includeForm) {
                $formInfo = $jotform->getForm($form);
                $formName = $formInfo['title'];
            }
        }
        foreach ($submissions as $key => $submission) {
            $submission_id = $submission['id'];
            if (array_key_exists('answers', $submission)) {
                foreach ($submission['answers'] as $key => $answer) {
                    if (array_key_exists('text', $answer) && array_key_exists('answer', $answer)) {
                        $fieldTitle = $answer['text'];
                        $strippedTitle = preg_replace('/\\s+/', '', $fieldTitle);
                        if ($strippedTitle == $question[2]) {
                            $columnTitle = $fields['groupby'] == 'name' ? $fieldTitle : preg_replace('/control_/', '', $answer['type']);
                            if (!in_array($columnTitle, $columns)) {
                                array_push($columns, $columnTitle);
                            }
                            if (!array_key_exists($submission_id, $output)) {
                                $output[$submission_id] = array();
                                if ($includeForm) {
                                    $output[$submission_id]['Form Name'] = $formName;
                                }
                            }
                            $text = is_array($answer['answer']) ? implode(' - ', $answer['answer']) : $answer['answer'];
                            if (array_key_exists($columnTitle, $output[$submission_id])) {
                                $output[$submission_id][$columnTitle] = $output[$submission_id][$columnTitle] . ' - ' . $text;
                            } else {
                                $output[$submission_id][$columnTitle] = $text;
                            }
                        }
                    }
                }
            }
        }
    }
    createFile($output, $columns, $apiKey);
}
Example #2
0
function jotform_mysqldump($apiKey, $formID)
{
    // get a list of questions
    $jotformAPI = new JotForm($apiKey);
    $form = $jotformAPI->getForm($formID);
    $formTitle = $form['title'];
    $questions = $jotformAPI->getFormQuestions($formID);
    $new_questions = array();
    $ignored_fields = array("control_head", "control_button", "control_pagebreak", "control_collapse", "control_text");
    $i = 0;
    foreach ($questions as $q) {
        if (!in_array($q['type'], $ignored_fields)) {
            array_push($new_questions, $q);
            $ordered_questions[$q['order']] = $i++;
        }
    }
    $questions = $new_questions;
    //print "<pre>";
    //print_r( $questions );
    // prepare CREATE TABLE code
    $table = mysql_fieldname_format($formTitle);
    $sql = "CREATE TABLE IF NOT EXISTS `" . $table . "` (\n";
    $fields_sql = array();
    $fields = array();
    foreach ($ordered_questions as $order => $i) {
        $mysql_type = "varchar(255)";
        if ($questions[$i]['type'] == "control_textarea") {
            $mysql_type = "text";
        }
        array_push($fields, $questions[$i]['text']);
        array_push($fields_sql, "\t`" . mysql_fieldname_format($questions[$i]['text']) . "` " . $mysql_type);
    }
    $sql .= implode(",\n", $fields_sql);
    $sql .= "\n);\n\n";
    //print $sql;
    // get submission data
    $submissions = $jotformAPI->getFormSubmissions($formID);
    //print_r($submissions);
    foreach ($submissions as $s) {
        $insert = "INSERT IGNORE INTO  `{$table}` (\n";
        $keys = array();
        $values = array();
        foreach ($fields as $k) {
            //print "<li>$k".$s['fields'][$k];
            array_push($keys, "`" . mysql_fieldname_format($k) . "`");
            array_push($values, "'" . mysql_real_escape_string($s['fields'][$k]) . "'");
        }
        $insert .= implode(", ", $keys);
        $insert .= "\n) VALUES (\n";
        $insert .= implode(", ", $values);
        $insert .= "\n);\n\n";
        $sql .= $insert;
    }
    return $sql;
}
function getSummary($formID, $questionID)
{
    $jotform = new JotForm("yourAPIKey");
    $submissions = $jotform->getFormSubmissions($formID);
    foreach ($submissions as $id => $submissionDetails) {
        $answer = isset($submissionDetails["answers"][$questionID]["answer"]) && $submissionDetails["answers"][$questionID]["answer"] != "" ? $submissionDetails["answers"][$questionID]["answer"] : "Not Answered";
        $answersArray[$answer] = isset($answersArray[$answer]) ? $answersArray[$answer] + 1 : 1;
    }
    $result = "";
    arsort($answersArray);
    foreach ($answersArray as $key => $value) {
        $percentages[$key] = round($answersArray[$key] * 100 / count($submissions), 1);
        $result .= "%{$percentages[$key]} {$key}, ";
    }
    return sprintf("In %d submissions, there are %d different answers for question #%d : %s \n ", count($submissions), count($answersArray), $questionID, trim($result, ' ,'));
}
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>View Enquiries</title>
<link href="admincss.css" rel="stylesheet" type="text/css">
</head>

<body>

<div align="center">

<div><a href="/index.php">HOME</a> | <a href="/admin/index.php">ADMIN</a> | <a href="/admin/index.php?action=log_out">LOGOUT</a></div>
<p></p>
    <?php 
try {
    include "JotForm.php";
    $jotformAPI = new JotForm("c9e8ae4b227d12360d9611e5eebfb1de");
    $submissions = $jotformAPI->getFormSubmissions(51760713131951);
    if (sizeof($submissions) < 1) {
        echo "No Enquiries Found";
    } else {
        ?>
                
                <table border=1 cellpadding="5"><tr><th>Enquiry Date</th><th>Enquirer</th><th>Email</th><th>Phone</th><th>Interest</th><th>Message</th>
	            <?php 
        foreach ($submissions as $submission) {
            $submissionID = $submission["id"];
            $submissionDate = date_create($submission["created_at"]);
            $submissionDatePrint = date_format($submissionDate, "d M Y");
            $answers = $submission["answers"];
            $submitterName = $answers[4]["answer"]["first"] . " " . $answers[4]["answer"]["last"];
            $submitterEmail = $answers[5]["answer"];
            $submitterPhone = $answers[6]["answer"];
Example #5
0
function getSubmissions($apiKey, $formID)
{
    $jotformAPI = new JotForm($apiKey);
    $submissions = $jotformAPI->getFormSubmissions($formID, 0, 10000);
    return $submissions;
}