トップページ⇒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/
0554名無しさん@お腹いっぱい。02/01/12 13:16ID:???
>>544
PHP3を使ってるの?
0555 02/01/12 14:00ID:???
555
055653202/01/12 15:24ID:ZdUmVPZP
a.php でデータ入力して問題なければ画面を消去して「ありがとうございました」の表示など。
問題があればa.phpで再入力ってのをしたいんです。

form で入力されないとb.phpに制御うつすなんてできないのでしょうか?
0557教えて君02/01/12 15:58ID:???
>>556

--- a.php ---
if (データに問題なし) {
画面を消去して「ありがとうございました」の表示();
} else {
フォーム();
}
-----------

ってことか?
055853202/01/12 19:57ID:HpUY5FSi
>>556
そんな感じです。
java使っちゃうのが楽なんでしょうけど、phpだけで出来るならそうしたいものでして。
0559名無しさん@お腹いっぱい。02/01/12 20:43ID:UPJM6Y3S
>>556
しかし、そのやりかただが
どの時点でユーザーの入力が終了したと判定するの?
0560名無しさん@お腹いっぱい。02/01/12 21:16ID:R/qNlu6y
phpインストール時
./configureし終わると、WARNING(mySQL....)が出るんだけど
これって必ず表示されるのかな?
0561名無しさん@お腹いっぱい。02/01/12 21:26ID:Hl7U17Vh
>560
mySQL入ってないからでは?
PHP4、標準でmySQL使用になってたはず。
ほっといても問題ないと思うけど
気になるならconfigureのオプション指定して回避すべし。
056253202/01/12 21:28ID:HpUY5FSi
FORMの入力時に
<form action="a.php" method="post" >
で自分に飛んでます。
一番頭でチェックして問題なければ「ありがとう」画面、
おかしければ再入力、未入力なら初期化して入力って感じで
一つのhtml内でやるしかないのでしょうか?
0563名無しさん@お腹いっぱい。02/01/12 21:37ID:R/qNlu6y
php4インストール時
In file included from pgsql.c:29:
php_pgsql.h:32: postgres.h: No such file or directory
make[3]: *** [pgsql.lo] Error 1
make[3]: Leaving directory `/usr/local/src/php-4.0.4pl1/ext/pgsql'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/usr/local/src/php-4.0.4pl1/ext/pgsql'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/usr/local/src/php-4.0.4pl1/ext'
make: *** [all-recursive] Error 1
こんなエラーがでるんだけど・・どうやって解消するの?
0564 02/01/12 22:29ID:???
>>563
postgreSQLいれれ。
0565名無しさん@お腹いっぱい。@56302/01/12 22:58ID:R/qNlu6y
>>564
PostgreSQLは、もう入ってるんです。
ちゃんとPostgreSQLも動きます。
0566名無しさん@Emacs02/01/12 23:06ID:???
configureやりなおし〜。まずは--helpしてね。
ヘッダのありかをちゃんと教えてあげましょー。
0567名無しさん@お腹いっぱい。02/01/12 23:26ID:9xVpue2a
JavaScriptでエンコード(encode()でISO-Laten1に)した文字列を
PHPサイドでデコードする方法ってありますか?
0568名無しさん@お腹いっぱい。@56302/01/12 23:30ID:R/qNlu6y
./configure --with-pgsql --with-apxs=/usr/local/apache/bin/apxs --enable-track-vars --enable-versioning

makeしたら
make[1]: *** [libphp4.la] Error 1
make[1]: Leaving directory `/usr/local/src/php-4.0.4pl1'
make: *** [all-recursive] Error 1
と表示されました。pgsqlのエラーについては解消出来ました。
0569名無しさん@お腹いっぱい。02/01/13 00:13ID:LIlOMwUZ
>562
postするなら
header("Location: b.php");
で転送すればいいかと
0570名無しさん@お腹いっぱい。02/01/13 01:39ID:???
>>567
それって、cookie関係?
0571名無しさん@お腹いっぱい。02/01/13 05:46ID:Lisx+i4y
PHPで書かれたリストのクラスが必要なんですが、どこかにないでしょうか?
Queueとかでもいいんですが、結局自分で書いたほうが早いのかな・・・
例えば、配列の中のある要素を削除したりしたいのですが、そういう関数がないようです。
array_search で探した要素を削除できたり。
057256702/01/13 09:57ID:NG2XShVr
いや、普通のフォームのデータをクエリに投げたいんです。
フォームに書き込まれた内容→JavaScriptでエンコード→クエリで投げる→PHP側でデコード
のように。

