PHP - resubo el tema por si alguien pude ayudarme .....

 
Vista:
Imágen de perfil de vicente
Val: 152
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

resubo el tema por si alguien pude ayudarme .....

Publicado por vicente (78 intervenciones) el 27/10/2016 20:52:18
Pues eso resubo el tema por si alguien puede ayudarme pq por lo visto nadie sabe como hacer esto.....
Este es mi header.inc.php
al cual le he añadido un formulario de inicio de sesion........

lo que quiero hacer es que cuando alguien inicie sesion me aparezca el avatar del usuario y debajo su nick y que la palabra Login cambie a Desconectar.......

y que cuando alguien se desconecte desparezca el avatar, el nick y la palabra Desconectar y vuelva ha aparecer la palabra Login......

Pero no lo consigo alguien puede ayudarme , porfavor , pienso que no es tan dificil lo que quiero hacer, solo que , entre que estoy un poco verde en php y que ya veo todo el codigo igual , no se ya como hacerlo, ni lo que pueda estar haciendo mal.......

este es el codigo:
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
<?php
 
$ruta ="/practicasphp/Pagina final/";
$estado = " ";
echo'<div class="container-fluid navbar navbar-default navbar-static-top" role="navigation">';
    	echo'<div class="navbar-header">';
        	echo'<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">';
            	echo'<span class="sr-only">Toogle navigation</span>';
            	echo'<span class="icon-bar"></span>';
                echo'<span class="icon-bar"></span>';
                echo'<span class="icon-bar"></span>';
            echo'</button>';
        		echo'<a class="navbar-brand" href="index.php">';
                	echo'<span class="logotipo"><img class="img-responsive" src="img/logotipo.png" alt="logotipo"</span>';
                echo'</a>';
         echo'</div>';
      echo'<div class="collapse navbar-collapse">';
        echo'<ul class="nav navbar-nav navbar-right">';
			switch($_SERVER['PHP_SELF'])
			{
				case $ruta."index.php";
	 				echo '<li class="text-center "><a href="servicios.php">Servicios</a></li>';
     				echo '<li class="text-center"><a href="blog.php">Blog</a></li>';
     				echo '<li class="text-center"><a href="proyectos.php">Proyectos</a></li>';
     				echo '<li class="text-center"><a href="contacto.php">Contacto</a></li>';
	 				break;
				case $ruta."blog.php";
	 				echo '<li class="text-center"><a href="index.php">Identidad</a></li>';
     				echo '<li class="text-center"><a href="servicios.php">Servicios</a></li>';
     				echo '<li class="text-center"><a href="proyectos.php">Proyectos</a></li>';
     				echo '<li class="text-center"><a href="contacto.php">Contacto</a></li>';
					break;case $ruta."categorias.php";
	 				echo '<li class="text-center"><a href="index.php">Identidad</a></li>';
     				echo '<li class="text-center"><a href="servicios.php">Servicios</a></li>';
     				echo '<li class="text-center"><a href="proyectos.php">Proyectos</a></li>';
     				echo '<li class="text-center"><a href="contacto.php">Contacto</a></li>';
	 				break;
					case $ruta."comentarios.php";
	 				echo '<li class="text-center"><a href="index.php">Identidad</a></li>';
     				echo '<li class="text-center"><a href="servicios.php">Servicios</a></li>';
     				echo '<li class="text-center"><a href="proyectos.php">Proyectos</a></li>';
     				echo '<li class="text-center"><a href="contacto.php">Contacto</a></li>';
	 				break;
				case $ruta."proyectos.php";
	 				echo '<li class="text-center"><a href="index.php">Identidad</a></li>';
     				echo '<li class="text-center"><a href="servicios.php">Servicios</a></li>';
     				echo '<li class="text-center"><a href="blog.php">Blog</a></li>';
     				echo '<li class="text-center"><a href="contacto.php">Contacto</a></li>';
	 				break;
				case $ruta."contacto.php";
	 				echo '<li class="text-center"><a href="index.php">Identidad</a></li>';
     				echo '<li class="text-center"><a href="servicios.php">Servicios</a></li>';
     				echo '<li class="text-center"><a href="blog.php">Blog</a></li>';
    	 			echo '<li class="text-center"><a href="proyectos.php">Proyectos</a></li>';
	 				break;
				case $ruta."servicios.php";
	 				echo '<li class="text-center"><a href="index.php">Identidad</a></li>';
     				echo '<li class="text-center"><a href="blog.php">Blog</a></li>';
     				echo '<li class="text-center"><a href="proyectos.php">Proyectos</a></li>';
     				echo '<li class="text-center"><a href="contacto.php">Contacto</a></li>';
	 				break;
				case $ruta."formulario_contacto.php";
					break;
				case $ruta."administrador_blog.php";
					break;
			}
        echo'</ul>';
      echo'</div><!--/.nav-collapse -->';
