小编jer*_*emy的帖子

OOP/MVC 中的会话安全

这个问题具体是关于如何在基于函数/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 security oop model-view-controller codeigniter

1
推荐指数
1
解决办法
1658
查看次数

表格的两份提交

我有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或其他)

php forms submission

0
推荐指数
1
解决办法
71
查看次数