私は私の見解でこのコードを持っています:
if (($faq_cat['categoryphoto'] !="")|| ($faq_cat['categoryphoto'] != NULL)) {
$this->session->set_flashdata('tablename', 'faq_categories');
$this->session->keep_flashdata('tablename');
$this->session->set_flashdata('recordid', $faq_cat['catid']);
$this->session->set_flashdata('fieldname', 'catid');
$this->session->set_flashdata('fieldToUpdate', 'categoryphoto');
$this->session->set_flashdata('dpage', 'faq/editFaqCategory');
echo anchor('faqcategories/updateOneField', 'Delete Current Photo?');
}
私のコントローラーには、次のコードがあります。
public function updateOneField()
{
$tablename = $this->session->flashdata('tablename');
$id = $this->session->flashdata('recordid');
$fieldname = $this->session->flashdata('fieldname');
$fieldToUpdate = $this->session->flashdata('fieldToUpdate');
echo "<br />table name is: " .$tablename;
echo $id;
echo $fieldname;
echo $fieldToUpdate;
die();
$this->load->model('faqCategoriesModel');
$this->faqCategoriesModel->save(array($fieldToUpdate => ''), $id);
$catid = $id;
$this->displayEditFaqCategoryForm($catid);
} // end of function updateOneField
フラッシュ データを介して送信されたデータを読み取ろうとしても失敗します。すべての flashdata 変数が空になります。セッションを autoload.php ファイルにロードします。このまったく同じコードが、別の CI アプリケーションで機能します。誰かが私が間違っていることを見つけることができますか? ビューとコントローラーの両方で使用しようとしまし$this->session->keep_flashdata('item');
たが、成功しませんでした。