session_start();
if(isset($_SESSION['login_user'])){
echo'<div>';
	echo'<div class="inf_usuario">';
		echo'<img src="img/icons/avatar/admin.png"' . $avatar . '"width="50px" height="auto"><br />';
		echo'<div>' . $_SESSION['login_user'] . '</div>';
	echo'</div>';
echo'</div>';
}else{
echo'<div class="dropdown">';
	echo'<a class="btn btn-primary dropdown-toggle" id="login" type="button" data-toggle="dropdown">';
	switch($_SERVER['PHP_SELF'])
		{
			case $estado."$_SESSION['login_user'];
	 				echo 'Login';
	 				break;
			case $estado."$_SESSION['login_user']";
	 				echo 'Desconectar';
	 				break;
			
		}	
	echo'</a>';
	include_once('conexion_blog.inc.php');
		if($_SERVER['REQUEST_METHOD'] == "POST"){
			$usuario = mysqli_real_escape_string($ConDB,$_POST['username']);
			$contrasena = mysqli_real_escape_string($ConDB,$_POST['password']);
			$sql = "SELECT id_usuario FROM registro WHERE usuario ='$usuario' and password = '$contrasena'";
			$resultado = mysqli_query($ConDB,$sql);
			$row = mysqli_fetch_array($resultado,MYSQLI_ASSOC);
			$active = $row['active'];
			$count = mysqli_num_rows($resultado);
			if($count == 1){
				session_register("usuario");
				$_SESSION['url_avatar'] == $avatar;
				header("location:welcome.php");
				}else{
					$error = "El Usuario o Password no son correctos";
				}
    			echo'<form class="dropdown-menu" role="menu" aria-labelledby="menu1">';
					echo'<fielset>';
						echo'<legend class="login text-center">Inicio de sesion</legend>';
							echo'<i class="fa fa-user" aria-hidden="true"></i>';
								echo'<input class="text-muted user_text" type="text" name="username" id="username" placeholder="Usuario"><br />';
								echo'<br />';
							echo'<i class="fa fa-key" aria-hidden="true"></i>';
								echo'<input class="passwd text-muted passwd_text" type="text" name="password" id="password" placeholder="Password"><br />';
								echo'<br />';
								echo'<input class="checkLogin" type="checkbox" name="recordar" id="recordar">';
								echo'<label class="remember text-warning" for="recordar">Recordar</label>';
								echo'<input class="flogin" type="submit" name="submit" id="submit" value="Inicio">';
					echo'</fieldset>';
    			echo'</form>';
				}
	   }
	echo'</div><!--Fin Formulario inicio sesion-->';
echo'</div><!--/.nav-container -->';
 
?>
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
Imágen de perfil de xve
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

resubo el tema por si alguien pude ayudarme .....

Publicado por xve (6935 intervenciones) el 28/10/2016 08:33:08
Hola Vicente, creo que la linea 82 y 85 estan mal...
Creo que tendrían que ser algo así, sin comillas:
1
case $estado.$_SESSION['login_user'];
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
sin imagen de perfil

resubo el tema por si alguien pude ayudarme .....

Publicado por Emi (3 intervenciones) el 28/10/2016 13:47:33
Voy a explicar como lo hago yo por si te sirve...
Cuando trabajo con logins de usuario, yo hago lo siguiente:
- Primero creo una clase para agarrar de la base de datos todos los datos del usuario:ç
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
<?php
 
class Maestro {
    private $cod;
    private $nombre;
    private $apellidos;
    private $usum;
    private $pass;
    private $mail;
    private $foto;
 
 
    public function __construct($cod, $nombre, $apellidos, $usum, $pass,  $mail, $foto){
        $this->cod=$cod;
        $this->nombre=$nombre;
        $this->apellidos=$apellidos;
        $this->usum=$usum;
        $this->pass=$pass;
        $this->mail=$mail;
        $this->foto=$foto;
    }
 