get方式で投げると全要素がクエリに続いてしまうのでpostを使ってます。
0573名無しさん@お腹いっぱい。02/01/13 12:47ID:???
現在ribbon.toからスペースを借りてるんですが、
ここはDBを使えないのでユーザー認証に使うIDやパスワードの保存を
どうすればいいのか悩んでます。
大人しくDB使える所探した方がいいんでしょうか・・・。

>541
一昨日徹夜してやっと作ったのを・・・すげぇ。
0574名無しさん@お腹いっぱい。02/01/13 13:02ID:???
>>573
テキスト管理でファイルはpublic_htmlの外に置くっていうんじゃだめかな?
ユーザーの数がそんな多くなければ大丈夫な気がするんだけど・・・
ちなみにセキュリティとかほとんど知らないんでやばかったら誰か
つっこんでください。
0575名無しさん@お腹いっぱい。02/01/13 14:27ID:???
>>574
早速小一時間やってみました・・・が、
どうもribbonだとその方法ができない臭いです。
っても自分がアフォなだけかもしれないので後小一時間やってみます。
0576名無しさん@お腹いっぱい。02/01/13 17:02ID:H/VBdPhi
>>575
できないってことはpublicの外に出れないってこと?
じゃあ.htaccess使ってデータフォルダを見れないようにするとか。
.htaccessも使えなかったらどうすればいいかわからん。
0577名無しさん@お腹いっぱい。02/01/13 18:04ID:???
$dynamic_xxxという変数に対して(xxxは動的に変わる)、

for($i = 0; i < 1000; $i++)
$tmp = $dynamic_($i)

こんな感じで$tmpに結果を入れる方法ってありますか?
$dynamic_xxxは(xxx = 0〜999)オブジェクト型なんですが、

$$dynVal = "dynamic_" . $i
print $$dynVal

で結果を出そうとしても上手く表示できませんでした。
0578親切な人02/01/13 18:48ID:???

1通のメールを読むだけで、毎月 1250 円
貰えます!!!

下記を観て下さい↓
http://www.guruguru.net/auction/item.php3?itemid=21703

■経験談■
私も、この広報文を観て、すぐ加入しました。
そして訪問するサイトに、このメモを 10 箇所位
残しました。
先月、家に USA から小切手が送金されました。

これを、地元の富士銀行で円に変えたみたら、
驚くことに、83500 円になりました。

それで、このサイトに入って、私の会員数を
確認してみたら、私の直接会員が 23 人で、
その会員が集めた会員が、65 人だったん
です。

まさか、こんなに早く会員が増えるとは思いも
しませんでした。(ちゃんと確認できるところが
安心します。)

■会員募集方法■
http://www.mintmail.com/?m=1940638
後の ID(番号)部分をミントメールより付与された
自分の ID に変換して広報すれば、本人が自動
的に抽選されます。
0579名無しさん@Emacs02/01/13 19:45ID:???
>>577
$dynVal = "dynamic_".$i;
print $$dynVal;

だけど、 $dynamic[xxx] のように配列を使って
書き直せないか検討するべき。
0580名無しさん@お腹いっぱい。02/01/14 01:53ID:???
>>575
ログファイルの拡張子を.phpにして
<?
$dummy = <<<DUMMY
ここにデータをCSVで記述
DUMMY;
header("Location: miremasennyo.html");
exit();
?>
な感じにしてみれば?

