【发布时间】:2012-01-14 22:41:20
【问题描述】:
我有以下代码,完全是从一本 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>
【问题讨论】:
-
这可能是一本很老的书。它教的是哪个版本的 PHP?
-
它不仅是空的,而且是未定义的。也许你的书是为不那么挑剔的 PHP 版本写的。
-
书不老,2010年出版;它是“Murach 的 PHP 和 MySQL”。
-
我用 替换了 php 语句,现在它似乎可以正常工作了。
-
$investment是否曾经创建/定义过?您可能正在尝试回显一个不存在的变量。 PS:您可以使用该 if 语句的简写:<?php echo (!empty($investment) ? $investment : ""); ?>