2011-08-19 2 views
1

시나리오 없음 page1.php에 1mySQL 또는 SESSSIONS 중에서 선택하여 내 페이지를 계속 진행 하시겠습니까?

나는 페이지에 제품의 데이터를 얻기 위해 MySQL과 PHP를 사용합니다. 사용자가 페이지로 진행하기를 원할 때, 그는 버튼을 클릭한다.

페이지 2.php에는 주로 계산에 대한 정보가 있습니다. 이 데이터를 표시하려면 제품 ID를 사용하십시오. 따라서 page2.php는 실제로 page2.php? id = 123입니다. 따라서 PHP와 MySQL을 다시 사용하여 필요한 데이터를 얻습니다.

시나리오 page1.php에 없음이

내가 페이지에 제품의 데이터를 얻을 수 MySQL과 연동하여 PHP를 사용하지 않습니다. page2.php에 필요한 값은 세션에 저장됩니다. 사용자가 2 페이지로 진행하기를 원하면 버튼을 클릭합니다.

page2.php에서 세션에 대한 정보가 표시됩니다. 이번에는 page2.php가 실제로 주소창에 보여지는 page2.php입니다.

나는 시나리오 1에서 이렇게하는 것을 선호한다. 사용자는 페이지를 친구에게 직접 복사하거나 붙여 넣거나 직접 보낼 수있다. DB에 한 번 더 맞지 않는 것이 문제라고 생각하지 않습니다.

귀하의 의견은 무엇입니까?

답변

1

시나리오 1이 더 낫다는 것에 동의합니다. 당신은 의도 된 목적을 위해 특정 사용자의 상태를 담고있는 세션을 사용해야하며, 내 생각에 어떤 형태의 캐싱 메커니즘으로 오용하지 않아야합니다.

데이터를 효율적으로 사용하기 위해 데이터베이스를 처음 사용합니다. 왜 효율성을 실제로 향상시켜야하는지 주위에 캐시를 만들려고 노력한다면?

액세스가 병목 현상이되어 실제로 캐싱을 조사해야하는 경우이 용도로 세션을 사용하는 것보다 더 나은 메커니즘이 있습니다.

1

1 번이 더 나은 접근 방법입니다. 두 번째 방법은 제품이 사용자 세션에 연결되어있는 경우에만 의미가 있습니다 (예 : 주문 마법사를 사용할 때). 그리고 심지어는 제품 ID를 세션에 첨부하고 각 새 페이지의 데이터베이스에서 제품 정보를 가져 오는 것이 좋습니다.

관련 문제