Ir ao conteúdo
  • Cadastre-se

Thesalos

Membro Pleno
  • Posts

    45
  • Cadastrado em

  • Última visita

Tudo que Thesalos postou

  1. Fala Pessoal, preciso desenvolver um programa no qual utilize o algoritmo A-star(A*) e implementar um grafo dado pelo meu professor de Inteligencia Artifical. O algoritmo eu tenho, pois achei na net mesmo, mas preciso implementar esse grafo que ele passou e eu não tenho a menor ideia do que fazer (inclusive odeio essa disciplina). Segue o código do A*star em python, e em anexo o gráfo que preciso implementar. ############################################################################## # import packages ############################################################################## import numpy as np import heapq import matplotlib.pyplot as plt from matplotlib.pyplot import figure ############################################################################## # plot grid ############################################################################## grid = np.array([ [0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 1, 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 1], [0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [1, 1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1], [0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0], [0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 0, 0], [0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0], [0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0], [0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]]) # start point and goal start = (0,0) goal = (0,19) ############################################################################## # heuristic function for path scoring ############################################################################## def heuristic(a, b): return np.sqrt((b[0] - a[0]) ** 2 + (b[1] - a[1]) ** 2) ############################################################################## # path finding function ############################################################################## def astar(array, start, goal): neighbors = [(0,1),(0,-1),(1,0),(-1,0),(1,1),(1,-1),(-1,1),(-1,-1)] close_set = set() came_from = {} gscore = {start:0} fscore = {start:heuristic(start, goal)} oheap = [] heapq.heappush(oheap, (fscore[start], start)) while oheap: current = heapq.heappop(oheap)[1] if current == goal: data = [] while current in came_from: data.append(current) current = came_from[current] return data close_set.add(current) for i, j in neighbors: neighbor = current[0] + i, current[1] + j tentative_g_score = gscore[current] + heuristic(current, neighbor) if 0 <= neighbor[0] < array.shape[0]: if 0 <= neighbor[1] < array.shape[1]: if array[neighbor[0]][neighbor[1]] == 1: continue else: # array bound y walls continue else: # array bound x walls continue if neighbor in close_set and tentative_g_score >= gscore.get(neighbor, 0): continue if tentative_g_score < gscore.get(neighbor, 0) or neighbor not in [i[1]for i in oheap]: came_from[neighbor] = current gscore[neighbor] = tentative_g_score fscore[neighbor] = tentative_g_score + heuristic(neighbor, goal) heapq.heappush(oheap, (fscore[neighbor], neighbor)) return False route = astar(grid, start, goal) route = route + [start] route = route[::-1] print(route) ############################################################################## # plot the path ############################################################################## #extract x and y coordinates from route list x_coords = [] y_coords = [] for i in (range(0,len(route))): x = route[i][0] y = route[i][1] x_coords.append(x) y_coords.append(y) # plot map and path fig, ax = plt.subplots(figsize=(20,20)) ax.imshow(grid, cmap=plt.cm.Dark2) ax.scatter(start[1],start[0], marker = "*", color = "yellow", s = 200) ax.scatter(goal[1],goal[0], marker = "*", color = "red", s = 200) ax.plot(y_coords,x_coords, color = "black") plt.show() Obs. também não entendi o código que peguei pois não sei python, e o professor não soube nem explicar na vdd, apenas disse para pesquisar na internet e reutilizar o código, e acabei achando esse em python que gera um gráfico mostrando o melhor caminho percorrido que é o que o algoritmo faz(acha o melhor caminho), preciso de muita ajuda nisso pois estou sem direção alguma nesse grafo que ele passou, não tenho a menor ideia de como aplica-lo no A*. Por favor, alguém me dá um help, ficaria muito grato
  2. @AdrianoSiqueira Muito obrigado amigo, vou tentar adaptar o código para o android studio agora
  3. Estou com um exercicio em android que o professor passou pra resolver mas n consigo achar uma solução, o exercício é o seguinte: Tenho 2 dados o dado1 e o dado2 ,os dados são jogados: *Se for o primeiro turno e a soma das faces dos dados cair 7 ou 11 você perdeu o jogo; *Se for o primeiro turno e a soma das faces dos dados cair 2,3 e 12 você ganhou; *Se for primeiro turno e a soma das faces dos dados cair 1,4,5,6,8,9,10 então esse valor desse ser armazenado Segundo turno em diante: *Se for segundo turno e a soma das faces dos dados cair 7 novamente, você perdeu o jogo e reseta os turno voltando no inicio do jogo; *Se for o segundo turno, você continuando jogando os dados e só ganha se cair um numero igual ao anterior do primeiro turno; Exemplo: se cair 5 no primeiro turno, para ganhar o jogo terei q tirar outro 5 dentre os proximos turno e caso eu tire 7 nessas rodadas ja perdi. O q eu fiz até agora: /* preciso definir variavel pra contar turnos mas n sei qual condição usar*/ int turno = 0; int pontos = dadoApp + dadoUsu; int guarda = 0; if (turno == 1) { if ((pontos == 7) || (pontos == 11)) { textoResultado.setText("Você perdeu!!!"); } else if ((pontos == 2) || (pontos == 3) || (pontos == 12)) { textoResultado.setText("Você ganhou!!!"); } else { textoResultado.setText("Turno " + turno + " - Próxima Rodada!!!"); guarda = pontos; } } else { if (turno >= 2) { if (pontos == 7) { textoResultado.setText("Turno " + turno + " - Você perdeu!!!"); } else if (pontos == guarda) { textoResultado.setText("Turno " + turno + " - Você ganhou!!!"); } else { textoResultado.setText("Continue jogando!!!"); } } }
  4. @GabrielSennaMs Era exatamente o q eu queria amigo, mas só carrega um campo depois de selecionar a opção, tentei adicionar outros e n foi.
  5. Preciso que ao selecionar uma opção do select, outros campos do formulários carreguem, de acordo com opção selecionada. Por exemplo se selecionar a opção computadores no formulário, irá abrir campos para preencher referente a computadores no mesmo formulário. Aqui está o select. <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> <link rel="stylesheet" type="text/css" href="css/formstyle.css"> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script> <title>Help Desk</title> </head> <body> <form class="form" method="post" action="#"> <h1>Cadastrar Ativos</h1> <fieldset class="grupo"> <div class="campo"> <label for="status">Tipo Ativo</label> <select name="status" id="status" required> <option value=""></option> <option value="#">Computadores</option> <option value="#">Impressoras</option> <option value="#">Monitores</option> <option value="#">programas</option> <option value="#">Outros</option> </select> </div> </fieldset> </form> </body> </html> E aqui está uns dos formulários q quero carregar de acordo com a opção selecionada (no caso computadores), mas que carrega fique tudo num formulário só. <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> <link rel="stylesheet" type="text/css" href="css/formstyle.css"> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script> <title>Help Desk</title> </head> <body> <form class="form" method="post" action="#"> <!--<h1>Cadastrar Computadores</h1>--> <fieldset class="grupo"> <div class="campo"> <label for="status">Status</label> <select name="status" id="status" required> <option value=""></option> <option value="#">Habilitado</option> <option value="#">Desabilitado</option> </select> </div> <div class="campo"> <label for="inventario">Nº de inventário</label> <input type="number" name="inventario" id="inventario" placeholder="Informe um número" > </div> <div class="campo"> <label for="nome">Nome</label> <input type="text" name="nome" id="nome" placeholder="Digite o nome para identificação" required> </div> </fieldset> <fieldset class="grupo"> <div class="campo"> <label for="fab">Fabricante</label> <input type="text" name="fab" id="fab" placeholder="Informe o fabricante"> </div> <div class="campo"> <label for="model">Modelo</label> <input type="text" name="model" id="model" placeholder="Informe o modelo" > </div> </fieldset> <fieldset class="grupo"> <div class="campo"> <label for="pm">Placa-mãe</label> <input type="text" name="pm" id="pm" placeholder="Informe o modelo" > </div> <div class="campo"> <label for="proc">Processador</label> <input type="text" name="proc" id="proc" placeholder="Informe o modelo" > </div> <div class="campo"> <label for="ram">Memória RAM</label> <input type="number" name="ram" id="ram" placeholder="Informe a qtd em GB" > </div> </fieldset> <fieldset class="grupo"> <div class="campo"> <label for="hd">Qtd. HD</label> <input type="number" name="hd" id="hd" placeholder="Informe a qtd em GB" > </div> <div class="campo"> <label for="video">Placa de vídeo</label> <input type="text" name="video" id="video" placeholder="Informe o modelo" > </div> <div class="campo"> <label for="fonte">Fonte de alimentação</label> <input type="text" name="fonte" id="fonte" placeholder="Informe o modelo" > </div> </fieldset> <div class="campo"> <label for="leitor">Driver óptico</label> <input type="text" name="leitor" id="leitor" placeholder="Informe o modelo" > </div> <div class="campo"> <label for="mensagem">Comentários</label> <textarea rows="6" style="width: 32em" id="mensagem" name="mensagem"></textarea> </div> <fieldset> <button type="submit" name="enviar" value="enviar">Enviar</button> <button type="reset" name="limpar" value="limpar" style="margin-right: 15px;">Limpar</button> </fieldset> </form> <body> </html>
  6. @f_neto Consegui amigo, funcionou retirando a bateria,obrigado!!!
  7. @f_neto o problema não é criar o pendrive bootável amigo e sim acessar a bios para poder mudar o ordem de boot
  8. Estou com um bomba aqui em casa, peguei um pc pra formatar porém n consigo de maneira alguma entrar na bios, já procurei em vários lugares, vi que o pc só pode ser formatado utilizando o w10 pois vem pré-bloqueado do fabricante, já tentei apertar as teclas DEL, f1, f2, todas as possíveis mas nada de entrar na bios, também já tentei através da recuperação do windows 10 ele carrega a tela da bios mais n consigo mexer em nenhuma opção, como se a tela estivesse congelada. Segue as config do pc: SO: Windows 10 64bits Processador: Intel Celeron J1800 2.41GHz 2.42GHz Mémoria Ram: 4GB HD: 500GB
  9. Como faço para que as opções do submenu carregar ao lado do menu lateral, como na imagem em anexo: @charset "UTF-8"; *{ margin: 0; padding: 0; box-sizing: border-box; list-style: none; text-decoration: none; font-family: 'Arial', sans-serif; } body{ background-color: #f3f5f9; } .wrapper{ display: flex; position: relative; } .wrapper .sidebar{ width: 250px; height: 100%; background: #363636; position: fixed; } .wrapper .sidebar h2{ color: #fff; text-transform: uppercase; text-align: center; padding: 15px; } .wrapper .sidebar ul li{ padding: 15px; border-bottom: 1px solid #bdb8d7; border-bottom: 1px solid rgba(0,0,0,0.05); border-top: 1px solid rgba(255,255,255,0.05); } .wrapper .sidebar ul li a{ color: #bdb8d7; display: block; } .wrapper .sidebar ul li a .faz{ width: 25px; } .wrapper .sidebar ul li:hover{ background-color: #4169E1; } .wrapper .sidebar ul li:hover a{ color: #fff; } .wrapper .sidebar .social_media{ position: absolute; bottom: 0; left: 50%; transform: translateX(-50%); display: flex; } .wrapper .sidebar .social_media a{ display: block; width: 40px; background: #594f8d; height: 40px; line-height: 45px; text-align: center; margin: 0 5px; color: #bdb8d7; border-top-left-radius: 5px; border-top-right-radius: 5px; } .wrapper .main_content{ width: 100%; margin-left: 250px; position: sticky; top: 0; } .sidebar{ position: fixed; } .wrapper .main_content .header{ padding: 21px; background: #4169E1; color: #fff; border-bottom: 1px solid #e0e4e8; position: fixed; width: 100%; } .wrapper .main_content .info{ margin: 20px; color: #717171; line-height: 25px; padding-top: 60px; } .wrapper .main_content .info div{ margin-bottom: 20px; } @media (max-height: 500px){ .social_media{ display: none !important; } } <!DOCTYPE html> <html> <head> <link rel="stylesheet" type="text/css" href="css/menu-principal.css"> <script src="https://kit.fontawesome.com/b99e675b6e.js"></script> <title></title> </head> <body> <div class="wrapper"> <div class="sidebar"> <h2>Logo</h2> <ul class="mainmenu"> <li><a href="#"><i class="faz fa-home"></i>Home</a></li> <li><a href="#"><i class="faz fa-user"></i>Ativos</a></li> <li><a href="#"><i class="faz fa-address-card"></i>About</a> <li><a href="#"><i class="faz fa-project-diagram"></i>portfolio</a></li> <li><a href="#"><i class="faz fa-blog"></i>Blogs</a></li> <li><a href="#"><i class="faz fa-address-book"></i>Contact</a></li> <li><a href="#"><i class="faz fa-map-pin"></i>Map</a></li> </ul> </div> <div class="main_content"> <div class="header">Welcome!! Have a nice day.</div> <div class="info"> <div>Lorem ipsum dolor sit, amet consectetur adipisicing elit. A sed nobis ut exercitationem atque accusamus sit natus officiis totam blanditiis at eum nemo, nulla et quae eius culpa eveniet voluptatibus repellat illum tenetur, facilis porro. Quae fuga odio perferendis itaque alias sint, beatae non maiores magnam ad, veniam tenetur atque ea exercitationem earum eveniet totam ipsam magni tempora aliquid ullam possimus? Tempora nobis facere porro, praesentium magnam provident accusamus temporibus! Repellendus harum veritatis itaque molestias repudiandae ea corporis maiores non obcaecati libero, unde ipsum consequuntur aut consectetur culpa magni omnis vero odio suscipit vitae dolor quod dignissimos perferendis eos? Consequuntur!</div> <div>Lorem ipsum dolor sit, amet consectetur adipisicing elit. A sed nobis ut exercitationem atque accusamus sit natus officiis totam blanditiis at eum nemo, nulla et quae eius culpa eveniet voluptatibus repellat illum tenetur, facilis porro. Quae fuga odio perferendis itaque alias sint, beatae non maiores magnam ad, veniam tenetur atque ea exercitationem earum eveniet totam ipsam magni tempora aliquid ullam possimus? Tempora nobis facere porro, praesentium magnam provident accusamus temporibus! Repellendus harum veritatis itaque molestias repudiandae ea corporis maiores non obcaecati libero, unde ipsum consequuntur aut consectetur culpa magni omnis vero odio suscipit vitae dolor quod dignissimos perferendis eos? Consequuntur!</div> <div>Lorem ipsum dolor sit, amet consectetur adipisicing elit. A sed nobis ut exercitationem atque accusamus sit natus officiis totam blanditiis at eum nemo, nulla et quae eius culpa eveniet voluptatibus repellat illum tenetur, facilis porro. Quae fuga odio perferendis itaque alias sint, beatae non maiores magnam ad, veniam tenetur atque ea exercitationem earum eveniet totam ipsam magni tempora aliquid ullam possimus? Tempora nobis facere porro, praesentium magnam provident accusamus temporibus! Repellendus harum veritatis itaque molestias repudiandae ea corporis maiores non obcaecati libero, unde ipsum consequuntur aut consectetur culpa magni omnis vero odio suscipit vitae dolor quod dignissimos perferendis eos? Consequuntur!</div> </div> </div> </div> </body> </html>
  10. Eae pessoal, o que está acontecendo é o seguinte, quando eu crio arquivos html, php, css, etc... e depois quero exclui-los, não consigo criar mais arquivos com o mesmo nome que estava no arquivo excluido, alias até consigo, porém nada que eu faço no código novo não é aplicado na hora de executar, utilizo o XAMPP como servidor, e também acontece que mesmo após excluido o arquivo e tirado da lixeira eu ainda consigo acessa-lo pelo caminho do xampp no navegador, como se o arquivo ainda estivesse lá na pasta. Não tenho a minima ideia do q pode ser.
  11. O problema agora é que o conteudo carrega dentro da div e continua exibindo o menu lateral, porém o conteudo não fica centralizado dentro da div e sim centralizado na pagina inteira, inclusive escondendo atras do menu, add um margin left e deu certo, mas ao minimizar a pagina fica tudo branco.
  12. O que eu fiz foi: <html> <head> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script> <script type="text/javascript"> function carregar(pagina){ $("#conteudo").load(pagina); } </script> <body> <ul id="menu-content" class="menu-content collapse out"> <li><a href="inicial.php"><i class="faz fa-home fa-lg"></i> Home</a></li> </ul> <div class="main-content"> <div id="conteudo"> <h2>Conteudo</h2> </div> </div> </body> </head> </html> Eu não sei precisa adicionar mais alguma coisa pra executar esse script, algum comando sei la adicionado 15 minutos depois Deu certo, o q estava dando errado é porque como estou utilizando o bootstrap entao tinha esse script no final <script src="https://code.jquery.com/jquery-3.4.1.slim.min.js" integrity="sha384-J6qa4849blE2+poT4WnyKhv5vZF5SrPo0iEjwBvKU7imGFAV0wwj1yYfoRSJoZ+n" crossorigin="anonymous"></script> Eu apenas apaguei o mesmo, e deixei o q você passou. Cara muito obrigado pela atenção...você é demais huehue
  13. no lugar de conteudo eu coloquei info, porque tentei executar com minha div, no seu estava conteudo mesmo eu q mudei, mas como faço para importar o jquery? Estou utilizando o framework bootstrap e lá fala pra adicionar esse script aqui <script src="https://code.jquery.com/jquery-3.4.1.slim.min.js" integrity="sha384-J6qa4849blE2+poT4WnyKhv5vZF5SrPo0iEjwBvKU7imGFAV0wwj1yYfoRSJoZ+n" crossorigin="anonymous"></script> Isso já seria importar o Jquery? Se acaso for isso eu ja fiz, mas ainda sem sucesso.
  14. também tentei da seguinte maneira, mas sem sucesso: <script type="text/javascript"> function carregar(pagina) { $("#info").load("inicial.php"); } </script> <li><a onclick="carregar('inicial.php')" href="#"><i class="faz fa-home fa-lg"></i> Home</a></li>
  15. Tentei utilizar o seu código que achei num post e adaptei pro meu, mas ainda n está funcionando: <head> <script type="text/javascript"> $(function(){ $(document).on('click', 'a.link', function (e) { e.preventDefault(); // prevent normal link navigation var $this = $(this), url = $this.attr('href'); $(".info").load(url); return false; }); }); </script> </head> <ul> <li><a href="inicial.php" class="link">Home</a></li> </ul> <div class="conteudo"></div>
  16. @DiF Cara perfeito, muito obrigado, eu sou iniciante em programação web, então tenho bastante duvidas com css, html, js etc, e sua explicação encaixou como um luva. Não sei se posso aproveitar o tópico, ou devo abrir um novo, mas teria como você me explicar como abrir uma pagina dentro de uma div sem usar iframe, tipo tenho um menu sidebar, quando cliko em alguma opção quero que o conteudo carregue dentro da div do lado do menu, sem sair da pagina do menu. O meu html está assim, tem um css por tras disso, mas acho q é irrelevante. A div que quero carregar o conteudo esta com nome de "info". <html> <head> <meta charset="utf-8"> <title></title> </head> <body> <div class="nav-side-menu"> <div class="brand">Logo</div> <div class="menu-list"> <ul id="menu-content" class="menu-content collapse out"> <li><a href="inicial.html"><i class="faz fa-home fa-lg"></i> Home</a></li> <li data-toggle="collapse" data-target="#usuarios" class="collapsed"> <a href="#"><i class="fa fa-user fa-lg"></i> Usuários <span class="arrow"></span></a> </li> <ul class="sub-menu collapse" id="usuarios"> <li class="active"><a href="#"> Cadastrar Usuários</a></li> <li class="active"><a href="#">Consultar usuários</a></li> </ul> <li data-toggle="collapse" data-target="#inventario" class="collapsed"> <a href="#"><i class="faz fa-box fa-lg"></i> Inventário <span class="arrow"></span></a> </li> <ul class="sub-menu collapse" id="inventario"> <li class="active"><a href="#">Cadastrar Equipamentos</a></li> <li class="active"><a href="#">Consultar Equipamentos</a></li> </ul> <li data-toggle="collapse" data-target="#chamado" class="collapsed"> <a href="#"><i class="faz fa-headset fa-lg"></i> Chamados <span class="arrow"></span></a> </li> <ul class="sub-menu collapse" id="chamado"> <li class="active"><a href="#">Abrir Chamados</a></li> <li class="active"><a href="#">Consultar Chamados</a></li> </ul> <li data-toggle="collapse" data-target="#relatorios" class="collapsed"> <a href="#"><i class="faz fa-clipboard fa-lg"></i> Relatórios <span class="arrow"></span></a> </li> <ul class="sub-menu collapse" id="relatorios"> <li class="active"><a href="#">Gerar Relatórios</a></li> <li class="active"><a href="#">Consultar Relatórios</a></li> </ul> <li><a href="#"><i class="faz fa-info-circle fa-lg"></i> Sobre</a></li> <li><a href="#"><i class="faz fa-comment-dots fa-lg"></i> Contato</a></li> </ul> </div> </div> <div class="main_content"> <div class="header"> <ul> <li><a href="#">Usuário</a></li> <li><a href="#">Sair</a></li> <!--Colocar aqui no menu Horizontal o nome do usuario logado e linkar o sair--> </ul> </div> <div class="info"> <!--aqui vai o conteudo do centro --> </div> </div> </body> </html>
  17. Fala pessoal, queria saber como faço para aumentar a area de abrangencia de um clique de uma opção, por exemplo: Tenho um menu feito, mas só consigo entrar na opção quando cliko em cima do q esta escrito, eu queria que desse pra entrar quando clikar em cima da box inteira.
  18. Com certeza, eu n iria aprender desse jeito, mas como eu te disse estou apreendendo, na parte que você disse q o cliente pode escolher seu nivel é por isso q eu estava querendo definir um direto no banco, eu não saberia fazer TAGS para o usuario. Imagina, eu que me expressei mal, enfim obrigado pela atenção... adicionado 11 minutos depois A estrutura da minha tabela esta assim: id int(11) NO PRI NULL auto_increment nome varchar(30) NO NULL sobrenome varchar(30) NO NULL sexo varchar(20) NO NULL cpf varchar(11)NO NULL perfil varchar(20) NO NULL login varchar(30) NO NULL senha varchar(20) NO NULL E o codigo, utilizei o num_rows para contar as linhas <?php $login = $_POST ['login']; $senha = $_POST ['senha']; $sql = mysqli_query($conexao,"SELECT * FROM usuarios WHERE login = '$login' and senha = '$senha'") or die (mysqli_error()); $row = mysqli_num_rows($sql); ?> <?php if ($row > 0){ session_start(); $_SESSION['login'] = $_POST['login']; $_SESSION['senha'] = $_POST['senha']; echo "<br><br><center><span class='foco-sucesso'>Efetuando Login!</span><br><br> Aguarde um instante.</center>"; echo "<script>loginsucessfully()</script>"; } else { echo "<br><br><center><span class='foco-erro'>Dados inválidos!</span><br><br>Aguarde um instante e tente novamente.</center>"; echo "<script>loginfailed()</script>"; } echo ' <br><center><div class="loader"></div></center>'; ?>
  19. sim amigo, eu seria o administrador, estou apreendendo a programar por isso vim tirar duvidas, ja fiz a conexao com bd mas n achei necessario colocar aqui ja que a minha pergunta seria apenas como abrir uma sessao de adm e pegar o valor da variavel direto do banco. adicionado 4 minutos depois Entao amigo eu acho que entendi o q você quiz dizer, estou fazendo assim para pegar o usuario e a senha $sql = mysqli_query($conexao,"SELECT * FROM usuarios WHERE login = '$login' and senha = '$senha'") or die (mysqli_error()); Pelo q eu entendi pelo nome do usuario eu ja identificaria o nivel de acesso ,correto? Mas como faço para enviar cada um pra uma determinada pagina, é necessario abrir uma session pra cada?
  20. Fala pessoal, é o seguinte, estou desenvolvendo um sistema onde tem niveis de acesso, o que eu quero é pegar a variavel perfil (defini como administrador, tecnico e usuario) que ja esta no banco e utiliza-la diretamente no php, onde cada tipo de nivel teria acesso a uma pagina diferente. Porém os campos login e senha ja vem direto de um formulario, mas o perfil eu criei direto no banco, já que não tem como definir um nivel de acesso para o usuario escolher, porque somente o adm pode definir isso, como transmitir o perfil e fazer esse redirecionamento. Segue o que eu tentei fazer. <?php $perfil = mysqli_query($conexao,"SELECT * FROM usuarios WHERE perfil='administrador'") or die (mysqli_error()); if($perfil == "tecnico") { session_start(); header("Location: menutec.php"); } else if($perfil == "administrador") { session_start(); header("Location: cadastro1.php"); } else if($perfil == "usuario") { session_start(); header("Location: menuuser.php"); } ?> Por exemplo os campos login e senha eu peguei de um form utilizando. $login = $_POST ['login']; $senha = $_POST ['senha']; Mas como pegar nivel de acesso?

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!