我读完了一本书:Luke Welling 和 Laura Thomson 所著的《PHP 和 MySQL ® Web 开发第 4 版》。在第 49 页,作者提出了额外深奥的(至少对我来说)处理形式的方法。也就是说,如果 html 表单中的名称具有相同的值,并且仅通过数字加一来区分,我们可以在 echo 语句中使用“变量变量”类型的变量来动态地从表单中提取值...:
这是我的html:
<form action="processorder.php" method="post">
<table style="border: 0px;">
<tr style="background: #cccccc;">
<td style="width: 150px; text-align: center;">Item</td>
<td style="width: 15px; text-align: center;">Quantity</td>
</tr>
<tr>
<td>Tires</td>
<td><input type="text" name="name1" size="3" maxlength="3" /></td>
</tr>
<tr>
<td>Oil</td>
<td><input type="text" name="name2" size="3" maxlength="3" /></td>
</tr>
<tr>
<td>Spark Plugs</td>
<td><input type="text" name="name3" size="3" maxlength="3" /></td>
</tr>
<tr>
<td colspan="2" style="text-align: center;"><input type="submit" value="Submit Order" /></td>
</tr>
</table>
<tr>
<td>How did you find Bob's?</td>
<td>
<select name="find">
<option value = "a">I'm a regular customer</option>
<option value = "b">TV adversting</option>
<option value = "c">Phone directory</option>
<option value = "d">Word of mouth</option>
</select>
</td>
</tr>
</form>
这是我的 .php 文件:
<!DOCTYPE html>
<html>
<head>
<title>Bob's Auto Parts - Order Results</title>
</head>
<body>
<h1>Bob's Auto Parts</h1>
<h2>Order Results</h2>
<?php
//create short variable names
$tireqty = $_POST['name1'];
$oilqty = $_POST['name2'];
$sparkqty = $_POST['name3'];
for ($i=1; $i <= 3; $i++){
$temp = "name$i";
echo htmlspecialchars($$temp).'<br />'; // or whatever processing we want to do
}
这是我的问题所在:
for ($i=1; $i <= 3; $i++){
$temp = "name$i";
echo htmlspecialchars($$temp).'<br />';
}
脚本不会做出反应,也不接受其他类型的简单变量参数。即使是编辑器(np++)也不接受第二个“$”符号。
红糖糍粑
千万里不及你