php - 重定向后如何记住CodeIgniter(CI)中的输入表单数据而不是再次进入同一页面
问题描述
我用谷歌搜索过,在 PHP 本身、JavaScript/jQuery/AJAX 和 CodeIgniter 会话数据/闪存数据中有很多方法可以做到这一点。
但我更喜欢在 CI perdefied library/helper 中执行此操作,例如 laravel OLD helper。我的表单非常大,包含不同的元素,如文本输入、下拉菜单、收音机等。但是我在视图 (MVC) 中的输入上尝试了以下操作。例如,我有一个表格,其中有一些如下所示
例子:
<form method="post" >
<input type='text' class="form-control" value="name" />
<input type='text' class="form-control" value="" />
<input type='text' name='last_name' id='last_name' value="<?=set_value('last_name')?>" />
<select name="select">
<option value="1">Select 1</option>
<option value="2">Select 2</option>
<option value="3">Select 3</option>
</select>
<a href="/add-new-select">Add new Select value </a>
<input type="submit" value="submit">
</form>
现在,当我单击添加新选择时,他们会将我重定向到另一个页面,在成功创建后我将在其中创建一个新选择(选择 4),我将重定向到我的表单。
现在我怎样才能用他的旧数据填充我的所有输入
我已经尝试过 set_value,但它只适用于表单提交。我可以使用会话/cookies 解决这个问题,但这将是一个巨大的过程并且会分割代码。有没有其他的方法?欢迎举例!
解决方案
我们不能在这里使用 set_values() 函数设置值,因为 set_values() 函数仅在我们验证表单并且表单验证失败时才起作用。在这里您可以使用 session 或 cookie 来设置值,并且您可以在重定向后获取值。
推荐阅读
- arrays - BigQuery - 从 JSON 字符串中提取数组
- php - 如何在 CodeIgniter 路由中将 3 个以上的参数作为一个字符串发送
- excel - 如何检查超链接目标的名称是否包含特定字符串?
- google-apps-script - getLastRow() 影响其他单元格
- vba - 选择要应用的查找和替换宏的文本范围
- javascript - Gulp - TypeError: 不是一个函数。如何查找问题的关键?
- query-optimization - 使用 SYSTEM$CLUSTERING_INFORMATION 识别潜在的集群键
- php - Laravel 项目未在 localhost 中显示:“Composer 在您的平台中检测到问题......”
- uno-platform - 无法将 WASM Uno 解决方案发布到应用服务 Azure 和本地发布文件夹(错误 CS2012)
- sql - 使用 cursor.execute 将值插入表中