<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: hajar585</title>
    <description>The latest articles on DEV Community by hajar585 (@hajar585).</description>
    <link>https://dev.to/hajar585</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3918429%2Ffc97c010-5bbf-452f-91ea-efc17ba2e53d.png</url>
      <title>DEV Community: hajar585</title>
      <link>https://dev.to/hajar585</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/hajar585"/>
    <language>en</language>
    <item>
      <title>CoffeeTime – PHP Authentication System Tutorial</title>
      <dc:creator>hajar585</dc:creator>
      <pubDate>Fri, 08 May 2026 03:42:41 +0000</pubDate>
      <link>https://dev.to/hajar585/coffeetime-php-authentication-system-tutorial-2j11</link>
      <guid>https://dev.to/hajar585/coffeetime-php-authentication-system-tutorial-2j11</guid>
      <description>&lt;p&gt;In this project, I built a simple web application called CoffeeTime using PHP and MySQL. The main goal of this project was to understand how a full authentication system works, including user registration, login, session handling, and logout functionality.&lt;/p&gt;

&lt;p&gt;The system starts with a registration page where users can create a new account by entering their username, email, and password. Before saving the data, I validate the inputs to make sure that all fields are filled correctly, the email is in a valid format, and the password meets a minimum security length. To improve security, I store passwords in the database using password hashing instead of plain text, which makes the system more secure.                                                                                                      After registration, users can log in using their email and password. The system checks if the email exists in the database and then verifies the password using a secure password verification function. If the credentials are correct, a session is created to keep the user logged in and the user is redirected to the dashboard page.&lt;/p&gt;

&lt;p&gt;The dashboard is a protected page that only logged-in users can access. I used PHP sessions to control access, so if a user tries to open the dashboard without logging in, they are automatically redirected to the login page. This helps to secure the application and protect user data.&lt;/p&gt;

&lt;p&gt;The logout feature simply destroys the current session and redirects the user back to the login page. This ensures that the user is fully logged out from the system.                                                                      During this project, I also used PDO with prepared statements to connect PHP with MySQL. This helps protect the application from SQL injection attacks and improves database security. Working on this project helped me understand how real authentication systems are structured and how important security is in web development.&lt;/p&gt;

&lt;p&gt;Overall, this project was a great learning experience that improved my skills in PHP, MySQL, and web security concepts.&lt;/p&gt;

&lt;p&gt;You can watch the full project demonstration  through the YouTube video link.&lt;/p&gt;

</description>
      <category>php</category>
      <category>mysql</category>
      <category>webdev</category>
      <category>authentication</category>
    </item>
  </channel>
</rss>
