Ir para conteúdo
Fórum Script Brasil
  • 0

Abrir Uma Página...


fenks

Pergunta

Pessoal, estou com um probleminha em php, eu já programo em outra linguagens e tem uma coisinha que faço nas outras que não estou conseguindo em php, parece muito simples, vou explicar.

Tenho minha primeira tela de Login e senha, o usuário preenche os campos e o action do form passa para a página seguinte.

na página seguinte, valido os dados, e verifico também o tipo de acesso do usuário (gerente, instrutor, administrador).

Então um pouco mais abaixo do código eu coloquei um switch case para saber se ele for gerente abre uma determinada url, se for instrutor abre uma outra url. keria fazer com que abrisse numa mesma janela em php.

Em javascript eu fazia o window.open("url","_top").

alguém pode me ajudar? em php eu já tentei os métodos header("Location: ..."); fopen("url","r"); porém não estou conseguindo fazer com que ele abra a url.

Obrigado,

Rodolfo

Link para o comentário
Compartilhar em outros sites

10 respostass a esta questão

Posts Recomendados

  • 0

O código:

<?php

     //Conectando a base de dados.
     $conexao = mysql_connect( '127.0.0.1', 'tttool', 'rbbhcbm' )or die(mysql_error());
     mysql_select_db( "trtool", $conexao )or die(mysql_error());


     //Consulta PW do ID inserido.
     $consulta = "select Pw from tb_pw where ID='".$_POST['txt_id']."'";
     $resultado = mysql_query( $consulta, $conexao ) or die (mysql_error());

     //Consulta o código do recurso.
     $id = $_POST['txt_id'];
     $cd_rec = mysql_query("select cd_rec from tb_rec where id='".$id."'", $conexao) or die(mysql_error());
     $cd_rec =  mysql_fetch_array($cd_rec);
     $recordset = mysql_query("select * from tb_recativ where cd_rec='".$cd_rec[0]."'", $conexao) or die(mysql_error());

     //Consulta o tipo de acesso do usuário.
     $cd_access = mysql_query("select cd_access from tb_pw where id='".$id."'", $conexao) or die(mysql_error());
     $cd_access = mysql_fetch_array($cd_access);

     //Verificando quantidade de resultados encontrados
     if(mysql_num_rows($resultado) == 1){

          $pwd = $_POST['txt_pw'];
       $campos = mysql_fetch_array($resultado);
       if(strcmp($pwd,$campos[0])==0){

                echo 'Senha OK <br> Carregando, aguarde um instante...'; //lina 29
                echo '<br>';
                echo $cd_access[0];
                /*
                for($i = 1; $i <= mysql_num_rows($recordset); $i++){
                    $valores = mysql_fetch_row($recordset);
                    $individual_hours += $valores[3];
                }
                echo $individual_hours .'</h2><br>';
                */
                
                switch ($cd_access[0]){

                       case 0:
                            header("Location: http://127.0.0.1/admin.php"); //linha 49
                            break;
                       case 1:
                            header("Location: http://127.0.0.1/instr.php");
                            break;
                       case 2:
                            header("Location: http://127.0.0.1/geren.php");
                            break;
                       case 3:
                            header("Location: http://127.0.0.1/finan.php/");
                            break;
                }
                
                

          }else{
             echo '<h1>Senha Invalida</h1>';
          }
     }else{
          echo '<h1>Usuário não encontrado</h1>';
     }
     
?>

a saída:

Senha OK

Carregando, aguarde um instante...

0

Warning: Cannot modify header information - headers already sent by (output started at c:\program files\apache group\apache\htdocs\index1.php:29) in c:\program files\apache group\apache\htdocs\index1.php on line 43

Abraço,

Rodolfo

Link para o comentário
Compartilhar em outros sites

  • 0

Cara pelo que me ensinaram você não pode imprimir alguma coisa na tela antes de dar o header();

if(strcmp($pwd,$campos[0])==0){

               echo 'Senha OK <br> Carregando, aguarde um instante...'; //lina 29

               echo '<br>';

               echo $cd_access[0];

               /*

               for($i = 1; $i <= mysql_num_rows($recordset); $i++){

                   $valores = mysql_fetch_row($recordset);

                   $individual_hours += $valores[3];

               }

               echo $individual_hours .'</h2><br>';

               */

              

               switch ($cd_access[0]){

                      case 0:

                           header("Location: http://127.0.0.1/admin.php"); //linha 49

                           break;

                      case 1:

                           header("Location: http://127.0.0.1/instr.php");

                           break;

                      case 2:

                           header("Location: http://127.0.0.1/geren.php");

                           break;

                      case 3:

                           header("Location: http://127.0.0.1/finan.php/");

                           break;

               }

              

              

        

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...