我有以下代码,完全是从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> </label>
<input type="submit" value="Calculate"/><br />
</div>
</form>
这是因为您希望设置register_globals
指令,而实际上并没有。
这意味着你必须获得$_POST['investement']
而不是$investment
,你需要首先检查它是否已提交:
$investment = array_key_exists('investment', $_POST) ? $_POST['investment'] : "";