Fóruns sobre PHP, JavaScript, HTML, MySQLi, jQuery, Banco de Dados, CSS


Moderador: web

 
Mais de 75 postagens
Mais de 75 postagens
Tópico Autor
Mensagens: 87
Sexo: Masculino

Como criar menu dinâmico

10-06-2011 19:29

Boa noite

Tou precisando de uma forma de adicionar, eliminar ou modificar itens associados ao menu.

Tenho um menu estático com sub-menus onde tenho jogos que que são visiveis aos utilizadores registados. Como administrador se precisar adicionar um jogo e associa-lo num item de menu, como poderei fazer isso?

Obrigado

MOVIDO: de JavaScript para MySQL
0
Editado pela última vez por web em 10-06-2011 21:47, em um total de 1 vez.
Razão: Título melhorado
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17562
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Como criar menu dinâmico

10-06-2011 21:46

Já postei aqui no fórum uma forma de criar um menu com submenu dinamicamente usando o MySQL, veja no link abaixo

Menu-com-submenu-via-MySQL_33_2635.html
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 75 postagens
Mais de 75 postagens
Tópico Autor
Mensagens: 87
Sexo: Masculino

Como criar menu dinâmico

12-06-2011 12:30

Boa tarde

Estive exprimentando o script e tenho uma dúvida:

Como montar o menu da BD mysql com este aspecto, em vez de colocar tudo manualmente?
<body style="margin-top: 10; margin-bottom: 10"> <div id="geral"> <div id="topo"> <img alt="" height="100%" src="css/images/bannernovo.png" width="100%" /></div> <hr class="barra" /> <div id="menu" class="menutext" /> <div class="arrowblue"> <ul> <li class="vazio"></li> <li class="selected"><a href="#">Jogos </a> <ul> <li class="selected"><a href="jogo1.php" target="iConteudo"> Jogo1</a></li> <li class="selected"><a href="jogo2.php" target="iConteudo"> Jogo2</a></li> <li class="selected"><a href="jogo3.php" target="iConteudo"> Jogo3</a></li> </ul> </li> <li class="selected"> <a href="#" onclick="openurl('menu2.php','Meio');">cartoons</a></li> <li class="selected"> <a href="#" onclick="openurl('menu3.php','Meio');">Curiosidades</a></li> <li class="selected"><a href="#">Ilusões de óptica </a> <ul> <li class="selected"> <a href="Ilusao1.php" target="iConteudo">Ilusão 1</a></li> <li class="selected"> <a href="Ilusao2.php" target="iConteudo">Ilusão 2</a></li> <li class="selected"> <a href="Ilusao3.php" target="iConteudo">Ilusão 3</a></li> <li class="selected"> <a href="Ilusao4.php" target="iConteudo">Ilusão 4</a></li> <li class="selected"> <a href="Ilusao5.php" target="iConteudo">Ilusão 5</a></li> <li class="selected"> <a href="Ilusao6.php" target="iConteudo">Ilusão 6</a></li> <li class="selected"> <a href="Ilusao7.php" target="iConteudo">Ilusão 7</a></li> </ul> </li> <li class="selected"> <a href="#" onclick="openurl('1.php','conteudo');">Histórias e piadas</a></li> <!--li class="selected"><a href="#" onclick="openurl('2.php','Meio');"--> <li class="selected"> <a href="rankingJogador.php" target="iConteudo">Classificações</a></li> <!--li class="selected"><a href="#" onclick="openurl('dadosalunos.php','Meio');"--> <li class="selected"> <a href="dadosalunos.php" target="iConteudo">Perfil</a></li> </ul> </div> . . .

Obrigado
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17562
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Como criar menu dinâmico

12-06-2011 13:34

Você tem que criar um arquivo igual ao base.php, eliminando tudo relacionado ao deletamento das opções. Esse arquivo poderá ser incluído diretamente no seu site, onde for mostrar o menu.

Para adaptar o script ai seu site você vai ter que pegar todo o bloco que mostra o menu com submenu e incluir no seu código.

Eu suponho que você vai ter que mexer nessa parte que deixei em negrito.

<li class="selected"><a href="#">Jogos </a>
<ul>
<li class="selected"><a href="jogo1.php" target="iConteudo">
Jogo1</a></li>

