首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用ctype_digit PHP选中textbox

如何使用ctype_digit PHP选中textbox
EN

Stack Overflow用户
提问于 2015-11-15 21:04:59
回答 3查看 62关注 0票数 0

这是我的代码,我从文本框中得到变量,但什么也没有出现。

此代码检查输入是否为数字:

这是一个数字

或否:

这不是一个数字

代码语言:javascript
复制
<?php
echo'<form method="post" action="">';
echo '<input type=text name=t/>';
echo'<input type=submit name=su/>';
echo'</form>';
if(isset($_POST['su']))
{
    if (ctype_digit($_POST['t'])) {
        echo "This is number.\n";
    } else {
        echo "This is not a number.\n";
    }
}
?>

所有的代码都在一页中。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2015-11-15 21:59:02

您的代码失败了,因为您有未引用的元素/属性。

下列情况需要引号:

代码语言:javascript
复制
echo '<input type=text name=t/>';
                  ^^^^ ^^^^^^
echo'<input type=submit name=su/>';
                 ^^^^^^ ^^^^^^^

将代码修改为:

代码语言:javascript
复制
<?php
echo'<form method="post" action="">';
echo '<input type="text" name="t"/>';
echo'<input type="submit" name="su"/>';
echo'</form>';
if(isset($_POST['su']))
{
    if (ctype_digit($_POST['t'])) {
        echo "This is number.\n";
    } else {
        echo "This is not a number.\n";
    }
}
?>
  • 某些web浏览器不会接受未引用的元素/属性,只会被忽略,例如当前版本的Firefox,即使错误报告设置为捕捉/显示,也会悄无声息地失败,奇怪的是。
票数 3
EN

Stack Overflow用户

发布于 2015-11-15 21:49:21

您可以使用JS函数isNAN测试一个数字。PHP进程在服务器上,因此一旦加载页面,它就不可用。但是,在页面加载之后,Javascript是可用的。JS是客户端,在浏览器上执行。这里有一个js解决方案:

代码语言:javascript
复制
var test = 1;
if(isNaN(test)) {
    alert('String');
} else {
    alert('number');
}

这会提醒number

这里有一个关于JS函数,Objects/isNaN的更详细的说明。

票数 1
EN

Stack Overflow用户

发布于 2015-11-15 21:18:20

如果method没有在<form>中定义,那么默认的是GET。所以

代码语言:javascript
复制
<form>

是相同的

代码语言:javascript
复制
<form method="GET">

如果你想使用$_POST,你需要

代码语言:javascript
复制
<form method="POST">
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33725042

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档