Foros del Web » Programando para Internet » PHP »

redireccionar con contraseña

Estas en el tema de redireccionar con contraseña en el foro de PHP en Foros del Web. Hola a todos, Alguien sabe alguna forma de redireccionar a diferentes paginas segun contraseña y/o usuario? por ejemplo que la contraseña "password" me lleve a ...
  #1 (permalink)  
Antiguo 02/09/2009, 11:59
 
Fecha de Ingreso: julio-2009
Mensajes: 8
Antigüedad: 14 años, 9 meses
Puntos: 0
redireccionar con contraseña

Hola a todos,

Alguien sabe alguna forma de redireccionar a diferentes paginas segun contraseña y/o usuario? por ejemplo que la contraseña "password" me lleve a la pagina carlos.php, que la contraseña "password1" me lleve a la pagina cristian.php, etc.
Esto solo redireccion, sin proteger paginas ni nada, solo redireccion de acuerdo a diferentes contraseñas y/o usuarios.
e encontrado varios scrips pero son con proteccion de paginas y todo, yo necesito solo redireccion segun contraseña, sin proteccion de paginas ni nada.

Gracias saludos!
  #2 (permalink)  
Antiguo 02/09/2009, 12:11
 
Fecha de Ingreso: marzo-2009
Mensajes: 355
Antigüedad: 15 años, 1 mes
Puntos: 4
Respuesta: redireccionar con contraseña

Hace un switch en el caso de que no sean muchas y no sean fijas, o si son contraseñas que pueden cambiar y son varios usuarios, en la misma tabla de usuarios agregar un campo adonde tiene que redireccionar cada uno y lo utilizar en la siguiente linea:

Código PHP:
header("location: $contraseña"); 
  #3 (permalink)  
Antiguo 02/09/2009, 12:14
Avatar de dannce4life  
Fecha de Ingreso: junio-2008
Ubicación: localhost
Mensajes: 137
Antigüedad: 15 años, 10 meses
Puntos: 6
Respuesta: redireccionar con contraseña

array? :)
Código php:
Ver original
  1. <?
  2.  
  3. $claves = array();
  4.  
  5. $claves['mi_clave'] = 'lugar/archivo.html;
  6.  
  7. header("location: {$claves['mi_clave']}");
  8. ?>
__________________
Gracias
  #4 (permalink)  
Antiguo 02/09/2009, 12:40
 
Fecha de Ingreso: julio-2009
Mensajes: 8
Antigüedad: 14 años, 9 meses
Puntos: 0
Respuesta: redireccionar con contraseña

muchas gracias, pero la verda es que lo que me dicen no se como utilizarlo.
por ejemplo tengo este codigo para hacerlo:

<?php
$login = true;

$logins[0]["pass"] = "password1";
$logins[0]["redirect"] = "carlos.php";

$logins[1]["pass"] = "password2";
$logins[1]["redirect"] = "cristian.php";
?>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
Contraseña:<br />
<input type="password" name="pass" /><br />
<input type="submit" name="submit" value="Entrar" />
</form>

que tendria que agregarle a eso para que funcione?

gracias saludos
  #5 (permalink)  
Antiguo 02/09/2009, 13:01
 
Fecha de Ingreso: marzo-2009
Mensajes: 355
Antigüedad: 15 años, 1 mes
Puntos: 4
Respuesta: redireccionar con contraseña

Lo utilizar con el codigo de redireccion que te puse yo, recorda que los headers siempre van antes de mostrar o imprimir cualquier cosa.
  #6 (permalink)  
Antiguo 02/09/2009, 13:07
 
Fecha de Ingreso: julio-2009
Mensajes: 8
Antigüedad: 14 años, 9 meses
Puntos: 0
Respuesta: redireccionar con contraseña

??????????
gracias, pero lo que yo busco es poner un formulario de un campo, asi como el ejemplo que yo puse, que al introducir la contraseña me lleve a una pagina determinada para esa contraseña.

gracias a todos
  #7 (permalink)  
Antiguo 02/09/2009, 13:13
 
