你如何在$ _POST中使用变量?

问题描述:

你如何在$ _POST中使用变量?我试过使用$ _POST [$ row ['Field']];我试着把它分配给一个变量,看看它是否工作,然后回显值,但没有显示。

+2

非常基本的东西..1秒谷歌:http://php.net/manual/en/reserved.variables.post.php – Bono 2012-07-29 17:33:26

+0

我试着在谷歌搜索,我已经尝试了许多不同的方法,但他们做的因为我使用的是数组变量,所以对我来说似乎不起作用。我也用$ _POST [$ row ['myfield']]; $ _POST [“{$ row ['myfield']}”]; $ _POST [“$ row [myfield]”]; – user1422508 2012-07-29 17:36:46

$ _POST是通过使用“方法=交”属性设置形式的关联数组。您可以访问它像下面这样:

可以说你有如下形式:

<form action="" method="post"> 
Name: <input type="text" name="first_name" /> 
<input type="submit" value="Submit" /> 
</form> 

你会使用以下变量访问“FIRST_NAME”输入框中输入:

$_POST['first_name'] 

如果“行“是你所做的一个数组(例如:$ row = array('Field'=>'first_name');):

$_POST[$row['Field']]; 

请注意,因为“row”是一个PHP数组,所以你必须在它之前有“$”。

如果使用$行不会给你正确的结果,你可以这样做:

die(print_r($row,true)); 

要了解什么是“$行”当前设置为。检查以确保$行是正确的,然后执行:

die(print_r($_POST,true)); 

查看您的$ _POST变量设置是否正确。

+0

谢谢,我认为它实际上最终是因为我的POST值不正确。 – user1422508 2012-07-29 17:58:09

你必须检查的$_POST索引存在,这样的事情:

$myVar = (isset($row['Field']) && isset($_POST[$row['Field']]))?$_POST[$row['Field']]:false; 
var_dump($myVar); 

如果此代码打印false,那么你的变种之一有问题。