あとはfopenで読み込んで処理
0581名無しさん@お腹いっぱい。02/01/14 01:54ID:???
>>576
ウィ、その方法で行くしかなさそうです。
できなかったらもうぶち切れですよ。
ご意見どうもありがとうございました。
0582名無しさん@お腹いっぱい。02/01/14 11:57ID:WEq2oi7H
PHPはそのままで、apache だけをバージョンアップさせたい
のですが、apache のみコンパイル・インストールで大丈夫
でしょうか?PHPも再コンパイルとか必要ですか?
0583ダッチワイフ ◆exvx.LWc 02/01/14 16:33ID:???
<HTML>
<BODY>
<?PHP
$fp = fopen("log.txt","r+");
fwrite($fp,$msg."\n");
$bbs = fgets($fp,4000);
print("$bbs");
fclose($fp);
?>
</BODY>
</HTML>

これ実行すると文字化けするんですが、、どうすればいいですか?
0584 02/01/14 16:53ID:???
>>583
1)祈る
2)ハンドル名を変えてみる
3)祈る
0585名無しさん@お腹いっぱい。02/01/14 16:54ID:???
>>583
include("./jcode.phps");
0586ダッチワイフ ◆exvx.LWc 02/01/14 17:00ID:yYk5kUJl
>>585
どこらへんに追加すればいいですか?
できればソース修正お願いします。
0587apache02/01/14 17:18ID:???
文字コードの勉強を1からしなおした方がいんじゃないの?
藁藁
0588apache02/01/14 17:19ID:???
ちなみに、今は、php4の時代だから
include("./jcode.php4");
だよ〜ん 藁
0589名無しさん@お腹いっぱい。02/01/14 17:23ID:j2J0+mB5
>>97
よんで
0590ダッチワイフ ◆exvx.LWc 02/01/14 17:30ID:yYk5kUJl
>>587
は?ここはわからないから教えて貰うんだろ?
センスねー名前とまだ藁使ってるキショぃ奴に教えて貰いたくねーよ。
何が「だよ〜ん 藁」じゃ、お前は答えなくていいよ。
>>589
ありがと、見落としてた
0591名無しさん@お腹いっぱい。 02/01/14 17:37ID:???
大藁藁
0592login:Penguin02/01/14 17:47ID:???
人によって態度変えるのって育ち悪そうでカコワルイね
0593名無しさん@お腹いっぱい。02/01/14 17:55ID:nKIOxWKl
>>590
ぼく、他には何が知りたいの?
0594あぼーんNGNG
あぼーん
0595名無しさん@お腹いっぱい。02/01/14 20:26ID:???
>>590
×:わからないから教えてもらう
○:調べてわからなかったことを教えてもらう
かと。

ついでに
×:見落としてた
○:調べる気がなかった
では?(笑)

PHPはphp.netのマニュアルも充実してるし、
決して良くない環境ではないと思うのでがんばって下さい。
0596名無しさん@お腹いっぱい。02/01/14 21:01ID:???
>582
どんな環境でやろうとしてるのかわからないが・・・。
ApacheとPHPのインストール順序考えればわかるはず。
入れ直さないとカーネルエラー連発すると思われ。
0597 02/01/14 23:17ID:fnjYGiCI
ホームページのトップに「現在チャットで●●人がトーク中」みたいなのを
つけたいのですが、そういうプログラム紹介してるページありますか?

