Hola amigos buenas tardes, tengo un sistema de login con $Session
aqui haces login y muestra las paginas y todo, hay una seccion de MIS DATOS y muestra los datos del usurario de esa sesion...
mi problema es si quieren actualizar lo pueden hacer pero si actualizan datos se actualiza en el SQL pero tienen que hacer logout y despues login para poder ver que se actualizo los datos...
hay alguna manera que pueda cuando actualize los datos recarge la session?
les pongo el cofigo
Código PHP:
<?
include("conection.php");
?>
</head>
<body>
<?
session_start();
if($_SESSION["k_username"]){
?>
<div align="center">
<p>Editar Datos</p>
<form action="" method="post" name="form1" id="form1">
<table width="273" border="0" cellspacing="1" cellpadding="1">
<tr>
<td colspan="3" align="center">
<? if (isset($_POST['id'])) {
$id = $_POST['id'];
$usuario = $_POST['usuario'];
$password= $_POST['password'];
$direccion= $_POST['direccion'];
$tel= $_POST['tel'];
$email= $_POST['email'];
$query = "UPDATE usuarios SET password='$password', direccion='$direccion', tel='$tel', email='$email' WHERE id=$id";
mysql_query($query) or die(mysql_error());
echo "<div class='amarillo10'>El usuario se actualizo correctamente</div>";
}
if (!isset($_POST['id'])) {
?>
<input name="id" type="hidden" id="id" value="<? echo ''.$_SESSION['k_id'].''; ?>" />
<input name="nombre" type="hidden" id="nombre" value="<? echo ''.$_SESSION['k_nombre'].''; ?>" />
</td>
</tr>
<tr>
<td align="right">Id:</td>
<td> </td>
<td align='left'><? echo ''.$_SESSION['k_id'].''; ?></td>
</tr>
<tr>
<td align="right">Nombre:</td>
<td width="8"> </td>
<td align='left'><? echo ''.$_SESSION['k_nombre'].''; ?></td>
</tr>
<tr>
<td align="right">Usuario:</td>
<td> </td>
<td align='left'><? echo ''.$_SESSION['k_username'].''; ?></td>
</tr>
<tr>
<td align="right">Contraseña:</td>
<td> </td>
<td align='left'><input name="password" type="text" id="password" value="<? echo ''.$_SESSION['k_password'].''; ?>" /></td>
</tr>
<tr>
<td align="right">Dirección:</td>
<td> </td>
<td align='left'><input name="direccion" type="text" id="direccion" value="<? echo ''.$_SESSION['k_direccion'].''; ?>" /></td>
</tr>
<tr>
<td align="right">Teléfono:</td>
<td> </td>
<td align='left'><input name="tel" type="text" id="tel" value="<? echo ''.$_SESSION['k_tel'].''; ?>" /></td>
</tr>
<tr>
<td align="right">Correo:</td>
<td> </td>
<td align='left'><input name="email" type="text" id="email" value="<? echo ''.$_SESSION['k_email'].''; ?>" /></td>
</tr>
<tr>
<td align="right"> </td>
<td> </td>
*</td>
</tr>
<tr>
<td colspan="3" align="center"><input type="image" style="margin-left:7px; border-style:none; height: 22px;" value="submit" name="editar" src="../images/enviar.jpg" /> </td>
</tr>
</table>
<? }
?>
</form>
</div>
<?
}else{
echo "Lo siento, no estas autorizado para ver esta seccion. favor de contactar al administrador";
}
?>
en donde abre recoge los datos de la session es validar_usuarios.php
Código PHP:
if(trim($_POST["usuario"]) != "" && trim($_POST["password"]) != "")
{
// Puedes utilizar la funcion para eliminar algun caracter en especifico
//$usuario = strtolower(quitar($_POST["usuario"]));
//$password = $_POST["password"];
// o puedes convertir los a su entidad HTML aplicable con htmlentities
$usuario = strtolower(htmlentities($_POST["usuario"], ENT_QUOTES));
$password = $_POST["password"];
$result = mysql_query('SELECT * FROM usuarios WHERE usuario=\''.$usuario.'\'');
if($row = mysql_fetch_array($result)){
if($row["password"] == $password and $row["status"] == 'Activa'){
$_SESSION["k_id"] = $row['id'];
$_SESSION["k_status"] = $row['status'];
$_SESSION["k_nivel"] = $row['nivel'];
$_SESSION["k_username"] = $row['usuario'];
$_SESSION["k_password"] = $row['password'];
$_SESSION["k_nombre"] = $row['nombre'];
$_SESSION["k_direccion"] = $row['direccion'];
$_SESSION["k_tel"] = $row['tel'];
$_SESSION["k_email"] = $row['email'];
header("Location: ../login/index3.php");
}else{
$_SESSION["k_username"] = $usuario;
echo "";
echo "<div align='center'><p class='blanco1'><br><br><br>Cotraseña no valida o Cuenta no activada</p>
<br><br><a href='index.php' class='amarillo10'>Regresar</a></div>";
};
}else{
echo "";
echo "<div align='center'><p class='blanco1'>Usuario no existente en la base de datos</p><br><br>
<a href='index.php' class='amarillo10' >Regresar</a></div>";
};
mysql_free_result($result);
}else{
echo "";
echo "<div align='center'> <p class='blanco1'>Debe especificar un usuario y password</p><br><br>
<a href='index.php' class='amarillo10'>Regresar</a></div> ";
};
mysql_close();
?>
Gracias