Fecha de Ingreso: marzo-2009
Mensajes: 355
Antigüedad: 15 años, 1 mes
Puntos: 4
Respuesta: redireccionar con contraseña

Entonces esto

Código PHP:
$logins[0]["pass"] = "password1";
$logins[0]["redirect"] = "carlos.php";

$logins[1]["pass"] = "password2";
$logins[1]["redirect"] = "cristian.php"
Ponelo en el script que se ejecuta luego del formulario, y con un foreach anda comprobando si la contraseña ingresada en el formulario concuerda con alguna de las guardadas en el array, si es asi haces la redireccion con el header() que te escribi arriba.
  #8 (permalink)  
Antiguo 02/09/2009, 13:16
Avatar de dannce4life  
Fecha de Ingreso: junio-2008
Ubicación: localhost
Mensajes: 137
Antigüedad: 15 años, 10 meses
Puntos: 6
Respuesta: redireccionar con contraseña

El script que escribí es el indicado. Del otro modo tendrias que escribir de contraseña "archivo1.html"

Lo desarrollé un poco mas para que entiendas como funciona:
Código php:
Ver original
  1. <?
  2. $p = $_POST['pass'];
  3. $claves = array();
  4.  
  5. $claves['mi_clave1'] = 'lugar/archivo.html';
  6. $claves['mi_clave2'] = 'lugar/otro.html';
  7. $claves['mi_clave3'] = 'lugar/mas.html';
  8. $claves['mi_clave4'] = 'lugar/etc.html';
  9.  
  10. header("location: {$claves[$p]}");
  11. ?>
Obviamente donde dice "mi_clave1, 2, 3, etc" van tus contraseñas correspondientes.
Espero sea de tu utilidad.
__________________
Gracias
  #9 (permalink)  
Antiguo 02/09/2009, 13:25
 
Fecha de Ingreso: julio-2009
Mensajes: 8
Antigüedad: 14 años, 9 meses
Puntos: 0
Respuesta: redireccionar con contraseña

graaacias, es exactamente lo nque buscaba

muchas gracias
  #10 (permalink)  
Antiguo 02/09/2009, 13:27
Avatar de dannce4life  
Fecha de Ingreso: junio-2008
Ubicación: localhost
Mensajes: 137
Antigüedad: 15 años, 10 meses
Puntos: 6
Respuesta: redireccionar con contraseña

Estamos para ayudar :D
__________________
Gracias
  #11 (permalink)  
Antiguo 03/09/2009, 09:12
Josemi16
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: redireccionar con contraseña

Alguien podría explicarme desde cero, que código tendría que usar y en que archivo ponerlo, y todo desde cero,.?

Muchas gracias
  #12 (permalink)  
Antiguo 03/09/2009, 10:53
Avatar de dannce4life  
Fecha de Ingreso: junio-2008
Ubicación: localhost
Mensajes: 137
Antigüedad: 15 años, 10 meses
Puntos: 6
Respuesta: redireccionar con contraseña

A que te referís con "que código tendrías que usar y en que archivo ponerlo?"

Si no tenés idea de programación, te sugiero leas las decenas de manuales que circulan por la red.

Un saludo.
__________________
Gracias
  #13 (permalink)  
Antiguo 03/09/2009, 13:25
Josemi16
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: redireccionar con contraseña

Ya he leido dos manuales,

pero mi pregunta es:

en una página "loquesea.html" pongo el código:
<?php
$login = true;

$logins[0]["pass"] = "password1";
$logins[0]["redirect"] = "carlos.php";

$logins[1]["pass"] = "password2";
$logins[1]["redirect"] = "cristian.php";
?>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
Contraseña:<br />
<input type="password" name="pass" /><br />
<input type="submit" name="submit" value="Entrar" />
</form>



y en otra pagina pongo:
<?
$p = $_POST['pass'];
$claves = array();

$claves['mi_clave1'] = 'lugar/archivo.html';
$claves['mi_clave2'] = 'lugar/otro.html';
$claves['mi_clave3'] = 'lugar/mas.html';
$claves['mi_clave4'] = 'lugar/etc.html';

header("location: {$claves[$p]}");
?>

