0

嗨,我要做的是在我的数据库中插入一个时间段值,即enrollperiod,格式为: MONTH + STRTDAY + ENDDAY,要获得这些值,我有3 个文本区域并将它们组合起来,如下所示:

   $enrollp= $_POST['month'] . $_POST['strtday'] . $_POST['endday'];

(我现在不专注于 SQL 注入,但不要担心,我已经阅读了一些 PDO 和准备好的语句文章)

我会这样插入:

   $sql="Update tbl_enroll set enrollperiod='$enrollp'";

我的问题是登记期应该有什么数据类型?以及我应该如何能够在注册期间检索值使用在此代码中:

     if (date('m') == '09' && date('d') == '12' &&  date('d') == '12' && $allowed)

上面的行没有被修改来检查开始日期结束日期我不知道如何执行它。将不胜感激任何帮助。

4

2 回答 2

2

数据库关系(表)中的每个字段(属性)都必须是 ATOMIC。

为什么要将这些值合并到一个字段中?这样做有合理的理由吗?

于 2012-09-15T10:41:01.783 回答
0

我会使用这种格式将其存储在数据库中:

week_strtday_endday

因此,从数据库中检索数据后,您可以使用explode函数使用“_”字符拆分这 3 个部分,如下所示:

$array = explode('_', $field);
$week = $array[0];
$strtday = $array[1];
$endday = $array[2];

字段的类型取决于您要存储的数据,例如,如果“week”在 1-53 范围内,“strtday”和“endday”在 1-7 范围内,则 VARCHAR(6 ) 对于那个领域来说可能很酷。

于 2012-09-15T10:41:58.913 回答