2013-08-04 40 views
2

我可以在服务器端PHP代码中操作POST请求吗?通过表单提交操作POST变量Serverside PHP代码

我正在使用PHP和Codeigniter。

我有一个控制器内部定义的函数,它通过POST从FORM接收一些数据。

public function primary_fn(){ 

// Gets called on form submit - POST 

// Some Logic 

// Case 1 : call sec_fn1() 
// Case 2 : call sec_fn2() 
// Case 3 : Call sec_fn3() 

} 

现在我已经在处理POST数据的模型中写了几个函数。

public function sec_fn1(){ 

// Processing POST data 

} 

public function sec_fn2(){ 

// Processing POST data 

} 

public function sec_fn3(){ 

// Processing POST data 

} 

我没有将任何参数传递给辅助函数。他们直接通过类似这样的语句访问POST请求里面的价值观 -

$x = $this->input->post('name') ; 

现在我有一些要求,这让我想操纵在某些情况下,POST请求中的数据。由于次要功能太多,我不想改变他们的代码。我可以在主要功能中处理POST请求中的数据,并让次要功能使用更改后的数据吗?

回答

2
Can I manipulate the POST request inside serverside PHP code ? 

是的,你可以。您可以像设置其他变量一样设置$ _POST的值。

$_POST['name'] = 'Some new value'; 
+0

很酷。感谢您的快速回复 !! –

+1

@ mad.geek不客气。这是你在找什么。我必须在CodeIgniter中这样做才能在执行表单验证之前将值更改为基于其他值的其他值。 –

+0

是的。这就是我正在寻找的:)我不确定你是否被允许操纵它。 –

0

这不是一个好主意,它不是手动操作全局变量编程的最佳实践。必须使用$ _POST来处理从浏览器发送到服务器的数据。

尝试创建自己的全局变量来操作数据,而不是直接操纵$ _POST。