Usar links para variáveis aos construtores PHP

Olá pessoal.

Peguei a página de um amigo para refazer, descobri que é em PHP, até ai blz, manual, net e um pouco de teste resolvido a linguagem. :wink:
O problema é que quem construiu fez um projeto SEM documentação, estou apanhando para seguir os construtores e entender a relação dele com o BD que é muito confuso e não segue normatização nenhuma. :?

Bom, tirando a parte de “onde esta a variável” queria entender como funciona o envio de variáveis via links :shock:

veja o exemplo :?

li
  a href="?sec=40&type=dd&nb=1&lg="
    img src="minha_foto.jpg" alt="veja meu currículo"
  /a
/li

A questão é que ele busca no banco estas informações de onde esta a informação (pasta/subpasta), trás colunas e etc… ai imprime via “for” quando há mais de uma informação na cláusula WHERE; 8)

não consigo pegar as variáveis e nem sei quais comandos o sistema esta usando para isso tendo em vista que está bem complicado sua construção…
se fosse ainda orienteção a objeto tranquilo, mas não é. :frowning:

O formato da programação é estruturado. :shock:
index.php que if (construtores via variável) ai “include” a página construtora que pode ter outro subcontrutor via outro if com query de busca por variáveis do link…

Se alguém puder me explicar como pegar estas variáveis no php e fazer as query funcionarem ficarei muito feliz… :thumbup: :smiley: :mrgreen:

Solonbra,

Quando você passa uma variável de uma página A para uma página B, você pode fazer isso de duas formas: via GET (na url, como no seu exemplo) ou via POST.

A principio, o seu código monta dinamicamente uma lista com vários links.

[code]



  • veja meu currículo
  • [/code]

    Veja que o clique envia para a mesma página. Em PHP é comum ver assim

    mas nada impede de você enviar os dados para a mesma página.

    Para receber as variáveis, nesse caso, você deve fazer assim no início do script (da página destino):

    $sec = $_GET['sec']; //vai pegar 40 $type = $_GET['type']; //dd $nb = $_GET['nb']; //1 $lg = $_GET['lg']; //não tem nenhum valor atribuído a essa variável

    Agora, com relação as querys, não sei como lhe ajudar, pois você não colocou nenhuma.
    Está um pouco confusa sua pergunta.

    Qualquer dúvida pergunte.

    Valeu pela explicação.

    O sistema que peguei neste site e um pouco confuso pela sua lógica. :?

    Basicamente tem a página index.php que inicia o acesso ao BD e faz o link com a maior parte do CSS e Javascript, depois vem uns if else para decidir "quais páginas" ela abre conforme clicamos nos links, o que achei estranho é o fato de não achar declarações de $_GET ou $_POST nos arquivos. :shock:

    por exemplo

    <?php
         $query = 'SELECT * FROM meu_banco WHERE id_cur=' .$numero. ';';
         $result =....
    
    ...
    <div id="cont_corpo">
    if(!$cur) {
         include "./curriculo/".$sql[2]."/".$sql[1]."php";
    } else if (!$gale) {
         include "./md/".$sql[4]."php";
    } else if (!$art) {
         include "./r/".$sql3[2]."/".$sql[1]."php";
    } else {
         include "./content/home.php";
    }
    </div>
    </body>
    </html>

    como pode ver as variáveis que o carinha que fez o projeto não ajudam muita coisa… :evil:

    para alterar estou apanhando bastante, como tem muita coisa no ar e ele só quer mudar algumas coisas acabei aceitando mudar e não refazer o site dele, e uma página pessoal para a família dele e um pouco profissional (autonomo)… :smiley:

    mas vou tentar com estas que indicou e ver o que rola…

    estou acrescentando a galeria de fotos para ele… :roll:

    VALEU!!

    Alguns servidores não ha necessidade de “pegar” a variável, dessa forma:

    Depende de como está a register globals do seu servidor PHP.

    Em alguns casos pegasse a variável direta, basta usar ela (pode ser numa query, por exemplo):

    Nessa última situação, você não sabe de onde vem a variável ($_POST[‘id’] ou $_GET[‘id’] ou $_COOKIES[‘id’] ou $_SESSION[‘id’])

    Interessante, não sabia isso do servidor…

    Queria entender porque não estou rolando "for" com o resultado da query jogo direto no bd e vem todos os dados, na página só está vindo a primeira foto.

    veja o esquema que utilizei, fiz duas tabelas relacionais

    listaGaleria (id_galeria,nome,endereco,publicado,qtd_foto)
    galeria(id_img,id_galeria,nome,legenda)

    <?php
      $query1 = 'SELECT * FROM listaGaleria';
      $result1 = .... $lista1[] ....
    
      $query2 = 'SELECT * FROM galeria WHERE id_galeria="' .$idgaleria;    // a variável pego no esquema do get...
      $result2 = ..... $lista2[] ....
    
    ?>
    </head>
    <body>
    <div id="galeria">  <!-- inicio da galeria [não coloquei todos os códigos só os mais importantes  -->
      <div id="listagaleria">
        <?php for($i=0;$i<$lista1[4];$i++){ ?>
                  <img src="http://www.meusite.com.br/<?php echo $lista1[2]; ?>/prev<?php echo $lista2[2]; ?>"  />
        &lt;?php } ?&gt;
       &lt;!--  aqui imprime as imagens que tenham o $id_galeria igual ao do link --&gt;
      &lt;/div&gt;
    &lt;/div&gt;  &lt;!-- fim da galeria --&gt;
    &lt;/body&gt;
    &lt;/html&gt;

    o $_GET não tem funcionado direito e o for não tem impresso todos os resultados da query que pega as fotos, imprime só a primeira N vezes