Foros del Web » Programando para Internet » PHP »

Ejecucion de la sentencia switch

Estas en el tema de Ejecucion de la sentencia switch en el foro de PHP en Foros del Web. Muy buenas A ver si alguien me puede echar un cable con una sentencia swtich que no se porque no hace lo que le digo ...
  #1 (permalink)  
Antiguo 10/09/2006, 04:32
 
Fecha de Ingreso: septiembre-2006
Mensajes: 9
Antigüedad: 17 años, 7 meses
Puntos: 0
Ejecucion de la sentencia switch

Muy buenas

A ver si alguien me puede echar un cable con una sentencia swtich que no se porque no hace lo que le digo ;)

desde un flash paso lo siguiente a ejecutar.php:

carga_acceso.load(_root.hostweb+"ejecutar.php?acci on=logeo&pass="+pass+"&user="+user+"&llamada="+lla mada);

en funcion de esto mando dos variables user y pass para su comprobacion al php a la accion LOGEO.

el php:
Código PHP:
$cnx conectar();
$fecha_actual date("d-m-Y H:i:s",time());
echo 
"$fecha_actual<br><br>";
$fecha_id date("dm",time());

//////consulta a la base de datos////////

$cont=0;

echo
"$accion";
switch (
$accion){

        case 
"logeo":
    
        
$sql_user="SELECT * FROM users WHERE name_user='$user' AND clave_user='$pass'";
        
$keryusermysql_query ($sql_user) or die(mysql_error()."<br>el error es :$sql_user") ;
        if(
$row mysql_fetch_array($keryuser)){
        
$id_user$row["id_user"];
        echo 
"&chivato=1&";
        }else{
        echo 
"&chivato=0&name_user=$user y clave_user=$pass";
        }
    
    
mysql_close($conexion);
    break;

Ahora bien esta consulta si hago un query en el navegador solo me responde una pagina en blanco con el echo de la fecha, de ahi no pasa, no se porque no ejecuta el switch, cualquier echo que le ponga despues se lo pasa por el foro de los cojo... ;) y no se porque. La conexion a la DB esta bien lo he comprobado. NO entiendo porque :( si alguien me echa un cable estaria muy agradecido.

Thanks

Última edición por jam1138; 10/09/2006 a las 12:21
  #2 (permalink)  
Antiguo 10/09/2006, 12:20
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 19 años, 8 meses
Puntos: 102
Cita:
Iniciado por freaky Ver Mensaje
[...] solo me responde una pagina en blanco con el echo de la fecha, de ahi no pasa [...]
No es que "no pase"... en tu mismo código mandas a imprimir el valor enviado por la URL (echo"$accion";) y se entiende este no se imprime... el problema no es con el SWITCH, el problema es que no se estás recojiendo ese valor.

El método que usas (usar la variable directamente) es obsoleto, debes recojer el valor con $_GET['accion'] (imprimelo y velo). Leete las FAQ 2 y 3 para mayor información .

Saluton
__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"
  #3 (permalink)  
Antiguo 10/09/2006, 16:51
 
Fecha de Ingreso: septiembre-2006
Mensajes: 9
Antigüedad: 17 años, 7 meses
Puntos: 0
cierto

Correcto, se ve que no recojia el valor porque se lo pasaba directamente y no mediante get. Mil gracias ;)

Para quien le interese la solucion seria asi:

switch ($_GET['accion']){
case "logeo":

$sql_user="SELECT * FROM users WHERE name_user='$user' AND clave_user='$pass' AND grupo_user='$grupo'";
$keryuser= mysql_query ($sql_user) or die(mysql_error()."<br>el error es :$sql_user") ;
if($row = mysql_num_rows($keryuser)>0){
$id_user= $row["id_user"];
echo "&chivato=1&grupo_user='$grupo'";
}else{
echo "&chivato=0&name_user=$user y clave_user=$pass";
}

mysql_close($conexion);
break;

de nuevo gracias :)
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 16:07.