Foros del Web » Programando para Internet » PHP »

problemas con header

Estas en el tema de problemas con header en el foro de PHP en Foros del Web. Tengo un buscador en php y quiero direccionarme a diferentes páginas. Por ejemplo si en el buscador deseo la opcion 1 me voy a opcion1.html, ...
  #1 (permalink)  
Antiguo 04/12/2007, 06:13
 
Fecha de Ingreso: diciembre-2007
Ubicación: huelva
Mensajes: 28
Antigüedad: 16 años, 4 meses
Puntos: 0
problemas con header

Tengo un buscador en php y quiero direccionarme a diferentes páginas. Por ejemplo si en el buscador deseo la opcion 1 me voy a opcion1.html, si cojo la opcion 2 me va a opcion2.html... entoces yo lo habia echo con header para direccionarme, ya se que es lo primero que tengo de direccionar en la página, pero es que no lo puedo hacer de otra forma.

¿Me podeis ayudar porfavor?

Espero que lo haya explicado bien
  #2 (permalink)  
Antiguo 04/12/2007, 13:23
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Re: problemas con header

No entiendo el problema
Explícate mejor, pegar un poco de código sería genial


Saludos.
  #3 (permalink)  
Antiguo 04/12/2007, 13:53
Avatar de Apolo
Colaborador
 
Fecha de Ingreso: abril-2003
Ubicación: ubicado
Mensajes: 7.961
Antigüedad: 21 años
Puntos: 109
Re: problemas con header

Movido desde el foro Web general hacia el foro de PHP.

Saludos,
__________________
Planes VPS en el mundo > DirectorioVPS
Visita los foros de hosting de ComunidadHosting
  #4 (permalink)  
Antiguo 05/12/2007, 02:18
 
Fecha de Ingreso: diciembre-2007
Ubicación: huelva
Mensajes: 28
Antigüedad: 16 años, 4 meses
Puntos: 0
Exclamación Re: problemas con header

if (($_REQUEST['property_type_id'] != "any")AND($_REQUEST['neighborhood_id'] == "any")AND($_REQUEST['area_id'] == "any")AND($_REQUEST['new_dev_id'] == "0")) {
header(Location:'http://www.paginadestino.htm');

}

Te explico: esto es una opcion de un buscador, si ocurre una serie de opciones quiero que se vaya a la pagina de destino que le indico(Código anterior).

Ya sé que el comando "header" es lo primero que tengo que direccionar en una página,pero no puedo ya que este código está metido dentro de un php que hace más cosas.

Mi pregunta ¿Existe un alternativa en php del header que no tenga que direccionarlo primero?

He intentado meter javascript dentro de php pero no me sale....

Ya no se lo que intentar.


Muchas gracias por tu ayuda. Espero que te haya explicado bien mi problema
  #5 (permalink)  
Antiguo 05/12/2007, 05:45
 
Fecha de Ingreso: septiembre-2007
Mensajes: 220
Antigüedad: 16 años, 7 meses
Puntos: 1
Re: problemas con header

Puedes usar los búferes de salida
  #6 (permalink)  
Antiguo 05/12/2007, 06:13
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Re: problemas con header

Pues si controlas el PHP, lo mejor es siempre mover el código hacia el principio de la página, en vez de mezclarlo con HTML.

Si no podés hacerlo, el uso de búferes de salida es la opción, tal cual lo menciona Sanubrio.

En las Preguntas frecuentes tenés una respuesta.
http://www.forosdelweb.com/f18/faqs-...tml#post414490

De todas formas personalmente te recomiendo separar el código PHP del HTML, es más sencillo de manejar.


Saludos.-
  #7 (permalink)  
Antiguo 07/12/2007, 02:45
 
Fecha de Ingreso: diciembre-2007
Ubicación: huelva
Mensajes: 28
Antigüedad: 16 años, 4 meses
Puntos: 0
Re: problemas con header

Muchas gracias por todas vuestra ayuda, pero no me sale. Os explico:

La página donde va el header es una en php, llama primero a sus .tpl y después el contenido(donde llamo al header).

Después hay otra página en html y php que incluye dentro a esa página anterior mencionada con un "include"

Yo donde kiero poner el header en la más interna por llamarlo de alguna manera, que es donde trato a las opciones de mi buscador.

Creo que no se va a poder hacer.

Si teneis alguna sugerencia....

Muchas gracias.
  #8 (permalink)  
Antiguo 07/12/2007, 06:40
 
Fecha de Ingreso: septiembre-2007
Mensajes: 220
Antigüedad: 16 años, 7 meses
Puntos: 1
Re: problemas con header

Y has probado a revisar los búferes de salida??
  #9 (permalink)  
Antiguo 10/12/2007, 01:30
 
Fecha de Ingreso: diciembre-2007
Ubicación: huelva
Mensajes: 28
Antigüedad: 16 años, 4 meses
Puntos: 0
Re: problemas con header

Si he probado también los buffer de salida y no me sale.

Gracias de todas formas
  #10 (permalink)  
Antiguo 10/12/2007, 05:57
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Re: problemas con header

Cita:
Iniciado por platea Ver Mensaje
no me sale.
Si no ponés un poco de código (no necesitamos páginas enteras) y más detalle en los errores que PHP te muestra, es imposible avanzar en la solución del problema.


Saludos.
  #11 (permalink)  
Antiguo 10/12/2007, 07:15
 
Fecha de Ingreso: diciembre-2007
Ubicación: huelva
Mensajes: 28
Antigüedad: 16 años, 4 meses
Puntos: 0
Re: problemas con header

No quería poner el código porque es un poco lioso:

Archivo property1.php

if (($_REQUEST['property_type_id'] != "any")AND($_REQUEST['neighborhood_id'] == "any")AND($_REQUEST['area_id'] == "any")AND($_REQUEST['new_dev_id'] == "0")) {
//echo ("<a href ='http://www.southwest-properties.es/about-us.htm'>Seguir</a>");

//<script type="text/javascript">document.location.href='www.southwest-properties.es/about-us.htm'</script>
//ob_start();
header("http://paginadestino.htm");
// ob_end_flush();

}

La primera opción fue solo con header y la segunda lo que me dijisteis del control de salida.

Este archivo está dentro de otro que se llama property.php
este código no lo he tocado

<?php

include 'libs/DbConnection.php';
require 'libs/Smarty.class.php';
require 'conf/config.php';
include 'libs/Language.php';
include 'libs/Global.php';

$smarty->config_load = $language;
$smarty = new Smarty;
$smarty->compile_check = true;
$smarty->debugging = false;

// select language
$smarty->assign("language",$language);
$smarty->assign("wpress",$wpress);
$smarty->assign("wpliteproperty",$wpliteproperty);
$smarty->assign("wpliteversion",$wpliteversion);

// sidenav

dbconnect();

?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>TITULO</title>
<meta name="description" content="DESCRIPCION">
<meta name="keywords" content="KEYWORDS">
<link href="global.css" rel="stylesheet" type="text/css" />
<LINK href="mgm.css" type=text/css rel=STYLESHEET>
<link rel="shortcut icon" href="favicon.ico" />
</head>

<body id="search">
<div id="outer">
<img src="img/flags.gif" width="156" height="15" border="0" align="right" usemap="#Map" />
<map name="Map" id="Map">
<area shape="rect" coords="79,1,153,22" href="index.php" />
</map><br />
<br />

<!-- CODIGO DE LA PAGINA -->
<br />
<br />
</div>
<?php

include('property1.php'); // INCLUYE EL ARCHIVO ANTERIOR


?>
</div>
</body>
</html>


LA salida al primer intento (solo con header) es



Warning: Cannot modify header information - headers already sent by (output started at /home/ftpswp/public_html/property.php:30) in /home/ftpswp/public_html/property1.php on line 211

La salida al segundo intento es: Página en blanco


Perdon por las molestias causadas
Muchisimas gracias
  #12 (permalink)  
Antiguo 10/12/2007, 09:42
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Re: problemas con header

El error te indica que la salida "inicio" en la linea 30 del archivo property.php, por eso no puedes enviar las cabeceras en la linea 211 del archivo property1.php, revisa que codigo tienes en la linea 30 o mueve tu cabecera antes de esa linea.

Saludos.
  #13 (permalink)  
Antiguo 11/12/2007, 02:10
 
Fecha de Ingreso: diciembre-2007
Ubicación: huelva
Mensajes: 28
Antigüedad: 16 años, 4 meses
Puntos: 0
Re: problemas con header

Muchas por el interes mostrado, de verdad.

Referido a la solucion anterior: He estado mirando el código de la línea 30 y va bien y poner antes el Header no puedo... ese es mi problema ya que está con el "include".

Muchas gracias de nuevo
  #14 (permalink)  
Antiguo 11/12/2007, 05:35
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Re: problemas con header

Estás poniendo texto antes de mandar el header, es el mismo error indicado desde el principio, aunque sean diferentes archivos físicos se tratarán como el mismo al usar include.
Mové todo el código al principio del archivo, o al menos colocá el include antes del código HTML. Si vas a usar control de salida, lo mismo: colocalo ANTES del HTML.


Saludos.
  #15 (permalink)  
Antiguo 12/12/2007, 02:10
 
Fecha de Ingreso: diciembre-2007
Ubicación: huelva
Mensajes: 28
Antigüedad: 16 años, 4 meses
Puntos: 0
Re: problemas con header

Perdon por mi torpeza pero he probado de las 2 maneras y sigue sin salirme

ya no se que probar más. Muchas gracias al foro que me ha ayudao mucho.

Muchas gracias y perdon por la lata que os he dado
  #16 (permalink)  
Antiguo 12/12/2007, 09:02
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Re: problemas con header

El problema es que no puede haber salida de texto antes de hacer un header(); tienes que quitar la salida de texto que tienes en la linea 30 del archivo property -o- moverla despues de tu linea 211.

Saludos.
  #17 (permalink)  
Antiguo 17/12/2007, 02:21
 
Fecha de Ingreso: diciembre-2007
Ubicación: huelva
Mensajes: 28
Antigüedad: 16 años, 4 meses
Puntos: 0
Re: problemas con header

Hola chicos he avanzado un poco en el mismo tema, ya el header no me da el fallo que me daba, pero tengo una duda. Sabeis si a la página que se dirige tiene que ser forzosamente una página estática, por que yo lo redirijo a una dinámica y no va.

Ahi llevais un poco del código:

Archivo php:

if (($_REQUEST['property_type_id'] == 1)AND($_REQUEST['neighborhood_id'] == "any")AND($_REQUEST['area_id'] == "any")AND($_REQUEST['new_dev_id'] == "0")) {
header("Location: http://www.paginadestino.es/Apartamentos.html");

Apartamentos.html es:

RewriteRule ^es/Apartamentos.html$ http://www.paginadestino.es/es/property.php?&action=search&new_dev_id=0&neighborh ood_id=any&area_id=any&property_type_id=1&maxprice =10000000000000&bedroom_id=-1&bathroom_id=-1&submit=Submit&limit=0


Esto está en el .htaccess pero hay un bucle ya que el rewrite llama al código de antes y éste al rewrite, me explico? ¿Como lo puedo solucionar?


Muchas gracias y perdonar por el lio en que os estoy metiendo
  #18 (permalink)  
Antiguo 20/12/2007, 04:48
 
Fecha de Ingreso: diciembre-2007
Ubicación: huelva
Mensajes: 28
Antigüedad: 16 años, 4 meses
Puntos: 0
Re: problemas con header

YAAAAAAAA MAAAAAA salioooooooo.

Muchas gracias a todos por vuestra ayuda. Cambiando un poco de codigo , con el control de flujo de salida y el header ma salio.


Muchas gracias de nuevo
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 20:09.