2011-11-24 2 views
2

모든 티켓을 선택할 수있는 티켓 시스템이 있습니다. 각 티켓은 동일한 페이지를 공유합니다. (예 : ticket.php) URL에는 티켓을 식별하는 고유 한 매개 변수가 포함됩니다. 예 : /ticket.php?a=10000 & tid = 987654. 여기서 tid는 티켓 ID 번호입니다. 두 명 이상의 사용자가 티켓을보고 있는지 확인하고 조건이 참이면 웹 페이지에 알림으로 표시하고 싶습니다. 어떻게해야합니까? PHP 서버 변수를 사용해야합니까? 세션 변수? 자바 스크립트? 양자 모두?사용자 감지 동일한 웹 페이지 또는 URL보기

답변

0

아약스와 서버 변수가 트릭을 수행해야합니다. 페이지에서 아약스가 현재 상태

와 웹 페이지를 업데이트 유지하면이 언로드 업데이트 서버 변수 에 서버 변수 를 업데이트 부하에

이 게시물에서보세요. 페이지 이름이 키인 서버 변수에이 array_map 중 하나를 저장하기 만하면됩니다. 당신은 시간 제한을 설정할 수 있도록 데이터베이스에

Is there Java HashMap equivalent in PHP?

+0

그게 내가 생각한 것입니다. 그러나 해당 페이지에 액세스하는 모든 사용자를 어떻게 식별합니까? 예를 들면 다음과 같습니다. "사용자, B 사용자 및 C 사용자도이 티켓을보고 있습니다." –

+0

서버 변수는 배열 일 수 있습니다. 따라서 사용자가 배열에 추가하는 페이지로 이동하면 사용자가 delete를 남겨두고 Ajax가 배열을로드하고 표시합니다. –

+0

샘플 코드를 제공해 주시겠습니까? 나는 여전히 SERVER 변수가 페이지에 액세스하는 모든 사용자를 추적하는 방법을 이해하지 못합니다. –

0

사용 유닉스 타임 스탬프. 사용자가 여전히 티켓을보고있는 동안 ajax가 요청을 보냅니다.

foreach 루프를 사용하고 모든 활성 타임 스탬프, 출력 사용자 이름 또는 ID를 필터링하십시오.

귀하의 클라이언트에게 json으로 응답을 보내주십시오. (귀하의 빈민가가 XML을 사용하기에 충분하지 않는 한)

+0

확인. 즉, 사용자가 페이지를보고있는 동안 아약스는 지속적으로 데이터베이스를 보는 사용자를위한 레코드 인 데이터베이스에 업데이트를 보냅니다. –

+0

또한 페이지를 떠난 사람들을 식별해야합니다. 어떻게할까요? –

+0

사용자가 페이지를 떠날 때 실행될 일부 JS 코드를 설정할 수 있습니다. 그렇지 않으면 일정 시간이 지나면 제한 시간이 초과되므로 다른 사람이 페이지를 "볼"수 없다는 것에 대해 걱정할 필요가 없습니다 –

관련 문제