PHP、というよりプログラム関係はまったくの素人なのでどなたかアドバイス
お願いします。m(_ _)m
0598名無しさん@お腹いっぱい。 02/01/14 23:52ID:???
>>597  スレ違いじゃヴォケ!!
・・と一発かましといてと。
普通の在室管理するタイプ(ちゃっと中にメンバーを確認出来る)のなら
必ず、それを記録しておくファイル(大抵は1つのテキスト)を持ってるから
それを読めば良いだけだよ。
機能豊富なチャットなら付いてると思うし、配布してる所で要望出せば
対応してくれるかも知れない(割と簡単な部類だと思うので)
0599名無しさん@お腹いっぱい。02/01/15 01:10ID:???
>>596
ありがとうございます。
じゃ、両方ともやります。
060051702/01/15 10:50ID:mJdfZzdE
>>562 自分ならそうすると思う。
0601名無しさん@お腹いっぱい。02/01/15 14:49ID:DcvabF4v
fopen($filename, 'r+')とかでファイルを開いた場合、
ファイルのある箇所のみを上書きすると、以前より値が小さい場合は
以前の値が残ってしまいますよね。
これを強制的に消す方法ってありますか?
0602名無しさん@お腹いっぱい。02/01/15 14:54ID:???
値ってのが良く分からんけど

http://www.php.net/manual/ja/function.ftruncate.php

で良いんじゃない?
060352302/01/15 14:56ID:???
ftruncate関数を使うらしい。>ファイルサイズ切り詰め
詳細な使い方はマニュアル見てね。
詳しい方はフォローよろしこ。(詳しくないなら書くなとか突っ込まんといて)
0604名無しさん@お腹いっぱい。02/01/15 14:57ID:???
>>602-603 ケコーン
060560102/01/15 15:06ID:DcvabF4v
>>602-603
値ってのは、iniファイルで設定した値のことです。
iniファイル内に「$hoge = 1;」みたいな値が存在した場合、
それをPHP側で書き換えるクラスを作りました。

言葉だとどうも説明しにくいのでコピペ。

function rewriteIni($iniKey, $newStr){
$fp = fopen($this->_iniPath, 'r+');

$this->lock($fp);
while(!feof($fp)){
$offset = ftell($fp);

if(preg_match("/^[$]" . $iniKey . ".*/", $strLine = fgets($fp, 32))){
// ftruncate($fp, $offset);
fseek($fp, $offset, SEEK_SET);
fputs($fp, '$' . $iniKey . " = " . $newStr);
}
}
$this->unlock($fp);

fclose($fp);
}

ftruncate()使うと、iniファイルの中間らへんで値を書き換えた場合、
その後のデータが全部消えてしまうんです(当たり前だけど)。
0606名無しさん@お腹いっぱい。02/01/15 17:45ID:t9teO+Xe
$PHP_SELF について質問です。

ABC.phpのなかで、XYZ.phpに定義されているXYZ関数を呼び出したとします。
xyz関数は、<? ehco $PHP_SELF; ?>を実行します。
さて、この時$PHP_SELFはABC.phpを指すのでしょうか?それともXYZ.phpでしょうか?
0607名無しさん@お腹いっぱい。02/01/15 17:46ID:???
んなモン自分で試せや。
060860602/01/15 20:02ID:t9teO+Xe
>>607
いやー、それがですね、PHP DBG Debugger で実行してみると、
$PHP_SELFが空白しかリターンしないんですよ。
それで他の人たちに聞きたいのですが。
0609名無しさん@お腹いっぱい。02/01/15 20:15ID:???
>>608
デバッガー使わなきゃいいじゃん
0610 02/01/15 20:21ID:???
>>609
PHP使わなきゃいいじゃん
0611名無しさん@お腹いっぱい。02/01/15 20:23ID:???
>>610
608に言えやボケ。
0612名無しさん@お腹いっぱい。02/01/15 20:24ID:???
. ∧   ∧
( ´ ・∀・`) へー
061360602/01/15 20:27ID:t9teO+Xe
次のことを試しました。
ABC.phpに<? echo $PHP_SELF; ?> と書いて、実行すると
このスクリプトのパスが表示されます。
しかし、上で述べたように別のファイルに定義された関数で$PHP_SELF
を表示させると空白しか表示されません。
これは、なぜでしょうか?php.ini 等で修正できるのでしょうか?
0614ボケ02/01/15 20:33ID:???
>>611
ああそうそう、>>608ね。うん。
0615名無しさん@お腹いっぱい。02/01/15 20:34ID:???
. ∧   ∧
( ´ ・∀・`) へー
0616名無しさん@お腹いっぱい。02/01/15 20:35ID:???
>>611
俺のかわりにありがとう
061760602/01/15 20:38ID:t9teO+Xe
早く俺の質問に答えてよ
0618ボケ02/01/15 20:39ID:???
>>617
PHP.orgのMLで聞いて、そういいなよ。
>早く俺の質問に答えてよ

