Ir para conteúdo

jmlab

Members
  • Total de itens

    19
  • Registro em

  • Última visita

Reputação

0 Comum

Sobre jmlab

  1. jmlab

    Laravel - menu estado ativo

    Bons dias amigos. Estou a experimentar pela primeira vez desenvolver um website teste utilizando o Laravel e estou a seguir um video tutorial no youtube. Está tudo a correr relativamente bem, mas estou com uma pequena questão que precisava da vossa ajuda. Tenho um menu com 6 botões: <li class="principal {{ Request::is('pt/sport/homepage') ? "active" : "" }}"><a href="/pt/sport/homepage">HOMEPAGE</a></li> <li class="principal {{ Request::is('pt/sport/quem-somos') ? "active" : "" }}"><a href="/pt/sport/quem-somos">QUEM SOMOS</a></li> <li class="principal {{ Request::is('pt/sport/projetos', 'pt/sport/projetos/$projetoSlug') ? "active" : "" }}"><a href="/pt/sport/projetos">PROJETOS</a></li> <li class="principal {{ Request::is('pt/sport/produtos') ? "active" : "" }}"><a href="/pt/sport/produtos">PRODUTOS</a></li> <li class="principal {{ Request::is('pt/sport/metodologia') ? "active" : "" }}"><a href="/pt/sport/metodologia">METODOLOGIA</a></li> <li class="principal {{ Request::is('pt/sport/contatos') ? "active" : "" }}"><a href="/pt/sport/contatos">CONTATOS</a></li> O estado ativo está a funcionar na perfeição, mas nas páginas "Projetos" e "Produtos" vai existir uma grelha de fotos, que por sua vez ao clicar em uma das fotos, irá para uma página individual de apresentação do projecto ou produto. Até tudo ok. A minha questão é a seguinte: Quando carrego em Projectos, aparece a minha grelha de fotos e o botão mantém-se ativo, mas depois de clicar na foto para abrir o projeto individualmente (quem tem uma galeria de fotos) o botão projetos deixa de estar ativo. Como mantenho o botão "Projetos" ativo? Agradecido
  2. jmlab

    url amigável com slug na base de dados

    Boa tarde dasilvaj4. Obrigado pela resposta. O melhor é mesmo começar do início porque fiquei bloqueado no ponto que falei. O meu menu tem 4 "Parent's", que servem de 1º nível mas não tem informação e depois tem 2 sub-níveis dependentes, "fchild" e "schild", que carregam a informação da base de dados. O menu está criado como diversas funções interligadas (posso explicar ou enviar o php para perceberes). As tabelas já contém a informação com a url amigável correctamente configurada. O endereço neste momento está: "http://localhost/omeusite.com/index.php?fchild=1" - 1º nível do menu (representado pelo fchild) e http://localhost/omeusite.com/index.php?schild=1 - 2º nível do menu (representado pelo schild) O meu .htaccess para já, apenas está assim: RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-l #ErrorDocument 403 /omeusite.com/erro/403.php #ErrorDocument 404 /omeusite.com/erro/404.php #ErrorDocument 500 /omeusite.com/erro/500.php Como voltei atrás, não está portanto a carregar a variável "url amigável" da base de dados e apenas o 'id" do fchild e schild. De referir que não estou a desenvolver o website em MVC. Vou anexar uma imagem das 3 tabelas (parent, fchild e schild), para melhor entendimento da minha estrutura. O ideal seria pegar neste ponto e desenvolver a partir daqui. Muito obrigado pela ajuda. PS.: o nome do website é fictício apenas para melhor entendimento.
  3. jmlab

    url amigável com slug na base de dados

    Boas. Estou bloqueado na construção da url amigável. Tenho um menu, que é carregado da base de dado, que tem um campo "slug", onde está guardada a url amigável. Consegui encontrar um tutorial que me levou a meio da tarefa, mas fiquei no seguinte ponto: localhost/omeusite.com/?fchild=noticias Navegando pelo menu, acedo a todo o conteúdo do site, mas não sei avançar daqui, ou seja, retirar o "?fchild=". Alguém me poderá ajudar? Obrigado PS: Não coloco o código, apenas porque excede em muito o razoável, mas poderei disponibilizar, obviamente.
  4. jmlab

    URL amigável

    Ok então! :) Vou tentar colocar todos os códigos necessários (espero eu). A URL neste momento é a seguinte: localhost/cal.vrsFinal.01.01/publico/index.php Cada vez que carrega um item do menu, seja qual for o nível, fica: site.com/publico/index.php?menuP=xxx - correspondente ao menu Pai site.com/publico/index.php?subn1=xxx - correspondente ao 1º submenu site.com/publico/index.php?subn2=xxx - correspondente ao 2º submenu Função Menu: // MENU PRINCIPAL // Encontrar "menu_p" function find_all_menuP() { global $dbconn; $query = "SELECT * "; $query .= "FROM menuP "; // $query .= "WHERE visivel = 1 "; $query .= "ORDER BY posicao ASC"; $menuP_set = mysqli_query($dbconn, $query); confirm_query($menuP_set); return $menuP_set; } ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// // Encontrar "sub_n1" function find_subn1_for_menuP ($menuP_id) { global $dbconn; $safe_menuP_id = mysqli_real_escape_string($dbconn, $menuP_id); $query = "SELECT * "; $query .= "FROM subn1 "; $query .= "WHERE visivel = 1 "; $query .= "AND menuP_id = {$safe_menuP_id} "; $query .= "ORDER BY posicao ASC"; $subn1_set = mysqli_query($dbconn, $query); confirm_query($subn1_set); return $subn1_set; } ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// // Encontrar "sub_n2" function find_subn2_for_subn1 ($subn1_id) { global $dbconn; $query = "SELECT * "; $query .= "FROM subn2 "; $query .= "WHERE visivel = 1 "; $query .= "AND subn1_id = {$subn1_id} "; $query .= "ORDER BY posicao ASC"; $subn2_set = mysqli_query($dbconn, $query); confirm_query($subn2_set); return $subn2_set; } ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// // FUNÇÃO NAVIGATION function public_navigation($menuP_array, $subn1_array, $subn2_array) { // INÍCIO 'MENUP' QUERY $output = "<ul class=\"menuP\">"; $menuP_set = find_all_menuP(); while($menuP = mysqli_fetch_assoc($menuP_set)) { $output .= "<li"; if($menuP_array && $menuP["id"] == $menuP_array["id"]) { $output .= " class=\"selectedPrincipal\""; } $output .= ">"; $output .= "<a class=\"btnP\" href=\"publico/index.php?menuP="; $output .= urlencode($menuP["id"]); $output .= "\">"; $output .= "<span id=\"icone\">"; $output .= $menuP['GlyPrincipal']; $output .= "</span>"; $output .= "<span id=\"text\">"; $output .= htmlentities($menuP["titulo_portugues"]); $output .= "</span>"; $output .= "</a>"; ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// // INÍCIO 'SUBN1' QUERY $subn1_set = find_subn1_for_menuP ($menuP["id"]); $output .= "<ul class=\"subN1\">"; while($subn1 = mysqli_fetch_assoc($subn1_set)) { $output .= "<li"; if($subn1_array && $subn1["id"] == $subn1_array["id"]) { $output .= " class=\"selectedN1\""; } $output .= ">"; $output .= "<a class=\"btnN1\" href=\"publico/index.php?subn1="; $output .= urlencode($subn1["id"]); $output .= "\">"; $output .= htmlentities($subn1["titulo_portugues"]); $output .= $subn1["gly"]; $output .= "</a>"; ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// // INÍCIO 'SUBN2' QUERY $subn2_set = find_subn2_for_subn1 ($subn1["id"]); $output .= "<ul class=\"subN2\">"; while($subn2 = mysqli_fetch_assoc($subn2_set)) { $output .= "<li"; if($subn2_array && $subn2["id"] == $subn2_array["id"]) { $output .= " class=\"selectedN2\""; } $output .= ">"; $output .= "<a class=\"btnN2\" href=\"publico/index.php?subn2="; $output .= urlencode($subn2["id"]); $output .= "\">"; $output .= htmlentities($subn2["titulo_portugues"]); $output .= "</a>"; $output .= "</li>"; } $output .= "</ul>"; $output .= "</li>"; } $output .= "</ul>"; $output .= "</li>"; } mysqli_free_result($menuP_set); $output .= "</ul>"; return $output; } index.php: <?php require_once ("includes/session.php"); require_once ("includes/functions.php"); require_once ("includes/dbconn.php"); error_reporting(E_ALL); ini_set('display_errors', 1); ?> <?php encontrar_conteudo_selecionado(); ?> <?php find_slideshow(); ?> <!DOCTYPE html> <html lang="pt-pt"> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="description" content=""> <meta name="author" content=""> <link rel="stylesheet" href="img/iconesCAL/demo-files/demo.css"> <link rel="stylesheet" href="img/iconesCAL/demo-files/style.css"></head> <title><?php echo $titulo_site;?></title> <!-- CSS Start --> <?php include ('config/css.php'); ?> <!-- CSS End --> <!-- HTML5 Shim and Respond.js IE8 support of HTML5 elements and media queries --> <!-- WARNING: Respond.js doesn't work if you view the page via file:// --> <!--[if lt IE 9]> <script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script> <script src="https://oss.maxcdn.com/libs/respond.js/1.4.2/respond.min.js"></script> <![endif]--> <script type="text/javascript"> function MM_swapImgRestore() { //v3.0 var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc; } function MM_preloadImages() { //v3.0 var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array(); var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++) if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}} } function MM_findObj(n, d) { //v4.01 var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) { d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);} if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n]; for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document); if(!x && d.getElementById) x=d.getElementById(n); return x; } function MM_swapImage() { //v3.0 var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3) if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];} } </script> </head> <body onLoad="MM_preloadImages('img/redes_sociais/facebook_thumb_down.png','img/JMlogoDOWN.png')"> <!-- INÍCIO ESTRUTURA WEBSITE --> <!-- Navigation Start --> <?php include('../template/header.php'); ?> <!-- Navigation End --> <!-- ############### --> <!-- Background Transparent Start --> <div class="container-fluid"> <div class="wrapper"> <?php echo $_GET['page']; ?> <?php if ($current_subn1) { ?> <div class="caixa-transparente-conteudo"></div> <?php } elseif ($current_subn2) { ?> <div class="caixa-transparente-conteudo"></div> <?php } ?> </div> </div> <!-- Background Transparent End --> <!-- ############### --> <!-- Conteúdos Start --> <div class="container-fluid conteudos"><!-- START container-fluid conteudos --> <div class="row"> <!-- Conteúdos PT Start --> <div class="col-md-4 PT"> <?php if ($current_subn1) { ?> <h1><?php echo htmlentities($current_subn1["titulo_portugues"]); ?></h1> <?php echo $current_subn1["conteudo_portugues"]; ?> <?php } else if ($current_subn2) { ?> <h1><?php echo htmlentities($current_subn2["titulo_portugues"]); ?></h1> <?php echo $current_subn2["conteudo_portugues"]; ?> <?php } ?> </div> <!-- Conteúdos PT End --> <!-- ############### --> <!-- Conteúdos EN Start --> <div class="col-md-4 EN"> <?php if ($current_subn1) { ?> <h1><?php echo htmlentities($current_subn1["titulo_ingles"]); ?></h1> <?php echo $current_subn1["conteudo_ingles"]; ?> <?php } else if ($current_subn2) { ?> <h1><?php echo htmlentities($current_subn2["titulo_ingles"]); ?></h1> <?php echo $current_subn2["conteudo_ingles"]; ?> <?php } ?> </div> <!-- Conteúdos EN End --> <!-- ############### --> <!-- Conteúdos Imagens Start --> <div class="col-md-4 fotos"> <?php if ($current_subn1) { ?> <?php $q = "SELECT * FROM subn1Fotos WHERE subn1_id = $current_subn1[id]"; $r = mysqli_query($dbconn, $q); while ($foto = mysqli_fetch_assoc($r)) { $imagem = $foto['imagem']; $legenda = $foto['legenda']; ?> <div id="conteudo_info"> <article id="artigo"> <ul class="rig"> <li> <img src="uploads/fotosPaginas/<?php echo $imagem; ?>"> <div id="caixa_texto"> <p><?php echo $legenda; ?></p> </div> </li> </ul> </article> </div> <?php } ?> </div> <!-- Conteúdos Imagens End --> <?php } ?> </div> </div><!-- END container-fluid conteudos --> <!-- Conteúdos End --> <!-- ############### --> <!-- Footer Start --> <?php include('../template/footer.php'); ?> <!-- Footer End --> <!-- FIM ESTRUTURA WEBSITE --> <!-- jQuery --> <script src="js/jquery.js"></script> <!-- Bootstrap Core JavaScript --> <script src="js/bootstrap.min.js"></script> <script src="js/icons/cal-icons.js"></script> <!-- Slideshow JS --> <script src="js/jquery-1.7.1.min.js"></script> <script type="text/javascript" src="js/raphael-min.js"></script> <script type="text/javascript" src="js/jquery.easing.js"></script> <script src="js/iview.js"></script> <script> $(document).ready(function(){ $('#imageslider').iView({ pauseTime: 5000, pauseOnHover: true, directionNavHoverOpacity: 0, timer: "Bar", timerDiameter: "50%", timerPadding: 0, timerStroke: 7, timerBarStroke: 0, timerColor: "#FFF", timerY: 20, timerX: 20, timerPosition: "bottom-right", captionOpacity: 1 }); }); </script> <!-- Slideshow JS --> </body> </html> .htaccess (fiz variadas experiências, mas como nenhuma resultou, coloco só o que está funcional neste momento: ErrorDocument 404 http://localhost/cal.vrsFinal.01.01/publico/404.php ErrorDocument 403 http://localhost/cal.vrsFinal.01.01/publico/403.php ErrorDocument 500 http://localhost/cal.vrsFinal.01.01/publico/500.php Options -Indexes RewriteEngine on RewriteCond %{REQUEST_FILENAME} -f [OR] RewriteCond %{REQUEST_FILENAME} -d Acho que está tudo o que é necessário para perceber a funcionalidade. Uma das ideias (a ideal até), era ter um campo nos meus formulários chamado "url", que pudesse personalizar e fazer esse echo na URL amigável. Tenho inclusivamente em todos os meus formulários "CRUD", um campo "URL" e igualmente na minha base de dados. Seja através de URL no banco de dados (ideal) ou exclusivamente em ".htaccess", agradeço a ajuda. :) Muito Obrigado!!!
  5. jmlab

    URL amigável

    Obrigado por responder tão rápido. Posso disponibilizar o código. Acho no entanto demasiado extenso para o colocar aqui, o menu ter demasiadas funções. Poderei colocar online ou dar acesso a uma pasta onde possa ver todo o código. O que acha? :)
  6. jmlab

    URL amigável

    Boa noite :) Tenho um website quase completo, mas quando cheguei à parte da criação/adaptação da URL para URL amigável, deparei-me com um problema que espero me possam auxiliar. O menu é composto por um "dropup" com 2 subníveis, pelo que a estrutura na base de dados está com um "menuP" que é o menú principal e depois, dependente do "menuP" tem o "subN1" e dependente deste temos o "subN2". Na URL, actualmente tenho: site.com/publico/index.php?menuP=1 - correspondente ao menu Pai site.com/publico/index.php?subn1=1 - correspondente ao 1º submenu site.com/publico/index.php?subn2=1 - correspondente ao 2º submenu Tudo está a funcionar corretamente. A verdade, é que o meu código está estruturado de uma forma que me está a ser complicado perceber e integrar o ".htaccess" e chamar as respectivas URLs amigáveis. Tenho inclusivamente um campo "slug" na minha base de dados, com as minhas URLs personalizadas (caso fosse mais fácil "puxar" para o index.php). Acredito que seja dificil de me ajudarem sem verem o código, mas não justificava colocar todo o código, sem que alguém estivesse disposto a ajudar Caso ajude, colocarei disponível todo o código. Muito obrigado!
  7. jmlab

    botão classe ativo com if em php

    Boa noite Electronic! Em principio vou utilizar o include para fazer echo da página das formações. Entretanto surgiu-me uma dúvida (e acredite que estou farto de procurar e nada encontro de concreto). Posso criar um novo post, se achar que este não é o local indicado. Como sabe, tenho um "tree menu" no site. Não sei como inserir um novo item no menu com um CRUD, ou seja, se quiser adicionar um novo botão, tenho de dizer qual o idPai onde quero inserir o botão, certo? Os "idPai" serão os existentes (nenhum novo poderá ser criado), mas poderiamos criar "filhos" sem limite. Gostaria que essa lista (idPai's - 7 no total) fosse feita através dum drop list, para que, ao fazer o formulário de inserção, fosse apenas necessário selecionar o item da drop list e após submeter o formulário, novo botão estaria criado. Este é o meu menu recursivo: <?php //call the recursive function to print category listing category_tree(0); //Recursive php function function category_tree($menuPai){ global $dbc; $q = "SELECT * FROM menuCAL WHERE idPai ='".$menuPai."'"; $r = $dbc->query($q); while($row = mysqli_fetch_object($r)): $i = 0; if ($i == 0) echo '<ul class="menuCAL">'; echo '<li><a href="?page='.$row->id,'">' . $row->GlyPrincipal . $row->GlySecundario . $row->menuNomePT, '</a>'; category_tree($row->id); echo '</li>'; $i++; if ($i > 0) echo '</ul>'; endwhile; } ?> Este o meu formulário CRUD de inserção: <!-- Textos & Formulários Start --> <div class="row"> <div class="col-lg-12"> <?php if(isset($_POST['enviado']) == 1) { $q = "INSERT INTO menuCAL () VALUES ()"; $r = mysqli($dbc, $q); if($r) { echo'<p>A página foi adicionada!</p>'; } else { echo '<p>A página não foi adicionada, devido ao seguinte erro: '.mysqli_error($dbc); echo '<p>' .$q.'</p>'; } } ?> <!-- Formulário Start --> <form action="adicionar_pagina.php" method="post" role="form"> <!-- Campo Label Start --> <div class="form-group"> <label for="label">Label</label> <input type="text" class="form-control" name="label" id="label" placeholder="Texto a colocar na URL (SEO)"> </div> <!-- Campo Label End --> <!-- Campo header Start --> <div class="form-group"> <label for="menuNomePT">Header</label> <input type="text" class="form-control" name="header" id="header" placeholder="Texto descritivo a colocar no topo do website"> </div> <!-- Campo header End --> <!-- Campo ID Menu Pai Start --> <div class="form-group"> <label for="idPai">Adicionar a:</label> <select class="form-control" name="idPai" id="idPai"> <option></option> </select> </div> <!-- Campo ID Menu Pai Start --> <!-- Campo menuNomePT Start --> <div class="form-group"> <label for="menuNomePT">Título PT</label> <input type="text" class="form-control" name="menuNomePT" id="menuNomePT" placeholder="Insira o título em Português"> </div> <!-- Campo menuNomePT End --> <!-- Campo conteudo_pagina_PT Start --> <div class="form-group"> <label for="conteudo_pagina_EN">Conteúdos PT</label> <textarea class="form-control" name="conteudo_pagina_PT" rows="12" id="conteudo_pagina_PT" placeholder="Insira os textos em Português"></textarea> </div> <!-- Campo conteudo_pagina_PT End --> <!-- Campo menuNomeEN Start --> <div class="form-group"> <label for="menuNomePT">Título EN</label> <input type="text" class="form-control" name="menuNomeEN" id="menuNomeEN" placeholder="Insira o título em Inglês"> </div> <!-- Campo menuNomeEN End --> <!-- Campo conteudo_pagina_EN Start --> <div class="form-group"> <label for="conteudo_pagina_EN">Conteúdos EN</label> <textarea class="form-control" name="conteudo_pagina_EN" rows="12" id="conteudo_pagina_EN" placeholder="Insira os textos em Inglês"></textarea> </div> <!-- Campo conteudo_pagina_EN End --> </div> <button type="submit" class="btn btn-default adic_concluir">Gravar</button> <input type="hidden" name="enviado" value="1"> </form> <!-- Formulário End --> </div> </div> <!-- Textos & Formulários End --> Obrigado mais uma vez :)
  8. jmlab

    botão classe ativo com if em php

    Lol! Eu não disse o contrário. Só dei um exemplo de estrutura de como gostaria que todo o menu estivesse. :) Não é fácil ainda para mim perceber toda a lógica. De qualquer forma, vou estudar e aplicar. Quanto às outras questões, tem algum conselho? Obrigado e abraço
  9. jmlab

    botão classe ativo com if em php

    Boas! :) Na verdade, a forma como o menu está apresentado também não me ajuda muito :( Foi o único que consegui fazer (tutorial) que tivesse 3 níveis e em mysqli (visto todo o projeto estar em mysqli). Toda a informação está dentro de uma única tabela. Serve o propósito, mas é demasiado complicado para refazer às minhas necessidades. Era mais fácil de personalizá-lo se o "echo" fosse feito dentro do HTML, com as tags "php", tipo o exemplo abaixo, mas com 3 níveis: <ul> <li<?php if($pageid == $nav['id']) { echo ' class="active"'; } ?>> <a href="?page=<?php echo $nav['id']; ?>"><?php echo $nav['label']; ?></a> </li> </ul> Mas chego a um ponto (quanto quero fazer o "echo" dos submenus), em que me perco totalmente. Este projeto tem algumas condicionantes: . Conteúdos do site para 1, 2 e 3 colunas (existem páginas com 3 colunas, outras só com 2 e outras só com 1) Ainda não sei como carregar o conteúdo de forma a que seja carregado em layouts específicos e como dar a possibilidade do cliente escolher qual o tipo de layout que quer, se adicionar uma nova página. . Ligada à mesma questão acima, tenho também uma página que deveria apresentar um novo menu lateral que carrega a informação desse menu (após ser clicado) dentro da mesma página, mas mantendo sempre o menu principal do site igualmente navegável. Se me conseguir ajudar em alguma destas questões, agradeço imenso. Obrigado e Bem Haja! PS: Um encaminhamento nas 2 últimas questões, já era uma grande ajuda, pois sabendo a lógica, talvez fosse mais fácil de estudar. O meu conhecimento de PHP ainda é limitado.
  10. jmlab

    botão classe ativo com if em php

    Deixou de dar erro. Mas continua sem ativar quando o botão é clicado. (agora não sei se é o meu CSS que está errado). Uma pergunta; o que substitui o "if" no código que postou? E é o "<a>" e não o "<li>" que ficará ativado. Ajudará se enviar mais algum código? Obrigado
  11. jmlab

    botão classe ativo com if em php

    Obrigado pela resposta! :) Mas dá-me um erro de código na seguinte linha: echo $pageid == menuItem['menuId']? ' class="btnActive" ':"",'">',$menuItem['iconP'],$menuItem['iconS'],$menuItem['name'],'</a>',PHP_EOL; No "writecodeonline.com" testei e dá o seguinte erro: <b>Parse error</b>: syntax error, unexpected '[', expecting ',' or ';' O que será? Obrigado
  12. jmlab

    botão classe ativo com if em php

    Boas noites! uma pequena ajuda se possível! Como consigo adicionar o seguinte código (para ativar o botão quando selecionado) if ($pageid == menuItem['menuId']) { echo class="btnActive" } no código abaixo (a verde) na tag "<li>? <?php //======================================================== // Função Menu function data_menu( array $menuTotal , $idPai = 0, $nivel = 0 ) { // abrimos a ul do menu principal echo str_repeat( "\t" , $nivel ),'<ul class="menuCAL">',PHP_EOL; // itera o array de acordo com o idPai passado como parâmetro na função foreach( $menuTotal[$idPai] as $idMenu => $menuItem) { // imprime o item do menu echo str_repeat( "\t" , $nivel + 1 ),'<li><a href="?page=' .$menuItem['menuId']. '">',$menuItem['iconP'],$menuItem['iconS'],$menuItem['name'],'</a>',PHP_EOL; // se o menu desta iteração tiver submenus, chama novamente a função if( isset( $menuTotal[$idMenu] ) ) data_menu( $menuTotal , $idMenu , $nivel + 2); // fecha o li do item do menu echo str_repeat( "\t" , $nivel + 1 ),'</li>',PHP_EOL; } // fecha o ul do menu principal echo str_repeat( "\t" , $nivel ),'</ul>',PHP_EOL; } //======================================================== // Chamar conteúdos da Base de Dados function data_page( $dbc, $id ) { $q = "SELECT * FROM menuCAL WHERE menuId = $id"; $r = mysqli_query($dbc, $q); $data = mysqli_fetch_assoc($r); return $data; } ?> Tenho sido confuso para mim. Obrigado pela ajuda.
  13. Boas, estou farto de pesquisar e por ser recente a minha relação com o php, estou com uma dificuldade; Estou a construir um gestor de conteúdos. Tenho um menu com submenu carregado através da base de dados. Ao clicar, cada botão carrega informação correspondente dentro de uma div. Tudo isto tem como receptor a página index.php. Tudo funciona sem problemas. Mas em uma das páginas (academia) eu quero carregar uma página externa (formacoes.php), que tem o link armazenado na base de dados. Esta página tem um menu com cerca de 30 botões e ao clicar em cada botão, quero que apresente a informação dentro de uma div. Utilizei o include() para apresentar a página "formacoes.php", quando doe selecionado o "id" da página "academia" carrega a "formacoes.php). O problema surge quando chamo a informação das formações. Em vez de conseguir carregar a informação dentro da suposta "formacoes.php" que está incluida no index.php, ela salta e vai para a "homepage" que existe por default. Como consigo apresentar os resultados sem sair da página? Espero ter-me feito entender! :) Obrigado pela ajuda
  14. jmlab

    Carregar página.php em iframe

    Boas Hantaroo. Obrigado pela resposta rápida :) Mas colocando esse código, a iframe estará sempre invisivel e não é o que pretendo :) O que pretendo é que esteja invisivel em todas as páginas exceto a página "portfolio".
  15. jmlab

    Carregar página.php em iframe

    Saudações, Estou a terminar um gestor de conteúdos, mas estou com um pequeno problema com uma iframe. Então é o seguinte: Tenho uma url guardada numa tabela da base de dados, que é o caminho para uma página chamada "galeria.php", que é uma galeria dinâmica. Essa galeria é carregada no site, quando o user clica num botão do submenu chamado "portfólio". Ou seja, a iframe só carrega a galeria quando clicado no botão portfólio. Até aqui tudo excelente. Carrega exactamente quando e como quero. O problema é que quando não estamos na página "portfólio". A iframe mantém a ocupação do espaço, mesmo não tendo nenhum conteúdo. Isto provoca no website, um scroll desnecessário. Na prática o que eu pergunto, é como fazer para que, quando a iframe não tenha nenhum conteúdo, ela fique "escondida" e não ocupe espaço na página. Muito obrigado
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.