Created code to extract qualifiers directly from the QUALTRIX system
This commit is contained in:
parent
9aeb6be1a9
commit
6cf83a1a5e
88
get_qualifiers.php
Normal file
88
get_qualifiers.php
Normal file
@ -0,0 +1,88 @@
|
||||
<?php
|
||||
header('Content-Type: application/json');
|
||||
|
||||
if (php_sapi_name() === 'cli') {
|
||||
echo "Running from command line.\n";
|
||||
$surveyId="SV_cwKjMqAqGxImjMG";
|
||||
|
||||
} else {
|
||||
//echo "Running from browser.\n";
|
||||
// Basic input validation and sanitization
|
||||
if (!isset($_POST['surveyId']) || empty($_POST['surveyId'])) {
|
||||
echo json_encode(['error' => 'Missing surveyId parameter']);
|
||||
exit;
|
||||
}
|
||||
|
||||
$input = $_POST['surveyId'] ?? '';
|
||||
|
||||
|
||||
if (preg_match('/^SV_[a-zA-Z0-9]+$/', $input)) {
|
||||
// Input is valid
|
||||
$surveyId = $input;
|
||||
} else {
|
||||
// Invalid format
|
||||
die("Invalid survey ID format.");
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
// Database connection (adjust credentials accordingly)
|
||||
//
|
||||
$config = require 'config.php';
|
||||
$host = $config['db_host'];
|
||||
$db = $config['db_name'];
|
||||
$user = $config['db_user'];
|
||||
$pass = $config['db_pass'];
|
||||
$charset = 'utf8mb4';
|
||||
|
||||
$dsn = "mysql:host=$host;dbname=$db;charset=$charset";
|
||||
$options = [
|
||||
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
|
||||
PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
|
||||
];
|
||||
|
||||
try {
|
||||
$pdo = new PDO($dsn, $user, $pass, $options);
|
||||
|
||||
$sql = "
|
||||
SELECT FilterQuestion, FilterOption, Text
|
||||
FROM Filters
|
||||
WHERE surveyId = :surveyid
|
||||
ORDER BY FilterQuestion, FilterOption
|
||||
";
|
||||
|
||||
//echo $sql;
|
||||
|
||||
$stmt = $pdo->prepare($sql);
|
||||
$stmt->execute(['surveyid' => $surveyId]);
|
||||
$results = $stmt->fetchAll();
|
||||
|
||||
//print_r($results);
|
||||
|
||||
$grouped = [];
|
||||
foreach ($results as $result) {
|
||||
$question = $result['FilterQuestion'];
|
||||
$option = $result['FilterOption'];
|
||||
$text = $result['Text'];
|
||||
$grouped[$question][$option] = $text;
|
||||
}
|
||||
|
||||
echo json_encode($grouped);
|
||||
|
||||
} catch (PDOException $e) {
|
||||
echo json_encode(['error' => 'Database error: ' . $e->getMessage()]);
|
||||
exit;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user