Foros del Web » Programando para Internet » PHP »

Ir a una pagina ingresada por el usuario

Estas en el tema de Ir a una pagina ingresada por el usuario en el foro de PHP en Foros del Web. Bueno, soy nuevo en PHP y tengo mi pagina index.php que tiene un formulario sencillo, un "imput text" y un "boton enviar" lo que quiero ...
  #1 (permalink)  
Antiguo 30/12/2008, 12:11
 
Fecha de Ingreso: diciembre-2008
Mensajes: 20
Antigüedad: 15 años, 3 meses
Puntos: 3
Busqueda Ir a una pagina ingresada por el usuario

Bueno, soy nuevo en PHP y tengo mi pagina index.php
que tiene un formulario sencillo, un "imput text" y un "boton enviar"
lo que quiero es que si escriben en el campo de texto "pagina2.php" me muestre un enlace que diga "Mostrar" y al dar clic lo lleve a:

raizprincipal/pagina2.php

o si escriben "http://google.com" Muestre el enlace "Mostrar" y los lleve a

http://google.com

creo que es lo mas simple para ustedes, pero yo no logro hacerlo, espero su respuesta

casi lo olvido...
aqui esta el codigo que tengo:

index.php
Código HTML:
 <form action="enlace.php" method="post"> 

          <input type="text" name="dir" id="dir" size="50" class="text" />
          <input type="submit" id="Enviar" value="Enviar" /> 

     </form> 

enlace.php
Código PHP:

  <?php
     $dir 
$_REQUEST['dir'];
     print (
"<a href="$dir">Mostrar</a>");
 
?>

Última edición por ito07; 30/12/2008 a las 12:39 Razón: olvide el codigo
  #2 (permalink)  
Antiguo 30/12/2008, 15:00
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: Ir a una pagina ingresada por el usuario

1- Es mejor usar $_POST que $_REQUEST
2- Cuando incluyas comillas dentro de una cadena, debes escaparlas \"
Código PHP:
  <?php
     $dir 
$_POST['dir'];
     print (
"<a href=\"$dir\">Mostrar</a>");
 
?>
__________________
- León, Guanajuato
- GV-Foto
  #3 (permalink)  
Antiguo 30/12/2008, 23:15
 
Fecha de Ingreso: diciembre-2008
Mensajes: 20
Antigüedad: 15 años, 3 meses
Puntos: 3
Respuesta: Ir a una pagina ingresada por el usuario

gracias por la ayuda, pero
mm no me funciona eso,
lo unico que me da como resultado la pagina enlace.php
es

Mostrar"); ?>


eso es lo unico que veo cuando doy el boton enviar... alguna otra solucion?
o un codigo completo, me lio mucho con esto
  #4 (permalink)  
Antiguo 30/12/2008, 23:34
 
Fecha de Ingreso: diciembre-2008
Mensajes: 70
Antigüedad: 15 años, 4 meses
Puntos: 4
Respuesta: Ir a una pagina ingresada por el usuario

Intenta hacer un poco mas cortas tus atributes de los inputs, solo necesitas name (recomendacion, limpia tu codigo)

index.php
Código HTML:
<form action="enlace.php" method="post"> 
          <input type="text" name="dir" size="50" class="text" />
          <input type="submit" value="Enviar" /> 
</form> 
enlace.php
Código PHP:
$pagina $_POST['dir'];
echo 
"<a href='".$pagina."'>Mostrar</a>"
Ahora todo esto te va a funcionar solo si el usuario introduce http://nombre_de_la_pagina porque aqui no estas haciendo comprobacion de cadena ni nada asi que si ponen algo como "hola" no los va a llevar a ningun lado.

Espero te sirva

Saludos
  #5 (permalink)  
Antiguo 01/01/2009, 01:24
 
Fecha de Ingreso: diciembre-2008
Mensajes: 20
Antigüedad: 15 años, 3 meses
Puntos: 3
De acuerdo Respuesta: Ir a una pagina ingresada por el usuario

Gracias gracias por la ayuda....
gilitos92

gracias a los dos, ya lo hice con el codigo de gilitos92, gracias por la recomendacion, y lo de ingresar "hola" justo para eso lo quiero, si ingresa hola que lo lleve a "midirectorio/hola.php" pero para eso hay que agragarle .php en el codigo, eso lo hare yo solo jeje
gracias por la ayuda
  #6 (permalink)  
Antiguo 01/01/2009, 21:58
 
Fecha de Ingreso: diciembre-2008
Mensajes: 70
Antigüedad: 15 años, 4 meses
Puntos: 4
Respuesta: Ir a una pagina ingresada por el usuario

No hay de que :)

Saludos
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

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 09:52.