$_SESSION
渡されたフォームデータがない場合にCodeIgniter フォーム検証を取得するにはどうすればよいですか? 変数を手動で設定しようと$_REQUEST
しましたが、うまくいかないようです。
つまり、渡されたフォーム入力を検証する関数search
がコントローラーにあり、エラーで前のページに戻るか、次のページに移動します。しかし、以前にこのページに入力し、情報が$_SESSION
変数に保存されている場合でも、この関数を機能させたいと思います。
function search () {
$this->load->library("form_validation");
$this->form_validation->set_rules("flightID", "Flight Time", "required|callback_validFlightID");
$this->form_validation->set_rules("time", "Flight Time", "required|callback_validFlightTime");
$this->setRequest(array("flightID", "time"));
// adding session check allows for inter-view navigation
if ($this->form_validation->run()) {
// some application logic here
$this->load->view("seats", $data);
} else {
$this->logger->log($_REQUEST, "request");
// redirect back to index
$this->index();
}
}
function setRequest () {
// make sure none of the parameters are set in the request
foreach ($vars as $k) {
if (isset($_REQUEST[$k])) {
return;
}
}
foreach ($vars as $k) {
if (isset($_SESSION[$k])) {
$_REQUEST[$k] = $_SESSION[$k];
}
}
}