ああ、英語読めないクンだから無理か。
0619名無しさん@お腹いっぱい。02/01/15 20:40ID:???
. ∧   ∧
( ´ ・∀・`) へー
062060602/01/15 20:57ID:t9teO+Xe
>>618
英語読めるよ。アメリカに5年住んでるから。
英語読める読めないを問題にしてるなんて、程度低いね。

妄想オタクの集まる所なんて、もう来ないよ。じゃ。
0621名無しさん@お腹いっぱい。02/01/15 21:07ID:bVf9JhKA
すいません、php2日目な厨房ですが、
$hiduke = '2005-04-05';
というように、$hidukeにyyyy-mm-ddの形式で日付が格納されているとき、
この日付が現在よりも後かそうでないかを判断するにはどうすればいいのでしょう?
0622名無しさん@お腹いっぱい。02/01/15 21:07ID:???
. ∧   ∧
( ´ ・∀・`) へー
0623名無しさん@お腹いっぱい。02/01/15 21:45ID:???
>620
>の集まる
一人の振る舞いを複数形に増幅するのが君の反撃? これで終わり?
まあいいけどさ。
0624名無しさん@お腹いっぱい。02/01/15 21:57ID:???
>>621
UNIXタイムスタンプか何かに変えちゃって
現在の(UNIXタイムスタンプ)と比較すればどうだろ。
そのあたりの関数はこの辺かな。
ttp://jp2.php.net/manual/ja/ref.datetime.php
あと、海外に鯖があったりすると時差に引っかかったりするのでご注意。
0625名無しさん@お腹いっぱい。02/01/15 22:22ID:???
>>623 606は真性だから相手にすんな。
0626名無しさん@お腹いっぱい。02/01/15 22:51ID:???
PHP-MLの文字コードの問題は結局はどういう結論なんだろうか・・・
日本語使うなというオチか?
0627名無しさん@お腹いっぱい。02/01/15 23:27ID:???
>>626
長尾うざいよ、ってゆーオチじゃねーの?

>スクリプト内で、SJIS が使えない状態は、非常に、不便です。
>SJIS で大量につくったページがある状態での移行はきわめて不便です。
>私は、スクリプトエンコードを解釈するオプションができるまで、
>PHP4 への移行は、待ちます。

どうぞご勝手に、って感じ?パッチ作ってやってる側の立場にもなれよな。
何ならてめーにふってやってもいいんだぜ?
0628名無しさん@お腹いっぱい。02/01/16 00:49ID:???
>>627

> どうぞご勝手に、って感じ?パッチ作ってやってる側の立場にもなれよな。
> 何ならてめーにふってやってもいいんだぜ?

