Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Al hacer include no reconoce REQUEST

Estas en el tema de Al hacer include no reconoce REQUEST en el foro de PHP en Foros del Web. Hola, Tengo una página en PHP, en la cual hago un include a otra página (a la cabecera, la cual es idéntica en todas las ...
  #1 (permalink)  
Antiguo 07/04/2012, 14:36
Avatar de luna690  
Fecha de Ingreso: marzo-2012
Ubicación: Barcelona
Mensajes: 61
Antigüedad: 12 años, 1 mes
Puntos: 3
Al hacer include no reconoce REQUEST

Hola,

Tengo una página en PHP, en la cual hago un include a otra página (a la cabecera, la cual es idéntica en todas las páginas).
Lo malo, es que dentro de la cabecera compruebo con un if() si existe una variable pasada por parámetro (normalmente por GET, pero por si acaso, lo compruebo con REQUEST para estar del todo segura).

Total, que no reconoce cuando le llega la variable. Es normal o puede que sea que tenga algo en sintaxi mal?

Saludos,
Luna
  #2 (permalink)  
Antiguo 07/04/2012, 14:39
Avatar de wsoul  
Fecha de Ingreso: octubre-2010
Mensajes: 190
Antigüedad: 13 años, 6 meses
Puntos: 13
Respuesta: Al hacer include no reconoce REQUEST

puedes poner el códe de ambos ? para ver como lo haces
__________________
Compra y Vender artículos en https://www.losredactores.com o una comunidad de webmasters ? https://webeamos.com
  #3 (permalink)  
Antiguo 07/04/2012, 14:48
Avatar de luna690  
Fecha de Ingreso: marzo-2012
Ubicación: Barcelona
Mensajes: 61
Antigüedad: 12 años, 1 mes
Puntos: 3
Respuesta: Al hacer include no reconoce REQUEST

Pagina 1:
Código PHP:
<?php include("web-capsalera.php"); if (!isset($_SESSION['persona'])){ header("Location: form_login.php");  return; } ?>
<div id="container" class="box" align="center">
.... dentro de éste div va todo el contenido ....
</div>
Pagina cabecera:
Código PHP:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ca" lang="ca">

<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>TkT brainpower</title>
<meta name="author" content="Laia L." />
<meta name="date" content="2012-10-01" />
<meta name="keywords" content="web, tkt brainpower, brainpower" />
<meta name="description" content="" />

<link rel="icon" href="../estils/img/tktblack.png" type="image/gif">
<link href="../estils/css/screen.css" type="text/css" rel="stylesheet" media="screen,projection" />
<link href="../estils/style.css" type="text/css" rel="stylesheet" media="screen,projection" />
<script src="../estils/funcions.js" type="text/javascript"></script>

<script type="text/javascript" src="../estils/jquery/jquery.js"></script>
<script language="JavaScript" type="text/javascript" src="../estils/jquery/jTPS.js"></script>
<link rel="stylesheet" type="text/css" href="../estils/jquery/jTPS.css">

<script>
    !window.jQuery && document.write('<script src="jquery-1.4.3.min.js"><\/script>');
</script>

<script type="text/javascript" src="../estils/jquery/jquery.mousewheel-3.0.4.pack.js"></script>
<script type="text/javascript" src="../estils/jquery/jquery.fancybox-1.3.4.js"></script>
<link rel="stylesheet" href="../estils/jquery/jquery.fancybox-1.3.4.css" type="text/css" media="screen" />


</head>

<body>
<div id="layout">  
  <div id="header"> 
  
    <?php ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
    
session_start(); if (!isset($_REQUEST['opc']) || isset($_REQUEST['opc'])!=""){   ?>
    <h1 id="logo"><a href="../index.php"><span class="light"></span><span class="leaf">&nbsp;</span></a></h1>
        
    <hr class="noscreen" /> 
        <p class="noscreen noprint"> <em>Skip to <a href="#obsah">content</a>, <a href="#nav">navigation</a>.</em> </p>
    <hr class="noscreen" />
    
    <div align="right"><img src="../img/icon_login.png" alt="foto_login" width="20" height="20" />
        <?php if (isset($_SESSION['persona_nom'])){ echo "Hola ".ucfirst($_SESSION['persona_nom'])."<br />"; }
              
              if (!isset(
$_SESSION['persona'])){ ?>
                    <b><a style="color:#FFF" href="form_login.php">Connectar</a></b><br />
        <?php }else{ ?>
                    <b><a style="color:#FFF" href="funcions.php?funcio=tancar_sessio">Desconnectar</a></b> <?php ?>
        </div>
    
    <div id="nav" class="box">
      <ul>
        <?php if (isset($_SESSION['persona']) ){ if ($_SESSION['persona'] == 'A') { ?>
          <li><a href="form_gestioIncidencies.php?gestio=afegir">Afegir incid&egrave;ncia<br /><span>Formulari inicial</span></a></li><?php ?>
        <li><a href="form_mostrar_incidencies.php?gestio=modificar">Modificar incid&egrave;ncia<br /><span>Seguiment</span></a></li>
        <?php ?>
        <li><a href="form_mostrar_incidencies.php?gestio=consultar">Consultar incid&egrave;ncia<br /><span>Comercial | T&egrave;cnic</span></a></li>
        <li><a href="form_estadistica.php">Altres<br /><span>Dades estad&iacute;stiques</span></a></li>
      </ul>
      <hr class="noscreen" />
    </div>
    <?php /////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 
    
} include("funcions.php"); ?>

Se que es un poco chusta lo que estoy haciendo, pero todas las páginas son iguales....


La página se llamaría con una de éstas formas:
http://127.0.0.1:8888/Empresa%20-%20copia%20(26)/web/form_mostrar_distribuidors.php?opc=G

http://127.0.0.1:8888/Empresa%20-%20copia%20(26)/web/form_mostrar_distribuidors.php?opc
  #4 (permalink)  
Antiguo 07/04/2012, 14:59
Avatar de wsoul  
Fecha de Ingreso: octubre-2010
Mensajes: 190
Antigüedad: 13 años, 6 meses
Puntos: 13
Respuesta: Al hacer include no reconoce REQUEST

primero.

el session start deberías hacerlo al comenzar la página y no en el archivo include.

en vez de request usa $_GET
__________________
Compra y Vender artículos en https://www.losredactores.com o una comunidad de webmasters ? https://webeamos.com
  #5 (permalink)  
Antiguo 07/04/2012, 15:07
Avatar de luna690  
Fecha de Ingreso: marzo-2012
Ubicación: Barcelona
Mensajes: 61
Antigüedad: 12 años, 1 mes
Puntos: 3
Respuesta: Al hacer include no reconoce REQUEST

mm no, no funciona.

Rectifico Wsoul, no era por haber puesto el sessionstart() en la página del include. Era por intentar controlar el isset($_REQUEST[]) comprobando si da valor vacio. No entiendo porqué, pero es esa condición.

Gracias por tu tiempo.
Luna.

Última edición por luna690; 07/04/2012 a las 15:11 Razón: Rectifico...
  #6 (permalink)  
Antiguo 07/04/2012, 15:16
Avatar de gjx2  
Fecha de Ingreso: agosto-2008
Ubicación: R.D
Mensajes: 1.153
Antigüedad: 15 años, 8 meses
Puntos: 139
Respuesta: Al hacer include no reconoce REQUEST

Código PHP:
Ver original
  1. if (!isset($_REQUEST['opc']) || isset($_REQUEST['opc'])!=""){

Aqui veo que haces mal uso de la logica por que preguntas si $_REQUEST['opc'] no esta definida
y si esta definida y no esta vacia o sea que no esta bien .

La menera es

Código PHP:
Ver original
  1. ## Aqui le digo al sistema si  $_REQUEST['opc']  esta definida y es distinta a vacia entonces hacer algo.
  2. if ( (isset($_REQUEST['opc'])) && (!empty( $_REQUEST['opc'] )) ) {
  3.        
  4. }
empty isset

Etiquetas: include, reconoce, request, variables
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 17:10.