表格输入无法通过

时间:2013-03-05 12:58:59

标签: database forms input integer

我是php的新手(60岁时我从多年的VBScript和ASP转换)并且在表单处理方面遇到了困难。我搜索了这个和许多其他论坛的解决方案,但找不到一个。我试图使用表单中的输入删除记录;

我的表单代码($ row [0]是字段ID,自动递增,在本例中的值为3): -

 <form action="<?=$_SERVER[ 'PHP_SELF' ] ?>" method="post">
 <input type="hidden" name="id" value="<?php echo $row[0]?>">
 <input type="submit" value="Delete"></form>

然后运行处理页面而不会产生任何错误,但记录不会被删除,所以我测试了处理页面上的输入值,原因似乎是因为变量“id”的值没有通过。

我在表单页面上测试了输入值:

echo $row[0]

并且它肯定会输出整数3。

问题出现在处理页面上,我检查收到表单输入的代码是:

$id = (INT)$_post['id'];
echo 'Form input= ', $_post['id'], '<br>';
echo '$id= ', $id, '<br>';

显示表单输入行的空白区域 0和$作为$ id的值,两者都应显示数字3

有谁能告诉我为什么“id”的值没有被发送到处理页面?

我希望答案很简单,但我无法理解。

我希望我已经令人满意地解释了这个问题,但如果没有,请告诉我。

1 个答案:

答案 0 :(得分:0)

试试这个:

$id = (int) $_POST['id'];
echo 'Form input= ' . $_POST['id'] . '<br>';
echo 'id= ' . $id . '<br>';

$ _ POST在PHP中区分大小写。 http://www.php.net/manual/en/reserved.variables.post.php

字符串与.而不是,

连接在一起

同样'$id= '会呈现$id的值而不是$ id