import xls update
This commit is contained in:
@@ -0,0 +1,48 @@
|
||||
<?php
|
||||
require_once(__DIR__ . '/class/db-functions.php');
|
||||
|
||||
header('Content-Type: application/json');
|
||||
|
||||
if (!isset($_POST['template_id']) || !is_numeric($_POST['template_id'])) {
|
||||
echo json_encode(["success" => false, "message" => "Invalid template ID"]);
|
||||
exit;
|
||||
}
|
||||
|
||||
$template_id = intval($_POST['template_id']);
|
||||
|
||||
if (!isset($_FILES['xls_file']) || $_FILES['xls_file']['error'] !== UPLOAD_ERR_OK) {
|
||||
echo json_encode(["success" => false, "message" => "File upload error"]);
|
||||
exit;
|
||||
}
|
||||
|
||||
$file = $_FILES['xls_file'];
|
||||
$originalFilename = pathinfo($file['name'], PATHINFO_FILENAME);
|
||||
$extension = pathinfo($file['name'], PATHINFO_EXTENSION);
|
||||
|
||||
// Crea il nuovo nome del file: {idtemplate}-{timestamp}-{nomeoriginale}.ext
|
||||
$newFilename = $template_id . "-" . time() . "-" . preg_replace("/[^a-zA-Z0-9_-]/", "", $originalFilename) . "." . $extension;
|
||||
$uploadDir = __DIR__ . '/xlstemplates/';
|
||||
$uploadPath = $uploadDir . $newFilename;
|
||||
|
||||
// Assicura che la cartella esista
|
||||
if (!is_dir($uploadDir)) {
|
||||
mkdir($uploadDir, 0777, true);
|
||||
}
|
||||
|
||||
// Salva il file
|
||||
if (!move_uploaded_file($file['tmp_name'], $uploadPath)) {
|
||||
echo json_encode(["success" => false, "message" => "Failed to save file"]);
|
||||
exit;
|
||||
}
|
||||
|
||||
// Aggiorna il database con il nome del file
|
||||
try {
|
||||
$db = DBHandlerSelect::getInstance();
|
||||
$pdo = $db->getConnection();
|
||||
$stmt = $pdo->prepare("UPDATE excel_templates SET sample_xlsx = ? WHERE id = ?");
|
||||
$stmt->execute([$newFilename, $template_id]);
|
||||
|
||||
echo json_encode(["success" => true, "filename" => $newFilename, "filepath" => "xlstemplates/" . $newFilename]);
|
||||
} catch (PDOException $e) {
|
||||
echo json_encode(["success" => false, "message" => "Database error: " . $e->getMessage()]);
|
||||
}
|
||||
Reference in New Issue
Block a user