Tengo una página llamada zona (archivo php ) donde quiero colgar varios artículos, pero quiero que para poder ver los artículos de esa página, los usuarios deban de estar logados & registrados en mi bbdd.
Por lo que cual he metido en formulario en la página zona donde le pido al usuario el email y la password.
Incluyo unicamente el form del archivo php donde se hace la llamada a la página encargada de acceder a la bbd
<?php
echo 'Bienvenido: ';
if (isset($_SESSION['email'])) {
echo '<b>'.$_SESSION['email'].'</b>.('.$_SESSION['fp_username'].')';
echo '<p><a href="logout.php">Logout</a></p>';
}else{
echo ' <form id="formulario" action="validar_usuario3.php" method="post">
<label for="email"> E-mail </label>
<br >
<input type="text" name="email" id="email" class="required email" >
<br >
<label for="telefono"> Password </label>
<br >
<input type="password" name="password" id="password" class="required" >
<br>
<input type="submit" id="enviar" value="Enviar" >
</form>
<p><a href="registrar.php">Alta como nuevo usuario </a></p>';
}
Como os he comentado , este formulario llama a un php que se llama validar_usuario3, encargado de coger el email y la password y comprobar en la bbdd que existe
El código de este php es el siguiente :
<?php session_start();
$dbhost = "localhost";
$dbuser = "corbachu";
$dbpass = "Xxxx";
$conx = mysql_connect($dbhost, $dbuser, $dbpass);
mysql_select_db("corbachu_percy", $conx)or die ('Error al seleccionar la Base de Datos: '.mysql_error());;
if(trim($_POST['email']) != "" && trim($_POST['password']) != "")
{
$sql = 'SELECT password, email, username FROM usuarios WHERE email=\''.$email.'\' and password=\''.$password.'\'';
$result = mysql_query($sql);
if($row = mysql_fetch_array($result)){
if($row['password'] == $password){
$_SESSION['fp_username'] = $row['username'];
$_SESSION['email'] = $row['email'];
var_dump ($result);
echo 'Has sido logueado correctamente '.$_SESSION['fp_username'].' <p>';
echo '<a href="zona.php">Index</a></p>Ingreso exitosooooooooo, ahora sera dirigido a la pagina principal , esperemos con la sesión.
<SCRIPT LANGUAGE="javascript">
location.href = "zona.php";
</SCRIPT>';
}else{
echo 'Datos incorrectos o contraseñas incorrectas;)';
}
}else{
echo 'datos incorrectos :)';
}
mysql_free_result($result);
}else{
echo 'Debe especificar un usuario y password';
}
El problema que tengo es que, una vez accede a la bbdd y comprueba que el email y la password son correctas , cuando vuelve a la página zona.php no sabe que el usuario que está en la sesión , como si no se hubiera logado. He probado a poner sessionstart() en el archivo zona.php pero me da un error de código.
Muchas gracias por vuestra ayuda