如何使用相同的PHP文件传递值?

时间:2011-09-13 00:50:53

标签: php

我想在两个PHP文件中多次传递相同的布尔值“isProvena”。我第一次使用以下代码将值从utilitizer.php传递给hraprint.php:

if ($_POST['type'] == 'printphys' || $_POST['type'] == 'printprovenahpa')
{
echo "<form action='/content/822' method=post>";
echo "<input type=hidden name=filename value='$filename'>";
if($_POST['type'] == 'printprovenahpa') {echo "<input type=hidden name=isProvena      value='1'>";}
echo "<input type=hidden name=content value='";
if ($_POST['type'] == 'printphys') echo 751;
else if ($_POST['type'] == 'printprovenahpa') echo 520;
echo "'>";
echo "<input type=submit value='Start Job'></form>";
}    

然后我从hraprint.php获取值“isProvena”并再次发布(获取):

$isProvena        = false;
extract($_REQUEST, EXTR_IF_EXISTS);
$isProvena        = (boolean)$isProvena;

<form action="/content/822" method="GET">
<input type="hidden" name="isProvena" value="<?php echo ($isProvena) ? '1' : '0' ?>" />
 <tr>
    <td><label for="showOnlyScreening">Print Only Screenings:</label></td>
    <td><input id="showOnlyScreening" type="checkbox" name="showOnlyScreening" value="1" <?php echo ($isProvena) ? 'checked="checked"' : ''?>/></td>
  </tr>
  <tr>
</table>
</form>

再次发布:

<form action="/content/822" method="POST">
<input type="hidden" name="isProvena" value="<?php echo ($isProvena) ? '1' : '0' ?>" />
</table>

我在这里做出判断:

 if($isProvena){
   .........     
 }

我需要多次发布(获取)的原因是在同一个PHP文件(hraprint.php)中发生了多个页面重定向操作。当我试图从if($ isProvena){}获取应该为'true'的值并执行该函数时,我失败了。

任何人都可以帮我看看并告诉我出了什么问题?

1 个答案:

答案 0 :(得分:1)

如果您只是为此使用会话会更容易。会话专门用于此目的 - 将变量轻松地从一个页面传递到另一个页面。

在答案的最后一个代码块中尚未确定$isProvena已存在,因为我在那里看不到任何extract()

P.S。使用$_POST$_GET变量,而不是提取$_REQUEST。代码容易受到register_globals

引起的问题的影响