Today login


import React, { useState } from "react";

import axios from "axios";


const LoginPage = () => {

  const [formData, setFormData] = useState({ email: "", password: "" });

  const [errorMessage, setErrorMessage] = useState("");


  const handleChange = (e) => {

    const { name, value } = e.target;

    setFormData({ ...formData, [name]: value });

  };


  const handleLogin = async (e) => {

    e.preventDefault();


    try {

      const response = await axios.post("http://localhost:5000/api/login", {

        email: formData.email,

        password: formData.password,

      });


      if (response.data.success) {

        // Handle successful login

        console.log("Login successful!");

        // Redirect or store user info as needed

      } else {

        setErrorMessage("Invalid credentials, please try again.");

      }

    } catch (error) {

      setErrorMessage("An error occurred during login.");

      console.error(error);

    }

  };


  return (

    <div className="login-container">

      <h2>Login</h2>

      <form onSubmit={handleLogin}>

        <div className="form-group">

          <label>Email</label>

          <input

            type="email"

            name="email"

            value={formData.email}

            onChange={handleChange}

            required

          />

        </div>

        <div className="form-group">

          <label>Password</label>

          <input

            type="password"

            name="password"

            value={formData.password}

            onChange={handleChange}

            required

          />

        </div>

        {errorMessage && <p className="error-message">{errorMessage}</p>}

        <button type="submit">Login</button>

      </form>

    </div>

  );

};


export default LoginPage;


Comments

Popular posts from this blog

Controlled Form

LOCAL STORE

NodeJS MongoDB