Foros del Web » Programando para Internet » PHP »

Dependiendo de "clave", ir a pag?

Estas en el tema de Dependiendo de "clave", ir a pag? en el foro de PHP en Foros del Web. Buenas... no se casi nada de php, lo tengo todavia en tareas pendientes... y queria preguntaros si alguno sabe como se hace esto, no creo ...
  #1 (permalink)  
Antiguo 26/09/2005, 08:24
Avatar de Apal  
Fecha de Ingreso: febrero-2005
Mensajes: 93
Antigüedad: 12 años, 10 meses
Puntos: 0
Sonrisa Dependiendo de "clave", ir a pag?

Buenas... no se casi nada de php, lo tengo todavia en tareas pendientes... y queria preguntaros si alguno sabe como se hace esto, no creo que sea muy dificil.. pero yo no lo se hacer, lo tengo hecho con javascript, pero he visto que con javascript da algunos errores con segun que versiones de internet explorer.

Al grano, alguien sabe comos se hace...

Un campo de texto y un boton de aceptar, que dependiendo de el código que se aya puesto en el campo de texto, al darle a enviar vaya a una página que tenia previamente asignada ese código, como si fuese un login y pass, pero que solo pide pass.


dejo aqui una screen para más info

Pues eso... gracias de nuevo a todos.
__________________
A todos los que dijeron que ésto no tenia futuro... :patada:
  #2 (permalink)  
Antiguo 26/09/2005, 09:18
Avatar de polaya  
Fecha de Ingreso: diciembre-2004
Ubicación: Chile
Mensajes: 191
Antigüedad: 13 años
Puntos: 0
Hola, no comprendo muy bien tu pregunta, necesitas enviar un valor a traves de un formuario y que la pagina que lo recibe lo valide??????
__________________
La vida da muchas vueltas...debe ser por eso que uno se marea.
  #3 (permalink)  
Antiguo 26/09/2005, 09:25
Avatar de Apal  
Fecha de Ingreso: febrero-2005
Mensajes: 93
Antigüedad: 12 años, 10 meses
Puntos: 0
mmm, lo que necesito es que, desde aquíaquí
, cada usuario de la pagina ponga su código, y al darle a "go!", se le envie a una página que ha estado previamente asignada a su codigo.... mmm no se si me explico...

por ejemplo, tu entras como usuario a esa pagina, y ya sabes tu codigo, asi que lo pones y le das a "go", entonces se te envia a una pagina que ya estaba echa. como si fuera en enlace... no se explicarme.. por favor, x'D soy un desastre.. me entiendes?
__________________
A todos los que dijeron que ésto no tenia futuro... :patada:
  #4 (permalink)  
Antiguo 26/09/2005, 09:36
 
Fecha de Ingreso: abril-2005
Ubicación: zürich, la rica suiza
Mensajes: 212
Antigüedad: 12 años, 7 meses
Puntos: 2
algo muy sencillo seria algo asi.

Código HTML:
<form action="post" method="password.php">
<input type="text" name="password">
<br>
<input type="submit" value="gogogo!">
</form> 

y en el archivo password.php
Código PHP:
<?php
$password 
$_POST['password'];

