Fri 07 Nov 2025 12:21:10 EET ```php // ai_002.php // Single-file SQLite3 HTML5 dashboard for managing 55 free-tier AI offers // Features: Auto-creates DB/table, populates with 55 entries if empty, add/edit/delete, search, sortable columns, clickable hyperlinks // Everything self-contained - no external dependencies exec('CREATE TABLE IF NOT EXISTS offers ( id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT NOT NULL, url TEXT NOT NULL )'); // Populate with 55 free-tier AI offers if table is empty $res = $db->querySingle('SELECT COUNT(*) AS c FROM offers'); if ($res == 0) { $stmt = $db->prepare('INSERT INTO offers (name, url) VALUES (:name, :url)'); $offers = [ ['ChatGPT', 'https://chatgpt.com'], ['Google Gemini', 'https://gemini.google.com'], ['Anthropic Claude', 'https://claude.ai'], ['xAI Grok', 'https://grok.x.ai'], ['Perplexity AI', 'https://www.perplexity.ai'], ['Microsoft Copilot', 'https://copilot.microsoft.com'], ['Meta AI', 'https://www.meta.ai'], ['Mistral Le Chat', 'https://chat.mistral.ai'], ['Hugging Face Chat', 'https://huggingface.co/chat'], ['Poe', 'https://poe.com'], ['You.com', 'https://you.com'], ['Phind', 'https://www.phind.com'], ['Groq Chat', 'https://groq.com'], ['DeepSeek', 'https://platform.deepseek.com'], ['Google AI Studio', 'https://aistudio.google.com'], ['AIMLAPI', 'https://aimlapi.com'], ['Fal.ai', 'https://fal.ai'], ['Replicate', 'https://replicate.com'], ['Together AI', 'https://together.ai'], ['Blackbox AI', 'https://www.blackbox.ai'], ['Codeium', 'https://codeium.com'], ['Tabnine', 'https://www.tabnine.com'], ['Amazon CodeWhisperer', 'https://aws.amazon.com/codewhisperer/'], ['Grammarly', 'https://app.grammarly.com'], ['QuillBot', 'https://quillbot.com'], ['Wordtune', 'https://www.wordtune.com'], ['Canva Magic Studio', 'https://www.canva.com/ai-image-generator/'], ['Adobe Firefly', 'https://firefly.adobe.com'], ['ElevenLabs', 'https://elevenlabs.io'], ['Suno', 'https://suno.com'], ['Udio', 'https://www.udio.com'], ['Otter.ai', 'https://otter.ai'], ['Fireflies.ai', 'https://fireflies.ai'], ['Notion AI', 'https://www.notion.so/product/ai'], ['Mem.ai', 'https://get.mem.ai'], ['Gamma', 'https://gamma.app'], ['Tome', 'https://tome.app'], ['Beautiful.ai', 'https://www.beautiful.ai'], ['Pi.ai', 'https://pi.ai'], ['Runway', 'https://runwayml.com'], ['Pika', 'https://pika.art'], ['Luma Dream Machine', 'https://lumalabs.ai/dream-machine'], ['Kling AI', 'https://www.klingai.com'], ['Google Cloud Translation', 'https://cloud.google.com/translate'], ['Google Speech-to-Text', 'https://cloud.google.com/speech-to-text'], ['AWS AI Services', 'https://aws.amazon.com/free/ai/'], ['Azure AI', 'https://azure.microsoft.com/en-us/free/ai-services'], ['Oracle Cloud AI', 'https://www.oracle.com/cloud/free/'], ['IBM Watsonx', 'https://www.ibm.com/watsonx'], ['Eden AI', 'https://www.edenai.co'], ['Clarifai Community', 'https://clarifai.com'], ['Vercel AI Playground', 'https://play.vercel.ai'], ['Snowflake Cortex', 'https://www.snowflake.com/en/data-cloud/cortex/'], ['Databricks Mosaic AI', 'https://www.databricks.com/product/machine-learning'], ['Google Cloud Vertex AI', 'https://cloud.google.com/vertex-ai'] ]; foreach ($offers as $o) { $stmt->bindValue(':name', $o[0], SQLITE3_TEXT); $stmt->bindValue(':url', $o[1], SQLITE3_TEXT); $stmt->execute(); } $stmt->close(); } // Handle delete if (isset($_GET['delete'])) { $id = (int)$_GET['delete']; $db->exec("DELETE FROM offers WHERE id = $id"); header('Location: ai_002.php' . (isset($_GET['search']) ? '?search=' . urlencode($_GET['search']) : '')); exit; } // Handle add if (isset($_POST['action']) && $_POST['action'] === 'add') { $name = trim($_POST['name']); $url = trim($_POST['url']); if ($name && $url) { $stmt = $db->prepare('INSERT INTO offers (name, url) VALUES (:name, :url)'); $stmt->bindValue(':name', $name, SQLITE3_TEXT); $stmt->bindValue(':url', $url, SQLITE3_TEXT); $stmt->execute(); } header('Location: ai_002.php' . (isset($_GET['search']) ? '?search=' . urlencode($_GET['search']) : '')); exit; } // Handle update if (isset($_POST['action']) && $_POST['action'] === 'update') { $id = (int)$_POST['id']; $name = trim($_POST['name']); $url = trim($_POST['url']); if ($id && $name && $url) { $stmt = $db->prepare('UPDATE offers SET name = :name, url = :url WHERE id = :id'); $stmt->bindValue(':name', $name, SQLITE3_TEXT); $stmt->bindValue(':url', $url, SQLITE3_TEXT); $stmt->bindValue(':id', $id, SQLITE3_INTEGER); $stmt->execute(); } header('Location: ai_002.php' . (isset($_GET['search']) ? '?search=' . urlencode($_GET['search']) : '')); exit; } // Search & sort $search = isset($_GET['search']) ? trim($_GET['search']) : ''; $sort = isset($_GET['sort']) && in_array($_GET['sort'], ['id','name','url']) ? $_GET['sort'] : 'id'; $order = isset($_GET['order']) && $_GET['order'] === 'desc' ? 'DESC' : 'ASC'; $where = $search ? 'WHERE name LIKE :search OR url LIKE :search' : ''; $query = "SELECT * FROM offers $where ORDER BY $sort $order"; $stmt = $db->prepare($query); if ($search) { $stmt->bindValue(':search', '%' . $db->escapeString($search) . '%', SQLITE3_TEXT); } $result = $stmt->execute(); ?> Free Tier AI Offers Dashboard

55 Free Tier AI Offers - Editable Dashboard

Add New Offer

Name: URL:
fetchArray(SQLITE3_ASSOC)): ?>
# Name URL Actions
Delete
close(); ?> ``` Save this entire content as **ai_002.php** on your server. Open it in a browser - it will automatically create the SQLite database, populate 55 free-tier AI offers with clickable hyperlinks, and provide a full HTML5 dashboard for searching, sorting, adding, editing, and deleting entries. No additional setup required.