[Resuelto] Urgente por favor: enviar campos a php pero no desde un form

Iniciado por bgnumis, 26 Agosto 2019, 12:51 PM

0 Miembros y 1 Visitante están viendo este tema.

bgnumis

Hola,

He "conseguido" redirigir después del login a una web u otra.
La cuestión es que que el código redirige a mipagina2.php o mipagina.php

¿Cómo hago para que me envie a estas dos páginas el "registro de usuario que venia del login? Es decir los datos:    

Código (php) [Seleccionar]


$email = $_POST['email'];
$password = $_POST['password'];


¿Cómo podría incluir en mipagina2 y mipagina.php un password verify (habendo enviado el email y el password ) para que si no está logeado me redirijan a index.html?

La web que redirige hace lo siguiente:

Código (php) [Seleccionar]


<?php
session_start
();
$_SESSION['email'] = $email;


?>


<!doctype html>
<html lang="en">
<head>
<title>Check Login and create session</title>
<!-- Required meta tags -->
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">

<!-- Bootstrap CSS -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta.2/css/bootstrap.min.css" integrity="sha384-PsH8R72JQ3SOdhVi3uxftmaW6Vc51MKb0q5P2rRUpPvrszuE4W1povHYgTpBfshb" crossorigin="anonymous">
</head>
<body>
<div class="container">

<?php
// Connection info. file
include 'conn.php';

// Connection variables
$conn mysqli_connect($dbhost$dbuser$dbpass$dbname);

// Check connection
if (!$conn) {
die("Connection failed: " mysqli_connect_error());
}

// data sent from form login.html 
$email $_POST['email']; 
$password $_POST['password'];

// Query sent to database
$result mysqli_query($conn"SELECT Email, Password, Name FROM users WHERE Email = '$email'");

// Variable $row hold the result of the query
$row mysqli_fetch_assoc($result);

// Variable $hash hold the password hash on database
$hash $row['Password'];



 if ( $email === 'bgnumis@gmail.com' ){
if (password_verify($_POST['password'], $hash)) {



header('Location:mipagina2.php');

} else {
echo "<div class='alert alert-danger mt-4' role='alert'>Email or Password are incorrects!
<p><a href='login.html'><strong>Please try again!</strong></a></p></div>"
;
}}

else {
if (password_verify($_POST['password'], $hash)) {



header('Location:mipagina.php');

} else {
echo "<div class='alert alert-danger mt-4' role='alert'>Email or Password are incorrects!
<p><a href='login.html'><strong>Please try again!</strong></a></p></div>"
;
}
}


?>

</div>
<!-- Optional javascript -->
<!-- jQuery first, then Popper.js, then Bootstrap JS -->
<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.3/umd/popper.min.js" integrity="sha384-vFJXuSJphROIrBnz7yo7oB41mKfc8JzQZiCq4NCceLEaO4IHwicKwpJf9c9IpFgh" crossorigin="anonymous"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta.2/js/bootstrap.min.js" integrity="sha384-alpBpkh1PFOepccYVYDB4do5UnbKysX5WZXm3XxPqe5iKTfUKjNkCk9SaVuEZflJ" crossorigin="anonymous"></script>

</body>
</html>



Ayuda por favor. Sé que algo estoy expresando mal pero si me orientáis quizá podré resolverlo.


He visto lo siguiente:

Código (php) [Seleccionar]

<?php  
session_start
(); 
if(empty(
$_SESSION["autenticado"])){  
header("Location: index.php");  
    exit();  
}  
?>




En mi web después del login me envia a una web donde se supone que "estoy autenticado" y hago un condicional donde si el usuario es un mail me envía a mipagina2.php o a mipagina.php en cualquier otro caso.

¿cómo autentico? Y guardo los datos para que los arrastre de un archivo php a otro sin perder las "conexión del usuario"?


MOD: No hacer triple post. Usa el boton modificar. Titulo a minusculas.

#!drvy

La sesión ($_SESSION), se pasa entre sesiones. No te hace falta comprobar la contraseña constantemente.

Según el código en tu otro post, en cada página donde quieras forzar que el usuario este autentificado, debes añadir esto al principio (antes que el HTML o antes de imprimir nada):

Código (php) [Seleccionar]
session_start();
if (empty($_SESSION['loggedin'])) {
    header('Location: index.php');
    exit;
}


Saludos