일반적으로 기본 질문으로 내 질문의 형식을 지정하고 내 상황을 설명하려고하지만 해결책은 내가 잘못 생각한 것일 수 있습니다 여기에 문제가 있습니다 :PHP 세션 ID별로 쿠키 가져 오기 (또는 달리 두 개의 다른 연결간에 데이터 전달)
개별 로트를 저장할 수있는 경매 웹 사이트의 카탈로그 신청서를 작성하고 있습니다. 지금까지이 같은 것을 통해, 단순히 그 많은위한 ID의 쉼표로 구분 된 목록으로 쿠키를 만들어 좋은 일했다 :
$_COOKIE["MyLots_$AuctionId"] = implode(",",$arrayOfIds);
지금 타격하고있어 문제는 내가를 인쇄 할 갈 때 많은, 내가 이런 식으로, 내가 원하는 출력물의 URL을 요청하기 위해 명령 줄을 통해 wkhtmltopdf을 사용하고 있습니다 :
exec("wkhtmltopdf '$urlofmylots' filename.pdf");
문제는 아파치가보고 있기 때문에 나는이 호출에 쿠키를 통과 할 수 있다는 것입니다 내부 요청. 사용자의 요청이 아닙니다. get 문자열에 넣으려고했으나 일단 GET 매개 변수에 대한 사전 설정된 제한을 초과하면 해당 값은 대상 URL의 $ _GET 배열에서 사라집니다. 그들 사이에 POST 데이터를 보내는 방법을 찾을 수없는 것 같습니다. 나의 다음 가능한 아이디어는 다음과 같다 :
어쩌면 그냥 URL에 sessionid를 통과, 나는 그 세션 쿠키를 통해 발굴하고 오른쪽 쿠키를 끌어 PHP를 사용할 수있는 방법이 있는지 확인하지만, PHP 서버가 (한 세션에서 다른 세션을 인식하게하는) 보안상의 위험이있는 것처럼 들립니다. 예 :
exec("wkhtmltopdf '$urlofmylots?sessionId=$sessionIdFromThisRequest' filename.pdf");
는 아마도 세션 변수를 설정 한 다음 해당 세션 ID를 전달, 내가 대신 그 정보를 통해 웨이드하기 위해 PHP를 사용할 수있는 경우 (오히려 쿠키를 사용하는 것보다)를 참조하십시오.
배열을 만들 수 있고 어떻게 든 다른 스크립트가이를 인식 할 수 있습니까? 웹 매핑 주소를 첫 번째 매개 변수로 사용하는 wkhtmltopdf 문제는 실제로 해결되지 않습니다.
(실제로는 생각이 들지 않지만 약간의 추론) 이것을 사용하는 다른 경우에는 wkhtmltopdf의 구문 분석을위한 마크 업을 생성하는 스크립트에 ID를 전달했으며 스크립트는 해당 ID를 사용하여 데이터를 가져옵니다. 데이터베이스에서. 이 경우에는 호출자에서 호출 수신자로 데이터를 전송하는 간단한 목적을 위해이 데이터를 파일이나 데이터베이스에 저장하고 싶지 않습니다. 쿠키와 세션은 apache/php가이 세션에 대한 메모리 할당을 처리하기 때문에 더 깨끗해 보입니다.
여기에 궁극적 인 문제는 외부 웹 것처럼 내가 호출하는 스크립트에 사용할 수있는 데이터의 인식을 ($ urlofmylots에 의해 여기 참조) 내 두 번째 스크립트를 얻으려고하지만, 그것을 실행되는 점이다 요청, 웹 루트에서 호출되는 두 개의 PHP 스크립트가 아닙니다.
누구나 통찰력을 제공 할 수 있습니까?
Apache 대 PHP의 동작에 대해 약간 혼란스러운 것 같습니다. 그것은 모든 세션 관련 정보를 처리하는 PHP입니다 - 쿠키, 데이터 파일, 세션 ID 등은 모두 PHP 내부이며 Apache와는 별도입니다. Apache는 애플리케이션 레이어 네트워크 트래픽 (HTTP 요청/응답 수신/전송)을 처리하고 콘텐츠 및 값 처리와 관련된 모든 것을 PHP에 전달합니다.나는 이것이 당신을 정말로 도움이되지 않는다는 것을 안다. 그러나 당신은 질문에서 부적절한 장소에서 아파치를 정기적으로 언급하고, 더 혼란스럽게 만든다. – DaveRandom
하! 그게 정말 도움이되지 않지만, 나는 당신의 요점을보고, 내가 말하려고했던 것에 대해 혼란스러워했습니다. 다시 돌아가서 명확히하기 위해 편집하겠습니다. – NateDSaint
나는 그것이 무엇을 의미하는지 명확히하기 위해 그것을 편집했다. 이것이 더 명확한 지 알려주세요. – NateDSaint