Hola! estoy intentado hacer un pagina sencilla en flash y que utilice sesiones para que si un usuario no esta logueado no pueda acceder a los swf.
Pero tengo un problema, yo en el swf principal meto los datos usuario y clave, estos le llegan al php y comprueba si existen en la base de datos y meto en una variable de sesion el nombre de usuario. Si los datos existen me lleva a otro swf nuevo. Este swf nuevo comprueba si esa variable de session existe. Si existe me muestra el nuevo swf y sino me lleva a otro en el cual le dice que debe ingresar sus datos desde la pagina pricipal. Esto me funciona bien, es decir meto los datos correctos, comprueba la base de datos y rellena la variable de sesion.

El problema me ocurre cuando primero intento acceder a el swf que primero debe verificar la existencia de la variable de sesion. Cuando accede a esa pagina le dice que vaya a la pagina de inicio. Desde un botton le manda a la pagina inicial. Pero una vez le manda alli, le meto los datos correctamente, pero luego no me muestra el swf que deberia, me muestra de nuevo el swf que le dice que no esta logueado, cuando en relalidad si lo esta. La verdad no se que stoy haciendo mal. Pongo aqui mi codigo de la funcion consulta.php que es el que recibe los datos y hace las comprobaciones y rellena la variable de sesion

El codigo de config php simplemente es el contenido de las variables $HOSTNAME,$USERNAME,$PASSWORD,$DATABASE;

Código :


<?php
include ("includes/config.php");
include ("includes/funciones.php");
session_start();
$usuario = $HTTP_POST_VARS['username'];
$clave = $HTTP_POST_VARS['password'];
   
if ($usuario && $clave)  {
   
$cnx=conectar();
$clave = md5(trim($clave));
$query = mysql_query(" SELECT * FROM usuarios WHERE usuario = '$usuario' AND clave = '$clave' " );
// revisamos usuario y password
if (!$query) {  ?>&opcion=0&<?  }
if (mysql_num_rows($query) > 0) {
      $HTTP_SESSION_VARS['valid_user'] = $usuario;
                 ?>&opcion=2&<?
       }   
      else{
   ?>&opcion=0&<?
                            }

}

checklogin();



Aqui el codigo de funciones.php


Código :


/***
función conectar
que = se conecta a mysql y devuelve el identificador de conexión
***/
function conectar(){
   global $HOSTNAME,$USERNAME,$PASSWORD,$DATABASE;
   $idcnx = mysql_connect($HOSTNAME, $USERNAME, $PASSWORD) or DIE(mysql_error());
   mysql_select_db($DATABASE, $idcnx);
   return $idcnx;
}

function checklogin(){
global $HTTP_SESSION_VARS;
if (isset($HTTP_SESSION_VARS['valid_user']) ) {
                                   ?>&checkeo=0&<?
                                   }
                                   else {
                session_start();
                unset($HTTP_SESSION_VARS['valid_user']);
                 $HTTP_SESSION_VARS = array();
                 session_destroy();
                              ?>&checkeo=1&<?
                 }
}




?>


Y a continuacion el codigo de ActionScript de la pagina que hace el login y comprueba si la variable de session ha sido rellenada haciendo uso de consulta.php

Código :


var check_login:LoadVars = new LoadVars();

check_login.onLoad = function(exito) {
if (exito) {   
switch (this.checkeo) {      
   case "0" :   break;      
   case "1" :   getURL("no_acceso.swf","_self");  ;break;      
    default :   break;      
                }
   
   }
}
check_login.load("consulta.php"); 





Cualquier sugerencia o recomendacion sera bien recibida.

Gracias por su atencion.

Un saludo.

[/code]