Foros del Web » Programando para Internet » PHP »

no funciona mis botones switch case

Estas en el tema de no funciona mis botones switch case en el foro de PHP en Foros del Web. tengo un problema mis botones que hice con switch case en php no me funcionan, en local funcionaron pero al subirlo al sevidor no, no ...
  #1 (permalink)  
Antiguo 31/03/2012, 09:15
 
Fecha de Ingreso: junio-2011
Mensajes: 9
Antigüedad: 13 años, 5 meses
Puntos: 0
no funciona mis botones switch case

tengo un problema mis botones que hice con switch case en php no me funcionan, en local funcionaron pero al subirlo al sevidor no, no se porque este es el codigo


Código:
aqui estan los botones

<div id="menu10">

                <ul>
                
<li><a href="index.php?modulo=6">Noticias/Eventos</a></li>
<li><a href="index.php?modulo=0">¿Que es Falun Dafa?</a></li>
<li><a href="index.php?modulo=1">¿Cómo empezar?</a></li>
<li><a href="index.php?modulo=4">Sitios de practica</a></li>
<li><a href="index.php?modulo=2">Persecucion en china</a></li>

                </ul>
             </div>

 <?php
 switch ($modulo){
	case 0:
		require "Que_es_falundafa.php";
	break;
	case 1:
		require "Comoempezar.php";
	break; 
	case 2:
		require "persecucion_china.php";
	break;
	case 3:
		require "registrarse.php";
	break;	 
	case 4:
		require "sitios_practica.php";
	break;
	case 5:
		require "crear_noticia.php";
	break;
	case 6:
		require "noticia.php";
	break;
	case 7:
		require "detalle_noticia.php";
	break;
 }
?>
  #2 (permalink)  
Antiguo 31/03/2012, 09:23
Avatar de SirDuque  
Fecha de Ingreso: febrero-2009
Ubicación: Paso del Rey, Buenos Aires, Argentina
Mensajes: 975
Antigüedad: 15 años, 9 meses
Puntos: 89
Respuesta: no funciona mis botones switch case

Utiliza require de esta manera:
Código PHP:
Ver original
  1. <?php
  2.  
  3. require("carpeta/archivo.php");
  4.  
  5. ?>

Ademas agrega default al switch:

Código PHP:
Ver original
  1. <?php
  2.  
  3. switch($variable){
  4. case 1:
  5. break;
  6. case 2:
  7. break;
  8. default: echo "ERROR";
  9. break;
  10. }
  11. ?>
__________________
Mono programando!
twitter.com/eguimariano
  #3 (permalink)  
Antiguo 31/03/2012, 09:23
Avatar de gjx2  
Fecha de Ingreso: agosto-2008
Ubicación: R.D
Mensajes: 1.153
Antigüedad: 16 años, 3 meses
Puntos: 139
Respuesta: no funciona mis botones switch case

Veo algunos problema en el codigo pero me gustaria partir desde el error que te esta dando.
  #4 (permalink)  
Antiguo 31/03/2012, 09:26
Avatar de SirDuque  
Fecha de Ingreso: febrero-2009
Ubicación: Paso del Rey, Buenos Aires, Argentina
Mensajes: 975
Antigüedad: 15 años, 9 meses
Puntos: 89
Respuesta: no funciona mis botones switch case

Cita:
Iniciado por gjx2 Ver Mensaje
Veo algunos problema en el codigo pero me gustaria partir desde el error que te esta dando.
Siguiendo el comentario de gjx2, no definis modulo

Código PHP:
<?php

$modulo
=isset($_GET["modulo"])?$_GET["modulo"]:'0';
Seguramente tenes las variables globales activadas en tu localhost, y en el hosting por seguridad no lo esta.
__________________
Mono programando!
twitter.com/eguimariano
  #5 (permalink)  
Antiguo 31/03/2012, 09:31
 
Fecha de Ingreso: junio-2011
Mensajes: 9
Antigüedad: 13 años, 5 meses
Puntos: 0
Respuesta: no funciona mis botones switch case

ok les enviare todo el codigo con el arreglo que le hice horita

la pagina se llama falundafavenzuela.com (ya esta en el servidor)

este es el codigo
Código:
lo que viene antes de esto es css y en la primera linea un session_start(); 

<?php
if (!isset($_SESSION['validar'])){
	$_SESSION['validar']="no";
	}
//*****************recogemos la sessión de mensaje
 if (isset($_SESSION['mensaje'])){
	$mensaje=$_SESSION['mensaje'];	
}else{
	$mensaje="";
}
  //************* recogemos sessión validado
if (isset($_SESSION['validar'])){
	$validar=$_SESSION['validar'];
}else{
	$validar="";
}
if(isset($_SESSION['tipo'])){
	$tipo=$_SESSION['tipo'];	
}else{
$tipo="";
}
?>
<table width="900" height="609" border="0" align="center">
  		<tr>
    	<td height="54" colspan="2"><img src="imagenes/encabezado.jpg" width="900" height="100"></td>
  		</tr>
  		<tr>
    	<td width="27%" height="513" valign="top"><table width="100%" height="370" border="0">
    	  <tr>
    	    <td height="213" valign="top"><table width="100%" border="0">
    	      <tr>
    	        <td>
                <div id="menu10">
                <ul>
                
