1

나는 php, mysql 및 javascript를 사용하여 나의 어머니를위한 준 간단한 웹 응용 프로그램을 만들고 있습니다.mysql/php 웹 페이지의 사용자 액세스 관리

그녀는 선생님이며 그녀는 수업 계획의 다양한 구성 요소를 관리 할 수 ​​있습니다. 각 구성 요소에는 테이블이 있으며 다른 구성 요소를 포함 할 수있는 각 구성 요소마다 관계를 보유하는 다른 테이블이 있습니다. (이 테이블 유형에는 두 개의 컬럼이있어 각각 관련 테이블에 대한 외래 키를 가지고 있습니다)

저는 거의 끝났지 만 그녀의 친구들이 이것을 사용하도록 허용하고 싶습니다. SQL 주입에 대해서는별로 신경 쓰지 않지만 구성 요소를 만드는 사용자 만 해당 구성 요소를보고 편집 할 수 있도록 사용자 정의 컨트롤을 구현하고 싶습니다.

사용자가 공용 구성 요소를 만들어서 사용자가 구성 요소를 자체 데이터 세트로 복사 할 수 있기를 원합니다.

내 질문 사용자 컨트롤을 구현하려면 각 사용자에게 자신의 데이터베이스 인스턴트가 있어야합니다. 또는 각 테이블에 공용/개인 상태에 대한 소유자 열과 열이 있어야합니다. 또는 내가 생각하지 않은 다른 대안이 있습니다. 의.

두 구성 요소 사용자 태그가 현재 사용자와 일치하는지 확인해야하기 때문에 구성 요소 간의 관계를 만들 때 추가로 mysql 쿼리가 필요합니다.

모든 의견/제안은 도움이

업데이트 사용하는 유일한 사람 /이 자신의 수업을 개발하는 것, 다른 선생님이 될 것입니다 액세스하는

+0

친구가 자신의 수업 계획을 갖고있는 교사 나 그녀를 볼 사용자를 의미합니까? 관계 측면에서 큰 차이를 만듭니다. – tcole

+0

다른 선생님들만이 이것을보고 있으며 수업 계획을 개발/구성하는 데 사용할 것입니다. –

답변

0

내가 확실히 동일한 데이터베이스에서이를 구현 할 계획이다 . 이 경우 각 사용자마다 다른 데이터베이스를 갖는 것이 좋은 해결책은 아닙니다. 예를 들어, 각 사용자의 데이터가 별도의 데이터베이스에있는 경우 UID가 충돌 할 경우 검색 기능을 구축하는 방법을 생각해보십시오. 그것은 악몽 일 것입니다. 별도의 데이터베이스는 각 데이터베이스가 별도의 응용 프로그램을 제공하고 서로 다른 데이터베이스의 데이터간에 관계가 정확히 일치하는 곳에서 작동합니다.

그래서 구현 방법에 대해 설명합니다. 이것은 귀하의 모델에 따라 다릅니다. 각 수업 계획서에는 예를 들어 단 한 명의 소유자 만있을 수 있습니까? 그렇다면 해당 정보를 구성 요소 테이블에 추가하는 것이 효과적 일 수 있습니다. 그렇지 않으면 소유권을 정의하기 위해 별도의 테이블이 필요하므로 다른 구성 요소에 액세스 할 수 있습니다. 어쨌든, 나는 액세스 논리가 응용 프로그램에서 분리되어 캡슐화되어 나중에 변경할 수 있는지 확인해야합니다. 예를 들어 단순한 단일 소유자 모델로 시작하지만 사이트가 성장하고 커지면서 사람들의 그룹 모두가 구성 요소에 대한 소유권/편집 권한이 필요하다고 상상해보십시오.

+0

의견을 보내 주셔서 감사합니다. –