PHP变量正确回显但没有进入数据库

时间:2012-12-06 20:10:49

标签: php mysql

我正在尝试将5个变量输入MySQL数据库。这是代码:

    foreach ($avail_t as $row) {
    $ava = explode("+",$row);
    $day = $ava[0];
    $from = $ava[1];
    $to = $ava[2];
    //echo $day." ".$from." ".$to;
    $query = "INSERT INTO availability (username, login_value, day, from, to) VALUES ('{$_SESSION['username']}', '{$_SESSION['login_value']}', '{$day}', '{$from}', '{$to}')";
    mysql_query($query);
}

当我取消注释那个echo语句时,所有变量都打印出来就好了,但是当我处理查询时它不会进入数据库。奇怪的是,如果我从$和$中减去$并且只输入$ day,它将进入当天。当我退回$和$ to to nothing时,

您是否发现此代码存在任何问题?对于$ from和$ to,数据类型在军事时间格式2100,1300等中是整数。

2 个答案:

答案 0 :(得分:7)

您使用fromto作为reserved keywords的列名称,在查询中使用反引号`转义它们

$query = "INSERT INTO availability (username, login_value, day, `from`, `to`) VALUES ('".$_SESSION['username']."', '".$_SESSION['login_value']."', '$day', '$from', '$to')";

答案 1 :(得分:0)

您无法使用fromto,这些是保留字。