BossBey File Manager
PHP:
8.4.18
OS:
Linux
User:
kids
Root
/
home
/
kids
/
public_html
/
app
/
menu
đ€ Upload
đ New File
đ New Folder
Close
Editing: get_messages.php
<?php // get_messages.php if (session_status() == PHP_SESSION_NONE) { session_start(); } // Adapte o caminho se o seu arquivo de conexĂŁo nĂŁo estiver no diretĂłrio pai require_once('../evento/action/../connection.php'); $database = new Database(); $db = $database->conectar(); $currentUserId = $_SESSION['id'] ?? null; $currentUserNivel = $_SESSION['nivelAcesso'] ?? null; if (!$currentUserId) { echo '<p class="text-danger">VocĂȘ precisa estar logado para ver as mensagens.</p>'; exit; } // Busca todas as mensagens relevantes $sql = "SELECT m.id, u.nome AS remetente_nome, m.assunto, m.mensagem, m.data_envio, ml.id AS read_id FROM mensagens m JOIN usuario u ON m.remetente_id = u.id LEFT JOIN mensagens_lidas ml ON m.id = ml.mensagem_id AND ml.usuario_id = :currentUserId WHERE (m.destinatario_id = :currentUserId2 OR (m.destinatario_id IS NULL AND m.nivel_destino = :currentUserNivel)) ORDER BY m.data_envio DESC"; $stmt = $db->prepare($sql); $stmt->bindValue(':currentUserId', $currentUserId, PDO::PARAM_INT); $stmt->bindValue(':currentUserId2', $currentUserId, PDO::PARAM_INT); $stmt->bindValue(':currentUserNivel', $currentUserNivel, PDO::PARAM_STR); $stmt->execute(); $messages = $stmt->fetchAll(PDO::FETCH_ASSOC); if (count($messages) > 0) { echo '<div class="list-group">'; foreach ($messages as $message) { $is_read = !is_null($message['read_id']); $read_class = $is_read ? '' : 'list-group-item-info'; echo '<a href="#" class="list-group-item ' . $read_class . '" data-message-id="' . $message['id'] . '">'; echo ' <h4 class="list-group-item-heading">' . htmlspecialchars($message['assunto']); if (!$is_read) { echo ' <span class="label label-warning pull-right">Nova</span>'; } echo ' </h4>'; echo ' <p class="list-group-item-text"><strong>De:</strong> ' . htmlspecialchars($message['remetente_nome']) . '</p>'; echo ' <small class="pull-right text-muted">' . date('d/m/Y H:i', strtotime($message['data_envio'])) . '</small>'; echo '</a>'; } echo '</div>'; } else { echo '<p class="text-center">Nenhuma mensagem para exibir.</p>'; } ?>
Save
Cancel