ساخت لیست todo با php

  • آپدیت شده در تاریخ

ساخت لیست todo با php

سایت های معروفی مثل trello سرویسی ارائه می دهند که با آن می توان پروژه ها و تسک هایی که برای افراد تیم تعریف می شود را ثبت و مدیریت کرد.

در این آموزش php ما قصد داریم بخش بسیار کوچکی از آن که برای استفاده شخصی در پروژه های تحت وب به کار می‌رود را پیاده سازی کنیم.

پس با آموزش ساخت لیست todo با php همراه باشید.

 

یک اپلیکیشن ساده لیست todo  ایجاد می کنیم و تسک هایی که داخل یک فرم HTML ارسال می شود را دریافت و داخل دیتابیس MySQL ذخیره می کند.

همچنین این تسک ها از دیتابیس فراخوانی و داخل یک صفحه وب به همراه یک دکمه حذف برای هر کدام قابل نمایش است که با کلیک روی دکمه، از دیتابیس پاک می شود.

 

‎ساخت‎ جداول دیتابیس

بطور معمول، با ورود به phpmyadmin دیتابیس خود را ایجاد می کنیم و نام آن را todo قرار می دهیم. سپس یک جدول tasks برای ذخیره تسک ها می سازیم.

برای این جدول دو فیلد می سازیم :

  • id – int(10)
  • task – varchar(255)

حالا دو فایل ایجاد می کنیم:

  • index.php
  • style.css

هر دو را در یک ادیتور متن ساده مثل notepad باز می کنیم و برای فایل index.php کدهای زیر را قرار می دهیم.

این کدها همان ساختار HTML و فرم برای ثبت تسک جدید است.

اگر این فایل را در مرورگر باز کنید چنین چیزی خواهید دید:

ساخت لیست todo با php

حالا برای زیباتر کردن فرم، زیر تگ <title> این خط که برای افزودن فایل css هست اضافه می کنیم:

فایل style.css را که قبلا ساختیم را باز کرده و این کدها را قرار می‌دیم:

اگر کار را درست انجام داده باشید و ذخیره و صفحه را رفرش کنید چنین چیزی می بینید:

ساخت لیست todo با php

اتصال به دیتابیس MySQL با PHP

حالا باید کد php برای اتصال به دیتابیس را بنویسیم.

در بالای کدهای فایل index.php در اولین خط قبل از <html> این کد را اضافه کنید:

اگر این عملیات را داخل لوکال هاست انجام می دهید نیاز به تغییر چیزی در کد نیست در غیر اینصورت حتما اطلاعات ورود به دیتابیس را در خط ۶ تغییر بدید.

اگر کاربر روی دکمه سابمیت بزند، تسک موردنظر داخل دیتابیس ذخیره می شود.

به هر حال اگر فیلد تسک خالی باشد متغیر $errors که حاوی متن خطای ما هست  ست می شود ولی مقدار آن نمایش داده نمی شود.

پس باید خطا را به کاربر نمایش بدیم.

برای اینکار کد زیر را دقیقا زیر تگ <form> قرار می دهیم:

اگر کاربر سعی در ارسال یک مقدار خالی کرد این خطا نمایش داده می شود:

ساخت لیست todo با php

نمایش تسک های ذخیره شده

تا الان ساخت لیست todo با php انجام شده ولی چیزی را نمایش ندادیم.

بنابراین نیاز است که اطلاعات را از دیتابیس فراخوانی و در صفحه نمایش بدیم.

فایل index.php را باز کرده و کد زیر را دقیقا قبل از تگ </form> قرار بدید:

اگر یک تسک را داخل فرم وارد کنید و دکمه سابمیت “Add Task” را بزنید، خروجی این خواهد بود:

ساخت لیست todo با php

خب حالا برای آخرین مرحله آموزش ساخت لیست todo با php دکمه حذف را کدنویسی کنیم.

در بالای صفحه، بعد از بلاک if که تسک را داخل دیتابیس ذخیره می کند، این کد را اضافه کنید:

همین بود، تمام شد. حالا اگر دکمه “x” را بزنید، سطر موردنظر از دیتابیس حذف می شود.

 

جمع بندی آموزش ساخت لیست todo با php

امیدوارم از آموزش ساخت لیست todo با php نهایت استفاده را برده باشید.

برای تمرین یک قابلیتی که توصیه می کنم به این کد اضافه کنید این است که امکان ویرایش را هم قرار بدید تا کاربر بتواند متن تسک را تغییر دهد.

برای اینکار کافی است که از دستور Update در mysql استفاده کنید: عملیات CRUD در MySQL

 

هر سوالی داشتید، از قسمت نظرات ارسال کنید. سریعا، پاسخگوی سوالات شما هستیم.

حسن شفیعی توسعه دهنده وب و موبایل مدیر سایت علاقه خاصی به برنامه نویسی وب و موبایل دارم و هر روز تلاش می کنم به این حوزه مسلط تر شوم و اطلاعاتم را به شکل کاربردی برای علاقه مندان در وب به اشتراک بگذارم. اگر نیاز به برنامه نویس برای انجام پروژه و نوشتن اسکریپت های سمت وب, اپلیکیشن های اندروید و ios, پیدا کردن راه حل توسعه و غیره داشتید حتما از طریق تماس با ما/ واتساپ/ تلگرام بهم پیام بدید. برایتهیه هاست مطمین و پرسرعت کلیک کنید
مطالب زیر را حتما بخوانید
دیدگاه کاربران (۶)

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

  1. محمدحسین پدرام ۲۱ بهمن ۱۴۰۰

    سلام و درود فراوان . من در دیتابیس mysql به یک مشکلی خوردم توی آموزش هی سایت تون گشتم ولی نتونستم مورد مشابهی ازش پیدا کنم لطفا اگر ممکنه راهنمایی بفرمایید .
    یک فیلد id در دیتابیس دارم که اگر بخوام مقدار اونو بیشتر از عدد ۲۱۴۷۴۸۳۶۴۷ تعیین کنم بهم ارور میده .
    این دیتابیس برای ربات تلگرام بوده و اون فیلد id هم آیدی عددی کاربران رو ذخیره میکرده . منتهی بخاطر افزایش کاربران تلگرام که باعث شده مقادیر ای دی های عددی شون بالا بره حالا این مشکل در ربت ایجاد شده و ای دی عددی های جدید رو ذخیره نمیکنه . اگر راهکاری هست ممنون میشم از شما .

    پاسخ
    1. حسن شفیعی ۲۱ بهمن ۱۴۰۰

      سلام. داخل دیتابیس اون ستون از از جدول رو که ایدی کاربر رو ذخیره میکنه از int به varchar با طول مثلا ۵۰ تغییر بدید مشکل رفع میشه

      پاسخ
      1. محمدحسین پدرام ۲۱ بهمن ۱۴۰۰

        خیلییی ممنونم . شما واقعا عالی هستین .

        پاسخ
  2. علی احمدی ۲ شهریور ۱۴۰۰

    سلام
    نمونه این todo list که اینجا نوشتید رو توی سایت بصورت آنلاین دارید برای نمونه ؟!

    پاسخ
    1. حسن شفیعی ۳ شهریور ۱۴۰۰

      سلام. خیر همین کدها رو روی لوکال اجرا کنید نمونه ساخته میشه

      پاسخ
  3. سید ۲۲ مرداد ۱۴۰۰

    سلام استاد، کاش مطلبی در مورد شی گرایی در php میذاشتین
    با تشکر

    پاسخ
دوره های آموزشی