トップページ⇒php
1001コメント345KB

【PHP】質問スレッドPart2

■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。01/10/17 10:52ID:zLTg5ihK
レスは気長に待つのが良い感じかも。
答えられる方、返答よろしくお願いします。

参考リンク
■本家
http://www.php.net/

■PHP日本語マニュアル
http://www.php.net/manual/ja/

■Japan PHP Users Group
http://www.php.gr.jp/

■PHP 日本語ページ
http://www.cityfujisawa.ne.jp/~louis/apps/phpfi/index.html

■Pearのドキュメント
http://phpdocu.sourceforge.net/peardocs/

■前スレ
http://ebi.2ch.net/test/read.cgi/php/982687820/
0220名無しさん@お腹いっぱい。01/11/19 09:22ID:???
PHPって、どんなこと出来るのかなぁ・・・。
掲示板をよく、例題とか、サンプルとかであるけど。
他に何できるのかなぁ・・。
誰か、「PHPで、こんなの作った」って人、いません??
0221名無しさん@お腹いっぱい。01/11/19 09:54ID:???
>>220
http://www.hotscripts.com/PHP/Scripts_and_Programs/
0222t5501/11/19 10:23ID:LAtEPnZS
日本最大の援助交際サイト



おこずかいの欲しい女の子募集!!



