Jump to content
Fórum Script Brasil
  • 0

Comparações na web


crazySerk
 Share

Question

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 to comment
Share on other sites

8 answers to this question

Recommended Posts

  • 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 to comment
Share on other 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 to comment
Share on other 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 to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share



  • Forum Statistics

    • Total Topics
      150.8k
    • Total Posts
      648.7k
×
×
  • Create New...