if(
$password == "123456"){
include 
'tupaginaconpassword.php';
}elseif(
$password == "212222"){
include 
'tupaginaconpassword_2.php';
}elseif(.....
.....
}else{
echo 
"error";
?>
eso es lo que entendi que querias no? si no ni idea. chauu
  #5 (permalink)  
Antiguo 26/09/2005, 09:45
Avatar de polaya  
Fecha de Ingreso: diciembre-2004
Ubicación: Chile
Mensajes: 191
Antigüedad: 13 años
Puntos: 0
a ha, si te entiendo, obviamente estas trabajando con base de datos y guardas los campos: usuario, clave, pagina.
De esta manera es mas facil hacer lo que necesitas.
1.- Envias la clave ingresada por el usuario a una pagina intermedia, porej: "control.php"
Código PHP:
<form action="control.php" method="POST" target="_top">
<
table width='150'>
<
TR><TD><input type="Text" name="usr" size="10" maxlength="10"></td></tr>
<
tr><td colspan="3" align="center" valign="top"><input type="Submit" value="Go"></td></tr>
</
table>
</
form
2.- En esta pagina realizas una consulta a la base de datos.
Código PHP:
$passN $_POST["usr"];

$result pg_query("SELECT * FROM tabla WHERE clave='$passN'");

$encontro pg_num_rows($result); 
3.- Si la consulta es negativa no puede entrar, de lo contrario, rescatas el nombre del usuario y su pagina y lo redireccionas.
__________________
La vida da muchas vueltas...debe ser por eso que uno se marea.
  #6 (permalink)  
Antiguo 26/09/2005, 09:58
Avatar de Apal  
Fecha de Ingreso: febrero-2005
Mensajes: 93
Antigüedad: 12 años, 10 meses
Puntos: 0
no, no estoy trabajando con base de datos aun, creo que lo que necesitava es lo que dijo peru, de todas formas muchas gracias, estoy recopilando toda esta informacion y metiendola en una página, que en breve pondre online, para tooodos ud.'s :)
__________________
A todos los que dijeron que ésto no tenia futuro... :patada:
  #7 (permalink)  
Antiguo 26/09/2005, 10:16
Avatar de Apal  
Fecha de Ingreso: febrero-2005
Mensajes: 93
Antigüedad: 12 años, 10 meses
Puntos: 0
no me va bien... kiza sea que mi inexperiencia me esta molestando.. :), a ver si me pueden ayudar..

utilizando el código de perú, me da un error en el archivo password.php, en la linea 16, que la resalto ahora.

<?php
$password = $_POST['password'];

