Ir para conteúdo

POWERED BY:

Arquivado

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

Paulo Raphael

[Resolvido] Cadastro com número máximo de cadastrados

Recommended Posts

Boa tarde pessoal,

 

Bom, não sei muito de PHP mas estou com um problema. Tenho que desenvolver um sistema de cadastros, só que tenho que ter um limite máximo de cadastrados. Exemplo: Cadastro de pessoas, podem ser cadastradas 30 pessoas, quando atingir o limite de 30 pessoas cadastradas o sistema interrompe, automaticamente, que pessoas realizem mais cadastros.

Tem como fazer isso?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Se o cadastro for linear, ou seja não houver "descadastro", você pode pegar o numero do id mais e do id menos e fazer

 

$total = idfinal - idinicial;
if($total = 30)

header("Location:erro.php");

else

header("Location:cadastro.php");

Compartilhar este post


Link para o post
Compartilhar em outros sites

Só não entendi a última parte: "Que pessoas realizem mais cadastros".

 

Mas em relação a quando atingir 30 pessoas cadastradas, vai depender da sua aplicação. Por exemplo, você pode fazer uma simples consulta toda vez que for realizar um cadastro, buscando o número máximo de pessoas, e verificando se esse número é maior que 30. Alguns irão dizer que não é uma boa pratica, mas se você fosse usar essa metodologia, use a consulta:

 

SELECT MAX(pessoaid) FROM pessoas;

 

dai lá no php você pega o valor retornado dessa consulta e verifica se é maior que 30.

 

$numeroMaximoDePessoas = ibase_query($connection, 'select MAX(pessoaid) from pessoas'); // Para firebird...
if ($numeroMaximoDePessoas >= 30) {
 // Interrompe...
}

 

Essa é uma forma de resolver isso.. :D

Compartilhar este post


Link para o post
Compartilhar em outros sites

Obrigado! Estou estudando as suas opções.

 

Mas vou explicar melhor. Estou fazendo um site, no menu terá um link de cadastro, (Cadastre-se Aqui). AS pessoas vão entrar e se cadastrem para um evento, mas o evento tem um limite ( X ) de pessoas, então quando o cadastro do site atingir esse limite ( X ) os cadastros serão interrompidos e as pessoas não poderão mais se cadastrarem para o evento.

 

Desde já agradeço :thumbsup:

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pois então cara, como você está cadastrando pelo site, obviamente você estará usando um banco de dados para armazenar essas pessoas. E você tendo um banco de dados, você terá a tabela pessoas.

 

Aí é seu critério usar a minha dica quando o cliente clicar no botão "Cadastre-se aqui" ou quando ele preencher o formulário todo e clicar no botão "Enviar"/"Gravar"/"Cadastrar", que seja. E depois disso, lançar uma mensagem caso tenha passado de 30 pessoas cadastradas.

 

Essa consulta que eu ti passei, retornará o maior número de pessoas na tabela.

Existe outra função SQL bastante conhecida chamada COUNT, que é melhor que essa MAX para este caso, ela retorna a quantidade de pessoas(digamos assim), independente da ordem dos números, porém ela não conta valores nulos. Então, use uma consulta dessas:

 

SELECT COUNT(algumCampo) FROM pessoas;

 

Eu não vejo tanto problema de uma simples consulta quando o usuário clicar em algum desses botões.

 

--- Edit

 

Na verdade existem inúmeras formas para você fazer isso, acredito que com ajax você fassa isso também, porém não manjo muito ajax. :D

Compartilhar este post


Link para o post
Compartilhar em outros sites

Opa! Deu certo. Obrigado!

 

O código ficou assim:

 

$cot_sql = mysql_query("SELECT id FROM tb_cadastros");
   $total_produtos = mysql_num_rows($cot_sql);

if ($total_produtos < 30) {
   echo "$total_produtos registros, menor que 30, pode cadastrar!";
   }
       else {
           echo "Não permitido a inserção!";
           }

 

Muito obrigado pela ajuda de vocês, Ajudaram muito. :grin:

Compartilhar este post


Link para o post
Compartilhar em outros sites

Isso também funciona, porém acredito que esse echo não será tão usual.

 

Sempre que precisar de algo, posta aqui, tem muita gente pra ajudar... :D

 

Vlw

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.