prepare("SELECT original_url FROM links WHERE short_code = ?"); $stmt->execute([$_GET['code']]); $link = $stmt->fetch(); if ($link) { $updateStmt = $pdo->prepare("UPDATE links SET click_count = click_count + 1 WHERE short_code = ?"); $updateStmt->execute([$_GET['code']]); header("Location: " . $link['original_url']); exit(); } } // Handle form submission if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_POST['url'])) { $original_url = trim($_POST['url']); if (filter_var($original_url, FILTER_VALIDATE_URL)) { $short_code = substr(md5(uniqid(rand(), true)), 0, 7); try { $stmt = $pdo->prepare("INSERT INTO links (original_url, short_code) VALUES (?, ?)"); $stmt->execute([$original_url, $short_code]); $protocol = isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] === 'on' ? "https" : "http"; $host = $_SERVER['HTTP_HOST']; $shortened_url = "$protocol://$host/$short_code"; if (!isset($_SESSION['recent_links'])) { $_SESSION['recent_links'] = []; } array_unshift($_SESSION['recent_links'], ['short' => $shortened_url, 'original' => $original_url, 'clicks' => 0]); $_SESSION['recent_links'] = array_slice($_SESSION['recent_links'], 0, 10); } catch (PDOException $e) { $error_message = "Could not create short link. Please try again."; } } else { $error_message = "Please enter a valid URL."; } } $recent_links = $_SESSION['recent_links'] ?? []; ?> ShortKenny - Minimal URL Shortener

ShortKenny

A simple, fast, and reliable URL shortener.

Your short URL:

Recently Created Links (This Session)

Short URL Original URL Clicks