if($password == "digitaltelecom"){
include 'digitaltelecom.php';
}elseif($password == "212222"){
include 'tupaginaconpassword_2.php';
}elseif(..... <-- ésta es la linea 16
.....
}else{
echo "error";
?>


saben que puede pasar...?
__________________
A todos los que dijeron que ésto no tenia futuro... :patada:
  #8 (permalink)  
Antiguo 26/09/2005, 11:11
Avatar de Apal  
Fecha de Ingreso: febrero-2005
Mensajes: 93
Antigüedad: 12 años, 10 meses
Puntos: 0
miren, x'D, me di cuenta de cual era mi fallo, pero aun asi hay otro error, y este no se cual es...

me da este error, Parse error: parse error, unexpected '}' in /home/emmgfx/public_html/dev/password.php on line 16

y el código que pongo es...
Código HTML:
<!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=iso-8859-1" />
<title>Documento sin t&iacute;tulo</title>
</head>
<body>
<?php
$password = $_POST['password'];
if($password == "pass1"){
include 'pag1.php';
}elseif($password == "pass2"){
include 'pass2.php';
}elseif($password=="pass3"){
include 'pass3.php'
}else{
echo "error";
?> 
</body>
</html> 
la linea 16 es la de
Código PHP:
}else{ 
estoy seguro de que es muy simple.. pero no consigo saber que es lo que pasa...
__________________
A todos los que dijeron que ésto no tenia futuro... :patada:
  #9 (permalink)  
Antiguo 26/09/2005, 11:57
 
Fecha de Ingreso: abril-2005
Ubicación: zürich, la rica suiza
Mensajes: 212
Antigüedad: 12 años, 7 meses
Puntos: 2
hola Apal!

una cosa, supongo que tienes tu localhost instalado no? si no ni hablemos porque jamas te va a funcionar !

dps el archivo password.php seria

Código PHP:
<?php
$password 
$_POST['password'];
if(
$password == "pass1"){
include 
'pag1.php';
}elseif(
$password == "pass2"){
include 
'pass2.php';
}elseif(
$password=="pass3"){
include 
'pass3.php'
}else{
echo 
"error";

}  
//te faltaba cerrar !

?>
nada mas. nada de body ni cosas asi que e complicas por las puras.

me avisas que tal. chau
  #10 (permalink)  
Antiguo 26/09/2005, 12:03
 
Fecha de Ingreso: septiembre-2004
Ubicación: Montevideo
Mensajes: 346
Antigüedad: 13 años, 2 meses
Puntos: 0
lo que te falta en la linea 16 es cerrar el } del ultimo else

Saludos.
__________________
Liber
  #11 (permalink)  
Antiguo 26/09/2005, 16:16
Avatar de Apal  
Fecha de Ingreso: febrero-2005
Mensajes: 93
Antigüedad: 12 años, 10 meses
Puntos: 0
me sigue fallando el...

}else{

no se que puede ser, he quitado el body y todo, y si, tengo el localhost instalado...
no se que puede pasar..he copiado tal cual el 2º código que me dijo peru, pero me sigue fallando lo mismo, lo unico es que ahora el fallo esta en la linea 9, pero eso es por que he suprimido todo lo de html, :S

arg.. socorro.. y gracias
__________________
A todos los que dijeron que ésto no tenia futuro... :patada:
  #12 (permalink)  
Antiguo 26/09/2005, 16:36
 
Fecha de Ingreso: abril-2005
Ubicación: zürich, la rica suiza
Mensajes: 212
Antigüedad: 12 años, 7 meses
Puntos: 2
faltaban unos ; no se si sea el error, no lo he probado. sigue tratando y avisas no mas


Código PHP:
<?php
$password 
$_POST['password'];
if(
$password == "pass1"){
include 
'pag1.php';
}elseif(
$password == "pass2"){
include 
'pass2.php';
}elseif(
$password=="pass3"){
include 
'pass3.php';   //faltaban los ;
}else{
echo 
"error";

}  
//te faltaba cerrar !

?>
  #13 (permalink)  
Antiguo 26/09/2005, 16:41
Avatar de Apal  
Fecha de Ingreso: febrero-2005
Mensajes: 93
Antigüedad: 12 años, 10 meses
Puntos: 0
ahora tansolo me dice "error", :S........
__________________
A todos los que dijeron que ésto no tenia futuro... :patada:
  #14 (permalink)  
Antiguo 26/09/2005, 17:49
 
Fecha de Ingreso: abril-2005
Ubicación: zürich, la rica suiza
Mensajes: 212
Antigüedad: 12 años, 7 meses
Puntos: 2
por lo menos estas avanzando.. :P

en verdad no se donde estara el problema. es de lo mas simple el codigo. en el primer archivo pones pass1 y el boton de enviar, los datos van al otro archivo que se llama password.php, saca el valor del text y te tendria que mandar a tu pagina pag1.php, y asi si pones pass2 o pass3. osea en total tienes que tener 5 archivos en la misma carpeta.

-formulario.html
-password.php
-pag1.php
-pass2.php
-pass3.php

suerte!
  #15 (permalink)  
Antiguo 27/09/2005, 07:37
Avatar de Apal  
Fecha de Ingreso: febrero-2005
Mensajes: 93
Antigüedad: 12 años, 10 meses
Puntos: 0
estoy seguro de que lo que falla es cosa de el código php, en la url pone

carpeta/password.php?password=pass1, asi que supongo que la página en la que esta el formulario funciona correctamente y envia la pass bien a password.php

no se que puede pasar...alguien sabe que puede ser?
__________________
A todos los que dijeron que ésto no tenia futuro... :patada:
  #16 (permalink)  
Antiguo 27/09/2005, 11:06
Avatar de polaya  
Fecha de Ingreso: diciembre-2004
Ubicación: Chile
Mensajes: 191
Antigüedad: 13 años
Puntos: 0
hola, en la pagina password.php has una salida de la variable para ver si realmente la esta "recibiendo" bien

Código PHP:
$password $_POST['password']; 
echo 
"clave: $password"
hay podras rutear manualmaente los valores recibidos
Despues cuantas que tal
saludos
__________________
La vida da muchas vueltas...debe ser por eso que uno se marea.
  #17 (permalink)  
Antiguo 27/09/2005, 14:49
Avatar de Apal  
Fecha de Ingreso: febrero-2005
Mensajes: 93
Antigüedad: 12 años, 10 meses
Puntos: 0
Bueeeeno, sigo insistiendo, a ver.. tampoco me va, ahora en vez de darme "error" me da "clave: error"...

Pongo el código aqui para que vean como esta ahora mismo... :S, seguro que hice algo mal....

Código PHP:
<?php
$password 
$_POST['password'];
echo 
"clave: $password";
if(
$password == "pass1"){
include 
'pass1.php';
}elseif(
$password == "pass2"){
include 
'pass2.php';
}elseif(
$password=="pass3"){
include 
'pass3.php';   //faltaban los ;
}else{
echo 
"error";
}  
//te faltaba cerrar !
?>
No se.. a ver si alguien sabe algo, creo que puse lo que me dijisteis....

Saludos, y muchas gracias,
__________________
A todos los que dijeron que ésto no tenia futuro... :patada:
  #18 (permalink)  
Antiguo 27/09/2005, 15:04
Avatar de Apal  
Fecha de Ingreso: febrero-2005
Mensajes: 93
Antigüedad: 12 años, 10 meses
Puntos: 0
ALELUYAAAAAAAAA, encontre a alguien que sabia como hacerlo. miren, lo pongo aqui para los que lo necesiten igual que yo,

En el código del formulario...
Código HTML:
<form action="password.php?op=redireccion" method="POST">
        <div align="center">
          <input name="password" type="text" class="Estilo29" size="10" />
          <input type="submit" class="Estilo2" value="Go!" />
        </div>
    </form> 
Y el código de el "password.php"...
Código PHP:
<?PHP
//password.php
function redireccion($password){
global 
$password;
echo 
"clave: $password";
if(
$password == "dt"){
include 
'priv/digitaltelecom.php';
}elseif(
$password == "pass2"){
include 
'pass2.php';
}elseif(
$password=="pass3"){
include 
'pass3.php';   //faltaban los ;
}else{
echo 
"error";
}  
//te faltaba cerrar !
}

switch(
$op){
case 
"redireccion":
redireccion($password);
}

?>

espero que le sirva a alguien aparte de a mi, muchas gracias a todos,
__________________
A todos los que dijeron que ésto no tenia futuro... :patada:
  #19 (permalink)  
Antiguo 27/09/2005, 15:08
Avatar de polaya  
Fecha de Ingreso: diciembre-2004
Ubicación: Chile
Mensajes: 191
Antigüedad: 13 años
Puntos: 0
la instruccion "echo" lo unico que hace es mostrar en pantalla los valores de las variables que estas enviando...entonces si aparece "clave: error", quiere decir que la variable $password, esta tomando el valor "error". Ahora revisando los post anteriores me di cuenta de un error en el codigo priemro que te envio peru
Código PHP:
<form action="post" method="password.php"> <input type="text" name="password"> <br> <input type="submit" value="gogogo!"> </form
el "action del form debe decir la pagina a la que estas direccionando: action='password.php' y el method debe ser 'post', esta al reves.
Ahora, me da la sensacion que ya lo habias notado porque de otra manera no habria llegado a la pagina password.php.
Eso por ahora voy a seguir viendo que onda.
Saludos
__________________
La vida da muchas vueltas...debe ser por eso que uno se marea.
  #20 (permalink)  
Antiguo 27/09/2005, 15:39
 
Fecha de Ingreso: abril-2005
Ubicación: zürich, la rica suiza
Mensajes: 212
Antigüedad: 12 años, 7 meses
Puntos: 2
:P falla mia :$ ,me pasa por tratar de ayudar rapido.

saludos! y suerte
  #21 (permalink)  
Antiguo 28/09/2005, 11:43
Avatar de moron  
Fecha de Ingreso: mayo-2004
Mensajes: 971
Antigüedad: 13 años, 7 meses
Puntos: 2
Hago una consulta parecida al tema tratado. Si yo quiero que un usuario se logue en determinado momento y permanezca la sesion activa hasta que se vaya como lo hago?.
En asp yo habia hecho un script que validaba el user y pass contra una bd, si estaba ok, creaba session("user_ok")= true. y en cada pagina luego chequeaba if session("user_ok") pasaba, sino lo mandaba a loguearse. En php o tendría que hacer igual o hay alguna otra manera?.
No saben si dreamweaver lo resuelve?.

muchas gracias de antemano
  #22 (permalink)  
Antiguo 28/09/2005, 15:22
Avatar de polaya  
Fecha de Ingreso: diciembre-2004
Ubicación: Chile
Mensajes: 191
Antigüedad: 13 años
Puntos: 0
dreamweaver es un simple editor multilenguaje, no trabaja con sentencias ni con palabras reservadas de los mismos.
Pero en php tambien debes trabajar con sesiones de usuario:
Código PHP:
$_SESSION['usNick']=$row["usr"]; 

$_SESSION['usPass']=$row["psw"]; 
y luego en la parte superior de cada pagina escribes:
Código PHP:
include("sesion.php"); 
en esta pagina preguntas si la variable existe o no:
Código PHP:
if(isset($_SESSION["usNick"]) && isset($_SESSION["usPass"]))
{

Y eso es todo...bueno para destruirlas solo debes hacer:
Código PHP:
session_destroy(); 
Ahora si..suerte
__________________
La vida da muchas vueltas...debe ser por eso que uno se marea.
  #23 (permalink)  
Antiguo 28/09/2005, 16:11
 
Fecha de Ingreso: mayo-2003
Mensajes: 527
Antigüedad: 14 años, 6 meses
Puntos: 3
Cita:
Iniciado por Apal
ALELUYAAAAAAAAA, encontre a alguien que sabia como hacerlo. miren, lo pongo aqui para los que lo necesiten igual que yo,

En el código del formulario...
Código HTML:
<form action="password.php?op=redireccion" method="POST">
        <div align="center">
          <input name="password" type="text" class="Estilo29" size="10" />
          <input type="submit" class="Estilo2" value="Go!" />
        </div>
    </form> 
Y el código de el "password.php"...
Código PHP:
<?PHP
//password.php
function redireccion($password){
global 
$password;
echo 
"clave: $password";
if(
$password == "dt"){
include 
'priv/digitaltelecom.php';
}elseif(
$password == "pass2"){
include 
'pass2.php';
}elseif(
$password=="pass3"){
include 
'pass3.php';   //faltaban los ;
}else{
echo 
"error";
}  
//te faltaba cerrar !
}

switch(
$op){
case 
"redireccion":
redireccion($password);
}

?>

espero que le sirva a alguien aparte de a mi, muchas gracias a todos,
Hola. He estado mirando el hilo entero porque me ha parecido interesante. Quisiera aportar algo a la solución final. Según creo, es siempre recomendable por motivos de seguridad usar variables de formulario para obtener los valores del formulario enviado, en vez de usarlos directamente.

Código PHP:
<?PHP
//password.php

$password $_POST['password']; // También con $HTTP_POST_VARS['password']

function redireccion($password){
global 
$password;
echo 
"clave: $password";
if(
$password == "dt"){
include 
'priv/digitaltelecom.php';
}elseif(
$password == "pass2"){
include 
'pass2.php';
}elseif(
$password=="pass3"){
include 
'pass3.php';   //faltaban los ;
}else{
echo 
"error";
}  
//te faltaba cerrar !
}

switch(
$op){
case 
"redireccion":
redireccion($password);
}

?>
  #24 (permalink)  
Antiguo 29/09/2005, 13:24
Avatar de moron  
Fecha de Ingreso: mayo-2004
Mensajes: 971
Antigüedad: 13 años, 7 meses
Puntos: 2
Muchicimas gracias, lo pondré en práctica de esa manera.

saludos miles
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:08.