Bom pessoal, preciso de uma forcinha , estou bloqueado a pelo menos um mês , vamos la!
Desenvolvi uma pequena aplicação usando a tecnologia PHP, MYSQL, jquery, booststrap, usando ajax ,trata-se de um tela em forma de painel que, apenas apertando os botoes muda a cor deles mostrando o status da atividade (verde, vermelho e inativo),sem " refresh " ate ai tudo bem funciona de boa . Na pagina principal tenho duas DIVS que recebe resultados do select de uma script php, uma mostra todo cadastro, a outra o resultado de uma busca, coloquei os eventos para ocultar uma div do cadastro geral caso a consulta seja feita mostra o resultado na outra e caso não haja consulta ,oculta div da busca e mostra o cadastro geral, como o script de atualização sempre acontece na div :#lista , perco essa funcionalidade no busca pois ela executa dentro da div resultados , "ao trazer o resultado e apertando os botoes nada acontece" , alguém teria uma solução, talvez se possível, armazenar em uma variável os valores do input de forma global, na qual fosse possível atualizar diretamente o mesmo item da busca ao pressionar os botoes?
pagina principal lista.php
<!DOCTYPE html><htmllang="pt-br"><body><head><metacharset="utf-8"><metaname="viewport"content="width=device-width, initial-scale=1"><title>Lista docs</title><linkrel="shortcut icon"type="image/x-icon"href="alien.ico"><!-- biblioteca de stilos bootstrap------------------------------------------------><linkhref="bootstrap/css/bootstrap.css"type="text/css"rel="stylesheet"><!--meu stilo ----------------------------------------------------------------------><linkhref="css/menu.css"type="text/css"rel="stylesheet"><!----------------------------------------------------------------------------------></head><body><divclass="container-fluid"><h1>Arquivos Digitais</h1><divclass="form-group"><divclass="col-3"><inputtype="text"class="form-control"id="pesquisa"name='pesquisa'placeholder="Entre com a pesquisa!!"></div></div><divid="lista"></div><!--mostra pesquisa geral--><divclass="resultados"></div><!--mostra resultado da busca--></div><!-- Biblioteca Jquery----------------------------------------------------------------><scripttype="text/javascript"src="js/jquery-2.1.4.min.js"></script><!------------------------------------------------------------------------------------><!-- Script Ajax----------------------------------------------------------------------><scripttype="text/javascript"src="js/ajax.js"></script><!------------------------------------------------------------------------------------><!--Biblioteca js bootstrap-----------------------------------------------------------><scripttype="text/javascript"src="bootstrap/js/bootstrap.min.js"></script><!------------------------------------------------------------------------------------></body></html>
Esse e o script js, faz a coisa toda acontecer acionando os script em php, ajax.js
// chamando a função ao iniciar a pagina
$(document).ready(function(){
atualiza();});//funcão para atualizar a pagina, mostra resultado na div listarfunction atualiza(){//buscando resutado pagina php e mostrando na div lista
$.get("le_registro.php",{},function(data, status){
$("#lista").html(data);});}// função que pega o que foi digitado no input para fazer a busca, oculta a div lista//mostra div resultados, caso contra , mostra reverso, (oculta o resultado mostra o lista)
$(function(){
$("#pesquisa").keyup(function(){var pesquisa = $(this).val();if(pesquisa !=""){var dados ={
palavra : pesquisa,}
$.post('busca.php', dados,function(retorna){
$(".resultados").fadeIn(1);//mostra div
$("#lista").fadeOut(1);//oculta div//mostra na div resultados e oculta a div lista
$(".resultados").html(retorna);});}else{//como não tem valor a processar oculta resultados e mostra o lista
$.post('busca.php', dados,function(retorna){
$(".resultados").fadeOut(1);//oculta div
$("#lista").fadeIn(1);//mostra div});}});});//função para mudar status do botao liberadofunction mudaliberado(id){var acao ='1';var id = id
$.post("upd_liberado.php",{
id: id,
acao: acao
},function(data, status){
atualiza();//chamando função atualiza});}//função para mudar status do botao liberado(teste esta linkado na pagina busca.php)function mudaliberado1(id){var acao ='1';var id = id
$.post("upd_liberado1.php",{
id: id,
acao: acao
},function(data, status){
atualiza();//chamando função atualiza});}//função para mudar status do botao ICMSfunction mudaspedicms(id){var acao ='1';var id = id
$.post("upd_mudaspedicms.php",{
id: id,
acao: acao
},function(data, status){
atualiza();//chamando função atualiza});}//função para mudar status do botao CONTfunction mudaspedcont(id){var acao ='1';var id = id
$.post("upd_mudaspedcont.php",{
id: id,
acao: acao
},function(data, status){
atualiza();//chamando função atualiza});}//função para mudar status do botao XMLfunction mudaxml(id){var acao ='1';var id = id
$.post("upd_mudaxml.php",{
id: id,
acao: acao
},function(data, status){
atualiza();//chamando função atualiza});}
Esse e o arquivo para mudar o status do botao, nesse caso vou colocar apenas um que seria muda botao liberado, up_liberado.php
<?php
// chamando a conexão com o banco de dados
include("conecta.php");// verificando se veio valores no postif(isset($_POST)){//recebendo valores do post
$id = $_POST['id'];
$aux= $_POST['acao'];//definindo valor dessa variavel,ref status do botao
$aux1=0;//definindo valor dessa variavel,ref status do botao
$aux2=2;//definindo valor dessa variavel,ref status do botao
$sql ="SELECT * FROM control where cod= $id ";//busca nos registros pela chave primaria
$query = $mysqli->query($sql);//execulta o comando//coloca o resultado em uma variavel, enquanto houver ocorrenciawhile($linha = $query->fetch_array()){//condicional para troca de status // se for igual a 0 recebe o valor 1if($linha['liberado']==0){
$sql="UPDATE control SET liberado = '$aux' WHERE cod = '$id'";if($query = $mysqli->query($sql)){exit(mysqli_error());}}// se for igual a 1 recebe o valor 2
elseif($linha['liberado']==1){
$sql="UPDATE control SET liberado = '$aux2' WHERE cod = '$id'";if($query = $mysqli->query($sql)){exit(mysqli_error());}}// senao recebe 0else{
$sql="UPDATE control SET liberado = '$aux1' WHERE cod = '$id'";if($query = $mysqli->query($sql)){exit(mysqli_error());}}}}?>
Esse e o arquivo que faz o select geral do cadastro, le_registros.php
<?php
// chamando a conexão com o banco de dados
include("conecta.php");//construção da tabela
$data ='<table class="table table-bordered table-striped">
<tr align="center" valign="middle">
<th >Codigo</th>
<th >Editar</th>
<th >Razao Social</th>
<th >Nome de Fantasia</th>
<th >Email</th>
<th >Liberado</th>
<th >Icms</th>
<th >Cont</th>
<th >XML</th>
</tr>';;
$sql ="SELECT * FROM control ";//busca no banco de dados todos os registros
$query = $mysqli->query($sql);//execulta o sql//coloca o resultado em uma variavel, enquanto houver ocorrenciawhile($linha = $query->fetch_array()){//condição para mudar a cor e estilo do botão mediante a valores encontardo nos idices do banco de dados//com chamadas das funcoes no ajax.js// 1 = verde (ok)// 2 = branco(inativo)// 0 = vermelho (pendente)if($linha['liberado']==0){
$botao1='<button onclick="mudaliberado('.$linha['cod'].')" class="btn btn-danger glyphicon glyphicon-thumbs-down"> Liberado</button>';}
elseif ($linha['liberado']==2){
$botao1='<button onclick="mudaliberado('.$linha['cod'].')" class="btn btn-default glyphicon glyphicon-lock"> Inativo</button>';}else{
$botao1='<button onclick="mudaliberado('.$linha['cod'].')" class="btn btn-success glyphicon glyphicon-thumbs-up"> Liberado</button>';}if($linha['spedicms']==0){
$botao2='<button onclick="mudaspedicms('.$linha['cod'].')" class="btn btn-danger">ICMS</button>';}
elseif ($linha['spedicms']==2){
$botao2='<button onclick="mudaspedicms('.$linha['cod'].')" class="btn btn-default ">ICMS</button>';}else{
$botao2='<button onclick="mudaspedicms('.$linha['cod'].')" class="btn btn-success">ICMS</button>';}if($linha['spedcont']==0){
$botao3='<button onclick="mudaspedcont('.$linha['cod'].')" class="btn btn-danger">CONT.</button>';}
elseif ($linha['spedcont']==2){
$botao3='<button onclick="mudaspedcont('.$linha['cod'].')" class="btn btn-default ">CONT.</button>';}else{
$botao3='<button onclick="mudaspedcont('.$linha['cod'].')" class="btn btn-success">CONT.</button>';}if($linha['xml']==0){
$botao4='<button onclick="mudaxml('.$linha['cod'].')" class="btn btn-danger">XML</button>';}
elseif ($linha['xml']==2){
$botao4='<button onclick="mudaxml('.$linha['cod'].')" class="btn btn-default ">XML</button>';}else{
$botao4='<button onclick="mudaxml('.$linha['cod'].')" class="btn btn-success">XML</button>';}// termina as condicionais----------------------------------------------------------------------------//contrução do resultado
$data .=' <tr valign="middle">
<td>'.$linha['cod'].'</td>
<td>
<button onclick="GetUserDetails('.$linha['cod'].')" class="btn btn-default " >
<p class="glyphicon glyphicon-pencil pos" aria-hidden="true"></p></button>
</td>
<td>'.$linha['razao'].'</td>
<td>'.$linha['nome'].'</td>
<td>'.$linha['email'].'</td>
<td>
'.$botao1.'
</td>
<td>
'.$botao2.'
</td>
<td>
'.$botao3.'
</td>
<td>
'.$botao4.'
</td>
</tr>';}
$data .='</table>';
echo $data;//imprime a coisa toda na tela?>
E por ultimo o script do busca.php
<?php
// chamando a conexão com o banco de dados
include("conecta.php");//construção da tabela
$data ='<table class="table table-bordered table-striped">
<tr align="center" valign="middle">
<th >Codigo</th>
<th >Editar</th>
<th >Razao Social</th>
<th >Nome de Fantasia</th>
<th >Email</th>
<th >Liberado</th>
<th >Icms</th>
<th >Cont</th>
<th >XML</th>
</tr>';;
$sql ="SELECT * FROM control ";//busca no banco de dados todos os registros
$query = $mysqli->query($sql);//execulta o sql//coloca o resultado em uma variavel, enquanto houver ocorrenciawhile($linha = $query->fetch_array()){//condição para mudar a cor e estilo do botão mediante a valores encontardo nos idices do banco de dados//com chamadas das funcoes no ajax.js// 1 = verde (ok)// 2 = branco(inativo)// 0 = vermelho (pendente)if($linha['liberado']==0){
$botao1='<button onclick="mudaliberado('.$linha['cod'].')" class="btn btn-danger glyphicon glyphicon-thumbs-down"> Liberado</button>';}
elseif ($linha['liberado']==2){
$botao1='<button onclick="mudaliberado('.$linha['cod'].')" class="btn btn-default glyphicon glyphicon-lock"> Inativo</button>';}else{
$botao1='<button onclick="mudaliberado('.$linha['cod'].')" class="btn btn-success glyphicon glyphicon-thumbs-up"> Liberado</button>';}if($linha['spedicms']==0){
$botao2='<button onclick="mudaspedicms('.$linha['cod'].')" class="btn btn-danger">ICMS</button>';}
elseif ($linha['spedicms']==2){
$botao2='<button onclick="mudaspedicms('.$linha['cod'].')" class="btn btn-default ">ICMS</button>';}else{
$botao2='<button onclick="mudaspedicms('.$linha['cod'].')" class="btn btn-success">ICMS</button>';}if($linha['spedcont']==0){
$botao3='<button onclick="mudaspedcont('.$linha['cod'].')" class="btn btn-danger">CONT.</button>';}
elseif ($linha['spedcont']==2){
$botao3='<button onclick="mudaspedcont('.$linha['cod'].')" class="btn btn-default ">CONT.</button>';}else{
$botao3='<button onclick="mudaspedcont('.$linha['cod'].')" class="btn btn-success">CONT.</button>';}if($linha['xml']==0){
$botao4='<button onclick="mudaxml('.$linha['cod'].')" class="btn btn-danger">XML</button>';}
elseif ($linha['xml']==2){
$botao4='<button onclick="mudaxml('.$linha['cod'].')" class="btn btn-default ">XML</button>';}else{
$botao4='<button onclick="mudaxml('.$linha['cod'].')" class="btn btn-success">XML</button>';}// termina as condicionais----------------------------------------------------------------------------//contrução do resultado
$data .=' <tr valign="middle">
<td>'.$linha['cod'].'</td>
<td>
<button onclick="GetUserDetails('.$linha['cod'].')" class="btn btn-default " >
<p class="glyphicon glyphicon-pencil pos" aria-hidden="true"></p></button>
</td>
<td>'.$linha['razao'].'</td>
<td>'.$linha['nome'].'</td>
<td>'.$linha['email'].'</td>
<td>
'.$botao1.'
</td>
<td>
'.$botao2.'
</td>
<td>
'.$botao3.'
</td>
<td>
'.$botao4.'
</td>
</tr>';}
$data .='</table>';
echo $data;//imprime a coisa toda na tela?>
Pergunta
jairson.camargo
Bom pessoal, preciso de uma forcinha , estou bloqueado a pelo menos um mês , vamos la!
Desenvolvi uma pequena aplicação usando a tecnologia PHP, MYSQL, jquery, booststrap, usando ajax ,trata-se de um tela em forma de painel que, apenas apertando os botoes muda a cor deles mostrando o status da atividade (verde, vermelho e inativo),sem " refresh " ate ai tudo bem funciona de boa . Na pagina principal tenho duas DIVS que recebe resultados do select de uma script php, uma mostra todo cadastro, a outra o resultado de uma busca, coloquei os eventos para ocultar uma div do cadastro geral caso a consulta seja feita mostra o resultado na outra e caso não haja consulta ,oculta div da busca e mostra o cadastro geral, como o script de atualização sempre acontece na div :#lista , perco essa funcionalidade no busca pois ela executa dentro da div resultados , "ao trazer o resultado e apertando os botoes nada acontece" , alguém teria uma solução, talvez se possível, armazenar em uma variável os valores do input de forma global, na qual fosse possível atualizar diretamente o mesmo item da busca ao pressionar os botoes?
pagina principal lista.php
Esse e o script js, faz a coisa toda acontecer acionando os script em php, ajax.js
Esse e o arquivo para mudar o status do botao, nesse caso vou colocar apenas um que seria muda botao liberado, up_liberado.php
Esse e o arquivo que faz o select geral do cadastro, le_registros.php
E por ultimo o script do busca.php
Essa e a tela de apresentação em anexo
Pessoal desde já agradeço imensamente a todos...
Link para o comentário
Compartilhar em outros sites
3 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.