    public function getCod(){
        return $this->cod;
    }
    public function getNombre(){
        return $this->nombre;
    }
    public function getApellidos(){
        return $this->apellidos;
    }
    public function getUsum(){
        return $this->usum;
    }
    public function getPass(){
        return $this->pass;
    }
    public function getMail(){
        return $this->mail;
    }
    public function getFoto(){
        return $this->foto;
    }
    public function minifoto($estilo) {
        return "<img style='$estilo' src='".$this->foto."'/>";
    }
 
}

- Segundo: Definida la clase procedo a mostrar según este login o no:
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
32
33
34
35
36
37
38
39
40
41
42
43
<?php
include 'class/Maestro.php'; //Aquí es dónde se guardan todos los datos citados anteriormente.
session_start(); //Esto para la sesión.
include 'config.php'; //Esto es para la conexión a la bbdd
 
!DOCTYPE html>
 
<html>
    <head>
        <meta charset="UTF-8">
        <title>Ejemplo</title>
    </head>
    <body>
 
        <?php
            if (!isset($_SESSION['cliente'])){
            //Aquí le digo que si no existe sesión que muestro identificación y registrar
            ?>
 
        <div align='right'>
            <a href='identificacion.php'><h3>Identif&iacute;cate</h3></a>
            <a href='registrar.php'><h3>Registrate</h3></a></br>
        </div>
 
        <?php
            }
            if (isset($_SESSION['master'])){
            //Aquí muestra si existe sesión el usuario logueado, con su foto etc... sin mostrar identificación(login) ni registrarse
 
           echo "<div align='right'>" .$_SESSION['master']->minifoto('width:50px;height:50px;'). " " .$_SESSION['master']->getNombre(). " " .$_SESSION['master']->getApellidos()." <a href='logout.php'>Salir</a></div>";
        ?>
                        <center><h3>Bienvenido <?php echo $_SESSION['master']->getNombre(); ?></h3></center>
                        <!--    <center><a href="x">y</a></center><br/> -->
                        <?php
                            if ($_SESSION['cliente']->getAdm()=='S'){
                            //Esto si es admin S, mostrará esto
                        ?>
 
                            <center><a href="x.php">y</a></center><br/>
        <?php
                            }
            }
        ?>

- Tercero para cerrar sesión, haces clic en salir que te redirige a logout.php donde está esto:
1
2
3
4
5
6
<?php
session_start();
if (isset($_SESSION['master'])){
    unset ($_SESSION['master']); //Esto es lo que cierra la sesión
}
header ('location:index.php');

Espero que te sirva
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
Imágen de perfil de vicente
Val: 152
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

resubo el tema por si alguien pude ayudarme .....

Publicado por vicente (78 intervenciones) el 31/10/2016 09:49:28
ok vale te entiendo......
pero tengo una duda tu cuando desconectas te redirige a index.php........
pero yo quiero que no me redija a ningun sitio siplemente que cierre la sesion y sin moverse de la pagina oculte la imagen , usuario

vamos que el unico redireccionamiento que quiero es que cuando le de a register se me habra el formulario de registro que tengo en una ventana modal en otra pagina.....
por otro lado me gustaria incluir todo el referente al inicio de sesion dentro de un header.php,esd posible???


tambien tengo duda sobre si debo crear otra tabla llamada login o simplemente con la tabla que uso para registro me sirve......

muchas gracias por tu respuesta , pq no es lo unico que me falta para terminar la pagina y como que me esta costando....
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
Imágen de perfil de vicente
Val: 152
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

resubo el tema por si alguien pude ayudarme .....

Publicado por vicente (78 intervenciones) el 31/10/2016 10:55:37
he seguido tu sugerencia y he puesto.....

1
case $estado.$_SESSION['login_user'];

pero me da error al darle a desconectar
Notice: Undefined index: login_user in C:\pruebas\Pagina final\includes\header_flogin.inc.php on line 82

Notice: Undefined variable: estado in C:\pruebas\Pagina final\includes\header_flogin.inc.php on line 82

Notice: Undefined index: login_user in C:\pruebas\Pagina final\includes\header_flogin.inc.php on line 85

Notice: Undefined variable: estado in C:\pruebas\Pagina final\includes\header_flogin.inc.php on line 85

en realidad este case lo unico que hace o deberia de hacer es que si estoy logueado me muestre la palabra desconectar y si no lo estoy que me muestre la palabra login que es la que abre el formulario de inicio de sesion....

de todas formas gracias por tu respuesta seguire intentando ver que falla......
y si no lo consigo subire la pagina sin el blog , que es el que lleva el login........ Ya he perdido demasiado tiempo detras de esto y no puedo perder mas tiempo con un simple header con login.......

Gracias por todo, 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
Imágen de perfil de vicente
Val: 152
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

resubo el tema por si alguien pude ayudarme .....

Publicado por vicente (78 intervenciones) el 31/10/2016 13:16:29
he rehecho de cero el header sin conseguir el resultado deseado, consigo que se muestre el formulario al igual que antes ....
pero no consigo ni que me muestre la imagen del usuario , ni el nick , ni que me cambie la palabra login por desconectar

subo codigo por si alguien puede ayudarme.......
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
<?php
// este es el header.php , funciona como debe de funcionar y hasta aqui todo bien
//$imagen = "../img/web-redesign.jpg";
//print_r($_SERVER['PHP_SELF']);
$ruta ="/practicasphp/Pagina final/";
echo'<div class="container-fluid navbar navbar-default navbar-static-top" role="navigation">';
    	echo'<div class="navbar-header">';
        	echo'<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">';
            	echo'<span class="sr-only">Toogle navigation</span>';
            	echo'<span class="icon-bar"></span>';
                echo'<span class="icon-bar"></span>';
                echo'<span class="icon-bar"></span>';
            echo'</button>';
        		echo'<a class="navbar-brand" href="index.php">';
                	echo'<span class="logotipo"><img class="img-responsive" src="img/logotipo.png" alt="logotipo"</span>';
                echo'</a>';
         echo'</div>';
      echo'<div class="collapse navbar-collapse">';
        echo'<ul class="nav navbar-nav navbar-right">';
			switch($_SERVER['PHP_SELF'])
			{
				case $ruta."index.php";
	 				echo '<li class="text-center "><a href="servicios.php">Servicios</a></li>';
     				echo '<li class="text-center"><a href="blog.php">Blog</a></li>';
     				echo '<li class="text-center"><a href="proyectos.php">Proyectos</a></li>';
     				echo '<li class="text-center"><a href="contacto.php">Contacto</a></li>';
	 				break;
				case $ruta."blog.php";
	 				echo '<li class="text-center"><a href="index.php">Identidad</a></li>';
     				echo '<li class="text-center"><a href="servicios.php">Servicios</a></li>';
     				echo '<li class="text-center"><a href="proyectos.php">Proyectos</a></li>';
     				echo '<li class="text-center"><a href="contacto.php">Contacto</a></li>';
					break;case $ruta."categorias.php";
	 				echo '<li class="text-center"><a href="index.php">Identidad</a></li>';
     				echo '<li class="text-center"><a href="servicios.php">Servicios</a></li>';
     				echo '<li class="text-center"><a href="proyectos.php">Proyectos</a></li>';
     				echo '<li class="text-center"><a href="contacto.php">Contacto</a></li>';
	 				break;
					case $ruta."comentarios.php";
	 				echo '<li class="text-center"><a href="index.php">Identidad</a></li>';
     				echo '<li class="text-center"><a href="servicios.php">Servicios</a></li>';
     				echo '<li class="text-center"><a href="proyectos.php">Proyectos</a></li>';
     				echo '<li class="text-center"><a href="contacto.php">Contacto</a></li>';
	 				break;
				case $ruta."proyectos.php";
	 				echo '<li class="text-center"><a href="index.php">Identidad</a></li>';
     				echo '<li class="text-center"><a href="servicios.php">Servicios</a></li>';
     				echo '<li class="text-center"><a href="blog.php">Blog</a></li>';
     				echo '<li class="text-center"><a href="contacto.php">Contacto</a></li>';
	 				break;
				case $ruta."contacto.php";
	 				echo '<li class="text-center"><a href="index.php">Identidad</a></li>';
     				echo '<li class="text-center"><a href="servicios.php">Servicios</a></li>';
     				echo '<li class="text-center"><a href="blog.php">Blog</a></li>';
    	 			echo '<li class="text-center"><a href="proyectos.php">Proyectos</a></li>';
	 				break;
				case $ruta."servicios.php";
	 				echo '<li class="text-center"><a href="index.php">Identidad</a></li>';
     				echo '<li class="text-center"><a href="blog.php">Blog</a></li>';
     				echo '<li class="text-center"><a href="proyectos.php">Proyectos</a></li>';
     				echo '<li class="text-center"><a href="contacto.php">Contacto</a></li>';
	 				break;
				case $ruta."formulario_contacto.php";
					break;
				case $ruta."administrador_blog.php";
					break;
			}
        echo'</ul>';
      echo'</div><!--/.nav-collapse -->';
	  echo'</div><!-- Login -->';
	  	include('login.php');// aqui incluyo en formulario login que mas abajo pondre el codigo
		include('sesion.php');//aqui incluyo el archivo session que tambien pondre mas abajo al que llamo para que me escriba el avatar
                                                 //y nombre de usuario
			echo'<div>';
				echo'<div class="inf_usuario">';
					echo'<img src="img/icons/avatar/"'.$avatar . '"width="50px" height="auto"><br />"';
						echo'<div>' . $_SESSION['login_user'] . '</div>';
				echo'</div>';
			echo'</div>';
	  echo'</div><!--/. Login -->';
	  echo'</div><!--/.nav-container -->';
