ساخت صفحه لاگین و ثبت نام با php

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

ساخت صفحه لاگین و ثبت نام با php

صفحه لاگین یکی از امکانات هر وبسایت کاربر محوری است. ساخت صفحه لاگین و ثبت نام با php بسیار آسان است . در این آموزش ، به شما نشان می دهیم چطور یک سیستم لاگین را توسط php و mysql ایجاد کنید.

اسکریپت php ما ثبت نام کاربر و ورود را با استفاده از mysql و سئشن های php ایجاد کرده است. همچنین ، اعتبارسنجی ورودی های کاربر در هنگام ثبت نام و لاگین از طریق سرور-ساید انجام می شود.

قبل از اینکه آموزش را شروع کنیم ، نگاهی به فایل های سیستم لاگین میاندازیم

  • User.php – مدیریت کار های مربوط به دیتابیس
  • UserAccount.php – مدیریت ثبت نام ، ورود ، خروج با درخواست های کلاس User
  • Index.php – نمایش فرم لاگین / اطلاعات کاربر
  • Registration.php – نمایش فرم ثبت نام
  • Style.css – استایل دهی به فرم ثبت نام و لاگین

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

یک جدول برای ذخیره اطلاعات کاربران نیاز داریم. کد sql زیر یک جدول users با ستون های مورد نیاز ایجاد می کند.

کلاس User (user.php)

کلاس User همه کار های مربوط به دیتابیس را مدیریت می کند .

که شامل ۳ متد __construct() ، getRows() و insert() است . تابع __construct() برای اتصال به دیتابیس استفاده می شود . تابع getRows() برای خواندن اطلاعات کاربران از دیتابیس و تابع insert() برای اضافه کردن اطلاعات کاربران به دیتابیس هنگام ثبت نام استفاده شده است. حتما مقادیر $dbHost,$dbusername,$dbPassword,$dbName را برای اتصال به دیتابیس تغییر بدید.

برای کپی صحیح و کامل کدها ، دابل کلیک کرده تا وارد محیط سفید و کپی شوید در غیر اینصورت امکان دارد اجرای کدها با مشکل روبرو شود

 

userAccount.php

این فایل درخواست ثبت نام ، لاگین و خروج (logout) از index.php و registration.php را کنترل می کند . کلاس User برای قرار دادن اطلاعات کاربران در جدول users استفاده می شود. همچنین ، Session ها برا لاگین نگه داشتن کاربر در سیستم به کار می رود.

 

فرم لاگین و اطلاعات کاربر (index.php)

در ابتدا فایل index.php یک صفحه لاگین و لینک ثبت نام را نشان می دهد . بعد از لاگین ، آی دی کاربر از طریق سئشن قابل دسترس و اطلاعات کاربر از طریق کلاس User نمایش داده می شود .

 

فرم ثبت نام (registration.php)

فایل حاوی فرم html ثبت نام و یک action به فایل userAccount.php است.

 

کد CSS

برای استایل دهی به به فرم لاگین و ثبت نام استفاده شده است.

 

جمع بندی

امیدواریم از راهنمایی مرحله به مرحله و مثال اسکریپت ساخت صفحه لاگین و ثبت نام با php لذت برده باشید . شما به راحتی می توانید فرم ثبت نام و لاگین با php و mysql را در زمان بسیار کم پیاده کنید . همچنین با استفاده از آموزش “ساخت سیستم فراموشی رمزعبور با php” می توانید امکانات دیگه ای به صفحه لاگین خود اضافه کنید

برای دانلود پروژه کامل ساخت صفحه لاگین و ثبت نام با php از قسمت زیر اقدام کنید

