在HTML输入值中使用echo

时间:2012-01-14 22:41:21

标签: php html forms input echo

我有以下代码,完全从PHP书籍的练习中复制。我有一个包含php echo语句的value属性的问题。根据该书,第一次加载页面时,输入框应为空,因为变量不包含任何数据。相反,我看到这样的事情:

<br /><b>Notice</b>:  Undefined variable: investment in     <b>C:\xampp\htdocs\book_apps\ch02_future_value\index.php</b> on line <b>20</b><br />. 

有什么建议吗?

<form action="display_results.php" method="post">

    <div id="data">
        <label>Investment Amount:</label>
        <input type="text" name="investment"
               value="<?php echo $investment; ?>"/><br />

        <label>Yearly Interest Rate:</label>
        <input type="text" name="interest_rate"
               value="<?php echo $interest_rate; ?>"/><br />

        <label>Number of Years:</label>
        <input type="text" name="years"
               value="<?php echo $years; ?>"/><br />
    </div>

    <div id="buttons">
        <label>&nbsp;</label>
        <input type="submit" value="Calculate"/><br />
    </div>

</form>

1 个答案:

答案 0 :(得分:1)

这是因为您期望设置register_globals指令,而不是。

这意味着您必须先获取$_POST['investement']而不是$investment,然后您需要先检查是否已提交:

$investment = array_key_exists('investment', $_POST) ? $_POST['investment'] : "";