Estiliza pagina de upload externo - responsiva (novo47)
This commit is contained in:
1 parent
05cd7b9c79
commit
7c439691f2
13 files changed
+1130
-24
No files matched your search
@@ -0,0 +1,74 @@
|
||||
<?php
|
||||
header('Content-Type: application/json');
|
||||
require_once 'config.php';
|
||||
|
||||
try {
|
||||
// Verificar se recebeu os dados necessários
|
||||
if (!isset($_POST['client_id']) || !isset($_FILES['image'])) {
|
||||
throw new Exception("Dados incompletos");
|
||||
}
|
||||
|
||||
$client_id = intval($_POST['client_id']);
|
||||
$doc_type = $_POST['doc_type'];
|
||||
|
||||
// Verificar cliente
|
||||
$stmt = $conn->prepare("SELECT id FROM clients WHERE id = ?");
|
||||
$stmt->bind_param("i", $client_id);
|
||||
$stmt->execute();
|
||||
if (!$stmt->fetch()) {
|
||||
throw new Exception("Cliente não encontrado");
|
||||
}
|
||||
|
||||
// Criar diretório do cliente se não existir
|
||||
$client_dir = "processed/{$client_id}/";
|
||||
if (!file_exists($client_dir)) {
|
||||
mkdir($client_dir, 0777, true);
|
||||
}
|
||||
|
||||
// Gerar nome único para o arquivo
|
||||
$timestamp = time();
|
||||
$filename = sprintf(
|
||||
'%s_%s_%s.jpg',
|
||||
$doc_type,
|
||||
$timestamp,
|
||||
uniqid()
|
||||
);
|
||||
$filepath = $client_dir . $filename;
|
||||
|
||||
// Salvar arquivo
|
||||
if (!move_uploaded_file($_FILES['image']['tmp_name'], $filepath)) {
|
||||
throw new Exception("Erro ao salvar arquivo");
|
||||
}
|
||||
|
||||
// Registrar no banco de dados
|
||||
$stmt = $conn->prepare(
|
||||
"INSERT INTO documentos (client_id, tipo, arquivo, data_upload)
|
||||
VALUES (?, ?, ?, NOW())"
|
||||
);
|
||||
$stmt->bind_param("iss", $client_id, $doc_type, $filepath);
|
||||
|
||||
if (!$stmt->execute()) {
|
||||
unlink($filepath); // Remove arquivo se falhar registro no banco
|
||||
throw new Exception("Erro ao registrar documento: " . $stmt->error);
|
||||
}
|
||||
|
||||
// Log de sucesso
|
||||
error_log("Documento salvo: " . $filepath);
|
||||
|
||||
// Retornar sucesso
|
||||
echo json_encode([
|
||||
'success' => true,
|
||||
'message' => 'Documento salvo com sucesso',
|
||||
'file' => $filepath,
|
||||
'id' => $conn->insert_id
|
||||
]);
|
||||
|
||||
} catch (Exception $e) {
|
||||
error_log("Erro ao salvar documento: " . $e->getMessage());
|
||||
http_response_code(400);
|
||||
echo json_encode([
|
||||
'success' => false,
|
||||
'message' => $e->getMessage()
|
||||
]);
|
||||
}
|
||||
?>
|
||||
Reference in new issue
Block a user