Hamon 1 Denunciar post Postado Fevereiro 17, 2016 Pessoal estou tanto fazer com que o mysql atualize no banco de dados o campo STATUS quando ele seja MENOR que a DATA ATUAL. Só que ele está atualizando todos os campos STATUS de todos os registros. OBS: Campo que contem a data no banco de dados mysql está em VARCHAR e está em "d/m/Y" <?php include "conexao.inc"; $data_atual=date('d/m/Y'); $sql="SELECT * FROM tb_parcelas"; $comando=mysqli_query($con,$sql); while($escrever=mysqli_fetch_array($comando)){ $status=$escrever['status']; $data_vencimento=$escrever['data_vencimento']; } $sql2="UPDATE tb_parcelas SET status='Passou do prazo' WHERE $data_vencimento < $data_atual"; $comando2=mysqli_query($con,$sql2); ?> Compartilhar este post Link para o post Compartilhar em outros sites
allex_carvalho 124 Denunciar post Postado Fevereiro 17, 2016 No seu banco, onde recebe a data é tipo date? Se for, altere a formatação da data atual: $data_atual=date('Y-m-d'); O banco de dados trabalha com data padrão americano. Compartilhar este post Link para o post Compartilhar em outros sites
Hamon 1 Denunciar post Postado Fevereiro 17, 2016 Não é do tipo VARCHAR. Mas mesmo assim funciona já fiz um teste que ele me diz que por exemplo SE 17/02/2016 for MAIOR que 16/02/2016 ele exibe resultado certo. Cara, tá dificil, tentei até usar explode kkk Compartilhar este post Link para o post Compartilhar em outros sites
ESerra 744 Denunciar post Postado Fevereiro 17, 2016 Remodele o seu banco e use campos adequados com tipos adequados, isso que você quer fazer é inviável como o sistema está atualmente. Compartilhar este post Link para o post Compartilhar em outros sites
Hamon 1 Denunciar post Postado Fevereiro 17, 2016 Quais alteraçoes devo fazer e depois de feito como devo precedir ara obter o resultado que desejo? Compartilhar este post Link para o post Compartilhar em outros sites
ESerra 744 Denunciar post Postado Fevereiro 17, 2016 Conforme eu disse "use campos adequados" (data, datetime, etc..) com tipos adequados (yyyy-mm-dd, yyyy-mm-dd hh:ii:ss)... depois disso basta UPDATE ... WHERE nome_do_campo < '$data_que_vc_quer' Compartilhar este post Link para o post Compartilhar em outros sites
Hamon 1 Denunciar post Postado Fevereiro 17, 2016 Pessoal, to com um problema na hora de enviar as datas para o banco de dados, ele está salvando uma unica data "1970-01-01" CÓDIGO: $data_venc=$data; //Pega valor da data do usuario e passa para uma variavel $data_venc= explode("/", $data_venc); //Retira as "/" e deixa a data separada list($dia, $mes2, $ano) = $data_venc; //Cria um array para a data $data_venc = "$ano-$mes2-$dia"; //Recria a data por variaveis $dia = $dia+30; //Adiciona + 30 dias (Para não dar problema no banco de dados) $numero=$numero+1; //Pega o resultado maximo do campo "numero" no banco de dados e acrescente +1 $i=1; //DEFAULT para fazer o while $quantidade_total=$bd_quantidade - $quantidade; @$sql4="UPDATE tb_produtos SET quantidade='$quantidade_total' WHERE id='$id'"; $comando4=mysqli_query($con,$sql4); while ($qtd_parcela >= $i) { $data_venc = date("Y-m-d",mktime(0,0,0,$ano,$mes2,$dia)); $dia = $dia+30; $i++; $sql2="INSERT INTO tb_parcelas VALUES (NULL, NULL, $numero, '$data', '$vendedor', '$cliente', '$bd_nome', $quantidade, $valor3, '$data_venc', 'Pendente')"; $comando=mysqli_query($con,$sql2); } } } } Compartilhar este post Link para o post Compartilhar em outros sites
Hamon 1 Denunciar post Postado Fevereiro 18, 2016 Deu certinho pessoal, agradeço a todos. Obrigado a todos que puderam me ajudar, ainda sou novo em PHP tentando fazer coisa grande.... kkkkkkk Compartilhar este post Link para o post Compartilhar em outros sites