MySQL的时间验证范围
Time Validation Range form MySQL
这是我的JavaScript:
<SCRIPT TYPE="text/JavaScript">
function validateHhMm(inputField) {
var time= $("#time").val();
var isValid = /^(time)?$/.test(inputField.value);
if (isValid) {
inputField.style.backgroundColor = '#bfa';
} else {
inputField.style.backgroundColor = '#fba';
}
return isValid;
}
</SCRIPT>
PHP脚本:
<?php
include 'connect.php';
$time = " SELECT * from schedule where id_ship=24";
$show_time = mysql_query($time);
$row = mysql_fetch_array($show_time);
?>
<input type="text" onchange="validateHhMm(this);" name="time" id="time" value="
<?php
echo $row['time_coming'];
?>">
这个时间表
id_ship | time_coming |
----------------------------
24 | 11:10:02 |
我想再次输入表单时间。有效值必须等于或高于11:10:02。11:10:02下的值无效。那么,我应该在JavaScript中做什么呢?
您需要在服务器端和客户端上验证时间。
让我们更改JavaScript函数,使其可以接受最小值。
<SCRIPT TYPE="text/JavaScript">
function validateHhMm(inputField, minValue) {
var time= $("#time").val();
var isValid = /^(time)?$/.test(inputField.value);
if (!isValid || inputField.value < minValue) {
inputField.style.backgroundColor = '#fba';
} else {
inputField.style.backgroundColor = '#bfa';
}
return isValid;
}
</SCRIPT>
因此,如果inputField.value没有验证您的regex,或者不是小于最小值的时间,则它被视为无效。
现在,将最小值传递给JavaScript,使用:
<input type="text" onchange="validateHhMm(this,<?php echo $row['time_coming'];?>);" name="time" id="time" value="
<?php
echo $row['time_coming'];
?>">
好吧,既然JavaScript已经过验证,那么您还需要通过PHP进行验证。
您没有为post页面发布任何代码,但验证看起来类似于:
if ($_POST['time'] < $your_row['time_coming'])
die("Invalid time posted")
假设您有:
<input type="text" onchange="validateHhMm(this);" ... >
然后将对元素的引用传递给函数,因此在函数中:
var time= $("#time").val();
与相同
var time = inputField.value;
您所在的位置:
var isValid = /^(time)?$/.test(inputField.value);
您正在将inputField的值测试为文字字符串"time",这几乎肯定是错误的。如果你想测试时间是否有效(即小时是0到23,分钟是0到59),你可以尝试:
function validateHHMM(s) {
var b = s.split(':');
return /^'d'd:'d'd$/.test(s) && // Check format is nn:nn
b[0] < 24 && b[0] > -1 && // Check hours are 0 to 23 inclusive
b[1] < 60 && b[1] > -1 // Check minutes are 0 to 59 inclusive
}
以上内容可以在一个正则表达式中完成,但当其他人必须维护代码时,简单性很重要。
一旦输入有效,就可以比较这些值。
相关文章:
- 如何创建一个方法来验证数组的范围
- JavaScript-仅验证数值并且在范围内
- 用于验证数字范围的正则表达式
- 使用正则表达式验证特定范围
- 正则表达式用于验证两个范围之间的数字
- Javascript/Jquery:使用数字范围验证输入
- 如何在 AngularJS 中设置范围验证
- 用于双精度数范围验证的正则表达式
- 使用 JavaScript 或 jQuery 进行价格范围验证
- GridView asp .net 中的日期范围验证
- jquery Datepicker日期范围验证
- 如何使用javascript创建范围验证器?在VS中不使用范围验证器控件
- 如何使用范围验证器
- Jquery 数值范围验证
- 纯javascript html 5文本类型数字范围验证
- 需要年份范围验证脚本或jquery
- 在html输入上显示范围验证器错误消息
- asp.net中的范围验证
- HTML.TextBox用于范围验证
- 在jquery中添加超过4个文本框的时间选择器范围验证