실제 주간 일정에 의존하지 않는 동적 주간 일정을 저장하고 검색하고 싶습니다. 매주 반복 일정을 저장/표시하는 방법
데이터
은 (시간으로 정렬되지 않음)과 같은 MySQL의 테이블에 저장 될 것입니다 :(클래스 및 강사 열이 다른 테이블의 참조 ID를 저장하지만 나는 그것을 쉽게하기 위해 여기에 실제 이름을 사용했습니다) 한눈에
----------------------------------------------------------------------
| id | time | dayofweek | class | instructor |
----------------------------------------------------------------------
| 1 | 6:30a | 1 | Zumba | Julie |
----------------------------------------------------------------------
| 2 | 9:00a | 3 | Kickbox | Devon |
----------------------------------------------------------------------
| 3 | 11:00a | 4 | Zumba | Alex |
----------------------------------------------------------------------
| 4 | 6:30a | 4 | Dance | Karen |
----------------------------------------------------------------------
| 5 | 5:00p | 1 | R-BAR | Karen |
----------------------------------------------------------------------
| 6 | 5:00p | 6 | Dance | Karen |
----------------------------------------------------------------------
| 7 | 9:00a | 7 | Kinder | Julie |
을 읽을 수있는 최종 출력은 시각적으로 시간 주문 같은 것을() 보일 것이다
---------------------------------------------------------
| Sun | Mon | Tue | Wed | Thu | Fri | Sat |
-------------------------------------------------------------------
| 6:30a | Zumba | | | Dance | | | |
-------------------------------------------------------------------
| 9:00a | | |Kickbox| | | |Kinder |
-------------------------------------------------------------------
| 11:30a | | | | Zumba | | | |
-------------------------------------------------------------------
| 5:00p | R-BAR | | | | | Dance | |
-------------------------------------------------------------------
을하지만 주위에 내 머리를 정리하고 수 없습니다 이것을 효율적으로 수행하는 방법. 나는 오늘 구글을 몇 시간 동안 검색해 보았지만 작동하는 것처럼 보이는 몇 개의 게시물을 보았지만 내가 찾던 적이 결코 없다.
나는 함수 또는 다른 방법을 통해 시간 슬롯 당 7 일 각각에 대해 별도의 쿼리를 실행하는 것에 대해 생각해 봤지만 그런 단순한 작업에 대해서는 너무 엉성하고 너무 많은 쿼리입니다. 분명히 모든 7 일 (열)은 항상 표시되지만 시간에 이벤트가 있으면 시간대 (행)는 언제든지 추가되거나 제거 될 수 있습니다.
다음 모든 것을 배열에 저장하고 모든 행을 중복 된 시간으로 결합한 다음 하나씩 순서대로 처리하는 방법을 살펴 보았습니다. 나는
나는이 예제를 발견 ... 내가 동적하지만 그렇게 할 것입니다 방법을 잘 그리고 난 내가 필요에 아주 가까이 생각 : 결국 PHP - Merge duplicate array keys in a multidimensional array말했다되고 내가 계획하고 수행 사용자가 이벤트를 추가하거나 제거 할 수있는 간단한 관리 페이지를 만드는 방법에 대해 설명합니다. 어떤 아이디어?
너무 감사합니다! 미안 해요, 이걸로 머리카락을 뽑아 내고 떠나 갔는데 ... 3 개월이 걸렸을 거예요. 하. 이 솔루션은 내가 원했던 것과 거의 비슷하지만 실제로 클릭하지 않는 지점이 있습니다. 당신은 행을 만들고 다음 행을 만들라고 말합니다 ... 나는 그 생각을 파악하는 데 어려움을 겪고 있습니다. 나는 항상 그 행을 시작했고 그 다음 열로 그것을 가로 질러 일했다. 나도 물어봐야할지 모르겠다. 그것은 의미가있는 것처럼 보이지만, 나는 그것을 잃어 버립니다. – user2345372
그건 그렇고, 나는 스케줄 테이블, 클래스 테이블, 강사의 테이블을 가지고있다. 스케줄 테이블에 직접 저장할 수있는 고정 된 세트 중 하나 일 뿐이므로 시간 테이블이 필요하지 않다고 생각합니다. – user2345372
@ user2345372 늦게 답변드립니다. 나는':)'을 재배치했다. ** UPDv1 ** section을 참조하라. – BlitZ