我有以下代码:
<?php
$student_no = $_GET['student_no'];
echo '<form name="student" action="PROCESS_FEE007.php" method="POST">';
echo '</br><table>';
echo '**<input name="student_no" type="hidden" value="$student_no" />**';
echo '<td>Amount: </td><td>'.'<input name="amount" type="text" /></td></tr>';
echo '<tr> <td>Remarks: </td><td>'.'<input name="remarks" type="text" /> </td>';
echo '<tr> <td>';
echo '<td>'.'<input type="submit" value="Save"/></td></tr>';
echo '</table>';
echo '</form>';
?>
在下一页PROCESS_FEE007.PHP
,未收到该值。
答案 0 :(得分:4)
单引号内的解释器不会解析变量。您应该使用双引号或显式字符串连接。
在您的示例中,$_POST['student_no']
的值将为字符串'$student_no'
,而不是$student_no
变量的值。
此外,如果您在表单中使用method="POST"
,则只能通过$_POST
数组获取输入值。
<?php
$student_no = $_POST['student_no'];
echo '<form name="student" action="PROCESS_FEE007.php" method="POST">';
echo '</br><table>';
echo '**<input name="student_no" type="hidden" value="'.$student_no.'" />**';
echo '<td>Amount: </td><td>'.'<input name="amount" type="text" /></td></tr>';
echo '<tr> <td>Remarks: </td><td>'.'<input name="remarks" type="text" /> </td>';
echo '<tr> <td>';
echo '<td>'.'<input type="submit" value="Save"/></td></tr>';
echo '</table>';
echo '</form>';
?>
答案 1 :(得分:1)
以表格
解析student_no<?php
$student_no = $_GET['student_no'];
echo '<form name="student" action="PROCESS_FEE007.php" method="POST">';
echo '</br><table>';
echo '**<input name="student_no" type="hidden" value="'.$student_no.'" />**';
echo '<td>Amount: </td><td>'.'<input name="amount" type="text" /></td></tr>';
echo '<tr> <td>Remarks: </td><td>'.'<input name="remarks" type="text" /> </td>';
echo '<tr> <td>';
echo '<td>'.'<input type="submit" name="submit_save" value="Save"/></td></tr>';
echo '</table>';
echo '</form>';
?>
并在PROCESS_FEE007.php页面上使用
<?php
if ($_POST['submit_save']){
var_dump($_POST);die();
}
&GT;
答案 2 :(得分:1)
检查隐藏输入字段的属性“VALUE”。该值不会放在字段中。
首先将输入字段设为文本框,修复错误后将其设为隐藏字段。
可能有用。 (我忘了因为我很久没出PHP了。)
答案 3 :(得分:0)
尝试使用$ _REQUEST而不是获取示例$ student_no = $ _REQUEST ['student_no'];