[PHP-users 3329] Re: timestampの日付と時刻の更新

HOTTA Michihide php-users@php.gr.jp
Tue, 6 Nov 2001 10:13:07 +0900


堀田@諌早市です。

On Tue, 6 Nov 2001 09:07:55 +0900
Subject: [PHP-users 3321] Re: timestampの日付と時刻の更新
"S.Mitamura" <mitamura@s-graphi.co.jp> wrote:
>  言葉足らずでした。申し訳ありません。
>  Linux上で、initdbをしたPostgresユーザーで、Telnet上にて
>  実行した場合です。
>  サーバ・クライアント共に、ローカルネットワーク内です。
>  
>  PHPからではユーザーはnobodyになりますが、権限はallにしてます。
>  権限はpostgresもnobodyも同じにしてあり、ユーザーが異なりますが、
>  実行しているSQL文自体は同じです。

こちらでは、以下のような感じで正常に動作しています。
読んでいる人が追試できるように書いてあげると、解決が早まると
思います。

hotta@star2:~/temp$ cat t.sql 
select version();
drop table t;
create table t (id text, day timestamp);
grant all on t to nobody;
insert into t values ('0001', current_timestamp());
select * from t;

hotta@star2:~/temp$ psqlj -e <t.sql 
select version();
                               version                               
---------------------------------------------------------------------
 PostgreSQL 7.2b1 on i686-pc-linux-gnu, compiled by GCC egcs-2.91.66
(1 row)

drop table t;
DROP
create table t (id text, day timestamp);
CREATE
grant all on t to nobody;
GRANT
insert into t values ('0001', current_timestamp());
INSERT 16604 1
select * from t;
  id  |             day              
------+------------------------------
 0001 | 2001-11-06 10:11:37.33093+09
(1 row)

hotta@star2:~/temp$ cat t.php 
#!/usr/local/bin/php -q
<?php
    system("grep Linux /etc/issue");
    system("/bin/uname -msr");
    printf("PHP version = %s\n", phpversion());
    $conn = pg_connect("dbname=hotta");
    $sql = "update t set day=current_timestamp() where id = '0001'";
    pg_exec($conn, $sql);
    $r = pg_exec($conn, "select * from t where id = '0001'");
    printf("day = %s\n", pg_result($r, 0, "day"));
?>

hotta@star2:~/temp$ sudo -u nobody ./t.php
Password:
Vine Linux 2.1.5 (Calon-Segur)
Linux 2.2.18-0vl4.2 i686
PHP version = 4.0.6
day = 2001-11-06 10:12:02.96702+09

-- 
堀田 倫英                          Web : http://www.net-newbie.com   
Official : hotta@18software.co.jp / Private : hotta@net-newbie.com
  Outlook Express をお使いの方 or ML 初心者の方へ:
    http://www.net-newbie.com/netiquette/outlook.html