如何检查单个输入文本框的多个值? [英] How to check single input text box for multiple values?
本文介绍了如何检查单个输入文本框的多个值?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想创建一个网站,用户可以检查奖债券号码,并且我也了解了一些关于php的内容,所以我在html中创建了一个表单:
<形式>
输入价格债券编号< input type =textname =number>< br>
< input type =submitvalue =试试你的运气>
< / form>
现在在php中,我想检查它是单个数字,范围数还是逗号分隔数字,例如:
1023342
1023342-10233100
1023342,1023343,1023344,1023345
我想根据用户输入的内容采取不同的操作。
if(ctype_digit($ number)){// case1:简单数字
返回1; $(
)
if(preg_match('/(\ d) - (\d)/',$ number,$ out)){
// Case2:range
//我们需要检查范围是否有效
if($ out [1]> = $ out [2]){
// echo'error:范围中的第一个数字应该少于第二个数字;
返回false;
}
return 2;
}
if(preg_match('/ \ d +(,\ d +)+ /',$ number,$ out)){
// Case3:逗号分隔
返回3;
}
返回false;
$ b $ //使用
if(check_input($ number)== 1){
//做某事
}
I want to create a site where users can check prize bond numbers, and I know a bit about php as well, so I created a form in html:
<form>
Enter your price bond number <input type="text" name="number"><br>
<input type="submit" value="try your luck">
</form>
Now in php, I want to check if it's a single number, range number, or comma-separated number, e.g.:
1023342
1023342-10233100
1023342,1023343,1023344,1023345
I want to take different actions based on what user entered.
解决方案
function check_input($number){
if(ctype_digit($number)){
//case1: simple number
return 1;
}
if(preg_match('/(\d)-(\d)/', $number, $out)){
//Case2: range
//we need to check if the range is valid or not
if($out[1] >= $out[2]){
//echo 'error: the first number in range should be lessthan second number';
return false;
}
return 2;
}
if(preg_match('/\d+(,\d+)+/', $number, $out)){
//Case3: comma seperated
return 3;
}
return false;
}
//usage
if(check_input($number) == 1){
//do something
}
这篇关于如何检查单个输入文本框的多个值?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文