Voltar para Cursos

Como ganhar dinheiro com as IA Amostra Gratuita

Aula 1

Terminal / Comandos Iniciais
rm -f /var/www/plataforma.ttplustv.shop/admin/dashboard.php
nano /var/www/plataforma.ttplustv.shop/admin/dashboard.php
Arquivo / Código
<?php
session_start();
if (!isset($_SESSION['admin_id'])) {
    header("Location: /admin/login.php");
    exit;
}

require_once __DIR__ . '/../includes/db.php';
$mensagem = '';

if (isset($_GET['excluir_aluno'])) {
    $stmt = $pdo->prepare("UPDATE usuarios SET ativo = 0 WHERE id = ?");
    $stmt->execute([$_GET['excluir_aluno']]);
    header("Location: /admin/dashboard.php?msg=Aluno+excluido");
    exit;
}
if (isset($_GET['excluir_curso'])) {
    $stmt = $pdo->prepare("UPDATE cursos SET ativo = 0 WHERE id = ?");
    $stmt->execute([$_GET['excluir_curso']]);
    header("Location: /admin/dashboard.php?msg=Curso+excluido");
    exit;
}
if (isset($_GET['msg'])) {
    $mensagem = htmlspecialchars($_GET['msg']);
}

if ($_SERVER['REQUEST_METHOD'] === 'POST') {
    if (isset($_POST['acao_aluno'])) {
        $nome = filter_input(INPUT_POST, 'nome', FILTER_SANITIZE_SPECIAL_CHARS);
        $usuario_login = filter_input(INPUT_POST, 'email', FILTER_SANITIZE_SPECIAL_CHARS);
        $senha = password_hash($_POST['senha'], PASSWORD_DEFAULT);
        $cursos_liberados = $_POST['cursos_liberados'] ?? [];
        
        try {
            $stmt = $pdo->prepare("INSERT INTO usuarios (nome, email, senha, nivel) VALUES (?, ?, ?, 'aluno')");
            $stmt->execute([$nome, $usuario_login, $senha]);
            $aluno_id = $pdo->lastInsertId();

            foreach ($cursos_liberados as $curso_id) {
                $stmtLink = $pdo->prepare("INSERT INTO aluno_cursos (aluno_id, curso_id) VALUES (?, ?)");
                $stmtLink->execute([$aluno_id, $curso_id]);
            }
            $mensagem = "Aluno cadastrado e cursos vinculados com sucesso!";
        } catch (PDOException $e) {
            $mensagem = "Erro: Nome de usuário já existe.";
        }
    } elseif (isset($_POST['acao_curso'])) {
        $titulo = filter_input(INPUT_POST, 'titulo', FILTER_SANITIZE_SPECIAL_CHARS);
        $descricao = filter_input(INPUT_POST, 'descricao', FILTER_SANITIZE_SPECIAL_CHARS);
        $imagem_url = filter_input(INPUT_POST, 'imagem_url', FILTER_SANITIZE_URL);
        $link_afiliado = filter_input(INPUT_POST, 'link_afiliado', FILTER_SANITIZE_URL);
        $tipo = $_POST['tipo'] ?? 'pago';

        $stmt = $pdo->prepare("INSERT INTO cursos (titulo, descricao, imagem_url, link_afiliado, tipo) VALUES (?, ?, ?, ?, ?)");
        $stmt->execute([$titulo, $descricao, $imagem_url, $link_afiliado, $tipo]);
        $mensagem = "Curso criado com sucesso!";
    } elseif (isset($_POST['acao_aula'])) {
        $curso_id = filter_input(INPUT_POST, 'curso_id', FILTER_VALIDATE_INT);
        $titulo = filter_input(INPUT_POST, 'titulo', FILTER_SANITIZE_SPECIAL_CHARS);
        $plataforma = $_POST['plataforma'];
        $video_url = filter_input(INPUT_POST, 'video_url', FILTER_SANITIZE_URL);
        $caminho = $_POST['caminho'] ?? '';
        $codigo = $_POST['codigo'] ?? '';

        $stmt = $pdo->prepare("INSERT INTO aulas (curso_id, titulo, plataforma, video_url, caminho, codigo) VALUES (?, ?, ?, ?, ?, ?)");
        $stmt->execute([$curso_id, $titulo, $plataforma, $video_url, $caminho, $codigo]);
        $mensagem = "Aula adicionada com sucesso!";
    } elseif (isset($_POST['acao_senha'])) {
        $nova_senha = password_hash($_POST['nova_senha'], PASSWORD_DEFAULT);
        $stmt = $pdo->prepare("UPDATE usuarios SET senha = ? WHERE id = ?");
        $stmt->execute([$nova_senha, $_SESSION['admin_id']]);
        $mensagem = "Sua senha foi alterada com sucesso!";
    }
}