<li><a href="index.php?modulo=6">Noticias/Eventos</a></li>
<li><a href="index.php?modulo=0">¿Que es Falun Dafa?</a></li>
<li><a href="index.php?modulo=1">¿Cómo empezar?</a></li>
<li><a href="index.php?modulo=4">Sitios de practica</a></li>
<li><a href="index.php?modulo=2">Persecucion en china</a></li>

                </ul>
             </div>
            
                </td>
  	        </tr>
  	        </table> 
             <?php if ($tipo=="u"){?>
    	      <table width="100%" border="0">
    	        <tr>
    	          <td>
                  <div id="menu10">
                  <ul>
   <li><a href="index.php?modulo=5">Crear Noticia</a></li>
   <li><a href="cerrar.php">Cerrar sesión</a></li>
                  </ul>
                 </div> 
                 </td>
  	          </tr>
        
            </table>    	      <?php }?>
            <?php if($tipo=="a"){?>
            
            <table width="100%">
            <tr>
            	<td>
                <div id="menu10">
                <ul>

<li> <a href="index.php?modulo=3">Registrar Usuario</a></li>   
<li><a href="index.php?modulo=5">Crear Noticia</a></li>
<li><a href="cerrar.php">Cerrar sesión</a></li>
                
                </ul></div></td>
            </tr>
            
            </table><?php }?>
            </td>
  	    </tr>
        
    	  </table></td> 

  <td width="100%" valign="top">
  <table width="100%" border="0">
  <?php 
if ($validar=="no")
  {?>
          <tr>
       <form name="usuario" method="post" action="validar.php">
    	    <td width="17%" align="right" >Usuario</td>
    	    <td width="25%" >&nbsp;<input type="text" name="login" title="login"/></td>
    	    <td width="17%" >Contraseña</td>
    	    <td width="23%" ><input type="password" name="pass" title="contraseña"/></td>
    	    <td width="18%" ><input type="submit" value="Enviar" name="enviar" /></td>
  	   </form> 
       		</tr>
  <?php }?>
        	<tr>
       <td colspan="5" align="right"><?php echo $mensaje; ?></td>
        	</tr>
  </table>
 <?php
 switch ($modulo){
	case 0:
		require ("Que_es_falundafa.php");
	break;
	case 1:
		require ("Comoempezar.php");
	break; 
	case 2:
		require ("persecucion_china.php");
	break;
	case 3:
		require ("registrarse.php");
	break;	 
	case 4:
		require ("sitios_practica.php");
	break;
	case 5:
		require ("crear_noticia.php");
	break;
	case 6:
		require ("noticia.php");
	break;
	case 7:
		require ("detalle_noticia.php");
	break;
 }
?>
</td>
  </tr>
  <tr>
   	<td colspan="2"><p>&nbsp;</p></td>
  </tr>
</table>
  #6 (permalink)  
Antiguo 31/03/2012, 09:33
 
Fecha de Ingreso: junio-2011
Mensajes: 9
Antigüedad: 13 años, 5 meses
Puntos: 0
Respuesta: no funciona mis botones switch case

Cita:
Iniciado por SirDuque Ver Mensaje
Siguiendo el comentario de gjx2, no definis modulo

Código PHP:
<?php

$modulo
=isset($_GET["modulo"])?$_GET["modulo"]:'0';
Seguramente tenes las variables globales activadas en tu localhost, y en el hosting por seguridad no lo esta.


ok voy a probar esto para ver
  #7 (permalink)  
Antiguo 31/03/2012, 09:34
 
Fecha de Ingreso: junio-2011
Mensajes: 9
Antigüedad: 13 años, 5 meses
Puntos: 0
Respuesta: no funciona mis botones switch case

Cita:
Iniciado por tazmaniiia Ver Mensaje
ok voy a probar esto para ver
listo amigo tenias razón gracias por la ayuda de verdad, ciertamente ya funciona pero no entendi een donde esta el error puedes explicarme?

Última edición por tazmaniiia; 31/03/2012 a las 09:40
  #8 (permalink)  
Antiguo 01/04/2012, 16:33
Avatar de SirDuque  
Fecha de Ingreso: febrero-2009
Ubicación: Paso del Rey, Buenos Aires, Argentina
Mensajes: 975
Antigüedad: 15 años, 9 meses
Puntos: 89
Respuesta: no funciona mis botones switch case

Cita:
Iniciado por tazmaniiia Ver Mensaje
listo amigo tenias razón gracias por la ayuda de verdad, ciertamente ya funciona pero no entendi een donde esta el error puedes explicarme?
En la configuracion de PHP en el archivo php.ini de tu servidor LocalHost, tienes configurado las variables globales [activada].

Por seguridad esta configuracion tiene que estar desactivada, ya que es un riesgo y un seguro ataque a tu servidor. Por lo tanto el Hosting tiene estas variables globales desactivadas.

Como funcionan las variables globales, no soy la persona correcta para explicarlo, pero si por ejemplo, si en la url ( http://www.dominio.com ) agregas ( http://www.dominio.com hola=1) en PHP esto afecta de la siguiente manera:

Código PHP:
<?php

if($hola){
echo 
"Chau";
}
// resultado Chau.

?>
Ya que estas definiendo la variable $hola en la URL (claro con las variables globales activadas).

Esto es una falencia en la seguridad.

Espero que te sirva la explicacion.
__________________
Mono programando!
twitter.com/eguimariano

Etiquetas: botones, case, switch
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 07:33.