Echo不在PHP中工作!这是数字吗

Echo不在PHP中工作!这是数字吗,php,html,post,isnumeric,Php,Html,Post,Isnumeric,我有一个简单的HTML文本框,只需要整数,它们必须正好是6个字符。如果不满足这些条件,则应向用户提供适当的消息,并且不应使用$u POST'值 $idLength = strlen($_POST['customerid']); if ($_SERVER["REQUEST_METHOD"] == "POST") { if(empty($_POST['customerid'])) { $idErr = " *Enter ID"; } else if(($idLeng

我有一个简单的HTML文本框,只需要整数,它们必须正好是6个字符。如果不满足这些条件,则应向用户提供适当的消息,并且不应使用$u POST'值

$idLength = strlen($_POST['customerid']);

if ($_SERVER["REQUEST_METHOD"] == "POST")
{
if(empty($_POST['customerid']))
    {
        $idErr = " *Enter ID";
    }
else if(($idLength > 0) && ($idLength < 6))
       {
       {$idnErr = " ID must be exactly 6 Digits";}
       if((!is_numeric($_POST['customerid'])))
       {$idnumErr = " ID must only be numerical values";}
       }

else if ((is_numeric($_POST['customerid']))&&($idLength = 6)) 
    {
        $id = $_POST['customerid'];
    }
echo "$id";
$idLength=strlen($_POST['customerid']);
如果($\服务器[“请求\方法”]=“发布”)
{
if(空($_POST['customerid']))
{
$idErr=“*输入ID”;
}
如果($idLength>0)和($idLength<6))
{
{$idnErr=“ID必须正好是6位”;}
如果((!是数字($\u POST['customerid']))
{$IDNumer=“ID只能是数值”;}
}
如果((是数字($\u POST['customerid'])和($idLength=6))
{
$id=$\u POST['customerid'];
}
回显“$id”;
因此,使用该代码,我检查输入框是否为空,如果为空,它会在框旁边显示“*Enter ID”。我检查该值是否大于0且小于6(在html中为maxlength=6),如果为空,它会显示“ID必须正好是6位数字”。我还检查字符是否为数字,如果不是,它会显示“ID只能是数值”

如果用户输入一个有效的ID,那么该ID才会存储在变量中。例如:-123456。所有这些似乎都可以正常工作

当我只输入了6个不需要的字符时,我的问题就出现了,比如12345a或ABCDE3。代码没有将它们存储到$id中,但它没有显示一条与预期相同的错误消息,我想知道我做错了什么

如果用户输入不正确,我还希望将其输入保存在文本框中。例如,如果用户在客户id中输入“1234g”并单击“提交”,我希望在页面刷新时,该错误出现在文本框中。

此处:

($idLength = 6)
您正在将值
6
分配给变量。您应该执行以下操作:

($idLength == 6)
=
是a,检查它是否等于6。

在这里:

($idLength = 6)
您正在将值
6
分配给变量。您应该执行以下操作:

($idLength == 6)

=
是a,并检查它是否等于6。

您的表中有一个未定义的变量code@Daan你保守秘密,没有告诉我们?;)什么变量是未定义的?@daantey都定义好了,我只是没有在这里添加它们,因为没有必要
$idLength=strlen($\u POST['customerid'))
您应该将此粘贴到服务器\u方法贴子中。
$\u贴子['customerid']
未定义您的方法中有一个未定义的变量code@Daan你保守秘密,没有告诉我们?;)什么变量是未定义的?@daantey都定义好了,我只是没有在这里添加它们,因为没有必要
$idLength=strlen($\u POST['customerid'));
您应该将此粘贴到服务器\u方法贴子中。
$\u贴子['customerid']
没有定义我以前试过,这是我以前认为的,但这不是问题所在。我只是再试了一次,没有出现错误。@Roo Ok你似乎错过了最后一个
否则
,如果
长度>6
不是数字,我删除了一个多余的
是数字().
看看这个谢谢,我知道我做错了什么我以前试过,这是我以前认为的,但这不是问题。我只是再试了一次,没有出现错误。@roroo好吧,你似乎错过了最后一个
else
,如果
长度>6
不是数字,而我emoved a redundant
is_numeric()。
看看这个谢谢,我明白我做错了什么