File: /var/www/html/lab-portal/login.php
<?php
session_start();
header("Content-Type: application/json");
// Get JSON input from fetch()
$input = json_decode(file_get_contents("php://input"), true);
$email = $input["email"] ?? "";
$password = $input["password"] ?? "";
// Validate
if (empty($email) || empty($password)) {
echo json_encode([
"success" => false,
"message" => "Email and password required."
]);
exit;
}
// ==== CURL API CALL ====
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'http://localhost/messagify/public/api/login',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POST => true,
CURLOPT_HTTPHEADER => array(
'Accept: application/json',
'Content-Type: application/json'
),
CURLOPT_POSTFIELDS => json_encode([
"email" => $email,
"password" => $password
])
));
$response = curl_exec($curl);
curl_close($curl);
// Convert API response into array
$data = json_decode($response, true);
// Check API success status
if (isset($data["success"]) && $data["success"] === true) {
// Save important values in session
$_SESSION["auth_token"] = $data["data"]["auth_token"];
$_SESSION["user"] = $data["data"];
echo json_encode([
"success" => true,
"message" => $data["message"],
"redirect" => "dashboard.php"
]);
}
else {
echo json_encode([
"success" => false,
"message" => $data["message"] ?? "Invalid login credentials"
]);
}