带日期的DB字段保持为空

时间:2011-10-23 10:41:02

标签: php mysql date

我遇到了一个我一直在运行的脚本的问题。

运行查询后,字段datum_betalen保持为空。我做错了什么?如果我在执行查询后回显$ datum_betalen它有一个日期。

//zoek aantal dagen bij betalingstermijn
if($bet_term_maand == 'ja')
{
    $aantal_maanden = ceil($bet_term_dagen / 30);
    $dagen_resterend = date('t') - date('d') - 1;
    $datum_betalen = mktime(0, 0, 0, date('m') + $aantal_maanden  , date('d') + $dagen_resterend, date('Y'));
    $datum_betalen = date('m-d-Y', $datum_betalen);
}
else
{
    $datum_betalen = mktime(0, 0, 0, date('m'), date('d') + $bet_term_dagen, date('Y'));
    $datum_betalen = date('m-d-Y', $datum_betalen);
}

// voer query uit
if($land_id == 1)
{
    $btw = $config['btw'];
}
else
{
    $btw = 0;
}

if($type == 'factuur')
{
    $sql = "INSERT INTO 9_factuur_id
        (
            dossier_id,
            factuur_nr,
            contact_id,
            naam,
            btw,
            min_orderkosten,
            transport,
            datum_verstuurd,
            bet_term_dagen,
            bet_term_maand,
            datum_betalen,
            soort,
            status,
            user_id
        )
        VALUES
        (
            '".$dossier_id."',
            IFNULL((SELECT MAX(factuur_nr) + 1 FROM 9_factuur_id AS temp),'42003'),
            '".$contact_id."',
            '".$naam."',
            '".$btw."',
            '".$min_orderkosten."',
            '".$transport."',
            NOW(),
            '".$bet_term_dagen."',
            '".$bet_term_maand."',
            '".$datum_betalen."',
            'factuur',
            'open',
            '".$_SESSION['user_id']."'
        )
    ";
}
else
{
    $sql = "INSERT INTO 9_factuur_id
        (
            dossier_id,
            contact_id,
            naam,
            btw,
            min_orderkosten,
            transport,
            datum_verstuurd,
            bet_term_dagen,
            bet_term_maand,
            datum_betalen,
            soort,
            status,
            user_id
        )
        VALUES
        (
            '".$dossier_id."',
            '".$contact_id."',
            '".$naam."',
            '".$btw."',
            '".$min_orderkosten."',
            '".$transport."',
            NOW(),
            '".$bet_term_dagen."',
            '".$bet_term_maand."',
            '".$datum_betalen."',
            'proforma',
            'open',
            '".$_SESSION['user_id']."'
        )
    ";
}

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

如果datum_betalen的类型为date,则应将日期格式更改为Y-m-d,因为这在MySQL中使用。另外我建议避免代码重复;例如:

$datum_betalen = date('m-d-Y', $datum_betalen);