Hola, carlos:
Pues en principio, solamente le asigno valor en la página de identificación:
Código PHP:
Ver originalif($sql)
{
if($result)
{
echo "Has sido identificado correctamente, $result[0], con contraseña $result[1]<br>";
$_SESSION['nombre']=$result[0];
$_SESSION['pass'] = $result[1]; //como dije arriba, ahora es $_SESSION['pass']
echo $_SESSION['nombre'].$_SESSION['pass'].'<br>'; //aquí la imprimo para comprobar que es correcta. Es correcta.
echo '<a href=".">Volver al índice</a>';
}
}
Después de comprobar que se cambia, le he asignado de nuevo un valor en la página que contiene el formulario de actualización:
Código PHP:
Ver original//...
if($sql)
{
if($result)
{
$_SESSION['pass'] = $result[1];
echo $_SESSION['pass'].'<br>';
//...
Justo después, la imprimo, y sale correcta. No obstante, al pasarla a la página donde se actualiza la BD mediante $_SESSION (antes tampoco se pasaba mediante $_GET, ahora sí), aparece cambiada. incluso he forzado que tenga el valor correcto de esta forma:
Código Javascript
:
Ver originalfunction update_account()
{
<?php
$passw = mysql_query('select pwd from usuarios where user like "'.$_SESSION['nombre'].'";',$conexion);
$final = mysql_fetch_row($passw);
$_SESSION['pass'] = $final[0];
?>
return true;
}
Código PHP:
Ver original<form action="update_account.php?user=<?php echo $_SESSION['nombre']; ?>&data=<?php echo $_SESSION['pass']; ?>" method="post" name="update_account" onSubmit="update_account();">
y luego en la página de actualización, justo después de iniciar una sesión, hago esto:
Pero nada, en el momento de actualizar, aparece cambiada.
EDITO:
He observado algo curioso: esa variable toma el valor de la contraseña que he asignado a mysql.