$cursos = $pdo->query("SELECT * FROM cursos WHERE ativo = 1 ORDER BY id DESC")->fetchAll();
$alunos = $pdo->query("SELECT * FROM usuarios WHERE nivel = 'aluno' AND ativo = 1 ORDER BY id DESC")->fetchAll();
?>

<!DOCTYPE html>
<html lang="pt-BR">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Dashboard Admin - Autodidatas</title>
    <link rel="stylesheet" href="/assets/css/style.css">
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
</head>
<body>
    <header>
        <nav class="navbar">
            <a href="/admin/dashboard.php" class="brand-logo">
                <i class="fa-solid fa-user-shield"></i> Painel Admin <span class="brand-badge">Autodidatas</span>
            </a>
            <div>
                <a href="/admin/logout.php" class="nav-link" style="color: #ef4444;"><i class="fa-solid fa-right-from-bracket"></i> Sair</a>
            </div>
        </nav>
    </header>

    <main class="container">
        <?php if ($mensagem): ?>
            <div style="background-color: var(--whatsapp-color); color: #fff; padding: 1rem; border-radius: 6px; margin-bottom: 1.5rem; text-align: center;">
                <?php echo htmlspecialchars($mensagem); ?>
            </div>
        <?php endif; ?>

        <!-- FORMULÁRIOS DE CADASTRO -->
        <div style="display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 1.5rem; margin-bottom: 2rem;">
            
            <div style="background: var(--card-bg); padding: 1.5rem; border-radius: 8px; border: 1px solid var(--border-color);">
                <h3 style="color: #f59e0b; margin-bottom: 1rem;"><i class="fa-solid fa-key"></i> Alterar Senha</h3>
                <form method="POST">
                    <input type="hidden" name="acao_senha" value="1">
                    <input type="password" name="nova_senha" placeholder="Digite a nova senha" required class="form-control">
                    <button type="submit" class="btn" style="background-color: #f59e0b;">Atualizar Senha</button>
                </form>
            </div>

            <div style="background: var(--card-bg); padding: 1.5rem; border-radius: 8px; border: 1px solid var(--border-color);">
                <h3 style="margin-bottom: 1rem;"><i class="fa-solid fa-user-plus"></i> Novo Aluno</h3>
                <form method="POST">
                    <input type="hidden" name="acao_aluno" value="1">
                    <input type="text" name="nome" placeholder="Nome Completo" required class="form-control">
                    <input type="text" name="email" placeholder="Usuário de Acesso" required class="form-control">
                    <input type="password" name="senha" placeholder="Senha" required class="form-control">
                    
                    <h4 style="margin: 1rem 0 0.5rem 0; font-size: 0.9rem; color: var(--text-muted);">Cursos Liberados:</h4>
                    <div style="max-height: 100px; overflow-y: auto; margin-bottom: 1rem; background: var(--bg-color); padding: 0.5rem; border-radius: 4px;">
                        <?php foreach ($cursos as $c): ?>
                            <label style="display: block; margin-bottom: 0.3rem;">
                                <input type="checkbox" name="cursos_liberados[]" value="<?php echo $c['id']; ?>"> 
                                <?php echo htmlspecialchars($c['titulo']); ?> (<?php echo ucfirst($c['tipo']); ?>)
                            </label>
                        <?php endforeach; ?>
                    </div>
                    <button type="submit" class="btn">Salvar Aluno</button>
                </form>
            </div>

            <div style="background: var(--card-bg); padding: 1.5rem; border-radius: 8px; border: 1px solid var(--border-color);">
                <h3 style="margin-bottom: 1rem;"><i class="fa-solid fa-folder-plus"></i> Novo Curso</h3>
                <form method="POST">
                    <input type="hidden" name="acao_curso" value="1">
                    <input type="text" name="titulo" placeholder="Nome do Curso" required class="form-control">
                    <textarea name="descricao" placeholder="Descrição" class="form-control" rows="3"></textarea>
                    
                    <label style="display: block; margin-bottom: 0.3rem; font-size: 0.9rem; color: var(--text-muted);">Categoria:</label>
                    <select name="tipo" required class="form-control">
                        <option value="pago">Curso Pago</option>
                        <option value="gratuito">Curso Gratuito</option>
                    </select>

                    <input type="url" name="imagem_url" placeholder="URL da Capa (Imagem)" class="form-control">
                    <input type="url" name="link_afiliado" placeholder="Link Landpage / Afiliado" class="form-control">
                    <button type="submit" class="btn">Salvar Curso</button>
                </form>
            </div>
            
            <div style="background: var(--card-bg); padding: 1.5rem; border-radius: 8px; border: 1px solid var(--border-color);">
                <h3 style="margin-bottom: 1rem;"><i class="fa-solid fa-video"></i> Nova Aula</h3>
                <form method="POST">
                    <input type="hidden" name="acao_aula" value="1">
                    <select name="curso_id" required class="form-control">
                        <option value="">Selecione o Curso...</option>
                        <?php foreach ($cursos as $c): ?>
                            <option value="<?php echo $c['id']; ?>"><?php echo htmlspecialchars($c['titulo']); ?> (<?php echo ucfirst($c['tipo']); ?>)</option>
                        <?php endforeach; ?>
                    </select>
                    <input type="text" name="titulo" placeholder="Título da Aula" required class="form-control">
                    <select name="plataforma" required class="form-control">
                        <option value="youtube">YouTube</option>
                        <option value="vimeo">Vimeo</option>
                        <option value="archive">Archive.org</option>
                        <option value="drive">Google Drive</option>
                    </select>
                    <input type="url" name="video_url" placeholder="URL do Vídeo/Capa" required class="form-control">
                    <textarea name="caminho" placeholder="Caminho/Comandos Iniciais..." class="form-control" rows="2" style="font-family: monospace;"></textarea>
                    <textarea name="codigo" placeholder="Código fonte..." class="form-control" rows="4" style="font-family: monospace;"></textarea>
                    <button type="submit" class="btn">Salvar Aula</button>
                </form>
            </div>

        </div>

        <!-- GESTÃO DE ALUNOS (Com botão Editar e Excluir) -->
        <div style="background: var(--card-bg); padding: 1.5rem; border-radius: 8px; border: 1px solid var(--border-color); margin-bottom: 2rem;">
            <h3 style="margin-bottom: 1rem;"><i class="fa-solid fa-users"></i> Gestão de Alunos Ativos</h3>
            <div style="overflow-x: auto;">
                <table style="width: 100%; border-collapse: collapse; text-align: left;">
                    <tr style="border-bottom: 1px solid var(--border-color);">
                        <th style="padding: 0.8rem;">Nome</th>
                        <th style="padding: 0.8rem;">Usuário</th>
                        <th style="padding: 0.8rem; text-align: right;">Ações</th>
                    </tr>
                    <?php foreach ($alunos as $aluno): ?>
                    <tr style="border-bottom: 1px solid var(--border-color);">
                        <td style="padding: 0.8rem;"><?php echo htmlspecialchars($aluno['nome']); ?></td>
                        <td style="padding: 0.8rem;"><?php echo htmlspecialchars($aluno['email']); ?></td>
                        <td style="padding: 0.8rem; text-align: right; display: flex; gap: 10px; justify-content: flex-end;">
                            <a href="/admin/editar_aluno.php?id=<?php echo $aluno['id']; ?>" style="color: #38bdf8; text-decoration: none;"><i class="fa-solid fa-pen-to-square"></i> Editar</a>
                            <a href="?excluir_aluno=<?php echo $aluno['id']; ?>" onclick="return confirm('Tem certeza que deseja excluir este aluno?')" style="color: #ef4444; text-decoration: none;"><i class="fa-solid fa-trash"></i> Excluir</a>
                        </td>
                    </tr>
                    <?php endforeach; ?>
                </table>
            </div>
        </div>

        <!-- GESTÃO DE CURSOS (Com botão Editar e Excluir) -->
        <div style="background: var(--card-bg); padding: 1.5rem; border-radius: 8px; border: 1px solid var(--border-color); margin-bottom: 2rem;">
            <h3 style="margin-bottom: 1rem;"><i class="fa-solid fa-book"></i> Gestão de Cursos Ativos</h3>
            <div style="overflow-x: auto;">
                <table style="width: 100%; border-collapse: collapse; text-align: left;">
                    <tr style="border-bottom: 1px solid var(--border-color);">
                        <th style="padding: 0.8rem;">Título</th>
                        <th style="padding: 0.8rem;">Categoria</th>
                        <th style="padding: 0.8rem; text-align: right;">Ações</th>
                    </tr>
                    <?php foreach ($cursos as $curso): ?>
                    <tr style="border-bottom: 1px solid var(--border-color);">
                        <td style="padding: 0.8rem;"><?php echo htmlspecialchars($curso['titulo']); ?></td>
                        <td style="padding: 0.8rem;"><?php echo ucfirst($curso['tipo']); ?></td>
                        <td style="padding: 0.8rem; text-align: right; display: flex; gap: 10px; justify-content: flex-end;">
                            <a href="/admin/editar_curso.php?id=<?php echo $curso['id']; ?>" style="color: #38bdf8; text-decoration: none;"><i class="fa-solid fa-pen-to-square"></i> Editar</a>
                            <a href="?excluir_curso=<?php echo $curso['id']; ?>" onclick="return confirm('Tem certeza que deseja excluir este curso?')" style="color: #ef4444; text-decoration: none;"><i class="fa-solid fa-trash"></i> Excluir</a>
                        </td>
                    </tr>
                    <?php endforeach; ?>
                </table>
            </div>
        </div>
    </main>
</body>
</html>

Aulas Gratuitas