no es así???

pero, como se debe llamar la página en la que pongo el segundo código?

y Gracias por estar como dijistes más arriba, para ayudar.
  #14 (permalink)  
Antiguo 03/09/2009, 19:32
Avatar de dannce4life  
Fecha de Ingreso: junio-2008
Ubicación: localhost
Mensajes: 137
Antigüedad: 15 años, 10 meses
Puntos: 6
Respuesta: redireccionar con contraseña

Teóricamente los dos códigos funcionan de igual manera. La diferencia es que el primer código está incompleto y no funciona. Nunca lo vas a entender así como está ahí.

El segundo es el correcto que iría en una pagina del tipo "porcesar.php", la cual recibe el post y según la contraseña, asigna un valor determinado (en este caso una pagina).

Espero haya sido claro.
Para fijar tus conocimientos intentá poner en practica dicho código.
__________________
Gracias
  #15 (permalink)  
Antiguo 03/09/2009, 21:23
 
Fecha de Ingreso: abril-2008
Mensajes: 453
Antigüedad: 16 años, 1 mes
Puntos: 16
Respuesta: redireccionar con contraseña

Cita:
Iniciado por Josemi16 Ver Mensaje
Ya he leido dos manuales,

pero mi pregunta es:

en una página "loquesea.html" pongo el código:
<?php
$login = true;

$logins[0]["pass"] = "password1";
$logins[0]["redirect"] = "carlos.php";

$logins[1]["pass"] = "password2";
$logins[1]["redirect"] = "cristian.php";
?>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
Contraseña:<br />
<input type="password" name="pass" /><br />
<input type="submit" name="submit" value="Entrar" />
</form>



y en otra pagina pongo:
<?
$p = $_POST['pass'];
$claves = array();

$claves['mi_clave1'] = 'lugar/archivo.html';
$claves['mi_clave2'] = 'lugar/otro.html';
$claves['mi_clave3'] = 'lugar/mas.html';
$claves['mi_clave4'] = 'lugar/etc.html';

header("location: {$claves[$p]}");
?>

no es así???

pero, como se debe llamar la página en la que pongo el segundo código?

y Gracias por estar como dijistes más arriba, para ayudar.
para que el apache reconozca el codigo en php vas a tener que utilizar la extencion correcta en el archivo, loquesea.html solo va a leer codigo html, para que funcione necesitas renombrar loquesea.php, entonces va a interpretar el codigo

en cuanto a la pregunta que haces eso depende de a donde apunta el formulario, en el caso anterior esta apuntando al mismo documento en el que esta corriendo
en esta linea se puede observar a donde apunta

Código php:
Ver original
  1. <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
  2. // donde $_SERVER['PHP_SELF'] devuelve la direccion actual

por lo tanto en este caso la comprobacion de la respuesta se hace en el mismo archivo, el mismo podria quedar de la siguiente manera:

Código php:
Ver original
  1. <?php
  2. $claves = array();
  3.  
  4. $claves['mi_clave1'] = 'lugar/archivo.html';
  5. $claves['mi_clave2'] = 'lugar/otro.html';
  6. $claves['mi_clave3'] = 'lugar/mas.html';
  7. $claves['mi_clave4'] = 'lugar/etc.html';
  8.  
  9. $form = '<form action=" '.$_SERVER['PHP_SELF'].' " method="post">
  10.             Contraseña:<br />
  11.             <input type="password" name="pass" /><br />
  12.             <input type="submit" name="submit" value="Entrar" />
  13.             </form>';
  14.  
  15.  
  16. if($_POST['pass']){
  17.         $p = $_POST['pass'];
  18.         //se podria comprobar que exista el array con la clave para no reenviar a una direccion invalida de la siguiente forma
  19.        if(isset($claves[$p])){
  20.               header("location: {$claves[$p]}");
  21.        }else{
  22.         // si el array no existe con esa clave carga el formulario
  23.                echo 'la clave no existe<br/>';
  24.                echo $form;
  25.         }
  26. }else{
  27.         // si no se envio el formulario
  28.         echo $form;
  29. }
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 14:16.