arldin 1 Denunciar post Postado Abril 4, 2015 Não funcionou continua passando tanto o que ja esta atrasado como o que não esta Compartilhar este post Link para o post Compartilhar em outros sites
Beraldo 864 Denunciar post Postado Abril 4, 2015 Mostre como fez. Diga também quais são os valores de $data e $data_pg. Isso vai influenciar no funcionamento. Compartilhar este post Link para o post Compartilhar em outros sites
arldin 1 Denunciar post Postado Abril 4, 2015 Primeiro fiz deste jeito <?php $qry="SELECT * FROM se_users WHERE data='$data' AND data_pg='$data_pg'"; $result=mysql_query($qry); if($result) { $agora = new DateTime; $expiracao = new DateTime( $data_pg ); if ( $expiracao < $agora ) { // plano expirou } } ?> depois assim <?php $qry="SELECT * FROM se_users WHERE data='$data' AND data_pg='$data_pg'"; $result=mysql_query($qry); if($result) { $data = new DateTime; $data_pg = new DateTime($data_pg); if ( $data_pg < $data ) { // plano expirou } } ?> Depois toquei o selct fazendo a mudança duas vezes igual acima$qry="SELECT * FROM se_users WHERE data='$data' AND data_pg > NOW()"; $data = date("Y-m-d"); $data_pg = date("Y-m-d", strtotime("+ 1 Month")); Compartilhar este post Link para o post Compartilhar em outros sites
Beraldo 864 Denunciar post Postado Abril 4, 2015 Você não programou nada dentro do if? Deixou só o comentário? Aí não vai bloquear o acesso mesmo... Compartilhar este post Link para o post Compartilhar em outros sites
arldin 1 Denunciar post Postado Abril 4, 2015 Descupa e que eu esqueci de posta coloquei assim echo '<script> location.href="index_pagamento.php"; </script>'; Compartilhar este post Link para o post Compartilhar em outros sites
Beraldo 864 Denunciar post Postado Abril 5, 2015 tem que dar echo e colocar exit em seguida. Caso contrário, o resto do código é executado. Compartilhar este post Link para o post Compartilhar em outros sites
Tatsunow 2 Denunciar post Postado Abril 5, 2015 sou menina não kk!, so macho fi.Coloca quando a pessoa se registrar, ja salvar ou quando assinar algum plano já salva o dia em que deve terminarai tu faz um sistema pra ficar renovando as informações, ai quando chegar um dia antes tu manda o email coloca um boolean pra sinalizar que ja mandou ai se a pessoa confirmar o pagamento tu coloca alguma variavel pra fala que pagou sei lá, da uma pensada ae! Compartilhar este post Link para o post Compartilhar em outros sites
arldin 1 Denunciar post Postado Abril 5, 2015 Descupa pelo equivoco mais valeu a força vou testa a sua teoria Coloquei desta forma mais continua passando $qry="SELECT * FROM se_users WHERE data='$data' AND data_pg > NOW()"; $result=mysql_query($qry); if($result) { $data = new DateTime; $data_pg = new DateTime($data_pg); if ( $data_pg < $data ) { session_write_close(); header("location: div1.php"); exit(); }else { header("location: index_pagamento.php"); exit(); } { die("Query failed"); } } Criei outra pagina só que agora ele bloqueia todos ta assim o codico <?php require_once('config.php'); $qry="SELECT * FROM se_users WHERE data='$data' AND data_pg > NOW()"; $result=mysql_query($qry); if($result) { $data = new DateTime; $data_pg = new DateTime($data_pg); if ( $data_pg < $data ) { session_write_close(); header("location: login-exec.php"); exit(); }else { header("location: pagamento.php"); exit(); } { die("Query failed"); } } ?> Compartilhar este post Link para o post Compartilhar em outros sites
Beraldo 864 Denunciar post Postado Abril 5, 2015 Primeiramente, como eu disse antes, tenha certeza de que data_pg está no formato YYYY-MM-DD e verifique se ela é maior que a data atual (a data de expiração deve ser maior que a data de hoje) Você comete o mesmo erros em seus dois códigos. Você redireciona para o pagamento quando o if retorna false, ou seja, quando a data de expiração é maior que a data atual. É o oposto. O redirecionamento para o pagamento é feito no if, não no else Compartilhar este post Link para o post Compartilhar em outros sites
arldin 1 Denunciar post Postado Abril 12, 2015 a data do pagamento e data estão Y-m-d eu troquei e continuo passando Fiz uma modificação que retornou o que eu quero foi o seginte no script login-exec.php ficou assim $qry="SELECT * FROM se_users WHERE user_email='$user_username' AND user_password='$user_password' AND user_verified='1' AND status='1'"; todos que tiverem o status 1 vai se logar e o que tiverem o status 0 vai para a pagina de pagamento como posso então fazer um script que altere o status de 1 para 0 depois de 30 partindo da $data_pg e outo script para quando o pagamento for confirmado gerar uma nova data na $data_pg e mudar o satus para 1 ai eu coloco o cronjob para fazer execução diária do script partindo do id do usuario Consegui resolver Compartilhar este post Link para o post Compartilhar em outros sites
arldin 1 Denunciar post Postado Abril 13, 2015 ha eu esqueci de postar como foi que eu resolvi foi facil Primeiro eu adicionei mais um campo com o nome de status onde 0 bloqueia e 1 esta liberado depois criei um script para fazer a pesquisa e da um UPDATE ficou assim <?php include("config.php"); if(!$update=mysql_query("UPDATE se_users SET status = '0' WHERE data_pg < NOW();")) { mysql_error(); } ?> e depois criei uma tarefa no cronn Compartilhar este post Link para o post Compartilhar em outros sites