RE: [PEAR] Re: PEAR::DB and autoPrepare with dates (Oracle)
| From: | Shawn Coomey | Date: | Tue, 24 Feb 2004 20:26:51 +0000 |
| Subject: | RE: [PEAR] Re: PEAR::DB and autoPrepare with dates (Oracle) | ||
| Groups: | php.pear.general | ||
| Request: | Send a blank email to pear-general+get-10909@lists.php.net to get a copy of this message | ||
Thanks Justin-
Yes, I sure did. The dates are copasetic. I have a feeling that it has to do
with the binding PEAR::DB does in the background in autoPrepare() and how it
relates to Oracle date formatting. Not sure though
Shawn
-----Original Message-----
From: Justin Patrin [mailto:papercrane@reversefold.com]
Sent: Tuesday, February 24, 2004 3:24 PM
To: pear-general@lists.php.net
Subject: Re: [PEAR] Re: PEAR::DB and autoPrepare with dates (Oracle)
I assume you've echoes this to make sure that the strings are as
expected? A null return from date() or strtotime() could cause this.
Shawn Coomey wrote:
> Yeah, the double equal was a typo as I transposed my code into the email. I
> tried quoting and not quoting the date string, and got the same result.
>
> Any suggestions?
>
> Thanks
>
> Shawn
>
> -----Original Message-----
> From: Justin Patrin [mailto:papercrane@reversefold.com]
> Sent: Tuesday, February 24, 2004 1:11 PM
> To: pear-general@lists.php.net
> Subject: [PEAR] Re: PEAR::DB and autoPrepare with dates (Oracle)
>
> Shawn Coomey wrote:
>
>
>>Hi folks-
>>I am trying to perform an autoPrepare() update on a date column in Oracle
>
> 9i.
>
>>Seems to be giving me some trouble with the date formatting. Here; an
>
> example
>
>>of what I am trying to do:
>>
>> <?php
>>
>> $start = = "TO_DATE(" . date("m/d/Y g:i A", strtotime($start_time)) .
>> ",
>>'MM/DD/YYYY HH:MI AM')";
>> $end = = "TO_DATE(" . date("m/d/Y g:i A", strtotime($end_time)) ..
>> ",
>>'MM/DD/YYYY HH:MI AM')";
>>
>> $table_fields = array('event_start', 'event_end');
>> $table_values = array($start', $end');
>> $table_name = 'calendar_events';
>>
>> $sth = $dbh->autoPrepare($table_name, $table_fields, DB_AUTOQUERY_UPDATE,
>>'event_id = ' . $event_id');
>> $dbh->execute($sth, $table_values);
>>
>> ?>
>>
>>But this throws the following Oracle error:
>>[nativecode=ORA-01858: a non-numeric character was found where a numeric
>
> was
>
>>expected]
>>
>>How do I format the date for autoPrepare to work?
>>
>>
>>TIA-
>>
>>Shawn
>
>
> Looks like you're not quoting your date string (also you had two = signs
> when setting $start and $end):
> $start = "TO_DATE('" . date("m/d/Y g:i A", strtotime($start_time))
> "',
> 'MM/DD/YYYY HH:MI AM')";
>
>
> --
> paperCrane <Justin Patrin>
>
--
--
paperCrane <Justin Patrin>
--
PEAR General Mailing List (http://pear.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php