这个问题具体是关于如何在基于函数/OOP/MVC 的环境中正确实现会话安全性。
我熟悉程序文件中的会话安全性 - 如果我有一个按程序编写的 control_panel.php 文件,我可以简单地在页面顶部检查会话安全性,或者只要逻辑指示它将首先加载。
但是,我是 OOP/MVC 的新手,我的页面现在只是一堆函数!
希望我不需要在每个函数中检查会话安全性..?
请注意,我使用的是 CodeIgniter2。
这是我的代码示例:
<?php
class Main_controller extends CI_Controller {
public function __construct() {
parent::__construct();
}
public function index() {
//$this->load->view(my_view);
//run some code
}
public function function1() {
//$this->load->model(my_model);
// run some code
}
private function function2() {
//$this->load->view(my_view2);
//run some code
}
?>
Run Code Online (Sandbox Code Playgroud)
在程序化的 php 页面中,它看起来像这样:
<?php
// check user login
if (isset($_SESSION["user"]) && !empty($_SESSION["user"])) {
// all of the code on the page
}
?>
Run Code Online (Sandbox Code Playgroud) 我有PHP代码,它为每个列表项创建一个带单选按钮的列表.
$result = mysql_query("SELECT * FROM attitudes WHERE x_axis = '$famID'",$db);
$rowcheck = mysql_num_rows($result);
while ($row_user = mysql_fetch_assoc($result))
foreach ($row_user as $col=>$val) {
if ($col != $famID && $col != 'x_axis') {
list($famname) = mysql_fetch_row(mysql_query("SELECT familyname FROM families WHERE families_ID='$col'",$db));
echo "col $col famname $famname is val $val.";
echo "<input type = \"radio\" name = \"whichfam\" value = \"$col\" />";
echo "</br>";
}
}
Run Code Online (Sandbox Code Playgroud)
然后我在底部有一个提交按钮(和整个事物的表单标签)
我希望有两个可能的提交.此代码旨在让玩家提高或降低值.他们点击其中一个单选按钮,然后选择"提升"或"降低".然后它应该发布到后端并执行代码以提高或降低该值.我知道如何在jquery中执行此操作,但我不知道如何在PHP中使用两个SUBMIT按钮.
我怎样才能做到这一点?
(具体来说,我如何使两个提交按钮工作,后端代码应该相对简单,$ _POST或其他)