archivo login que lleva el formulario:
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
32
33
34
35
36
37
38
39
40
41
42
43
<?php
   include("conexion_blog.inc.php");
   session_start();
   	if($_SERVER["REQUEST_METHOD"] == "POST") {
      // username and password sent from form 
 
      $usuario = mysqli_real_escape_string($ConDB,$_POST['username']);
      $password = mysqli_real_escape_string($ConDB,$_POST['password']);
 
      $sql = "SELECT id FROM registro WHERE usuario = '$username' AND password = '$password'";
      $resultado = mysqli_query($ConDB,$sql);
      $row = mysqli_fetch_array($resultado,MYSQLI_ASSOC);
      $active = $row['active'];
      $count = mysqli_num_rows($resultado);
      $origen= $_SERVER["HTTP_REFERER"];
      // If result matched $username and $password, table row must be 1 row
 
      if($count == 1) {
         session_register("usuario");
         $_SESSION['login_user'] = $usuario;
 
         header('location:' . $origen);
      }else {
         $error = "El Usuario o Contraseña es invalido";
      }
   }
 echo'<div class="dropdown">';
	echo'<a class="btn btn-primary dropdown-toggle" id="login" type="button" data-toggle="dropdown">Login</a>';
               echo'<form class="dropdown-menu" role="menu" aria-labelledby="menu1">';
					echo'<fielset>';
						echo'<legend class="login text-center">Inicio de sesion</legend>';
							echo'<i class="fa fa-user" aria-hidden="true"></i>';
								echo'<input class="text-muted user_text" type="text" name="username" id="username" placeholder="Usuario"><br />';
								echo'<br />';
							echo'<i class="fa fa-key" aria-hidden="true"></i>';
								echo'<input class="passwd text-muted passwd_text" type="text" name="password" id="password" placeholder="Password"><br />';
								echo'<br />';
								echo'<input class="checkLogin" type="checkbox" name="recordar" id="recordar">';
								echo'<label class="remember text-warning" for="recordar">Recordar</label>';
								echo'<input class="flogin" type="submit" name="submit" id="submit" value="Inicio">';
					echo'</fieldset>';
    			echo'</form>';
?>
archivo sesion
1
2
3
4
5
6
7
8
9
10
11
12
13
<?php
   include('conexion_blog.inc.php');
   session_start();
   $user_check = $_SESSION['login_user'];
   $avatar_check = $_SESSION['login_user'];
   $ses_sql = mysqli_query($ConDB,"SELECT usuario FROM registro WHERE usuario = '$user_check' AND avatar = '$avatar_check'");
   $row = mysqli_fetch_array($ses_sql,MYSQLI_ASSOC);
   $login_session = $row['usuario'];
 
   if(!isset($_SESSION['login_user'])){
      header("location:login.php");
   }
?>

alguien puede ayudarme con esto
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