http://000.zive.Net/e.html
(援助交際クラブ)
/:::::
022322001/11/19 10:51ID:???
<<221
え、英語ですね・・^^;
あ、ありがとうです。
でも、日本語のやつとかありましたら、そちらの方がイイです。(藁
0224名無しさん@お腹いっぱい。01/11/19 11:02ID:???
絶対言うと思った。英語ってだけでしり込みする奴ウザイ。

http://www.php.gr.jp/php/php-links.php3
http://script.lovely.to/list.php3?path=home_script_php

このくらい自分で探せよ。
0225名無しさん@お腹いっぱい。01/11/19 11:06ID:???
ひろゆきピンチ!援軍頼む
集え!2ちゃんねらー!!!
http://yasai.2ch.net/test/read.cgi/shikaku/1005610706/
0226名無しさん@お腹いっぱい。01/11/19 13:40ID:???
PHPって日本語での情報量ってたかが知れてるよね。
まぁとりあえず>>220は汚染には気をつけてね。周りの人が迷惑するから。
022722001/11/19 14:52ID:???
あ。
日本語の奴だ。>>224サン。すみません。ありがとうございます。
0228 01/11/19 15:55ID:OEyiuwmr
$a = 123をreturnする時、
returnする直前は値が入っているのに
返り値を受け取った直後に値が入っていないなんて事あるんでしょうか。
というか今そんな風になってしまったんですが。
0229名無しさん@お腹いっぱい。01/11/19 16:37ID:???
直前って何処よ。

function hogehoge() {
        ・
        ・
        ・
        echo $hoge;
        return $hoge;
}

ってやって確かめたのか?
0230名無しさん@お腹いっぱい。01/11/19 19:02ID:ADg1aqBa
>>226
汚染って何?
0231名無しさん@お腹いっぱい。01/11/19 19:13ID:???
>>230
↓らへん見れ
http://www.ansi.co.jp/tech/cgi/security/programming.html
0232名無しさん@お腹いっぱい。01/11/19 23:16ID:axQU6f6G
>>229
すいません、僕のミスでした。
function hogehoge($i){
$i++;
if($i == 3){
echo $hoge;
return $hoge;
}else{
hogehoge($i);
}
}

$aiu = hogehoge(1);

これとは少し違うのですが、再起呼び出しした最終的な場面で
returnをしているつもりが、再起呼び出しが完了した後は
また元の再起呼び出し前の状態に戻る事を理解していなくて
結局retrunがされていない(空の値が入っていた)状態で
何度もretrunされていないなぁとやっていました。
意味がわからないと思いますが、一応解決しましたので。
どうもすいませんでした。
徹底攻略PHPって本を読んでるんですが、再起呼び出しについては
ほとんど解説していないんですよね。。
0233名無しさん@お腹いっぱい。01/11/19 23:33ID:???
徹底攻略PHPって本を読んでるんですが、クイックソートについては
ほとんど解説していないんですよね。。
0234名無しさん@お腹いっぱい。01/11/19 23:33ID:???
徹底攻略PHPって本を読んでるんですが、二分木探索については
ほとんど解説していないんですよね。。
0235名無しさん@お腹いっぱい。01/11/19 23:35ID:???
徹底攻略PHPって本を読んでるんですが、有限オートマトンについては
ほとんど解説していないんですよね。。
0236名無しさん@お腹いっぱい。01/11/20 00:02ID:???
例えば、echo文を書くときに

echo $hoge;
echo "$hoge";
echo ("$hoge");
echo '$hoge';

の4つには何か差があるのでしょうか?
使い分けなどありましたら教えていただけないでしょうか。
0237名無しさん@お腹いっぱい。01/11/20 00:18ID:???
>>221のリンク先、すっげー勉強になった。
濃いものがいっぱいあるのぅ。
0238名無しさん@お腹いっぱい。01/11/20 00:46ID:???
>>236
一つだけ明らかに他と違うのがあるだろ?

自分で確かめろよ。
0239名無しさん@お腹いっぱい。01/11/20 03:24ID:???
>>232
>徹底攻略PHPって本を読んでるんですが、再起呼び出しについては
>ほとんど解説していないんですよね。。

なんでPHPの本で再帰を説明しなきゃいけないの?
PHPと再帰とは関係ないじゃん。

>>236
>使い分けなどありましたら教えていただけないでしょうか。

差が分からない以上使い分けもできないと思われ…
本読む前にマニュアル読んだほうがいいんじゃないの?
0240名無しさん@お腹いっぱい。01/11/20 10:52ID:lez0kQXp
InterBaseで改行付きのデータを送っているんですが、
後でデータを取得すると改行が無効になっています。
データ型が悪いのでしょうか。
varchar(n)なんですが。
024124001/11/20 11:20ID:lez0kQXp
すいません、調べたらわかりました。
$com = str_replace("\r\n", "\r", $com); //Win系は\r\n
$com = str_replace("\r", "\n", $com); //Mac系は\r
$com = nl2br($com); //改行文字の前に<br />追加
$com = str_replace("\n", "", $com); //\n除去

こういう事ですね。
でも「<br />」ってなんですか?
<br>とは違うんでしょうか。
0242名無しさん@お腹いっぱい。01/11/20 11:21ID:???
XHTMLの空タグ
0243名無しさん@お腹いっぱい。01/11/20 11:32ID:???
>>241
<br></br>
<img src="..."></img>
こういうのを
<br />
<img src="..." />
で書ける。それだけ。
0244くいーくそーと01/11/20 11:38ID:???
//引数:[$arr]2次元配列、[$sort_column]該当列の正順にソート
//返値:ソートされた配列
function sort($arr,$sort_column){
 //ソートのメイン関数へ
 return sort_main($arr,$sort_column,0,count($arr)-1);
}
//ソートメイン
function sort_main(&$tmp,$sort_column,$left,$right){
 $middle=(int)(($left+$right)/2);
 if($left >= $right){
  return;
 }
 $tmp_sub=$tmp[$left];
 $tmp[$left]=$tmp[$middle];
 $tmp[$middle]=$tmp_sub;
 $last=$left;
 for($count=$left+1; $count<=$right; $count++){
  if($tmp[$count][$sort_column]<$tmp[$left][$sort_column]){
   $last++;
   $tmp_sub=$tmp[$last];
   $tmp[$last]=$tmp[$count];
   $tmp[$count]=$tmp_sub;
  }
 }
 $tmp_sub=$tmp[$left];
 $tmp[$left]=$tmp[$last];
 $tmp[$last]=$tmp_sub;
 $this->sort_main(&$tmp,$sort_column,$left,$last-1);
 $this->sort_main(&$tmp,$sort_column,$last+1,$right);
}
0245くいーくそーと01/11/20 12:02ID:???
$arr[0][0]=3; $arr[1][0]=1; $arr[2][0]=2; $arr[3][0]=5; $arr[4][0]=4;
echo "そーと前だよ<br>";
foreach($arr as $key=>$val) echo "\$arr[".$key."][0]=".$val[0]."<br>";
$arr=qsort($arr,0); //ソートする
echo "そーと後だよ<br>";
foreach($arr as $key=>$val) echo "\$arr[".$key."][0]=".$val[0]."<br>";

///////////////////////////////////////////////////////////
//引数:[$arr]2次元配列、[$sort_column]該当列の正順にソート
//返値:ソートされた配列
function qsort($arr,$sort_column){
 sort_main($arr,$sort_column,0,count($arr)-1); //ソートメイン関数へ
 return $arr;
}
//ソートメイン
function sort_main(&$tmp,$sort_column,$left,$right){
 $middle=(int)(($left+$right)/2);
 if($left >= $right){
  return;
 }
 $tmp_sub=$tmp[$left];
 $tmp[$left]=$tmp[$middle];
 $tmp[$middle]=$tmp_sub;
 $last=$left;
 for($count=$left+1; $count<=$right; $count++){
  if($tmp[$count][$sort_column]<$tmp[$left][$sort_column]){
   $last++;
   $tmp_sub=$tmp[$last];
   $tmp[$last]=$tmp[$count];
   $tmp[$count]=$tmp_sub;
  }
 }
 $tmp_sub=$tmp[$left];
 $tmp[$left]=$tmp[$last];
 $tmp[$last]=$tmp_sub;
 sort_main(&$tmp,$sort_column,$left,$last-1);
 sort_main(&$tmp,$sort_column,$last+1,$right);
}
0246くいーくそーと01/11/20 12:10ID:???
>>244は間違いです^^;;
使ってるやつから余計なとこを取ったもので・・・
エラーが残ってたっす。

そんなわけで、>>245み見てくださいっす。
0247あ01/11/20 14:59ID:???
<input type="text" name="hoge" value="aiueo">
だと初期値がaiueoになりますが、
<textarea name="hoge" value="aiueo">
では初期値にならないですよね?
既に入力されている状態で画面を表示したいのですが。
0248名無しさん@お腹いっぱい。01/11/20 15:11ID:???
>>247
板違い
0249名無しさん@お腹いっぱい。01/11/20 17:52ID:9FGmznpP
>>247
<textarea name="hoge">aiueo</textarea>
こうすれ。sage。
025024901/11/20 17:54ID:???
sageって書いといてsageてない。鬱氏。
0251名無しさん@お腹いっぱい。01/11/20 18:31ID:snY16NFi
ttp://biztech.nikkeibp.co.jp/wcs/show/leaf?CID=onair/biztech/gen/155801

WebSphereって一千万円するの?高くない?
025225101/11/20 18:32ID:???
ごめんなさい、PHPスレでしたね。一般質問と間違えた。
0253名無しさん@お腹いっぱい。01/11/20 19:19ID:MCCfqkSW
>>249
どうもありがとう。
025420001/11/21 07:56ID:???
>>202
自己解決しました。
0255z01/11/21 14:00ID:???
しゅいません。
php4で、クラスのインスタンス変数(オブジェクト)を
セッション管理する定番の方法はどうやりまするか?
0256名無しさん@お腹いっぱい。01/11/21 15:47ID:???
http://www.php.net/manual/ja/language.oop.serialization.php
これよりもっと良いやり方あったら教えてね
0257z01/11/21 21:16ID:???
>>256
おお。なんだーマニュアルよく読めってことかー。
special thanks!! 助かりました。
0258質問です。01/11/23 09:31ID:9Tr0FYjc
セッションはつかってないプログラムのphp.iniで
セキュリティがらみの設定項目ってなんかある?
safe_mode = on
safe_mode_exec_dir = hogehoge
は設定してあります。
あと、変数の関係上
register_global = Off は無理です。
0259全然質問じゃないけど01/11/23 14:28ID:???
PHPってPDFファイルをメモリ上で作って出力できるんだね。
綺麗に帳票出せるようになってうれしカキコ。
0260名無しさん@お腹いっぱい。01/11/23 17:27ID:kkIMnnEn
あちらこちらからPHPを拾ってきてPHP可な鯖にセッティングすると
ソースが丸見えで使えません。パーミッションを設定しても全然ダ
メです。
.htaccessが置けないので、このままで使えると思うのですが・・・

因みに3行の
<?
print ("Hello");
?>
だけを書いたhallo.phpというファイルをあぷしました。
perlのようにヘッダの打ち出しとか要るんでしょうか?
0261phpな名無しさん01/11/23 19:00ID:???
その前にphp4に対応してる?
してなかったら拡張子をphp3にすべし
0262名無しさん@お腹いっぱい。01/11/23 20:41ID:tdhsiUBd
>>260
俺も初心者だから良くしらんけど。
phpの初めの一歩は
<? phpinfo(); ?>
だと思うよ。
0263260 01/11/23 21:35ID:???
>262
チミと一緒にしないでくれ、俺は初心者じゃない!
0264名無しさん@お腹いっぱい。01/11/23 23:02ID:???
>>260
鯖のFAQくまなく見たらい〜と思うよ☆

え〜だるいから嫌なの??
そんじゃね〜
<?php
print ("Hello");
?>
って書いてみたらいいと思うよ☆
これで完璧\(^o^)/
0265260だけど263じゃないんだけど・・・01/11/24 00:13ID:YHMgKrz0
>>261 ありがとう。php3にしてもだめだった。
>>264 使えるとしか書いてない・・・バージョンも不明。
 拡張子をphp3にして、パーミッションも777にして、<?php
 から始めて見ても同じ。

phpってperlと同じように秀丸で作ってs-jisで保存でもいいんだよね?
perlのように超ウルトラ初心者用のサイトとかってないのかな。。。(T-T)
0266名無しさん@お腹いっぱい。01/11/24 00:27ID:???
バージョン不明って・・・phpinfo()で出してみぃな。
パーミッションは触らずに逝け。
ってゆーか、どこの鯖使ってんの?
0267名無しさん@お腹いっぱい。01/11/24 00:53ID:E2NIMZ73
>>265
ちなみに PHP は CGI として使う方法と Apache のモジュールとして使う方法の
2種類あるけど、自分の鯖がどっちの方法なのか知ってるの?

モジュールとして使うならパーミションは関係ないよ
0268260だけど263じゃないんだけど・・・01/11/24 01:01ID:YHMgKrz0
>>266 そもそもソース丸見えの状態にしかならないんだけど(^^;;;
試してみます。
>>267 まるで知りません
0269260だけど263じゃないんだけど・・・01/11/24 01:04ID:YHMgKrz0
やぱしソース丸見えでつ。。。
027026601/11/24 01:06ID:???
でわどこの鯖を使ってるか、教えてたもれ。
使用中もしくは経験豊富な方が、いらっしゃるかもですよ。
0271web shop作りたひ者01/11/24 01:35ID:Zb/Z9YC4
スレ違いかもしれませんが質問です。
cgiを使ったweb shop site作りを助けるソフトで何かいいものがないでしょうか?
web shop editorとshop builderというものが良さそうに思うのですが
これら以外でいいものがあるなら教えていただきたいです。
027226201/11/24 01:38ID:???
チミと一緒にするな、って超初心者のサイト探してんだったら
一緒じゃんかよ。
ってか俺ほんとは初心者じゃないし。企業にソフト納品とかしちゃってるし。
ま、せいぜー頑張って。ってかレッツPHPとか逝けよ。
027326701/11/24 01:40ID:E2NIMZ73
>>268
ソースが丸見えになるなら、Apache のモジュールとしては動いてないと思われ…
拡張子 html のままで解析されるようになってるのかな??
とりあえず html にしてやってみてわ

それでもだめなら CGI として使えってことだろうな。
0274名無しさん@お腹いっぱい。01/11/24 01:57ID:???
>>260
ってーかサーバー管理者にメールか電話で聞け。
ここでうだうだ言ってるよか256倍は早い。
0275 01/11/25 04:00ID:???
http://kiss1.net/
ここにカウンタとBBSを置きたいんですがうまくいきません。
セーフモードって何ですか?
0276名無しさん@お腹いっぱい。 01/11/25 04:38ID:???
セーフモード -> 厨房避け
色んな意味で
0277名無しさん@お腹いっぱい。01/11/25 22:13ID:???
掲示板なんですが、、、
DBがInterBeaseで、DATE型の日付があります。
投稿時刻を投稿の際に記録します。
それで24時間以内の投稿ならばNEWにしたいのですが。
どうすればいいんでしょうか。
自分で考えたのは、
1,投稿時刻をDBから取得します。= $retAryy[n]
2,現在の時刻に24時間足したものを = $nowTime
3,$retArry[n] と $nowTime を比べる

でいいと思うんですが、2の24時間足す動作と、
3,の日付を比べる動作がどうやればいいのか困っています。
どうか御願いします。
0278名無しさん@お腹いっぱい。01/11/25 22:47ID:IKGmxf48
>2,現在の時刻に24時間足したものを = $nowTime
投稿時間に24時間足して,現在の時刻と比較であ?
0279名無しさん@お腹いっぱい。01/11/25 23:02ID:???
>>277
InterBase自体に日付・時刻を演算する機能はなかったかな?
(Oracle,PostgreSQLなんかだとあるんだけどね。)
>>278
冷静なツッコミだな…ソノトオリだが。
0280名無しさん@お腹いっぱい。01/11/25 23:29ID:???
$nowTime=strtotime(date("r")."+1days");
0281名無しさん@お腹いっぱい。01/11/25 23:40ID:???
つーか
E尸
衣毛ウザイ
0282名無しさん@お腹いっぱい。01/11/26 22:41ID:???
>>281
これってひょっとして最近 php-users に出てる長尾のこと?
ちと苦しいんじゃねー?
0283質問しようと思っていた01/11/27 00:35ID:???
gd-2.0.1がPHPでやっと動いた。
疲れた。
0284名無しさん@お腹いっぱい。01/11/27 23:50ID:GaPmql7r
PEARってどうなんですかね。
使ってる方、結構いるのでしょうか?
0285名無しさん@お腹いっぱい。01/11/28 00:18ID:???
>>284
DBは使ってるけど、他はまだ解析中。
(というか、暇がねぇ。。。)
0286名無しさん@お腹いっぱい。01/11/28 00:22ID:???
任意のディレクトリ以下だけ PHP が使えないようにするということは
できないでしょうか?
.htaccess 使ってできればベストですが、httpd.conf の書き換えで
できるようでしたら、それでも構いません。
0287EXCELファイル01/11/28 10:54ID:c3Xf6lEu
何気に検索しているときに
http://ppfh028.cisnet.or.jp/article.php?sid=40
が引っかかり覗いてみたのですが、
PHPからEXCELのファイルを出力できるのでしょうか。
取っ掛かりになるサイトや本があれば教えてください。
028827701/11/28 13:37ID:QhZ6TCnD
掲示板の件で伺ったものですが。
調べたらちょっと自力で値を比べていくしかないみたいなんですが
ちょっとそれもわかんなくなってきました。
現在時刻↓
$now1 // 年
$now2 // 月
$now3 // 日
$now4 // 時
$now5 // 分
$now6 // 秒
投稿時刻↓
$time1 // 年 例:2001
$time2 // 月 例:11
$time3 // 日 例:3
$time4 // 時 例:23
$time5 // 分 例:18
$time6 // 秒 例:56

変数をこのように定義したとします。
「投稿時刻が24時間以内であれば変数$hogeに"new!"を代入する」
という仕組みを作りたいのですが。。。
注意が、分などの値が一桁の場合03分という風に前に0が必ず
付くわけではないです。
028927701/11/28 14:49ID:QhZ6TCnD
perlでは指定した時刻から何秒経っているかという値を返してくれる
関数みたいなものがあるみたいなのですが、
phpではどうなのでしょうか。
良く考えたら上のやり方では年をまたいでいる時
投稿時刻と現在の時刻が24時間以内かどうかを判断するのはかなり
手間がかかりそうですよね。あと閏年も考えると無理そうです。
0290教えて君01/11/28 15:02ID:???
>>289
つーかさ、別に日付として持たなくても
INT 型のフィールドにして unixtime を保存しとけばいーんでないの?
0291antique01/11/28 15:05ID:???
>>289
http://www.php.net/manual/ja/function.mktime.php

でUnixタイムスタンプに直して 24*60*60 以上差が無いか見れ。
0292名無しさん@お腹いっぱい。01/11/28 15:30ID:???
>>287
EXCELっつか*.csvファイルのこと?
ファイルシステム関数fgetcsvを参照されたし。
0293名無しさん@お腹いっぱい。01/11/28 15:37ID:???
HTMLをExcelに読み込めせるのかも。
0294名無しさん@お腹いっぱい。01/11/28 21:41ID:???
>>287
リンク先を見た感じ、こういうことでしょうか?

// ダミーファイル(空のファイルを用意しておく)
$temp_file = "temp.csv";
$output_file = date ("YmdHis", time()) . ".csv";
// CSVに出力したいデータ
$csv_header = "列1,列2,列3
";
$csv_data = "データ1,データ2,データ3
";

// Winで表示するためにSJISに変換
$all_data = mb_convert_encoding ($csv_header . $csv_data, "SJIS");

// 出力先のファイルを作成
@copy ($temp_file, $output_file) or die ("ファイルを作成できません\n");
chmod ($output_file, 0777);

// ファイルを開きデータを書き込む
$fp = @fopen ($output_file, "r+") or die ("ファイルを開けません\n");
fputs ($fp, $all_data) or die ("ファイルにデータを書き込めません\n");
fclose ($fp);

どう?
029528701/11/29 13:00ID:o7Ezdiih
>>292-294
レスありがとうございます。
PHPからEXCELファイルを作成できるのかなと思い書き込んでみました。
試しにcsvファイルを作って出力したところ、うまくいかなかったので
タブ付きでデータを出力したところ、うまくEXCELが立ち上がってくれました。
こんなかんじです

<?php

//出力バッファ準備
ob_start();
ob_end_clean();

//SJISに変換
mb_http_output("SJIS");

//EXCELを立ち上げる為のおまじない?
header("Content-type: application/vnd.ms-excel") ;

//データ
echo "あ い う";
echo "\n";
echo "え お か";
echo "\n";

//バッファ出力
ob_end_flush();

?>

でも、たまにEXCELがエラーを吐き出してとまってしまいます・・
0296名無しさん@お腹いっぱい。01/11/29 18:21ID:Lz1LmgrA
JpGraphって使ってる人いますか?
なんか、うまく動かない・・・
0297名無しさん@お腹いっぱい。01/11/29 18:39ID:AMvwJSR+
flockってどういうファイルロックなの?
って言うかこんな時強いってのがあれば教えてくれさい。
029829401/11/29 19:24ID:???
>>295
うわ、全然違った。すまん。
029929501/11/29 21:11ID:???
>>294
いえ、ヒントをいただけました。
ていうか>>295で忘れていたob_start("mb_output_handler");
を書き加えると文字化けしてしまう・・
0300名無しさん@お腹いっぱい。01/11/30 00:04ID:KqQYZRFH
PHPはまだ始めたばかりの初心者ですが、よろしくお願いします。

【質問】
PHPで画像をアップロードできる掲示板を作りました。
なんとか完成して問題なく動作する状態までは行っています。

で、書き込みが成功した場合は「書き込みは正常に終了しました」
という画面を表示して、掲示板に戻ってくるようにしているのですが、
この時、MAX_FILE_SIZEを越えるファイルを送信した場合は、

"Warning:Max file size exceeded-file[***] not saved"

というエラーメッセージが画面上に出てしまいます。
(画像がアップされないだけで名前や本文は書き込まれる)
これを表示させないようにするにはどうしたら良いでしょうか?

【試してみたこと】
書き込み処理をしているfunctionにerror_reporting(0);
を挿入してみたのですが、消えてくれませんでした。
何か使い方を勘違いしているんでしょうか。
0301名無しさん@お腹いっぱい。01/11/30 08:18ID:???
>>300
error_reportingって最初に宣言するんじゃなかったっけ。
エラー出る命令の前に@つけるとか。
030230001/11/30 10:26ID:d3cxAmiD
>301
回答ありがとうございます。
<?
error_reporting(0);
↑のようにしてみましたがやはりエラーメッセージが出ます。
バージョンなどによるのでしょうか?
0303名無しさん@お腹いっぱい。01/11/30 10:41ID:9071v1Hz
>>290-291
すいません、unixtimeってなんでしょうか。普通の時刻と違うんですか。
0304教えて君01/11/30 10:51ID:???
>>303
man 3 time、かな
030529101/11/30 11:18ID:???
>>303
http://www.php.net/manual/ja/function.mktime.php
|与えられた引数に従って UNIX のタイムスタンプを返します。 このタイムスタンプは、Unix epoch(1970年1月1日)から 指定された時刻までの通算秒を表す長整数です。

折角リンク張ってるんだからちゃんと読んでくれ。
030630001/11/30 12:36ID:KqQYZRFH
>>300、302
追記です。
試しに、
<?php
  error_reporting(0);
//以下処理作業
?>
と先頭で宣言して、別の行のセミコロンを消してみたりしてみたところ、
エラーメッセージが出なくなっていました。
error_reportingが使えないわけではないようなのですが、
やはりMAX_FILE_SIZEへのWarningだけ消すことができません。
error_reportingを宣言する場所を色々変えてみたりもしましたが、
駄目でした。
もしかして、このエラーメッセージは消せない仕様でしょうか?

>>301
エラーメッセージは
<input type=hidden name=MAX_FILE_SIZE value=****>
で引っかかると自動的に出るので、@をつけるところがないのです。
0307名無しさん@お腹いっぱい。01/11/30 12:37ID:9071v1Hz
echo date ("U", mktime (0,0,0,1,1,1970));

これで1970年1月1日からの通算秒が出るっていうわけですよね?
この場合1秒も経っていないので0が返されるはずですが
-32400が返されます。
何故でしょうか。
0308名無しさん@お腹いっぱい。01/11/30 12:46ID:9071v1Hz
echo date ("U", mktime (0,0,0,1,2,1970));

同じように1日経過したとして試したら
54000 と返ってきました。
計算したら15時間経過した状態です。
何かやり方がおかしいのでしょうか。
0309名無しさん@お腹いっぱい。01/11/30 12:54ID:9071v1Hz
すいません、
echo mktime (0,0,0,1,1,1970);
これだけで良かったんでしょうか。
でも結果は同じですね。。
0310名無しさん@お腹いっぱい。01/11/30 12:54ID:???
タイムゾーン

putenv("TZ=GMT");
echo mktime(0,0,0,1,1,1970);

と

putenv("TZ=JST-9");
echo mktime(0,0,0,1,1,1970);

比べてみ。
031130101/11/30 14:04ID:NFAwBonP
>>302
あ、もしかして使ってるのはPHP3?
じゃあ、設定ファイルで
display_errors = Off
かな。
でも、出来るならPHP4にバージョンアップしたほうが良いかと。
(3と4ではかなり違うからねー。)
031230001/11/30 14:15ID:kUV02PYL
>311
はい。PHP3です。
レンタルサーバにアップしていて、そこの仕様がVer3.0.7なんです。
(いい加減4にして欲しいです)
設定ファイルをいじると他のスクリプトもエラーを表示しなくなってしまうんでしょうか?
スクリプトはこれだけではないので、それは避けたいのですが…。

度々スイマセン…
0313名無しさん@お腹いっぱい。01/11/30 14:18ID:???
>Ver3.0.7

思いっきりセキュリティホールがあるぞ・・・。
0314名無しさん@お腹いっぱい。01/11/30 14:20ID:9071v1Hz
あ、グリニッジ標準時てやつでしたか。
putenv("TZ=GMT");
$a = mktime(0,0,0,1,1,1970);  // 任意の時刻からUNIXライムスタンプを取得
$b = time();          // 現在のUNIXタイムスタンプを取得

これで$aと$bを比較して差がどれだけかを判別すればいい訳ですね。
putenv("TZ=GMT"); mktime(); は gmmktime();だけでもいいんですか?
0315名無しさん@お腹いっぱい。01/11/30 14:45ID:???
>>314 いいよ。
0316名無しさん@お腹いっぱい。01/11/30 14:57ID:???
追記
元質問の掲示板でのNew表示は掲示板のログに保存されている時刻がJSTなら

putenv("TZ=JST-9");
$a = mktime(0,0,0,1,1,1970);
$b = time();

の$aと$bの差を調べんとダメだよ。
gmmktime, mktime の返り値はどっちも 1970/01/01 00:00:00 GMT からの秒数。
渡すパラメータ(任意の時刻)がローカルか、GMTかの違いだから。
031730101/11/30 15:00ID:NFAwBonP
>>312
共用鯖だと設定ファイルいじれないんじゃない?
PHP3だとini_setも使えないしなー。
穴があるみたいだからPHP4.0.6にバージョン上げてくれって
メールしてみるか、それが無理なら思い切って移転しましょう。
031830001/11/30 15:19ID:d3cxAmiD
>317
そうでした;
新しく加入したユーザの方はVer3.0.15なんですが…何故か4以降にはあげてくれません。
結局スクリプト内でerror_reportingを使ってもこのエラーメッセージは消せないということでしょうか?望みは薄いですがメールしてみます。

>313
こっちとしても新しいのにして
欲しいんですけどね…
0319名無しさん@お腹いっぱい。01/11/30 16:01ID:???
>>316
何度もすみません。
一応おっしゃる通りやったら期待通りに動作しました。

putenv("TZ=JST-9");
$a = mktime(0,0,0,1,1,1970);
$b = time();

これなんですけど、「putenv("TZ=JST-9");」の部分が無くても
差は変わらない(動作は同じ)なんですがTZの値がデフォルトでJST-9に
なっているという事でしょうか。
投稿時に記録する時刻は日本の中なので普通にdatetime()から
時刻を受け取っています。
あとJST-9これなんですが、日本はグリニッジより9時間早いんですよね?
9時間早くて、-9にしたら標準時と等しくなってしまうので、
TZ=GMTと変わらなくなってしまうのでは?
的外れな事でしたらすいません。わかりやすく教えて下さい。
0320名無しさん@お腹いっぱい。01/12/01 16:23ID:1PAfk5MI
phpcoder ってどんなことできて、どういうふうに便利なんでしょうか。
なんかすごそうに見えるのでダウンロードしたけどよくわかりません。

http://www.phpide.de/index.php4
■ このスレッドは過去ログ倉庫に格納されています