Ir para conteúdo
Fórum Script Brasil
  • 0

Comparações na web


crazySerk

Pergunta

Olá galera!

Seguinte, estava mexendo em um site de menor lance aqui, criando um do zero, até ai está ok, os testes realizado offline aqui no meu computador estão ok também.

porém joguei o site em uma hospedagem aqui e apareceu um problema, por exemplo.

Coloquei que um cliente poderia dar apenas 1 lance por dia no determinado produto, certo até ai, no meu computador eu não consigo dar 1 lance a mais porém já na hospedagem eu consigo dar quants lances que eu quiser.

essa linha que faz a comparação

// Verifica se o visitante já deu lance

$sql_verif = mysql_query("SELECT * FROM lances WHERE ( id_produto = '$id_produto' ) AND ( cliente_ip = '$cliente_ip' ) AND ( NOW() = data_lance)");

if (mysql_num_rows($sql_verif) > 0) {

$error[2]= "<script>alert('Você só pode fazer 1 lance por dia por produto, volte amanhã');</script>";

//exit;

}

Percebi que o NOW () não está funcionando... fiz o teste removendo esse now e colocando uma variavel utilizando o date("y-m-a"), ficando assim:

$sql_verif = mysql_query("SELECT * FROM lances WHERE ( id_produto = '$id_produto') AND ( cliente_ip = '$cliente_ip' ) AND ( data_lance = $dia_atual)");
        if (mysql_num_rows($sql_verif) > 0) {
        $error[2] = "<script>alert('Você só pode fazer 1 lance por dia, volte amanhã');</script>";
        //exit;
        }

Porém mesmo assim não está funcionando, executei manualmente no phpadmin do site e executo normal e mostro o lance, porém via web não está aceitando, alguém tem alguma ideia de como resolver esse problema?

Link para o comentário
Compartilhar em outros sites

8 respostass a esta questão

Posts Recomendados

  • 0

Use um OR DIE(mysql_error()) para ver se não está retornando algum erro na query, veja também qual a hora que está configurada no mysql, pois pode estar em um fuso diferente, isto explicaria o mau funcionamento do NOW().

Link para o comentário
Compartilhar em outros sites

  • 0
Perguntei para o suporte da hospedagem.

E no caso as variaveis da query usando a função Date não pegaria os dados do servidor?

já tentou usar uma variavel com a data, assim descobrirar se é uma falha na comparação do now(), e qual é o tipo do campo que está comparando?date ou datetime

Link para o comentário
Compartilhar em outros sites

  • 0

Bom vamos lá, coloquei agora no select assim: data_lance = '2012-07-12')

e funcionou não deixou , no BD uso a função DATE.

Bom relação ao NOW não estou usando dessa forma, até coloquei no tópico principal lá estou usando assim:

Percebi que o NOW () não está funcionando... fiz o teste removendo esse now e colocando uma variavel utilizando o date("y-m-a"), ficando assim:
CODE
$sql_verif = mysql_query("SELECT * FROM lances WHERE ( id_produto = '$id_produto') AND ( cliente_ip = '$cliente_ip' ) AND ( data_lance = $dia_atual)");
        if (mysql_num_rows($sql_verif) > 0) {
        $error[2] = "<script>alert('Você só pode fazer 1 lance por dia, volte amanhã');</script>";
        //exit;
        }

onde esse data_atual estou pegando dessa forma:

$dia_atual = date("Y-m-d");

Fiz um Echo para mostrar se está certo mesmo a data e no echo apareceu isso:

2012-07-12

Bom era para funcionar certo?

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152k
    • Posts
      651,7k
×
×
  • Criar Novo...