امیدوارم همیشه موفق باشید

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

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

  1. mahdi ۱۲ مهر ۱۴۰۰

    سلام مرسی بابت اموزش عالیتون فقط من یکم کد هاس css رو ویرایش کردم رنگ و استایل هارو ولی وقتی توی لوکال هاست(زمپ) رفرش میکنم تغییر ایجاد نمیشه اما مثلا یکبار کامپوتر ریستارت میشه تغییر رو نشون میده اما تغییر انی نشون نمیده ایا راهکاری دارید که وقتی ادیت میکنم و رفرش میکنم سایتو css ها به خوبی اجرا بشن؟ و مشکل از سیو ادیتور هم نیست ادیتور کد هارو سیو میکنه مرسی

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

      سلام. خوشحالیم که مفید واقع شده.
      شما حتی نمی خواید ایمیل بدید بعد انتظار پاسخ هم دارید.
      ایمیل ها با تبلیغات اسپم نمیشه بلکه برای اطلاع رسانی خود سایت هست و این ایمیل هم اسپم شده

      پاسخ
  2. دانیال ۲۳ تیر ۱۴۰۰

    سلام
    چگونه یک اعتبارسنجی ایمیل درست کنیم یعنی کاربر ایمیل را در ثبتنام بنویسید و به ایمیل ان کاربر کدی ارسال شود و کاربر ان را در سایت وارد کند؟

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

      سلام.
      آموزش زیر رو دنبال کنید :
      https://netparadis.com/email-verification-register-php

      پاسخ
  3. پارسا ۱۸ تیر ۱۴۰۰

    سلام و وقت بخیر من
    وقتی ورود یا ثبت نام می کنم ارور
    Failed to connect with MySQL: Access denied for user ‘root’@’localhost’ (using password: NO)
    را نشن می دهد،لطفا راهنمایی نمایید…

    پاسخ
    1. حسن شفیعی ۱۹ تیر ۱۴۰۰

      سلام ممنون.
      کارهای مربوط به دیتابیس رو باید مجدد انجام بدید

      پاسخ
      1. پارسا ۱۹ تیر ۱۴۰۰

        در xampp درست هست ولی در هاست cpanel با این خطا روبرو می شوم…

        پاسخ
      2. حسن شفیعی ۱۹ تیر ۱۴۰۰

        در هاست شما اول باید دیتابیس بسازید بهش دسترسی بدید و بعد جداول رو ایمپورت کنید و بعد اطلاعات ورود به دیتابیس رو داخل فایل php بروز کنید

        پاسخ
      3. پارسا ۱۹ تیر ۱۴۰۰

        ممنون ولی باز هم با خطای دیگری مواجه شدم …
        php_network_getaddresses: getaddrinfo failed: Name or service not known
        فکر کنم خطای هاست (dbhast) هست ، الان در هاستیگ من در اینجا چه چیزی بگذارم.

        پاسخ
      4. parsa ۲۰ تیر ۱۴۰۰

        به نظر شما در هاست سی پنل (dbhost)و(dbusername) چی هست؟

        پاسخ
      5. حسن شفیعی ۲۰ تیر ۱۴۰۰

        dbhost همان localhost هست و dbusername رو خودتون میسازید و این موارد پیشفرض نیست

        پاسخ
      6. parsa ۲۰ تیر ۱۴۰۰

        اموزشی مدنظر ندارید که username در phpmyadmin ایجاد کند؟

        پاسخ
      7. حسن شفیعی ۲۰ تیر ۱۴۰۰
  4. محمد رضا ۱۳ تیر ۱۴۰۰

    سلام وقت بخیر
    Some problem occurred, please try again.
    جدیدا این ارور رو میده داخل صفحه ی ثبتنام ولی لوگین میشه و تمام تیبل ها رو دارم داخل دیتا بیس
    مشکلش احتمال داره چیزه دیگه باشه ؟
    ممنون

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

      سلام. ممنون.
      هر چیزی هست مربوط به دیتابیسه. این خطا برای اینه که عملیات insert دیتا ها داخل جدول دیتابیس انجام نمیشه

      پاسخ
  5. mina ۲ تیر ۱۴۰۰

    سلام مهندس خسته نباشی.
    ببخشید میخاستم برا سایتم شبیه سایت شما یه فرم قرار بدم برا ثبت دیدگاهای کاربران قسمت html &css بلدم سمت سرور باید چه کارهای انجام بدم. مرسی

    پاسخ
  6. محمد رضا ۲۹ خرداد ۱۴۰۰

    سلام وقت بخیر بعد از لوگین یا ریجستر با این ارورو مواجح میشیم
    This page isn’t working right nowfoxmoney.net can’t currently handle this request.
    HTTP ERROR 500

    پاسخ
    1. حسن شفیعی ۲۹ خرداد ۱۴۰۰

      سلام. با هاستینگ در میون بزارید

      پاسخ
  7. Mohammad ۱۸ خرداد ۱۴۰۰

    ۴۰۴
    Not Found

    The resource requested could not be found on this server!
    ————————————————————————————————–
    سئوالم رو کامل تر میکنم
    داخل لوکال هاست پروژه به خوبی کار میکنهد
    داخل هاست و cpanel که آپلود میکنم
    وقتی لوگین یا ریجستر میکنم میبره در مسیر userAccount.phpاین ارور رو میده

    پاسخ
    1. حسن شفیعی ۱۸ خرداد ۱۴۰۰

      باید url رو بررسی کنید ببینید دقیقا آدرس فایل به کجا هست و بررسی کنید فولدر و آدرسش درسته یا نه

      پاسخ
  8. محمد رضا ۱۸ خرداد ۱۴۰۰

    ۴۰۴
    Not Found

    The resource requested could not be found on this server!
    ————————————————————————————————–
    سلام وقتی لوگین یا ریجستر میکنم میبره در مسیر userAccount.phpاین ارور رو میده

    پاسخ
    1. حسن شفیعی ۱۸ خرداد ۱۴۰۰

      سلام. آدرس url در مرورگر رو ببینید که آدرس دهی بدرستی انجام شده باشه

      پاسخ
  9. faezeh ۱۸ خرداد ۱۴۰۰

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

    پاسخ
    1. حسن شفیعی ۱۸ خرداد ۱۴۰۰

      سلام.
      فایل userAccount.php صفحه پنل کاربری هست این صفحه برای همه یکسانه ولی اطلاعاتش متفاوته چون قبلا session برای هر کاربر ست شده و هر کس یه جور اطلاعات رو میبینه

      پاسخ
      1. faezeh ۱۸ خرداد ۱۴۰۰

        منظور من صفحه یوزر اکانت نیست یه صفحه دیگه که مثلا شامل یه جدول با یسری اطلاعت هست که کاربر وقتی وارد پروفایلش میشه علاوه بر پروفایلش اون صفحه رو هم ببینه الان پروفایل خودش نشان داده میشه با استفاده از یوزذ اکانت ولی اون جدول اطلاعات برای تمامی کاربرها یکسان هست

        پاسخ
      2. حسن شفیعی ۱۸ خرداد ۱۴۰۰

        این مورد رو دیگه نمیشه با راهنمایی گفت به چه صورت پیاده سازی کنید باید php متوسط حداقل بلد باشید و چیز خاصی هم نیست واقعا بسته به نوع کدنویسی و پروژه تون میتونید اضافه کنید. شما باید یه اطلاعاتی از کاربر در دیتابیس ذخیره کنید که بتونید برای دیگر کاربران هر کدام یه اطلاعات داینامیک و غیر تکراری نمایش بدید

        پاسخ
      3. faezeh ۱۸ خرداد ۱۴۰۰

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

        پاسخ
  10. faezeh ۱۳ خرداد ۱۴۰۰

    dar vaghe man ye safeheye login daram ba ye tedad user ke har user shamele yeseri etelaat (information) hast ke dar vaghe in safeheye information tashkil shode az yeseri karhayei ke bayad roozane anjam bede va har ueser faghat betoone etelaate khodesh ro bebeine ama vase man injoorie ke vaghti user connect mishe mitoone be hame etelaat dastresi dashte bashe.

    پاسخ
  11. faezeh ۱۳ خرداد ۱۴۰۰

    salam, roozetoon bekheir.
    ozrmikham man ye chanta soal dashtam emkanesh hast be adress emailetoon beferestam.
    mamnoonam.

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

      سلام. ممنون.
      هر سوالی داشتید در کامنت ها بپرسید حتما پاسخ داده میشه.
      شاید سوال شما سوال یکی دیگه هم باشه و به اینصورت میتونه به دیگران هم کمک کنه

      پاسخ
  12. نیما ۱۳ خرداد ۱۴۰۰

    سلام
    من وقتی دیتابیس رو میزنم این ارور رو میده

    Error

    SQL query:

    CREATE TABLE users (
    id int(11) NOT NULL AUTO_INCREMENT,
    first_name varchar(100) COLLATE utf8_unicode_ci NOT NULL,
    last_name varchar(100) COLLATE utf8_unicode_ci NOT NULL,
    email varchar(100) COLLATE utf8_unicode_ci NOT NULL,
    password varchar(255) COLLATE utf8_unicode_ci NOT NULL,
    phone varchar(15) COLLATE utf8_unicode_ci NOT NULL,
    created datetime NOT NULL,
    modified datetime NOT NULL,
    status enum(‘1′,’0’) COLLATE utf8_unicode_ci NOT NULL DEFAULT ‘1’,
    PRIMARY KEY (id)
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci

    MySQL said: Documentation
    #۱۰۴۶ – No database selected

    چیکارکنم
    لطفا راهنمایی کنید

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

      سلام. بعد اینکه وارد phpmyadmin شدید دیتابیس مورد نظر رو انتخاب کنید تا وارد اون بشید و بعد از تب SQL این کویری رو اجرا کنید

      پاسخ
  13. ایمان کریمی ۵ اردیبهشت ۱۴۰۰

    درود و عرض ادب
    عذر میخوام بنده سررشته ای از php ندارم. میخواستم بدونم چطور میتونم تعریف کنم که وقتی کاربر مثلا id: email@email.com لاگین میکنه منتقل بشه به یک لینک دیگر .مثلا تعریف کنم اگر کاربر x وارد شده منتقل بشه به ادرس مثلا سایت شما و اگر کاربر y وارد شد. منتقل بشه به یه ادرس سایت دیگه

    پاسخ
    1. حسن شفیعی ۶ اردیبهشت ۱۴۰۰

      سلام.
      باید برای هر کدام در دیتابیس یک سطر ایجاد کنید.
      مثلا جدول redirects با فیلدهای email,destination و بعد در هر سطر مشخص بشه هر ایمیل به چه آدرسی هدایت بشه.
      حالا هنگام لاگین در شرط لاگین موفق زمانی که میخواید برای کاربر سشن ست کنید یا به پنل هدایت کنید اونجا کویری میزنید به دیتابیس و سطر مربوط به ایمیل کاربر رو دریافت و با header اون رو ریدایرکت می کنید
      https://netparadis.com/php-redirect/

      پاسخ
  14. عارف ۴ بهمن ۱۳۹۹

    ممنون از شما . یک سوال دیگه داشتم در همین مورد که میخواستم بدونم
    این مشکلی برای قسمت کنترل کاربر نداره ؟ فقط دیلیت کردن کاربر منظورم هستش
    مثلا برای اینکه کاربر حدف بشه ایدی رو نگه داره و بقیه چیزارو پاک کنه

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

      خیر مشکلی نداره

      پاسخ
  15. عارف ۳ بهمن ۱۳۹۹

    سلام خسته نباشید .
    یک سوال داشتم . برای اینکه وقتی یوزر پاک میشه از دیتابیس مثلا نفر اول آیدی ۱ بعد از ۲ شروع میشه چیکار باید کنم با از همون یک شروع بشه ؟

    پاسخ
    1. حسن شفیعی ۳ بهمن ۱۳۹۹

      سلام. ممنون.
      id چون بصورت auto increament انچام میشه امکانش نیست مگر اینکه هر بار در هنگام insert کاربر در دیتابیس آخرین id رو دریافت و اون رو +۱ کنید و دستی ثبت بشه و با دیتابیس auto نشه.
      به هر حال این مورد چیز مهمی نیست و نیاز نیست حتما این مورد رو رعایت کنید

      پاسخ
  16. رسول ۱۳ آذر ۱۳۹۹

    باسلام و تشکر از مطالب آموزنده تون؛ میخام برای صفحه داشبورد کاربر کدی بنویسم که اگر کاربر به مدت مثلا ۲۰ دقیقه غیرفعال بود(inactive) صفحه بصورت خودکار بره به لاگین؛ یه چیزی شبیه به پنل phpmyadmin که بعد از مدت زمان خاصی اگر کاری نکنیم مارو بصورت خودکار به صفحه لاگین میبره(تأکیدم روی خودکار هستش، یعنی بدون رفرش صفحه یا لمس هیچ گونه دکمه ای در صفحه). ممنون میشم راهنمایی کنید. تشکر ویژه

    پاسخ
    1. حسن شفیعی ۱۴ آذر ۱۳۹۹

      سلام.
      راه ساده اینه که این کد رو به صفحه داشبود یا هر جایی که غیرفعال بودن کاربر رو میخواید بررسی و بعد لاگ اوت کنید اضافه کنید:
      در بخش تگ head اضافه کنید :

      ۹۰۰همان ثانیه است و logout.php همان مسیری که کاربر با آن لاگ اوت می شود.

      پاسخ
      1. رسول ۱۴ آذر ۱۳۹۹

        سلام مجدد. کدی که گفتید در تگ باید اضافه بشه نیومده. لطفا مجدد کد رو تایپ کنید.ممنون میشم

        پاسخ
      2. حسن شفیعی ۱۴ آذر ۱۳۹۹

        سلام. داخل تگ قرار گرفت کامنت قبلی رو دوباره چک کنید

        پاسخ
      3. رسول ۱۴ آذر ۱۳۹۹

        ممنونم از توجه و پاسخگوییت دوست عزیز. همیشه موفق باشید

        پاسخ
  17. baratisara ۱۰ آبان ۱۳۹۹

    سلام وقتتون بخیر من فرم مییخوام که با وارد کردن نام و پسورد اطلاعات مربوط به اون کاربر(نمره و رشته و..) از دیتابیس نمایش بده ..تقریبا مثل سایت گلستان
    من ایمل رو ار این کد حذف کردم و پسورد رو قرار دادم ..الان وقتی میخوام لاگین کنم از این خط ارور میگیره ممنون میشم راهنمایی کنید.

    if(!empty($_POST[‘firstname’]) && !empty($_POST[‘lastname’])) && !empty($_POST[‘password’])) {

    پاسخ
    1. حسن شفیعی ۱۱ آبان ۱۳۹۹

      سلام ممنون.
      در ادامه کد باید
      $prevCon[‘where’] = array(’email’=>$_POST[’email’]);
      و
      ’email’ => $_POST[’email’],
      پاک کنید.
      همچنین داخل دیتابیس نیز این فیلد رو پاک کنید یا default رو null کنید.
      موفق باشید.

      پاسخ
  18. seyedzia ۱۱ مهر ۱۳۹۹

    سلام دوست عزیز
    دستمریزاد
    خیلی عالی بود
    موفق باشید ان شاء الله

    پاسخ
    1. حسن شفیعی ۱۱ مهر ۱۳۹۹

      سلام. خوشحالیم که مفید واقع شده.
      موفق باشید.

      پاسخ
  19. علیرضا ۹ خرداد ۱۳۹۹

    سلام من همه این کار هارو انجام دادم. وقتی میره بخش وارد کردن اطلاعات برای ورود یا ثبت نام ، وقتی میزنیم رو دکمه که اطلاعات بره رو فایل userAccount.php که کنترل بشه ارور ۵۰۰ میده مشکل از کجاست؟

    پاسخ
    1. حسن شفیعی ۹ خرداد ۱۳۹۹

      سلام. ارور ۵۰۰ مربوط به محیط اجرا هست و باید ببینید مشکل لوکال شما چی هست.

      پاسخ
  20. mazyar ۵ خرداد ۱۳۹۹

    ببخشید میشه گسترده تر توضیح بدید

    پاسخ
    1. حسن شفیعی ۵ خرداد ۱۳۹۹

      سورس کد کامل را از باکس دانلود دریافت و استفاده کنید. همچنین مطابق آموزش پیش برید به راحتی می توانید اسکریپت را اجرا بگیردی

      پاسخ
  21. mazyar ۵ خرداد ۱۳۹۹

    ببخشید , من این ارور رو میده برای چیه Failed to connect with MySQL: No such file or directory
    من روی هاست بالا انجام دادم
    لطفا مشکلشو برام بفرسید

    پاسخ
    1. حسن شفیعی ۵ خرداد ۱۳۹۹

      سلام. مشکل اتصال به دیتابیس وجود دارد. اول باید دیتابیس رو ایجاد و بعد جداول رو بسازید و بعد اطلاعات ورود رو در سورس تغییر بدید

      پاسخ
      1. علیرضا ۸ خرداد ۱۳۹۹

        جداول رو چجوری ایجاد کنیم؟؟

        پاسخ
      2. حسن شفیعی ۸ خرداد ۱۳۹۹

        سلام.
        وارد phpmyadmin بشید و دیتابیس را بسازید یا اگر قبلا ساختید انتخاب کنید و از تب sql کد را sql را بزنید تا ساخته بشه

        پاسخ
  22. محمد رضا ۳۰ اردیبهشت ۱۳۹۹

    آیا آدرس reza.iran@iran.ir برای دریافت لینک نامعتبره؟؟!!!!!!!!

    پاسخ
    1. حسن شفیعی ۳۰ اردیبهشت ۱۳۹۹

      سلام. خیر از جیمیل یا یاهو و غیره استفاده کنید

      پاسخ
  23. ماهان حاتمی ۸ اردیبهشت ۱۳۹۹

    ببخشید
    if($insert){
    $sessData[‘status’][‘type’] = ‘success’;
    $sessData[‘status’][‘msg’] = ‘You have registered successfully, log in with your credentials.’;
    }else{
    $sessData[‘status’][‘type’] = ‘error’;
    $sessData[‘status’][‘msg’] = ‘Some problem occurred, please try again.’;
    }

    این ارور چه وقتی اتفاق می افتد :
    $sessData[‘status’][‘type’] = ‘error’;
    $sessData[‘status’][‘msg’] = ‘Some problem occurred, please try again.’;

    پاسخ
    1. حسن شفیعی ۸ اردیبهشت ۱۳۹۹

      اگر هنگام ثبت نام، در دیتابیس اطلاعات بدرستی قرار نگیرید یعنی مشکلی در دیتابیس باشد این ارور نمایش داده می شود

      پاسخ
    2. حسین علیزاده شریف ابادی ۹ اردیبهشت ۱۳۹۹

      خوبه

      پاسخ
      1. حسن شفیعی ۹ اردیبهشت ۱۳۹۹

        خوشحالیم که مفید واقع شده.
        موفق باشید.

        پاسخ
  24. ماهان حاتمی ۲۶ فروردین ۱۳۹۹

    سلامی مجدد، ببخشید من میخواهم در یک صفحه کاربران عضو سایت شده برایم نمایش داده شود. باید چه کار کنم؟

    پاسخ
    1. حسن شفیعی ۲۶ فروردین ۱۳۹۹

      سلام. باید کویری select * from users رو اجرا کنید و خروحی رو fetch کنید و با یک حلقه نمایش بدید. و تا زمانی که php تا حد متوسط بلد نباشید متاسفانه نمیتونید پیاده سازی کنید

      پاسخ
  25. ماهان حاتمی ۲۶ فروردین ۱۳۹۹

    سلام، ببخشید من میخوام در دیتابیس و صفحه ثبت نام کاربران دو تا قسمت اضافه کنم به نام کد ملی و نام کاربری؟
    چطوری میشه؟

    پاسخ
    1. حسن شفیعی ۲۶ فروردین ۱۳۹۹

      سلام. باید سه جا تغییر کنه.
      اول داخل جدول دیتابیس این دو فیلد رو اضافه کنید. بعد داخل کد HTML براش فیلد input بزارید و بعد داخل کد userAccount.php خط ۲۴ فیلد ها رو مشخص و داده های دریافتی کاربر رو داخل دیتابیس اینسرت کنید

      پاسخ
      1. ماهان حاتمی ۲۶ فروردین ۱۳۹۹

        سلامی مجدد، ببخشید همه ی کار ها رو انجام دادم ارور میاره، توی لینک زیر یه pdf است که ارور رو توش قرار دادم + عکس کار هایی که گفتید انجام بدم:
        https://gam-shop.ir/jpg2pdf.pdf

        پاسخ
  26. ماهان حاتمی ۲۴ فروردین ۱۳۹۹

    ببخشید من وقتی حساب کاربری جدید میسازم این ارور میاد :
    ( ! ) Parse error: syntax error, unexpected ‘if’ (T_IF) in C:\wamp64\www\gam-shop\registration\userAccount.php on line 11

    پاسخ
    1. حسن شفیعی ۲۴ فروردین ۱۳۹۹

      خطای سینتکسی هست و باید بررسی بشه که میتونید داخل یک ویرایشگر کد مثل phpstorm یا ویرایشگر آنلاین کد رو کپی کنید تا ببینید دقیقا مشکل از کجاست. چون این کدی که در مثال ما ارایه شده مشکلی نداره و حتی میتونید از سورس کد ارایه شده استفاده کنید.

      پاسخ
  27. ماهان حاتمی ۱۵ اسفند ۱۳۹۸

    سلام ببخشید باید در private $dbName = “اینجا”; چه بنویسیم؟؟؟؟؟؟

    پاسخ
    1. حسن شفیعی ۱۶ اسفند ۱۳۹۸

      سلام.
      نام دیتابیس.
      موفق باشید.

      پاسخ
      1. ماهان حاتمی ۱۶ اسفند ۱۳۹۸

        private $userTbl = “اینجاهم چی بنویسیم”;

        پاسخ
      2. حسن شفیعی ۱۶ اسفند ۱۳۹۸

        نام جدول کاربران را وارد کنید

        پاسخ
  28. مهدی ۴ دی ۱۳۹۸

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

    پاسخ
    1. حسن شفیعی ۵ دی ۱۳۹۸

      سلام. خوشحالیم که مفید واقع شده.
      اول باید فایل مورد نظر را بسازید و بعد داخل این صفحه به دیتابیس متصل بشید و اطلاعات را خوانده و به شکلی که میخواید نمایش بدید
      اتصال به دیتابیس با mysqli
      بعد از آن میتونید لینک این صفحه را با تگ a هرجای صفحه که خواستید قرار بدید
      موفق باشید.

      پاسخ
      1. مهدی ۸ دی ۱۳۹۸

        منظور من ساخت لینکش نبود. من میخوام مثلا در صفحه ویژگی محصولات، لیست محصولات ثبت شده رو ببینم. در این حالت میشه از کلاس user که تعریف کردید استفاده کرد؟ یا باید یه کلاس دیگه برای این کار بسازم؟ (مثلا product.php که توش نام جدول رو تعریف کنم). اگه از همون کلاس user استفاده بشه که نام جدولش متفاوت میشه و باید یه کانکشن جدید ساخت.
        ممنون

        پاسخ
      2. حسن شفیعی ۸ دی ۱۳۹۸

        سلام. خیر شما باید یک کلاس جدا که در فایل جدا هست استفاده کنید و در کلاس User فقط عملیات مربوط به کاربران رو مدیریت کنید مثلا برای محصولات میتونید فایل Product.php با کلاس Product رو ایجاد کنید.
        موفق باشید.

        پاسخ
  29. mohammad ۴ دی ۱۳۹۸

    سلام برا من این مشکل رو میاره اگه میشه راهنمایی کنید؟
    Fatal error: Call to a member function fetch_assoc() on a non-object in C:\Users\95819062\Documents\EasyPHP-DevServer-14.1VC9\data\localweb\New folder (2)\user.php on line 64

    پاسخ
    1. حسن شفیعی ۵ دی ۱۳۹۸

      سلام. اگر تغییری انجام دادید لطفا به اول برگردانید یا اینکه سورس کد کامل را از باکس دانلود, دریافت و اطلاعات دیتابیس را بروزرسانی و دوباره چک کنید.
      موفق باشید.

      پاسخ
  30. سعید ۲۱ آبان ۱۳۹۸

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

    پاسخ
    1. حسن شفیعی ۲۲ آبان ۱۳۹۸

      سلام. ممنون.
      میتونید برای مدیر و کاربر عادی فقط یک جدول داشته باشید که با فلگ بتونید کاربران رو سطح بندی کنید و هنگام لاگین کردن در صفحه مشترک بر اساس دسترسی هایی که دارند آپشن های مختلف را فراخوانی و نمایش بدید
      موفق باشید.

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