Ir para conteúdo

POWERED BY:

Arquivado

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

JRRC

consulta SQL

Recommended Posts

Olá a todos.

 

Bom pessoal estou enfrentando um problema aqui aparentemente estranho. Tenho duas tabelas chamadas tbl_contas e tbl_dados.

 

Então estou tentando fazer o seguinte.

 

Quando o usuário tentar acessar o sistema, vai ser verificado se tem slot disponível e o seu ip. Mas caso não tenha slot disponível e o seu IP já esteja registrado na tabela ela pode acessar.

 

Mais tem um problema, por exemplo.

 

Na tabela slot eu tenho o seguinte ou vice-versa.

 

Linha 1 = 4 (sem slot)

Linha 2 = 0 (pode acessar 4 pessoas)

 

Só que da forma que está, caso tenha slot disponível apenas na linha 2 e na linha 1 não aí me aparece a mensagem sem slot e com slot e caso seja o contrário tenha slot disponível apenas na linha 1 e na linha 2 não, me aparece a seguinte mensagem com slot e sem slot

 

Então eu gostaria de fazer o seguinte, quando existisse slot disponível independente da linha e do ip, aparece apenas a mensagem slot disponível.

 

Minha consulta está da seguinte forma abaixo.

 

$sqlSLOT       = "SELECT slot, ip FROM tbl_contas, tbl_dados";
$resultadoSLOT = mysql_query($sqlSLOT) or die (mysql_error());

while ($linhaSLOT = mysql_fetch_array($resultadoSLOT))
{
	$slotVerifica = $linhaSLOT[slot];
	$ipVerifica   = $linhaSLOT[ip];

        // $ip = o IP de quem tá acessando.	
	if ($slotVerifica == '4' && $ipVerifica != $ip)
	{
		echo "sem slot";
	}
	else
	{
		echo "tem slot";
	}
}

Fazendo outros testes aqui, caso as duas linhas tenham slot disponível aparece a mensagem

 

tem slot

tem slot

Compartilhar este post


Link para o post
Compartilhar em outros sites

$sqlSLOT       = "SELECT slot, ip FROM tbl_contas, tbl_dados";
$resultadoSLOT = mysql_query($sqlSLOT) or die (mysql_error());

while ($linhaSLOT = mysql_fetch_array($resultadoSLOT))
{
        if (!defined('SLOT')) {
                $slotVerifica = $linhaSLOT[slot];
                $ipVerifica   = $linhaSLOT[ip];
                
                // $ip = o IP de quem tá acessando.     
                if (!($slotVerifica == '4' && $ipVerifica != $ip))
                {
                        define('SLOT',TRUE);
                }
        }
}
if (defined('SLOT')) {
        echo 'slots disponiveis!';
}

isso q você precisava?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá H4X0R, resolvi meu problema da seguinte forma abaixo.

// Verifica se tem slot disponível
$sqlSLOT	   = "SELECT slot FROM tbl_contas WHERE slot < 4";
$resultadoSLOT = mysql_query($sqlSLOT) or die (mysql_error());

while ($linhaSLOT = mysql_fetch_array($resultadoSLOT))
{
	$slotVerifica = $linhaSLOT[slot];			
}

if (mysql_num_rows($resultadoSLOT) < 1)
{
	echo " <div id=\"box-erro-form\"><div>Sem slot disponível, tente mais tarde.</div> </div>";
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Certo, mas pra que serve aquele while? Eu deixaria assim:

 

// Verifica se tem slot disponível
$sqlSLOT           = 'SELECT COUNT(`slot`) FROM `tbl_contas` WHERE `slot` < 4';
$resultadoSLOT = mysql_query($sqlSLOT);
$numSLOT = mysql_fetch_row($resultadoSLOT);

if (!($numSLOT[0]>0)) {
        echo ' <div id="box-erro-form"><div>Slot indisponível, tente novamente mais tarde.</div> </div>';
}

O funcionamento é o mesmo, porém corrigi algumas coisas.

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.