Files
WKVS/www/intern/scripts/einstellungen/ajax-change-value.php
2026-04-12 21:25:44 +02:00

89 lines
2.2 KiB
PHP

<?php
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);
header('Content-Type: application/json');
if (session_status() !== PHP_SESSION_ACTIVE) session_start();
if (empty($_SESSION['access_granted_wk_leitung']) || $_SESSION['access_granted_wk_leitung'] !== true || empty($_SESSION['passcodewk_leitung_id']) || intval($_SESSION['passcodewk_leitung_id']) < 1 ) {
http_response_code(403);
exit;
}
if (!isset($baseDir)) {
$baseDir = $_SERVER['DOCUMENT_ROOT'];
}
$type = 'wkl';
$data = require $baseDir . '/../scripts/db/db-verbindung-script.php';
if ($data['success'] === false){
echo json_encode(['success' => false, 'message' => $data['message']]);
exit;
}
require $baseDir . '/../scripts/db/db-tables.php';
$allowedTypes = [
'wkName',
'displayColourLogo',
'displayTextColourLogo',
'displayColorScoringBg',
'displayColorScoringBgSoft',
'displayColorScoringPanel',
'displayColorScoringPanelSoft',
'displayColorScoringPanelText',
'displayColorScoringPanelTextSoft',
'displayColorScoringPanelTextNoteL',
'displayColorScoringPanelTextNoteR',
'displayIdNoteL',
'displayIdNoteR',
'rechnungenName',
'rechnungenVorname',
'rechnungenStrasse',
'rechnungenHausnummer',
'rechnungenPostleitzahl',
'rechnungenOrt',
'rechnungenIBAN',
'maxLengthMusic',
'linkWebseite',
'rangNote',
'orderBestRang'
];
$type = $_POST['type'] ? trim($_POST['type']) : '';
if (!in_array($type, $allowedTypes)) {
echo json_encode(['success' => false, 'message' => 'Invalid input']);
exit;
}
$value = $_POST['value'] ? trim($_POST['value']) : null;
// ---------- Step 2: Get values from DB ----------
$stmt = $mysqli->prepare("INSERT INTO $tableVar (`name`, `value`) VALUES (?, ?) ON DUPLICATE KEY UPDATE `value` = VALUES(`value`)");
if (!$stmt) {
echo json_encode(['success' => false, 'message' => 'Critical db error']);
exit;
}
$stmt->bind_param("ss", $type, $value);
$success = $stmt->execute();
$stmt->close();
if (!$success) {
echo json_encode(['success' => false, 'message' => 'Insert failed']);
exit;
}
// Return JSON
echo json_encode([
'success' => true
]);
exit;