1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

Captar URL [php]

Discussão em 'Web Development' iniciada por toblesu, 27 de Janeiro de 2009. (Respostas: 6; Visualizações: 1890)

  1. toblesu

    toblesu Power Member

    Boas,

    Estou a desenvolver uma página, em php, e precisava de capturar, quando se clica em determinado icone, o URL da página em questão...

    Estive a pesquisar mas devido aos prazos apertados e não ter conseguido encontrar grande ajuda sobre o tema, coloco a questão aqui no fórum.

    Se alguém me puder ajudar, agradecia.
    Obrigado.
    :)
     
  2. anjo2

    anjo2 Power Member

    Sabes algo de php?
    É que a acção de clicar num icone ou num link, nada tem a ver com php, no máximo com javascript ou ajax.
    Se quiseres passar parametros, podes fazer por: pagina.php?parametro=x e obter na pagina php o parametro fazendo:
    PHP:
    if(isset($_GET['parametro']) $x $_GET['parametro'];
    else 
    $x "Não definido"// Se não for dado o parametro, dar um valor a ele
    Como não sei se é isso que queres, podes adicionar o seguinte código php para veres se é algo do que queres:
    PHP:
    print_r($_SERVER);
     
  3. toblesu

    toblesu Power Member

    Sim, percebo.... e sei que o facto de clicar num icone ou imagem nada tem a ver com php.... a minha questão seria porque poderia existir algum comando php do qual eu poderia extrair o conteudo da url para variáveis e aplicar depois a acção que quero implementar no tal icone.... apenas isso... php é a base da construção da página.

    A primeira dica, nao me serve, porque terei um url deste género: http://localhost/doce/index.php?open=foto&fotos=00014

    if(isset($_GET['parametro']) $x = $_GET['parametro'];
    else
    $x = "Não definido"; // Se não for dado o parametro, dar um valor a ele

    preciso de tudo o que vem depois de 'open'.

    Relativamente à segunda dica, vou ver que resultados me dá e se posso aplicar.

    Obrigado pela dica, vou testar! ;)
     
    Última edição: 27 de Janeiro de 2009
  4. toblesu

    toblesu Power Member

    resolvi o problema...
    utilizei o $_SERVER[QUERY_STRING]..... e consegui obter tudo o que acontece para lá de 'open'.


    Mais uma vez obrigado ;)
     
  5. anjo2

    anjo2 Power Member

    Então a primeira solução é a que faz mais sentido...
    PHP:
    if(isset($_GET['open'])) $open $_GET['open'];
    else 
    $open "index"// por exemplo, se não existir open vai para o index
    if(isset($_GET['fotos'])) $fotos $_GET['fotos'];
    else 
    $fotos ""// Podes meter o que quiseres, só acontece quando não é inserido nada nas fotos
    Atenção a uma coisa, como vai buscar ao url, o cliente pode mudar e pode fazer coisas que não estás à espera, cuidado com isso.
     
  6. toblesu

    toblesu Power Member

    com o $_SERVER[QUERY_STRING] ele vai buscar exactamente o que quero... a primeira continua a nao ser a melhor solução porque implicaria mais testes de condições.... assim resolvi da seguinte forma:

    if (!(isset($_SERVER[QUERY_STRING]))) {
    $page = "index.php";
    } else {
    $var =$_SERVER[QUERY_STRING];
    $page = "index.php?".$var;
    }

    a intenção é captar o URL no momento em que o utilizador clica em determinado icone da página... logo, acho eu, o utilizador mesmo que altere manualmente o URL (se foi isso que entendi que queriras dizer), não vai interferir.... pelo pensei assim.....


    ;)
     
  7. anjo2

    anjo2 Power Member

    Aconselho-te a abstrair-te dos links, cada um é livre de mudar o que quiser no url.
     

Partilhar esta Página