'Non identifié — veuillez vous connecter.']); exit; } if ($_SERVER['REQUEST_METHOD'] !== 'POST') { http_response_code(405); echo json_encode(['error' => 'Méthode non autorisée']); exit; } $data = json_decode(file_get_contents('php://input'), true) ?? []; $texteBrut = trim((string) ($data['texteBrut'] ?? '')); $extraction = $data['extraction'] ?? null; $valide = $data['valide'] ?? null; if ($texteBrut === '') { http_response_code(400); echo json_encode(['error' => 'Rien à enregistrer (texte brut vide)']); exit; } if (!$valide) { http_response_code(400); echo json_encode(['error' => 'Rien à enregistrer (champs validés absents)']); exit; } try { $pdo = getDbConnection(); } catch (PDOException $e) { http_response_code(500); echo json_encode(['error' => 'Connexion base de données impossible']); exit; } try { $stmt = $pdo->prepare( 'INSERT INTO ASP_PropositionsContact (PCT_TexteBrut, PCT_Extraction, PCT_Valide, PCT_Utilisateur) VALUES (?, ?, ?, ?)' ); $stmt->execute([ $texteBrut, $extraction !== null ? json_encode($extraction, JSON_UNESCAPED_UNICODE) : null, json_encode($valide, JSON_UNESCAPED_UNICODE), $_SESSION['USR_Code'], ]); } catch (PDOException $e) { http_response_code(500); echo json_encode(['error' => 'Erreur base de données : ' . $e->getMessage() . ' — la table ASP_PropositionsContact existe-t-elle ? (voir en-tête de ce fichier)']); exit; } echo json_encode(['success' => true, 'id' => (int) $pdo->lastInsertId()]);