</ul>
</li>


O bloco com underline iria no primeiro while e o outro bloco, o ul entre um while e outro, e o trecho em verde no segundo while, fechando o ul depois do último while.
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 75 postagens
Mais de 75 postagens
Tópico Autor
Mensagens: 87
Sexo: Masculino

Como criar menu dinâmico

12-06-2011 14:22

Não estou a conseguir!

Está-me a falhar alguma coisa! Não pode exemplificar com o codigo que coloquei?

Obrigado
0
 
Mais de 75 postagens
Mais de 75 postagens
Tópico Autor
Mensagens: 87
Sexo: Masculino

Como criar menu dinâmico

12-06-2011 15:02

O que mais se aproxima é isto:

<ul> <li class="vazio"></li> <?php // menus principais $resultado=$conect->criarmenualuno(); while($campos=mysql_fetch_array($resultado)) { extract($campos);?> <li class="selected"> <? echo "<a href=\"$link\ target=\"iConteudo\">$texto</a><br>"; ?> <ul> <? $resultado2=$conect->criarsubmenualuno($id_menu); while($campos2=mysql_fetch_array($resultado2)) { extract($campos2);?> <? echo "<a href=\"$link\ target=\"iConteudo\">$texto</a><br>"; }}?> </ul> </li> </ul>

Mas ainda não está bem!!!
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17562
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Como criar menu dinâmico

12-06-2011 15:24

<li class="selected"> Tem que estar dentro do echo, e não solto.

Para usar esse script, você tem que pegar no seu código-fonte o que é relacionado ao menu, se li ou ul, todo o trecho. Esse trecho vai para o primeiro while, o do menu. Depois pegar o trecho do submenu no seu código, no segundo while. Sendo que o submenu irá repetir mais vezes, então você tem que ver o trecho no li que repete.
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 75 postagens
Mais de 75 postagens
Tópico Autor
Mensagens: 87
Sexo: Masculino

Como criar menu dinâmico

12-06-2011 16:27

Eu entendi, mas eu quero esquecer esses itens de menu e adicionar pela BD. Já os consegui carregar todos. Não consigo carregar os sub-menus, nem consigo abrir de da Iframe como tinha.

Alguma sugestão?
0
 
Mais de 75 postagens
Mais de 75 postagens
Tópico Autor
Mensagens: 87
Sexo: Masculino

Como criar menu dinâmico

12-06-2011 16:54

Está quase :)

<ul> <li class="vazio"></li> <?php // menus principais $resultado=$conect->criarmenualuno(); while($campos=mysql_fetch_array($resultado)) { extract($campos);?> <li class="selected"><a href="<? echo $link ?>" target="iConteudo"><? echo $texto ?></a> <? $resultado2=$conect->criarsubmenualuno($id_menu); while($campos2=mysql_fetch_array($resultado2)) { extract($campos2);?> <ul><a href="<? echo $link ?>" target="iConteudo"><? echo $texto ?></a> </ul> </li> <? }}?> </ul>

É uma das chavetas! Ainda não consegui perceber onde acaba cada um dos ciclos!
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17562
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Como criar menu dinâmico

12-06-2011 17:17

Você tem que seguir uma ordem, primeiro cria um menu, depois de criado, você seleciona ele no select, ai preenche os input text que serão relacionados a ele. Se está mostrando erro diz qual e em que página.

Já seu script parece ok, qual erro está dando? Tenta sem o uso de class, as vezes tem erros nelas.
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 75 postagens
Mais de 75 postagens
Tópico Autor
Mensagens: 87
Sexo: Masculino

Como criar menu dinâmico

12-06-2011 17:28

Não dá erro. aparece o menu desta forma:


http://imageshack.us/photo/my-images/804/imagemrz.png/
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17562
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Como criar menu dinâmico

12-06-2011 17:31

Isso parece problema na relação de li e ul. Você tem que observar a relação, veja no seu código fonte, original do menu com submenu o código relativo ao menu, e adicione no primeiro while, a mesma coisa com o segundo.
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 75 postagens
Mais de 75 postagens
Tópico Autor
Mensagens: 87
Sexo: Masculino

Como criar menu dinâmico

12-06-2011 17:39

