php - 尝试通过 php 将日期插入 Oracle 数据库,但代码无法正常工作

标签 php html mysql oracle

我正在创建一个项目,但在将日期插入 Oracle 数据库时遇到问题,我正在使用数据绑定(bind),其他一切都有效,但日期未插入..

$bkida = @$_POST['bkida'];
$titlea = @$_POST['titlea'];
$athr = @$_POST['athr'];
$pblr = @$_POST['pblr'];
$edtn = @$_POST['edtn'];
$btype = @$_POST['btype'];
$pdatea = @$_POST['pdatea'];
$indatea = @$_POST['indatea'];
$tbooks = @$_POST['tbooks'];
$tpages = @$_POST['tpages'];

$cmts = @$_POST['cmts'];

$sql = "INSERT INTO books(ISBN,   TITLE, AUTHOR,PUBLISHER,EDITION,BK_TYPE,PRINT_DT,   IN_DT,     TOT_BKS,  AVAIL_BKS,  PAGES,  COMMENTS) 
"."VALUES(:bkida,:titlea,:athr,:pblr,     :edtn,  :btype  ,to_date(:pdatea, 'MM-DD-YYYY'), to_date(:indatea, 'MM-DD-YYYY'),  :tbooks ,  :tbooks,  :tpages ,  :cmts   )";

$compiled = oci_parse($conn, $sql);

oci_bind_by_name($compiled, ':bkida', $bkida);
oci_bind_by_name($compiled, ':titlea', $titlea);
oci_bind_by_name($compiled, ':athr', $athr);
oci_bind_by_name($compiled, ':pblr', $pblr);
oci_bind_by_name($compiled, ':edtn', $edtn);
oci_bind_by_name($compiled, ':btype', $btype);

oci_bind_by_name($compiled, ':pdatea', $pdatea);
oci_bind_by_name($compiled, ':indatea', $indatea);
oci_bind_by_name($compiled, ':tbooks', $tbooks);
oci_bind_by_name($compiled, ':tpages', $tpages);
oci_bind_by_name($compiled, ':cmts', $cmts);


oci_execute($compiled);

最佳答案

默认日期格式为YYYY-MM-DD,我认为您正在尝试以其他格式插入。在插入数据库之前像这样转换日期

$pdatea = date("Y-m-d",strtotime(@$_POST['pdatea']));
$indatea = date("Y-m-d",strtotime(@$_POST['indatea']));

关于php - 尝试通过 php 将日期插入 Oracle 数据库,但代码无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33275350/

相关文章:

mysql - 从old_text列获取特定页面内容

php - MySQL:在表更新期间删除 "orphaned"行?

javascript - jQuery scrollTop 并关注元素

java - 是否可以使用 OpenID/oAuth 作为单域上不同平台的 SSO?

html - 将默认导航栏转换为粘性/固定导航栏?

javascript - header 中的 JQuery Bootstrap 冲突

MySQL,检查相关表的任何行是否与某个值匹配并从结果中删除该行

javascript - 最佳数据库连接数(node-mysql)

javascript - 将 PHP openssl_encrypt 与 JavaScript 中的空白 IV 相匹配

php - 拉维尔 5.4 : how to delete a file stored in storage/app