2012-06-21 6 views
0

글쎄, 사람들이 내 데이터베이스에 도메인을 제출하는 사이트에 양식이 있지만, 그들이 1 도메인을 여러 번 추가 할 수있는 문제는 무엇입니까? 즉, 아카이브가 쓸모없는 것이됩니다. 나는 날짜를 확인하기 위해 쿼리를 삼가고 싶었습니다. DB에서 이전 도메인을 제출하고 작년에 제출했는지 또는 같은 해에 제출했는지 확인하십시오.1 년에 한 번만 입장 할 수 있습니다.?

그래서 내 말은 ..이 제출을 다시 할 수 있습니다 1 년 후에 .. 어떤 도움을 주시면 감사하겠습니다 년에 한 번와 DB의 도메인의 항목을 할 수있다 쿼리

$total_year = 24*60*60*5; 
$timev = time(); 
$control_domains = mysql_query("SELECT * FROM domains WHERE url LIKE '%$url%' AND $timev - time < $total_year"); 
에 대한

내 시도

+1

영어로 코드를 작성할 수 있습니까? 그렇다면 열의 의미와 각 변수가 의미하는 바를 이해할 수 있어야합니다. 그렇지 않으면 도움을 받기가 정말로 어렵습니다. –

+0

데이터베이스 구조를 볼 수도 있습니다. 'time()'은 초 단위로 시간을주고, mysql datetime 필드와 직접 비교하는 것은 작동하지 않을 것이다. – andrewsi

+0

또한 http://bobby-tables.com/ - SQL injection에 대해 읽어보십시오. ('$ ara'는 사용자가 제공한다고 가정합니다) – Crontab

답변

1
SELECT * FROM domains WHERE url LIKE '%$url%' AND time < date_sub(now(),interval 365 DAY); 

365 일 (1 년)보다 오래된 모든 도메인을 선택합니다. 작년에 모든 도메인을 원하면 < 기호를 반대로하십시오 (따라서>). (시간이나 날짜가 저장된 열을 시간이라고합니다). 조금 변경해야 할 수도 있습니다.

내 제안은 DATE 또는 DATETIME을 저장하는 것입니다.

+0

고맙다 동생 :) –

+0

당신은 가장 환영합니다. :) – edwardmp

관련 문제