PHP - no me funciona la práctica: utilizaremos sesiones, cookies y funciones

   
Vista:

no me funciona la práctica: utilizaremos sesiones, cookies y funciones

Publicado por dev3rt (12 intervenciones) el 11/04/2017 15:18:49
ENUNCIADO
//He puesto los archivos que he echo en php debajo de su enunciado correspondiente:
//No me funciona correctamente,me falla, espero que alguien me pueda ayudar,muchas gracias y un saludo.
Introducción
En esta práctica utilizaremos sesiones, cookies y funciones para validar en una página web.
estructura
Utilizaremos cuatro archivos:
A. formulari.html
Este archivo será simplemente un formulario que nos pida un nombre de usuario y un password. El archivo nos enviará a validacio.php


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
<html>
 
<head>
 
<title>LOGIN</title>
 
</head>
 
<body>
 
<form method="post" action="validacio.php">
 
<p>Introdueix el nom d'usuari:

<input type="text" name="usuari"><br>

</p>

<p>Introdueix la contrasenya:

<input type="password" name="contrasenya"><br>

</p>

<input type="submit" value="Submit">

</form>

</body>

</html>

B. validacio.php
Este archivo utilizará la función comprovaPassword (login) para saber si la pareja usuario / password es correcto. En este caso, iniciará sesión dando valor a la variable de sesión login y nos redirigirá a la página contingut.php. Si comprovaPassword devuelve false, nos redirigirá al formulario inicial con la instrucción header ( "Location: formulari.html");

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<?php
 
include 'funcions.inc';
 
$usuari = $_POST['usuari'];
 
$contrasenya = $_POST['contrasenya'];
 
//print_r($_POST);
 
if(login_ok($usuari,$contrasenya)){
 
	session_start();
 
	$_SESSION['login']=$usuari;
 
	$_SESSION['login']=$contrasenya;
 
	header("Location:  contingut.php");
 
}else{
 
	header("Location:  formulari.html");
 
}
 
?>

C. contingut.php
Será una página en la que, si hemos iniciado sesión, se nos mostrará el mensaje 'Sesión iniciada' y en caso contrario nos mostrará 'Sesión no iniciada' y un link a formulari.html.

//Hay un problema entre este archivo que es el contingut.php y el de validació lo he intentado otra vez hacerlo de esta manera pero falla.
<?php

session_start();

if(isset($_SESSION['login'])==true){

echo "SESSION INICIADA";

}else{

echo "SESSION NO INICIADA".'<a href="formulari.html">Formulari</a>';

}

?>



D. funcions.inc
Este archivo contendrá las funciones necesarias para el proyecto (como mínimo, comprovaPassword).

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php
 
function login_ok($usuari,$contrasenya){
 
	if($usuari == "Tom" && $contrasenya == "Patata"){
 
		return true;
 
	}else{
 
		return false;
 
	}
 
}
 
?>
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

no me funciona la práctica: utilizaremos sesiones, cookies y funciones

Publicado por dev3rt (12 intervenciones) el 13/04/2017 13:50:21
Aguien me puede ayudar,porfavor.
He intentado volver a hacerlo como se ve he puesto isset pero no funciona muy bien en el archivo contingut.php,necesito ayuda y espero que alguien me puede ayudar porque lo que quiero es entenderlo y que me lo explique porque
El problema esta en el archivo contingut.php y validacio.php
Saludos,
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar