Foros del Web » Programando para Internet » PHP »

como abrir una pagina.htm desde un formulario

Estas en el tema de como abrir una pagina.htm desde un formulario en el foro de PHP en Foros del Web. Hola, intentaré explicarme lo mejor que pueda. Tengo un formulario con un select. al darle a enviar hago una llamada a un programa php donde ...
  #1 (permalink)  
Antiguo 10/09/2006, 05:37
 
Fecha de Ingreso: septiembre-2006
Mensajes: 11
Antigüedad: 17 años, 7 meses
Puntos: 0
Mensaje como abrir una pagina.htm desde un formulario

Hola, intentaré explicarme lo mejor que pueda.
Tengo un formulario con un select. al darle a enviar hago una llamada a un programa php donde recojo la variable del formulario.

Esta variable es un valor que buscaré en una base de datos MySql donde me dará como resultado el nombre de la página web que quiero mostrar. El problema es que no se como hacer para hacer la llamada a esta página y que se abra.
Muchas gracias
  #2 (permalink)  
Antiguo 10/09/2006, 06:03
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Hola, por cierto... bienvenido a los foros :

Supongo que podrías crear una página de destino, con una instrucción header...

<?php
$url = $_GET["url"];
header("Location: $url");
?>

Creo que es así la sintaxis... ya nos lo confirmarán.

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo

Última edición por caricatos; 10/09/2006 a las 18:18
  #3 (permalink)  
Antiguo 10/09/2006, 09:31
 
Fecha de Ingreso: septiembre-2006
Ubicación: España
Mensajes: 19
Antigüedad: 17 años, 7 meses
Puntos: 0
Hola Mogena y Caricatos,

Sólo una pequeña corrección: Suponiendo que la variable del select sea "$variable", la sintaxis creo que sería:

<?php
$query = "SELECT url FROM `nombre_de_tabla` WHERE variable='$variable' LIMIT 1";
$result = mysql_query($query);
$url = mysql_result($result, 0, "url");

header("Location: $url");
?>

Un saludo,
  #4 (permalink)  
Antiguo 12/09/2006, 11:10
 
Fecha de Ingreso: septiembre-2006
Mensajes: 11
Antigüedad: 17 años, 7 meses
Puntos: 0
Exclamación

Bueno ante todo muchas gracias por vuestra ayuda caricatos y palcantara, hasta hoy no he podido comprobar la solución que me dais.
Según he podido ver el header redirecciona las paginas a otras pero cuando corre el programa me da este error. ¿Alguna idea de que puede ser?
gracias,

Warning: Cannot modify header information - headers already sent by (output started at C:\Archivos de programa\Apache Group\Apache2\htdocs\w\topfive.php:8) in C:\Archivos de programa\Apache Group\Apache2\htdocs\w\topfive.php on line 18

Última edición por mogena; 12/09/2006 a las 11:42
  #5 (permalink)  
Antiguo 12/09/2006, 13:29
Avatar de helthon  
Fecha de Ingreso: junio-2005
Ubicación: Lima
Mensajes: 549
Antigüedad: 18 años, 10 meses
Puntos: 7
Incluye codigos

Debes de incluir estos comandos al inicio y al final de tu codigo :
ob_start y ob_flush()

Código PHP:
<?
//al inicio
ob_start();
?>
<html>
.............
</html>
Código PHP:
<?
b_flush
();
?>
__________________
HELTHON FUENTES
FLORERIA FLORES PERU Floresperu.com.pe
Garantizamos que cada entrega de flores será de la más alta calidad y frescura
  #6 (permalink)  
Antiguo 12/09/2006, 13:46
 
Fecha de Ingreso: septiembre-2006
Mensajes: 11
Antigüedad: 17 años, 7 meses
Puntos: 0
Muchas gracias por tu ayuda pero lo he puesto y sigue saliendo el mismo error.
Es mas, he creado una página con el código que ves abajo y me sale el mismo error.

<?
ob_start();
header("Location:padel1.htm");
ob_flush();
?>
  #7 (permalink)  
Antiguo 12/09/2006, 14:00
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
Olvida el manejo de buffers...

El problema es que estás enviando "algo" de información (cualquier cosa, HTML, espacios en blanco...) antes del uso de la función header(); PHP trabaja del lado del servidor y la redirección será del lado del servidor, hay que entender bien eso (no tiene sentido/lógica el entregar código al navegador cuando se vá a redirigir).

Vé bien la documentación de la función header(), busca el error en este foro . Vé bien que no tengas líneas en blanco o HTML antes del código PHP.

Saludos.
http://www.forosdelweb.com/f18/por-favor-aporten-datos-sobre-consultas-no-somos-adivinos-412989/
__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"
  #8 (permalink)  
Antiguo 12/09/2006, 14:26
 
Fecha de Ingreso: septiembre-2006
Mensajes: 11
Antigüedad: 17 años, 7 meses
Puntos: 0
De acuerdo

Ahora si que si, no se si tenía espacios en blanco pero he borrado todo lo que tenía por encima del codigo php <body>,<head> etc.. y ahora si funciona.
Muchisimas gracias estoy contentísimo de como funciona este foro.
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:59.