そんな誤解をまねくような発言をされると困るんですが。
0629名無しさん@お腹いっぱい。02/01/16 00:53ID:???
. ∧   ∧
( ´ ・∀・`) へー
063062602/01/16 00:59ID:???
自分で振っておいてなんですが
怖い展開になりそうな予感

つまりは、EUC > EUC でいいじゃん。
不満ならUTF-8でも使えばいいじゃん。

なんて言うと、
「話を見てない厨房は、
 今すぐLANケーブルを口から入れて尻から出せ」
と言われてしまうのでしょうか?
0631名無しさん@お腹いっぱい。02/01/16 01:17ID:???
私のサイトではindex.htmlを書き出すことが出来る掲示板(PerlのCGI)を
使用しています。この掲示板はindex.htmlを書き出す、書き出さない、を設定で
選択出来るものです。
今回、referrerで自分のサイト内から来たのか、他のサイトから来たのか
チェックして他のサイトから来た場合はメッセージを表示させようと
思ったのですが、index.htmlをindex.phpにして書き出し、そこで
チェックするのと、index.htmlを廃止して全てCGIで行うのとでは、
どちらが負荷が低いでしょうか?
0632名無しさん@お腹いっぱい。02/01/16 01:22ID:???
そもそも日本語unixの世界は、デフォルトで、日本語ユーザの言語コードをS-JISにするべきだと思うね。
0633名無しさん@お腹いっぱい。02/01/16 01:37ID:???
. ∧   ∧
( ´ ・∀・`) へー
0634名無しさん@お腹いっぱい。02/01/16 01:43ID:???
>>631
index.phpにして、referrerチェックするだけのコードを
挿入した方が、負荷は低いんじゃないの。
0635名無しさん@お腹いっぱい。02/01/16 09:54ID:QldZQ7At
>>606
global $PHP_SELF;
をXYZ.phpに書いとくとどうよ? ABC.phpが返らない?
0636名無しさん@お腹いっぱい。02/01/16 10:01ID:0aSVB78M
>>635
うん、そう。global を置くといいんだよね。
0637名無しさん@お腹いっぱい。02/01/16 12:04ID:d4Rc5uNo
PostgreSQLにLargeObjectで登録してある画像をphpで表示するCGIを作っています。
iモード向けなのでGIFで出力するのですが、DBにはJpegで保存してあります。
機種によって色数とサイズを変更する必要があるのでImageMagickのconvertコマンドを呼び出して変換しているのですが、ファイルサイズが白黒で96*80の割に4kぐらいになってしまい、古い機種では読み込めません。
convertでは無理でしょうか?
0638名無しさん@お腹いっぱい。02/01/16 13:31ID:???
>>637
イタチ害
0639名無しさん@お腹いっぱい。02/01/16 17:20ID:INo6dhu/
>638
どこが?
0640名無しさん@お腹いっぱい。02/01/16 17:36ID:???
>>637
無責任モードですが
JPEG(DB) → GIFの前に
JPEG(DB) → JPEG(temp) → GIF
として画質を落としたJPEGを作ってGIFにしたらどうなりますかねぇ。

これって意味無いんですか?
識者の方または637さんの報告いただければ幸い。
0641名無しさん@お腹いっぱい。02/01/16 17:55ID:KcWg2TMr
ばーか、ばーーか、ばーーーか!!!
064263702/01/16 18:44ID:d4Rc5uNo
>>640
返答ありがとうございます。
それも試しましたが同じでした。
どうやらconvertのgif圧縮アルゴリズムはライセンスの問題で簡易版になっているようです。
他に方法があればよいのですが・・・。
0643名無しさん@お腹いっぱい。02/01/16 20:08ID:???
>>642
あう。ごめんなさい。そうでした…
このあたりで言われていたんだった…
ttp://ns1.php.gr.jp/pipermail/php-users/2001-October/002683.html

なので、上記とかを参考にすると
ImageMagickをconfigureするときに,--enable-lzwオプションを付けることで、
lzwが使えるようになります。
独り言ですけど。
(なのでライセンス的な部分は聞かんといて)

今更ImageMagickのconfigureからという方法しかわからなくて
申し訳ないっす。
0644名無しさん@お腹いっぱい。02/01/16 22:06ID:kt5qin0i
PHP3とOracle8iでつくっているサイトがあるのですが、
あるテーブルのデータ(単に、select * from あるテーブル した状態だけのもの)を、
Excelの表としてユーザが表示できるようにしたいと思っています。
(ユーザは、ある部署の人たちなので、限られたPCで実現できればいい)

この場合、どうする方法があるのでしょうか?

自分としては、

------------------------------------------------------------
 ・(手順1)PHPでCSVで単純にデータをはき出すページをつくる。
 ・(手順2)エクセルファイルにVBAで
  「IEで上記のURLを開いて表示されたCSVを読み込んでそれをエクセルに貼り付ける」
  というマクロをしこんでおく
 ・(手順3)そのエクセルファイルを配布する。
