🚀 使用 PHP 和 MySQL 构建 CRM:我最后一年的项目之旅 🎓
第 1 天
大家好!👋 我是 **Ashish Prajapati**,是 **RK Desai 计算机与应用科学学院** 的 TYBCA 学生。作为我最后一年的项目,我一直在研究**客户关系管理 (CRM) 系统** 🌟。这篇文章将带您了解我的旅程、我正在研究的模块、我一路上的学习方式以及我用来将这个项目变为现实的工具。
💡 启发与指导
作为一个没有开发 CRM 经验的人,我向 **ChatGPT** 寻求指导。它为 CRM 系统建议了以下基本模块:
在 ChatGPT 的指导下,我正在逐步实现这些模块。虽然这可能不是一个可以投入生产的 CRM,但我将全力投入到这个项目中,以学习和成长为一名开发人员。💪
🗂 目录结构:组织代码
为了保持我的项目结构合理且易于维护,我按以下方式组织我的文件:
📂 client/ ├── 📂 assets/ │ ├── 📂 css/ │ │ ├── lead.css # Styles for lead management │ │ └── style.css # Global styles │ ├── 📂 js/ │ │ └── script.js # Custom JavaScript ├── 📂 includes/ │ ├── _Footer.php # Footer component │ ├── _Nav.php # Navigation menu │ └── db.php # Database connection ├── add_lead.php # Script to add leads ├── index.php # Main homepage ├── login.php # Login functionality ├── signup.php # Signup form ├── signup_process.php # Signup backend logic └── tailwind.config.js # Tailwind CSS configuration
📌亮点:
🗃 数据库设计:CRM 的支柱
CRM 围绕两个主要表格:**潜在客户** 和 **客户**。这些表格确保高效管理客户和潜在客户数据。
📝 潜在客户表
CREATE TABLE `leads` ( `lead_id` int(11) NOT NULL, `first_name` varchar(50) NOT NULL, `last_name` varchar(50) NOT NULL, `email` varchar(100) DEFAULT NULL, `phone` varchar(20) DEFAULT NULL, `company_name` varchar(100) DEFAULT NULL, `position` varchar(50) DEFAULT NULL, `lead_source` varchar(50) DEFAULT NULL, `lead_status` enum('new','contacted','qualified','converted','lost') DEFAULT 'new', `opportunity_value` decimal(10,2) DEFAULT NULL, `close_date` date DEFAULT NULL, `notes` text DEFAULT NULL, `created_at` datetime DEFAULT current_timestamp(), `updated_at` datetime DEFAULT current_timestamp() ON UPDATE current_timestamp() ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
👥 客户表
CREATE TABLE `customers` ( `customer_id` int(11) NOT NULL, `first_name` varchar(50) NOT NULL, `last_name` varchar(50) NOT NULL, `email` varchar(100) NOT NULL, `phone` varchar(20) DEFAULT NULL, `address` text DEFAULT NULL, `city` varchar(50) DEFAULT NULL, `state` varchar(50) DEFAULT NULL, `postal_code` varchar(20) DEFAULT NULL, `country` varchar(50) DEFAULT NULL, `tags` varchar(255) DEFAULT NULL, `company_name` varchar(100) DEFAULT NULL, `position` varchar(50) DEFAULT NULL, `notes` text DEFAULT NULL, `status` enum('active','inactive','prospect') DEFAULT 'prospect', `created_at` datetime DEFAULT current_timestamp(), `updated_at` datetime DEFAULT current_timestamp() ON UPDATE current_timestamp() ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
🔧 使用的工具和技术
这是我在这个项目中使用的技术栈:
📸 视觉效果正在开发中
以下是我计划在我的视频博客和未来的帖子中展示的内容:



💪 挑战与学习经验
从事这个 CRM 项目既令人兴奋又充满挑战!作为 CRM 开发新手:
虽然这可能不是一款现成的产品,但我对自己迄今为止取得的进步感到自豪。每一行代码都在帮助我成长为一名开发人员。🚀
🛠️下一步是什么?
以下是我计划在接下来的几周内开展的工作:
🌟 最后的想法
这个项目给了我一个绝佳的机会,让我可以运用在 TYBCA 学到的一切并探索新技术。我很高兴继续完善这个 CRM 并添加更多功能。
感谢您的阅读!如果您喜欢这篇文章或对我有任何建议,请**留下回应**❤️并在下方发表评论。