Foros del Web » Programando para Internet » PHP »

Utilizar variables de sesion usando datos de BD

Estas en el tema de Utilizar variables de sesion usando datos de BD en el foro de PHP en Foros del Web. Hola, otra vez yo con una pregunta, pues lo que estoy haciendo es un curso en linea, en el cual estoy poniendo que los usuarios ...
  #1 (permalink)  
Antiguo 20/01/2009, 17:05
Avatar de kurokishi  
Fecha de Ingreso: enero-2009
Ubicación: Tenochtitlán
Mensajes: 109
Antigüedad: 15 años, 3 meses
Puntos: 1
Utilizar variables de sesion usando datos de BD

Hola, otra vez yo con una pregunta, pues lo que estoy haciendo es un curso en linea, en el cual estoy poniendo que los usuarios puedan actualizar sus datos, los usuarios entran al sistema mediante un login que se compara con los datos que hay en un BD postgresql, cuando entro a la pagina e intento 'editar' alguno de los datos, me sale que hay error, (por que no defino en el query al usuario que se le va a aplicar el UPDATE:
Código PHP:
<?php
$con
=("host='127.0.0.1 dbname='Curso' user='postgres' password='*****'");
if (!
$con)
{
echo 
"Error, no se pudo conectar a la base de datos";
}
else
{
$nombre=$_GET['nombre'];
$apellido=$_GET['apellido'];
if (empty(
$nombre) || empty($apellido))
{
echo 
"Error, debe de llenar todos los campos";
}
else
{
$sql=("UPDATE identificacion SET nombres='$nombre', apellidos='$apellido'");
if(@
pg_query($sql))
{
echo 
"Los datos se actualizaron correctamente";
}
else
{
echo 
"Error al actualizar los datos.";
}
}
}
?>
supuse que al entrar al sistema con el usuario de la bd ya estaria actualizando los datos en base al usuario logeado, pero no lo hace asi, entonces si me pudieran decir como hacer que al entrar a la pagina se guarde el 'usuario' en una variable de sesion y asi ya poder editar los datos de esta sesion.
De antemano gracias y espero me puedan ayudar.
  #2 (permalink)  
Antiguo 20/01/2009, 17:27
okram
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Utilizar variables de sesion usando datos de BD

Lee sobre sesiones: http://www.php.net/session o busca en google sesiones en php

  #3 (permalink)  
Antiguo 20/01/2009, 18:27
Avatar de kurokishi  
Fecha de Ingreso: enero-2009
Ubicación: Tenochtitlán
Mensajes: 109
Antigüedad: 15 años, 3 meses
Puntos: 1
Respuesta: Utilizar variables de sesion usando datos de BD

Hola, pues estuve checando, y lo que hice fue que las variables de sesion las estoy cargando desde mi pagina de validacion de login y cuando entro a la pagina no hay problema, asi que lo que hice fue que a una variable de sesion le puse el nombre de cuenta y le asigne el valor de lo que estaba en la variable donde guarde el valor de la cuenta ingresada.

Código PHP:
<?php
session_start
();
$_SESSION["existe"]='si';
If(isset(
$_POST["usuario"]) and isset($_POST["password"]))
{
$usuario=$_POST["usuario"]; 
$pass=$_POST["password"];

//validaciones de las variables
$con=pg_connect("host=127.0.0.1 port=5432 user=postgres password=***** dbname=Curso");
if (!
$con
    {
        echo 
'Error al conectarse, verifique sus datos.';
    }
 else     
    {
    
$sql="SELECT nivel, usuario FROM comparacion WHERE usuario='$usuario' and contrasena='$pass'";
$sql1='SELECT usuario FROM comparacion';
$query=pg_query($sql);
If(
pg_num_rows($query)==1)
    {
$row=pg_fetch_array($query);
$_SESSION["usuario"]=$row[0];
$_SESSION["usuario"]=$row[1];
$_SESSION["cuenta"]=$usuario;
header ('Location: curso/nihongo_aragon.php?modulo=inicio');
exit;
    }
else
    {
header ('Location: logerror.php');
exit;
    }
    }
}    
?>
Pero al momento de ir a otro script y tratar de imprimir la variable de sesion me sale el error:
syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING
(como crei que se daba a que estaba en un iframe incluso en el iframe le puse el session_start(); y tambien a los scripts donde hago referencia a las sesiones las inicializo, pero sigue con el error, y cambiendole algunas cosas a mi script ya no me aparece el error pero lo que sucede es que no me imprime la variable de sesion:

Código PHP:
<?php
session_start
();
$_SESSION['cuenta'];
echo 
"".$_SESSION['cuenta']."<br> es la variable de sesion";
?>
y solo me aparece dl texto 'es la variable de sesion.
Se debera a que esta en el iframe (aunque lo probe fuera de el y sigue con haciendo lo mismo).
De antemando gracias, y espero que me puedan ayudar.
  #4 (permalink)  
Antiguo 20/01/2009, 21:03
okram
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Utilizar variables de sesion usando datos de BD

Los syntax error son justamente errores de sintaxis en el código PHP. Se deben a un descuido o mala programación y no tienen nada que ver con la lógica en sí de la aplicación.

En ese mensaje de error te debe aparecer también el archivo y la línea en la que se produce. revisa la sintaxis allí.

Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:56.