« Back to History
karigar_login.php
|
20260722_120325.php
Initial Domain Snapshot
Copy Code
<?php declare(strict_types=1); ini_set('display_errors', '1'); ini_set('log_errors', '1'); /* Session */ $__sess_dir = __DIR__ . '/tmp_sessions'; if (!is_dir($__sess_dir)) { @mkdir($__sess_dir, 0775, true); } @ini_set('session.save_path', $__sess_dir); if (session_status() !== PHP_SESSION_ACTIVE) { session_start(); } /* DB */ require_once __DIR__ . '/core/db.php'; /* CSRF */ if (empty($_SESSION['k_csrf'])) { $_SESSION['k_csrf'] = bin2hex(random_bytes(16)); } $err = ''; if ($_SERVER['REQUEST_METHOD'] === 'POST') { /* CSRF check */ if (!hash_equals($_SESSION['k_csrf'] ?? '', $_POST['k_csrf'] ?? '')) { $err = 'Invalid token. Refresh karke dobara try karo.'; } else { $login_code = trim($_POST['login_code'] ?? ''); $emp_id = (int)($_POST['employee_id'] ?? 0); if ($login_code === '' || $emp_id <= 0) { $err = 'Company Code aur Employee ID dono bharo.'; } else { /* Company by login_code */ $st = $pdo->prepare( "SELECT id, name FROM companies WHERE login_code = :code AND is_active = 1 LIMIT 1" ); $st->execute([':code' => $login_code]); $company = $st->fetch(PDO::FETCH_ASSOC); if (!$company) { $err = 'Company Code galat hai.'; } else { $cid = (int)$company['id']; /* Employee: company + dept 20 + active */ $st2 = $pdo->prepare( "SELECT id, name FROM company_employee_master WHERE id = :eid AND company_id = :cid AND department_id = 20 AND COALESCE(is_active, 1) = 1 LIMIT 1" ); $st2->execute([':eid' => $emp_id, ':cid' => $cid]); $emp = $st2->fetch(PDO::FETCH_ASSOC); if (!$emp) { $err = 'Employee ID galat hai ya aap rapier karigar department mein nahi hain.'; } else { /* Set session */ session_regenerate_id(true); $_SESSION['user'] = [ 'id' => 0, 'company_id' => $cid, 'employee_id' => (int)$emp['id'], 'name' => (string)$emp['name'], 'role' => 'karigar', 'email' => '', ]; header('Location: /erp/rapier_karigar_dashboard.php'); exit; } } } } } ?> <!doctype html> <html lang="hi"> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width,initial-scale=1"> <title>Karigar Login</title> <style> *{box-sizing:border-box} body{font-family:Arial,sans-serif;background:#f0fff4;margin:0;display:flex;justify-content:center;align-items:center;min-height:100vh} .box{background:#fff;border-radius:16px;padding:32px 28px;width:340px;box-shadow:0 8px 32px rgba(0,0,0,.10)} h2{margin:0 0 22px;text-align:center;color:#1a7a3c;font-size:1.4rem} label{display:block;font-size:.85rem;color:#444;margin-bottom:4px;margin-top:14px} input{width:100%;padding:11px 14px;border:1.5px solid #ccc;border-radius:10px;font-size:1rem;outline:none} input:focus{border-color:#34A853} .btn{width:100%;margin-top:22px;padding:13px;background:#34A853;color:#fff;border:0;border-radius:12px;font-size:1rem;font-weight:700;cursor:pointer} .btn:hover{background:#2a8f45} .err{background:#ffe5e5;color:#b00;border:1px solid #f5c2c2;border-radius:10px;padding:10px 14px;margin-bottom:10px;font-size:.9rem} .staff-link{display:block;text-align:center;margin-top:16px;color:#666;font-size:.85rem} .staff-link a{color:#34A853} </style> </head> <body> <div class="box"> <h2>🦸 Karigar Login</h2> <?php if ($err): ?> <div class="err"><?= htmlspecialchars($err) ?></div> <?php endif; ?> <form method="post" autocomplete="off"> <input type="hidden" name="k_csrf" value="<?= htmlspecialchars($_SESSION['k_csrf']) ?>"> <label>Company Login Code</label> <input type="text" name="login_code" placeholder="Company code dalein" value="<?= htmlspecialchars($_POST['login_code'] ?? '') ?>" required autofocus> <label>Employee ID</label> <input type="number" name="employee_id" placeholder="Apni Employee ID dalein" value="<?= htmlspecialchars((string)($_POST['employee_id'] ?? '')) ?>" required min="1"> <button class="btn" type="submit">Login</button> </form> <p class="staff-link">Staff? <a href="/erp/public/login.php">Staff Login</a></p> </div> </body> </html>