Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

NBBBolado

Sistema VIP

Recommended Posts

Olá galera, preciso fazer um sistema VIP que funcionará em um fórum com base Xenforo.

Bom, todo usuário novo que se registrar terá 2 Horas de Vip, quando este tempo expirar um PHP leitor mostrará uma mensagem que o VIP acabou, então o fórum terá uma página de recarga que terá nela um botão "Recarregar VIP" quando o usuário clicar nele + 2 Horas serão adicionadas e depois de 2 Horas a mesma mensagem aparecerá quando expirar e assim sucessivamente.

 

Bom achei este código aqui no fórum:

<?php

include 'config_geral.php';

$conexaoresultado = mysqli_query($con,"SELECT * FROM usuarios WHERE usuario_id='{$_SESSION['usuario_id']}'");
$uservip = mysqli_fetch_array($conexaoresultado);

//Hora, Minuto, Segundo, Mes, Dia, Ano
$dialimite = $uservip['vip-fim'];
$datanow = time();

$datafim = mktime($dialimite);

if ($datanow < $datafim) {
echo '<b><span style="color:green;">VIP ativo!</span></b>';
} else {
echo '<b><span style="color:red;">VIP acabou!</span></b>';
}

echo date('d/m/Y - H:i');

?>

Depois na database, o usuario ira ter uma parte: vip-fim nela ira ter a data do fim:
Ex: 9, 38, 0, 10, 17, 2013

Dependendo de quando comprou o vip, ao comprar ele, ira adiconar esse codigo na database, na tabela do user, assim: date("H, i, s, m, d, Y", strtotime("+3 month"))

Mais como sou bem leigo em php gostaria de ajuda de como criar as tabelas, onde cria-las e saber se este code funciona pro sistema que pretendo fazer e saber também como poderia fazer este botão para adicionar mais 2 Horas de vip.

 

Obrigado(a)!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie usando a session.

Crie um arquivo que checa a hora que a session foi criada e caso esse tempo acabou da logout no usuário.

Ele terá que fazer login novamente e criar uma nova session contando o tempo novamente.

Coloca em um campo na tabela usuarios dizendo se é vip ou não e faz o php a verificaçar se for vip nao conta o tempo.(pode colocar na coluna vip só a data de espiração e checa a data atual isso já vai informar se é vip ou não)

Não tem mistério.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie usando a session.

Crie um arquivo que checa a hora que a session foi criada e caso esse tempo acabou da logout no usuário.

Ele terá que fazer login novamente e criar uma nova session contando o tempo novamente.

Coloca em um campo na tabela usuarios dizendo se é vip ou não e faz o php a verificaçar se for vip nao conta o tempo.(pode colocar na coluna vip só a data de espiração e checa a data atual isso já vai informar se é vip ou não)

Não tem mistério.

 

Bom acho que funcionaria assim, mais como poderia trocar tipo quando a session acaba não da logout mais sim mostra em uma página exemplo "status.php" mostrar "ACABO_VIP" apenas um exemplo, e para recria-lo não fosse pelo login mais sim por um botão.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Quando você checa se há vip você pode redireciona-lo para outra pagina e coloca o botão que acrescenta na pagina.

É só por um if e else. Se tem vip não faz nada, senão manda pra pagina do botão. utilizar javascript para abrir uma popup tbm é uma boa mais ai o usuario vai em inspecionar elemento no navegador e apaga a div de bloqueio.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom entendi esse sistema (source) que postei junto com o tópico porém não estou conseguindo criar a coluna vip-fim. Podeira me auxiliar na criação da coluna vip-fim e me falar oque coloco aqui

$conexaoresultado = mysqli_query($con,"SELECT * FROM usuarios WHERE usuario_id='{$_SESSION['usuario_id']}'");

usuarios: Coloquei o nome do banco de dados = forum

usuario_id: coloquei como é no xenforo = user_id

 

porém da erro

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom entendi esse sistema (source) que postei junto com o tópico porém não estou conseguindo criar a coluna vip-fim. Podeira me auxiliar na criação da coluna vip-fim e me falar oque coloco aqui

$conexaoresultado = mysqli_query($con,"SELECT * FROM usuarios WHERE usuario_id='{$_SESSION['usuario_id']}'");

usuarios: Coloquei o nome do banco de dados = forum

usuario_id: coloquei como é no xenforo = user_id

 

porém da erro, parece que esta faltando a parte da conexao onde vai o host, id e senha do bd "$con"

Compartilhar este post


Link para o post
Compartilhar em outros sites

 

Bom entendi esse sistema (source) que postei junto com o tópico porém não estou conseguindo criar a coluna vip-fim. Podeira me auxiliar na criação da coluna vip-fim e me falar oque coloco aqui

$conexaoresultado = mysqli_query($con,"SELECT * FROM usuarios WHERE usuario_id='{$_SESSION['usuario_id']}'");

usuarios: Coloquei o nome do banco de dados = forum

usuario_id: coloquei como é no xenforo = user_id

 

-------------- Edit 1

Parece que esta faltando a parte da conexao onde vai o host, id e senha do bd "$con"

 

-------------- Edit 2

Consegui fazer a conexão. O problema agora é na _SESSION $conexaoresultado = mysqli_query($con,"SELECT * FROM usuarios WHERE usuario_id='{$_SESSION['usuario_id']}'"); e com a coluna vip-fim

Compartilhar este post


Link para o post
Compartilhar em outros sites

Faça uma tabela só para vips.. vai facilitar sua vida.. coloque id do user cria duas datetime..

 

exemplo:

 

ID int

ID_user int

start DateTime

End DateTime

Status int

 

Status será a chave de verificar se for 1 é vip se for 0 não, e assim um cron deletará ele da tabela com status 0

 

;)

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.