PHP函数中的UPDATE日期

时间:2014-03-19 15:59:56

标签: php mysql sql function date

我在索引文件中有这个:

<form action="index.php#updateMatch" method="post">
    <?php
        Some select option
        echo '&nbsp;&nbsp;Date: (AAAA-MM-JJ) <input type="date" name="datematch">';
    ?>
    <input type="submit" value="do somthing" />
</form>

如果我有一些$ _POST [xxx]我会调用此函数:

function updateMatch($id,
    $winner_id, 
    $looser_id,
    $character_winner_id, 
    $character_looser_id, 
    $date) {
    database conection......
    $updatematch="UPDATE `match` SET manythings and date=$_POST[datematch] WHERE id=$_POST[id];";
    echo 'match.... N°'.$_POST['id'];
    mysql_close($db);
    }
    else 
        {echo "<span style='color: red'>blablabla</span>";}
}

但是对于日期,更新不起作用,函数设置日期为:0000-00-00。我该如何更新日期? 感谢

1 个答案:

答案 0 :(得分:2)

对于初学者来说,你的日期缺少引号:

$updatematch="UPDATE `match` SET manythings and date=$_POST[datematch] WHERE id=$_POST[id];";

应该是:

$updatematch="UPDATE `match` SET manythings and date='$_POST[datematch]' WHERE id=$_POST[id];";

您的陈述中也有一个不必要的列(manythings)。删除它或修复它(我删除它,因为我不知道要使用的有效值):

$updatematch="UPDATE `match` SET date='$_POST[datematch]' WHERE id=$_POST[id];";

您对SQL injections

持开放态度