기본적으로 완전히 다른 서버에서 form.php를 포함하는 위성 웹 사이트가 싫습니다.PHP http 세션 포함 저장하지 않음
<?php
include("http://blah.com/form.php");
?>
다른 세션 클래스를로드 및 기타 모든 종류의 것들에 form.php과 양식을 생성 동적으로 MySQL의 데이터의 톤에 따라. 중요하지 않습니다. 내 문제는 양식이 호출 될 때 세션도 시작한다는 것입니다. 그러나 원격 서버는 실제로 클라이언트가 방문하지 않습니다. 세션은 무엇을 유지합니다. 페이지가 새로 고쳐질 때마다 이전 세션이 덤프됩니다.
전적인 이유는 유효성 검사 오류를 원래 양식으로 되돌려 보내야한다는 것입니다. 그래서 기본적으로
<?php
include("config.php"); // This is loading the config file with the session_start()
Process($id) {
// Do a bunch of form processing and store errors in $this->errors
$_SESSION['errors'] = $this->errors;
}
ShowForm($id) {
// This loads the form and everything.
echo '<div id="errors">'.print_r($_SESSION['errors']).'</div>'; // This is what is returning nothing on the other page.
}
?>
해당 스크립트가 원격 사이트에서 호출 메인 서버의 코드는 다음과 같이 보입니다
("첫 번째 이름은 필수 항목입니다"처럼 사물의 배열입니다) 하지만 세션은 저장되지 않고 새로 고침 될 때마다 덤프됩니다. 실제 주 서버가 사용자 브라우저에로드되지 않기 때문에 세션을 새로 고칩니다.
누구나이 문제를 해결하는 방법을 알고 있습니까? 아니면 다른 해결책일까요? 아무것도 작동합니다. 참으로 끔찍한 디자인의
감사
당신이 포함 이전으로 session_start()를 호출나요 데이터 교환의 다른 문명 방법을 생각해야? 아니면 원격 포함 안에 세션이 시작 되었습니까? –
물론 가능합니다. $ _SESSION 글로벌이 설정되었지만 빈 세션 ID와 세션 ID는 ID를 반환하지만 다시 시작할 때마다 변경됩니다. – sct
오류. 새로 고침 * 다시 시작하지 않음, 권자. – sct