Desculpa, não entendi :$
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17562
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Como criar menu dinâmico

12-06-2011 17:50

Você tem o script original seu, que tem menu e submenu, sem uso do banco de dados. Você tem que pegar ele, e identificar o que é o menu, se li ou ul, ou um bloco, ai o que for o menu, você tem que jogar dentro do while referente ao menu, no link que indiquei, a mesma coisa com o submenu.
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 75 postagens
Mais de 75 postagens
Tópico Autor
Mensagens: 87
Sexo: Masculino

Como criar menu dinâmico

12-06-2011 17:59

<ul>
<li class="vazio"></li>
<li class="selected"><a href="#">Jogos </a>
<ul>
<li class="selected"><a href="jogo1.php" target="iConteudo">
Jogo1</a></li>
<li class="selected"><a href="jogo2.php" target="iConteudo">
Jogo2</a></li>
<li class="selected"><a href="jogo3.php" target="iConteudo">
Jogo3</a></li>

</ul>
</li>
<li class="selected">
<a href="#" onclick="openurl('menu2.php','Meio');">cartoons</a></li>


O que está a vermelho é menu e a verde submenu. Adaptando o seu script parece-me correcto, mas óbvio que não está. Algo está a passar-me ao lado!
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17562
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Como criar menu dinâmico

12-06-2011 18:08

Então, o script é baseado no while...

Coloca a ul preta antes do primeiro while

O trecho em vermelho dentro do primeiro while

Agora essa segunda ul e um trecho do verde acho que vai no segundo while

<ul>
<li class="selected"><a href="jogo1.php" target="iConteudo">
Jogo1</a></li>
</ul>

Agora o fechamento da li eu acho que é no fechamento do segundo while.

No arquivo base.php

} // fim do submenu

// aqui
echo "</li>";

} // fim do menu principal

Acho que é isso.
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 75 postagens
Mais de 75 postagens
Tópico Autor
Mensagens: 87
Sexo: Masculino

Como criar menu dinâmico

12-06-2011 18:39

Adaptando esse exemplo à BD, funciona quase na perfeição. Mostra os menus todos, mas só mostra em caso de existir, o último sub-menu associado.
Neste caso, no menu jogos, tenho 3 sub-menus e ele só me mostra o link do jogo 3.

<ul> <li class="vazio"></li> <?php // menus principais $resultado=$conect->criarmenualuno(); while($campos=mysql_fetch_array($resultado)) { extract($campos);?> <li class="selected"><a href="<? echo $link ?>" target="iConteudo"><? echo $texto ?></a> <? $resultado2=$conect->criarsubmenualuno($id_menu); while($campos2=mysql_fetch_array($resultado2)) { extract($campos2);?> <ul> <a href="<? echo $link ?>" target="iConteudo"><? echo $texto ?></a> </ul> <? } ?> </li> <? }?> </ul>

0
 
Mais de 75 postagens
Mais de 75 postagens
Tópico Autor
Mensagens: 87
Sexo: Masculino

Como criar menu dinâmico

12-06-2011 18:50

Grande amigo .... Resolvido :)

estava a esquecer-me me criar um li dentro do segundo ul! Distração minha.

Obrigado pelo tempo dispensado!
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17562
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Como criar menu dinâmico

12-06-2011 18:54

Boa, ia postar o que me parecia, mas, já conseguiu blz.
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 75 postagens
Mais de 75 postagens
Tópico Autor
Mensagens: 87
Sexo: Masculino

Como criar menu dinâmico

12-06-2011 18:58

Já agora, porque será que a combobox carrega os dados sem acentos e ç? São substituidos por carateres estranhos. Na BD estão correctos ...
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17562
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Como criar menu dinâmico

12-06-2011 19:07

Usa esse header no topo do documento

header("Content-Type: text/html; charset=ISO-8859-1",true);
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 75 postagens
Mais de 75 postagens
Tópico Autor
Mensagens: 87
Sexo: Masculino

Como criar menu dinâmico

12-06-2011 19:27

Valeu! Vou dormir. Aqui são 23.27 e amanha é dia de trabalho.

Abraço!
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17562
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Como criar menu dinâmico

12-06-2011 19:58

:o Flw.
0
A melhor hospedagem para o seu site HostGator!

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado