Foros del Web » Programando para Internet » PHP »

como hacer que operaciones no se carguen por defecto

Estas en el tema de como hacer que operaciones no se carguen por defecto en el foro de PHP en Foros del Web. Hola denuevo!!!, mi consulta ahora es la siguiente, resulta que estoy validando una pas y user de administrador, pero esta pas y user, estan almacenadas ...
  #1 (permalink)  
Antiguo 08/07/2011, 05:38
 
Fecha de Ingreso: junio-2011
Mensajes: 36
Antigüedad: 13 años, 5 meses
Puntos: 0
como hacer que operaciones no se carguen por defecto

Hola denuevo!!!, mi consulta ahora es la siguiente, resulta que estoy validando una pas y user de administrador, pero esta pas y user, estan almacenadas en un archivo, el cual las drene con la funcion explode y la almacene en un array, para asi poder comprarlas al momento de ingresar un user en un campo de texto. Todo funciona bien, pero el problema es q al memento de ingresar el user y pas correcto, aparece el mensaje de bienvenida y habilita un link para administrador, obiamente solo funciona cuando ingresamos el user y pas correcto, pero el problema es q al momento de cargar la pagina, antes q ingresemos los datos, viene por defecto el link cargado... abro la pagina de login y viene cargado el link para aceder al perfil de administrador, altiro, hice la sentencia if correspondiente, pero solo funciona si ingresamos unas pass mal o bien, lo que quiero sacar es q los link q pongo despues del if aparescan solo si se cumple, y no q venga por defecto.


$contemos = count($usua);
$i =0;
$j=0;
while($i < $contemos)
{
while($j < $contemos)
{
if ($_POST['nom'] == $usuarios[$i] && $_POST['pase'] == $usua[$j])
{
$_SESSION['administrador']="Administrador";
echo "bienenido ".$_SESSION['administrador'];
echo "<br><a href=\"pagina2.php\">Ingrese a perfil de Administrador</a>";
}
$i+=1;
$j+=1;
}
}


en el if se compara el user ingresado, con el del campo del array, q debe coincidir con la otra posicion, en donde tengo almacenado la conraseña, todo funciona bien, si ingresamos mal los datos, no carga links ni mensajes de bienvenida. Si los ingresamos bien, carga todo, el problema q tengo, es q al momento de abrir la pagina por primera ves, viene con el link y el saludo de bienvenida por defecto, y no se los puedo kitar, puse un else despues del if, para q solo pusiera espacios y no me funciona con nada, probe un switch y tampoko me funciono..
bueno es so, ojala pudan ayudarme, se los agradeceria... saludos(Y)
  #2 (permalink)  
Antiguo 08/07/2011, 08:13
Avatar de repara2  
Fecha de Ingreso: septiembre-2010
Ubicación: München
Mensajes: 2.445
Antigüedad: 14 años, 2 meses
Puntos: 331
Respuesta: como hacer que operaciones no se carguen por defecto

He probado esto y funciona ok:

Código PHP:
Ver original
  1. <?php
  2.  
  3. ini_set("display_errors", 1);
  4. $usuarios = array("Jose", "Pepe", "Peporro");
  5. $usua = array("abcde", "efghu", "asbgd");
  6.  
  7. $_POST['nom'] = "Peporro";
  8. $_POST['pase'] = "asbgd";
  9.  
  10. $contemos = count($usua);
  11. $i =0;
  12. $j=0;
  13. while($i < $contemos)
  14. {
  15.     while($j < $contemos)
  16.     {
  17.         if ($_POST['nom'] == $usuarios[$i] && $_POST['pase'] == $usua[$j])
  18.         {
  19.             $_SESSION['administrador']="Administrador";
  20.             echo "Bienvenido,  ".$_SESSION['administrador'];
  21.             echo "<br><a href=\"pagina2.php\">Ingrese a perfil de Administrador</a>";
  22.         }
  23.         $i+=1;
  24.         $j+=1;
  25.     }
  26. }
  27.  
  28. ?>

Si al cargar la página por primera vey ya entras en el bucle es porque tienes datos enviados por post o la session abierta.
Puedes comprobar la session y entrar en el bucle sólo cuando la session no esté definida, por ejemplo así:


Código PHP:
Ver original
  1. if(!isset($_SESSION['administrador'])){
  2. while($i < $contemos)
  3. {
  4.     while($j < $contemos)
  5.     {
  6.         if ($_POST['nom'] == $usuarios[$i] && $_POST['pase'] == $usua[$j])
  7.         {
  8.             $_SESSION['administrador']="Administrador";
  9.             echo "Bienvenido,  ".$_SESSION['administrador'];
  10.             echo "<br><a href=\"pagina2.php\">Ingrese a perfil de Administrador</a>";
  11.         }
  12.         $i+=1;
  13.         $j+=1;
  14.     }
  15. }
  16. }
Espero sirva, saludos
__________________
Fere libenter homines, id quod volunt, credunt.

Etiquetas: defecto, operaciones
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 22:39.