2017-05-10 4 views
-1

나는 주말 동안 다가오는 게임을 보여주기 위해 웹 사이트를 만들고 있습니다. 문제는 내가 가진 코드로 하루가 지나면 다가오는 게임이 사라진다는 것입니다. 일요일이 지나기까지 금요일, 토요일, 일요일 경기를 다가오는 경기로 유지하겠습니다. 당신은 예를 들어, 주말 동안 지난 금요일의 날짜를 반환 뭔가에 "CURDATE()"를 변경할 수있는 코드에서주말 이후 다가오는 게임을 얻으십시오.

$res1= mysqli_query($conn, " 
SELECT * 
    FROM kalender    //table containing all dates upcoming games 
WHERE datum >= curdate()  //selecting next games and from which division 
    AND afdeling = 'Ere' 
ORDER 
    BY datum     //order them on date 
LIMIT 0 , 7     //select only the next 7 upcoming games 
");?> 
+0

https://meta.stackoverflow.com/questions/333952/why-should-i-provide-an-mcve-for-what-seems-to-me-to-be-a-very-simple- sql-query – Strawberry

+0

기본적으로 간단한 쿼리를 사용하여 훨씬 복잡한 쿼리를 작성하도록 요청합니다. 그래서 당신을 위해 작성된 코드를 얻으려는 곳이 아니기 때문에 – RiggsFolly

+0

@RiggsFolly는 내 의도가 아니 었습니다. 영어는 제 모국어가 아니며 아마도 제 자신을 충분히 설명하지 않았을 것입니다. 나는 거의 모든 자원을 구글과 SO에서 찾아서 해결책이나 단서를 찾았지만 아무 것도 발견하지 못했다. 나는 '단순한'것을 놓친 것 같아서 그 질문을 게시했다. 나는 전체 코드를 다시 작성하라고 요구하지는 않는다. 올바른 방향을 가리키면됩니다. – poelie

답변

0

:

내가 내 SQL 쿼리 지금 무엇을 가지고 : 이 코드는 당신이 해결하려는 문제를 인식하지 못합니다 사람에게 명백 할 것이다 의심 때문에
date_sub(curdate(), INTERVAL if(weekday(curdate())>4,weekday(curdate())-4,0) DAY) 

는 명확히 설명을 추가해야합니다.

+0

많은 도움이되었습니다. 특히 SQL 문의 "if"절. "평일 (curdate()) = 6, curdate() - 2, if (평일 (curdate()) = 5, curdate() - 1 일 경우, 내 코드에서"curdate() "를 ' if (평일 (curdate()) <= 4, curdate(), curdate()))) ' – poelie