------------------------------------------------------------
という方法という方法しか思いつかないのですが・・・

あるいは、PHP4みたいにCOMドメインが使えなくても、
PHPから直接Excelファイルをはき出す方法はあるのでしょうか?
064564402/01/16 22:07ID:???
もとい、誤:COMドメイン -> 正:COMアドイン
0646名無しさん@お腹いっぱい。02/01/16 23:13ID:???
>>644
ttp://ns1.php.gr.jp/pipermail/php-users/2001-December/004506.html
(CSV ファイルDL時にIE5.5が落ちる という物騒なネタですが)
から始まるスレッドで
---------------------------------------------------------------------
$filename = "data.csv";
header("Content-type: application/ms-excel; name=".$filename);
header("Content-Disposition: inline; filename=".$filename);
// 以降、カンマ区切りのデータ
---------------------------------------------------------------------
こんな感じでやっていますが、これじゃダメですか?

あと、ExcelもCSVは扱えますけど、
やっぱりエクセルファイルの形式にしなきゃだめすか?

直接Excelファイルを吐き出すのは難しいんじゃないですかねぇ。
0647(・ι・)02/01/17 01:59ID:TyM4Yzgh

PHPって普通のlogファイルやdatファイルを
外部ファイルとして読み込めるんでしょうか?

BBSのlogファイルに吐き出されたデータを
PHP上の配列させたくて色々自分なりにやってみたけど
全然ダメっす!!わかんね〜〜〜〜〜!!

cgiで云う、、、

open(IN,"$logfile") || &error("Open Error : $logfile");
while (<IN>) {
($num,$date,$name,$email,$sub,$com,$url,$host,$pwd) = split(/<>/);

こういった処理って一体どないすれば良いんだ〜〜〜????
0648教えて君02/01/17 02:04ID:???
>>647
マニュアルぐらい読みやがってください

http://www.php.net/manual/ja/ref.filesystem.php
0649名無しさん@お腹いっぱい。02/01/17 02:11ID:???
>>647
http://jp2.php.net/manual/ja/ref.filesystem.php
このあたり(fopen())でファイルを読み込んで…ですかね。

あとは
http://jp2.php.net/manual/ja/ref.strings.php
http://jp2.php.net/manual/ja/function.split.php
で文字列をいじる、と。

あとこのスレの575-580あたりも参考になりませんか?

CGI分からないのではずしてたら申し訳ない。
0650(・ι・)02/01/17 05:14ID:TyM4Yzgh
>>648
マニュアル、読みやがってるんですが
殺伐とした文字の羅列が「女子供はすっこんでろ!」
って風に感じてきて、、、。

女でも、子供でもないのですが、、、、。

>>649
色々見て回って fopen fget feofやらに
ビシバシとアヤしさは感じているのですが、、、。
も一度気合入れて、その辺り、読んでみます


コレをクリアしないとPHPにくじけてしまいそうだ、、、。
0651名無しさん@お腹いっぱい。02/01/17 06:45ID:???
>>647
個人的にはPerlの方が訳分からん。
fopenとかの方が分かりやすい。

たまにfread(buf, size, 1, fp);とかやるが(藁
0652_02/01/17 08:05ID:???
正直、fileがいちばんperlでやってた時と
おなじ感じでしっくり来る。

$hairetu = file($file);
for($i = 0;$i < count($hairetu);$i++){
 list($num,$date,$name,$email,$sub,$com,$url,$host,$pwd) = explode('<>', $hairetu[$i]);
/*
「まんこ」より「オマンコ」の方が卑猥だ
*/
}
0653名無しさん@お腹いっぱい。02/01/17 09:21ID:???
open DAT, "./data.dat";
@data = <DAT>;
close (DAT);

と同じだよね?データ量多くなるとメモリ食いすぎ・・・。
0654名無しさん@お腹いっぱい。02/01/17 12:33ID:???
>>652をwhile使う場合は、どう書くの?
■ このスレッドは過去ログ倉庫に格納されています