【PHP】質問スレッド Part10

このエントリーをはてなブックマークに追加
1nobodyさん
20日間スレがたっていなくて、放置されていたので再び立ててみます。
初心者の方は、
■【PHP】初心者コーナー 4 Released
http://pc2.2ch.net/test/read.cgi/php/1062054002/へどうぞ

■本家
 http://www.php.net/

■日本 PHP ユーザ会
 http://www.php.gr.jp/

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

■PEAR マニュアル
 http://pear.php.net/manual/ja/

過去スレ, 関連スレ及び注意事項等は、 >>2-5ぐらい
2nobodyさん:03/09/21 09:28 ID:???
3nobodyさん:03/09/21 09:29 ID:???
関連スレ

■【PHP】初心者コーナー 4 Released
http://pc2.2ch.net/test/read.cgi/php/1062054002/

■ PHP + MySQL
 http://pc2.2ch.net/test/read.cgi/php/983250751/

■ PHP + PostgreSQL
 http://pc2.2ch.net/test/read.cgi/php/983128806/

  ☆  P  H  P  5  ☆  
http://pc2.2ch.net/test/read.cgi/php/1056969979/

Pear
http://pc2.2ch.net/test/read.cgi/php/985665522/

【PHP】Smarty【Template】
http://pc2.2ch.net/test/read.cgi/php/1047225437/

■PHP関連の書籍(但しPHP出版系お断り)
http://pc2.2ch.net/test/read.cgi/php/985315574/

■ PHP アップグレード報告スレッド
 http://pc2.2ch.net/test/read.cgi/php/987259309/
4nobodyさん:03/09/21 09:29 ID:???
とりあえず、マニュアルが読める、経験がそれなりにある人の質問はこちらで、ということで。
5nobodyさん:03/09/21 09:30 ID:/0bAeDHz
テンプレ終わりかな?
>>1
6nobodyさん:03/09/21 11:18 ID:???
なぜ20日間スレがたたなくて、放置されていたのか考えない>>1
7nobodyさん:03/09/21 13:52 ID:???
>>6
必要ないからって言いたいのかな?
でも初心者スレだけですませると、質問の幅が広くてうざったくないか?
8nobodyさん:03/09/21 15:45 ID:???
>7
必要なくないけど、せめて表題で差別化はからないと
結局初心者スレが2重化されるだけつう話が、前スレの最後の方にあったよなぁ
9nobodyさん:03/09/21 22:47 ID:PXFZG8n1
あるクラスのなかでXMLを処理したいと考えています。そこで、
クラスのあるメソッドの中で

xml_set_element_handler($xml_parser, "start", "end");

と、そのクラス中にある関数名(startとend)を設定しました。
しかし、(当然ながら)ありませんといわれてしまいます。
クラス中のハンドラ関数名を指定したいときは、どのように
ハンドラ名を設定すればよろしいのでしょうか?
10nobodyさん:03/09/21 23:39 ID:???
>>9
こんな感じ。
xml_set_element_handler($xml_parser, array($this, "start"), array($this, "end"));
他のコールバック関数名を引数に取る関数でも同様。
119:03/09/21 23:42 ID:PXFZG8n1
9
129:03/09/21 23:44 ID:???
>>10
ありがとうございます!
動きました!

>>11
書き込みミスする椰子は市ね>俺
13nobodyさん:03/09/22 02:16 ID:???
>>8
なるほど、それはすまなかった…
次スレから何か変えることにしよう
たとえば
・上級者PHP質問スレ
・中級以上のPHP関係の質問はこちら
・マニュアル読める人限定PHP質問スレ
このあたりがいいかな
ネーミングセンスがないので、誰かもっといいのがあったらお願いします。
14nobodyさん:03/09/22 02:21 ID:???
質問スレは1つでいいんじゃない?
PHPがちゃんと書ける人がじっくり語り合うスレにするとか。
15nobodyさん:03/09/22 03:09 ID:???
PHPマニュアル愛好会スレ
16 :03/09/23 09:58 ID:???
20日経過してから立った意味に考えが及んでいない>6
17nobodyさん:03/09/24 12:57 ID:???
オブジェクト指向限定スレ
18nobodyさん:03/09/24 16:02 ID:???
いまからここはSmalltalkスレに変わりますた
19nobodyさん:03/09/24 23:16 ID:???
めんどくせえからPHP研究所スレにするべ
20nobodyさん:03/09/30 18:52 ID:???
いつの間に出来たんだ。 復活おめ。
21nobodyさん:03/10/03 03:13 ID:???
基本的なことだと思うんですが、GETのパラメータってどうやってみればいいんですか?
22nobodyさん:03/10/03 09:38 ID:MvLOL1a8
マジデシンデ
23nobodyさん:03/10/03 09:41 ID:???
$_GET['hensu']
24nobodyさん:03/10/03 11:36 ID:???
突然自分のPHPのページが文字化けするようになりました。
HTMLlintで調べたところ、HTTPレスポンスヘッダがSJISで、
<META では、EUCにしています。
ページは、EUCです。

smartyを利用しているのですが、どのようにHTTPレスポンスヘッダを
指定すればいいのでしょうか?
いきなり、header(... でOKなのでしょうか?
25nobodyさん:03/10/03 15:14 ID:???
>24
どういきなりなのか知らんが
header()は一番最初に送らなきゃな。
文字化けが直らなければいきなり使ってないってことになる。
26nobodyさん:03/10/03 15:29 ID:???
突然って、、何かあったんじゃないの?
27nobodyさん:03/10/03 15:36 ID:???
そんなことないです。色々いじっていたら突然文字化けするようになったんです
28nobodyさん:03/10/03 16:42 ID:???
色々いじっていたからだろ
29nobodyさん:03/10/03 17:50 ID:???
ワラた
30nobodyさん:03/10/03 17:51 ID:???
どうせ別の文字コードで保存してるとか言うオチでないの
31nobodyさん:03/10/03 18:46 ID:???
http://php.s3.to/counter/#dcount
このカウンタを使いたいんですが
index.phpとしないとカウンターが動作しません
index.htmlで動作させることは不可能ですか?
32nobodyさん:03/10/03 19:12 ID:???

 初 心 者 ス レ 逝 け
33nobodyさん:03/10/04 00:10 ID:???
>31
そのスクリプトの動作環境においてhtmlの拡張子を
phpスクリプトとして動作するように設定できるなら可能。
実際の可否、設定の詳細は、貴方の環境をセットアップしてる
人・業者に問い合わせてください。

そこのサイトのドキュメントとかにありそうだけど、
ちゃんと"探して"読んでるか?
34nobodyさん:03/10/04 01:04 ID:FGElvgLc
XMLどうよ。PEARのXMLも全然使えないんだけど、みんなどうしてる?とりあえずRSSを
編集できるようなスクリプトを書きたいんだが。
35nobodyさん:03/10/04 01:42 ID:???
>>33
なるほど、そういうことなんですか。
BBSの過去ログ見てたら他のサーバーでの設定があったんですけど
そこでは.phpにしてくださいって書いてあったんで・・・・

鯖の設定次第なんですね、ありがとうございます。
36nobodyさん:03/10/04 14:34 ID:???
a.txtから、
最初の\tまでのデータを読み取って変数に入れたいのですが、
どうやれば良いでしょうか?
explodeでやってみたのですがファイル全体を読み取って配列へ格納してしまう為、
効率が悪い気がします。
3736:03/10/04 15:23 ID:???
a.txtは\tで名前・本文などが区切られたファイルで、
その中から一番最初の名前だけを読み出したいのです。
\tまでを読み取るか、もしくは指定文字数分読み取れれば良いのですが・・
どなたかご教授よろしくお願いします。
38nobodyさん:03/10/04 15:57 ID:???
PHPで携帯電話向けの、簡単なじゃんけんゲームを作成しています。

しかし、じゃんけんで負けても「戻る」機能で戻られて、
勝つまで続けられてしまいます。

良い対策案、参考になるサイトをご存じの方いましたら教えてください。
39nobodyさん:03/10/04 18:24 ID:TyFP1bky
MSSQLと接続したいのですが
mssql_connect("hostname","user","pass");
としても
Fatal error: Call to undefined function
というエラーがでて関数が認識されないみたいなんです。
PHP.iniのextension=php_mssql.dll 行を有効にしたんですが
他にも何かしないといけないのでしょうか?
40nobodyさん:03/10/04 18:48 ID:JtzlZ1mm
eregiで半角英数字のみを有効にしたフォームを作ってるんですが、
これに、文字制限ってかけられますか?
strlenをしても今一制限されてなくて、3文字から8文字まで、と指定したいのです。

if (!eregi("^[_a-z0-9\-]+(\[_a-z0-9\-]+)*$", $form2)) {
error("エラーです。");
}

こんな感じにしてるのですが、どうすればいいでしょうか?
41sage:03/10/04 19:00 ID:y4qIRLLV
>>40
if(! preg_match("/^\w{3,8}$/",$form2) ) {
error("エラーです。");
}
42nobodyさん:03/10/04 19:01 ID:???
>>39
ああ、君のOSはWindowsじゃないからその設定は関係ないよ

>>40
strlenは長さを返すだけだからねぇ。
正規表現 {m,n} も覚えておいて損は無いんじゃない?
43nobodyさん:03/10/04 19:06 ID:???
>>36
if( preg_match("/^([^\t])/",$str,$match) ) {
$result = $match[1];
}
csv扱うやつとかでもいいかもね
4439:03/10/04 20:29 ID:TyFP1bky
>>42
なぜWindowsじゃないとわかるんでしょうか?

それとその場合の対処方法をよろしくお願いします。
45nobodyさん:03/10/04 20:56 ID:???
hoge.txtの最初から10文字を読み出して表示しようとしたのですが、

<?php
$data = file("hoge.txt");
echo substr($data,0,10);
?>

こうしてみましたが、エラーが出てしまいます。
どうやれば良いのでしょうか。ご教授よろしくお願いします。
46nobodyさん:03/10/04 20:57 ID:???
>>44
拡張子.dllだから多分非Win。
dllの設置場所またはiniの設定の不備。
47nobodyさん:03/10/04 20:59 ID:???
>>45
「エラーが出る」って、そのエラーのコピペぐらい汁。
file関数の返り血が何かを調べろ。
hoge.txtの中身がわからんが、fopenでやれ。
48nobodyさん:03/10/04 21:01 ID:???
>>44
>PHP.iniのextension=php_mssql.dll 行を有効にしたんですが
だからでしょ。Windowsじゃないのに「有効にした」のなら間違い。
もし違う(Windows以外)のなら、自分の環境をきちんと伝えない貴方の所為。
もちっと最初からどういう状態なのか情報を出せれ。
49nobodyさん:03/10/04 21:04 ID:???
>>47
エラーは、Notice: Array to string conversion と出ます。
単純に$dataの内容を表示してみたところ、「array」とだけ表示されました。
hoge.txtの中身は、「aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa」と言う文字列です。

fopenで試して見ますね。
5044:03/10/04 21:07 ID:???
間違えた。消える。俺。
×非Win
○win
51nobodyさん:03/10/04 21:10 ID:???
>>44
PHP.iniのextension=php_mssql.dll 行を「有効にした」のに
「Fatal error: Call to undefined function」だからでは?
つまり先回り。本当に「有効」になっているならね。

自分の環境をきちんと伝えない貴方の所為。
もちっと最初からどういう状態なのか情報を出せれ。
UNIXだとどういう組み込み(DSOとしてなのか)とか、
どうやってコンパイルしたものなのかとか。
5251:03/10/04 21:12 ID:???
2重カキコスマヌ
53nobodyさん:03/10/04 21:15 ID:???
49ですが、
echo substr($data,0,10);
を、
echo substr($data[0],0,10);
にしたら上手く行きました。

どういう原因なのかは分からないままなんですけどね・・・。
54nobodyさん:03/10/04 21:26 ID:???
>>53
file()関数のことを調べりゃ自明
55nobodyさん:03/10/04 21:46 ID:???
ファイルへ文字列を書き込む際、
そのファイルが無ければ生成して書き込みたいのですが、
この場合はどうすれば良いのでしょうか?
56nobodyさん:03/10/04 21:49 ID:???
MSSQL 関連か。
Oracle/MS で萎えな質問来ると DB に高い金かけるヒマあったら他のとこに回せって気もするが。

ここ嫁。
http://jp2.php.net/manual/en/ref.mssql.php
しっかり書いてある。絶対書いてある。間違いなく書いてある。読んで読んで読み返せ。

ところで PHP-users 18260 に煮たような質問入ってないか。
無断でマルチポストやってるならせめて後からでも断り入れな。
あとどちらかで解答でたらちゃんと報告して人の手無駄に煩わせるの止めて、
メーリングリストの方にはまとめ文入れておいてね。
57nobodyさん:03/10/04 21:49 ID:???
>>55
fopen()関数のことを調べりゃ自明
58nobodyさん:03/10/04 21:50 ID:???

   マ ニ ュ ア ル 嫁 

   初 心 者 ス レ 逝 け

   そ の ま ま 逝 け 
59nobodyさん:03/10/04 22:05 ID:???
>>58
dat落ちしました
6040:03/10/04 23:26 ID:JtzlZ1mm
>>41
それでいけました、アリガトン。

>>42
なるほど、覚えてみまつ。
61nobodyさん:03/10/05 00:13 ID:n0nqs8Ff
スクリプトから自動でログファイルを作成してそのファイルにログを書き込んだり消したりしたいんですが
パーミッションが644だと書き込めません。他の人が作った同じようなスクリプトを見ると644でも書き込めてるんですが
何が悪いんでしょうか?
ログファイルを置くディレクトリのパーミッションは777にしてあります。
62nobodyさん:03/10/05 00:52 ID:???
>>61
644 の6と4の意味、桁位置の意味はわかってる?
ファイルは事前に作成してる?実行中に作成してる?
63nobodyさん:03/10/05 01:02 ID:n0nqs8Ff
>>62
実行中に作成してます。
作成されたファイルは最初から644です。
64nobodyさん:03/10/05 01:27 ID:???
>>63
せっかくレスしてくれているんだから答えろよ

>644 の6と4の意味、桁位置の意味はわかってる?
65nobodyさん:03/10/05 01:32 ID:n0nqs8Ff
>>64
分かってます
66nobodyさん:03/10/05 01:43 ID:QpsYxSxt
初心者質問はここで良いのでしょうか。。

チャットを設置したら、サーバーのPHPの設定がEUCで
チャットはshift_jisで書かれているので文字化けしてしまいます。
どうしたら良いでしょうか?
67nobodyさん:03/10/05 01:55 ID:???
>>65
だったら、「何が悪いんでしょうか?」なんて聞くな
68nobodyさん:03/10/05 01:55 ID:???
>>65
わかってるならああいう質問は出ないはずだが
69nobodyさん:03/10/05 01:56 ID:???
やっぱ初心者質問スレいるな、おい
70nobodyさん:03/10/05 01:57 ID:???
>>66
文字コードを統一するのが確実だろ
71nobodyさん:03/10/05 02:00 ID:n0nqs8Ff
>>67
パーミッションが悪いのは分かってるんですが、
644でも書き込めてるスクリプトがあったので疑問に思ったんです。
72nobodyさん:03/10/05 02:04 ID:???
>>69
よろ
73nobodyさん:03/10/05 02:18 ID:???
>>71
だからオーナーの違いだよ
74nobodyさん:03/10/05 02:27 ID:n0nqs8Ff
>>73
それがよくわから無いんですが
オーナーでもFTPでアクセスしたりブラウザからアクセスしたりすると思うんですが
ブラウザでアクセスした場合はどうやってオーナーだと判断してるんですか?
75nobodyさん:03/10/05 02:31 ID:???
644の6はrwxのうち[  ]を許可する。 -(1)
同様に4は[  ]を許可する。 -(2)
644の最初の数字はowner,group,otherのうち[  ]に(1)を許可する。
同様に4は[  ]に(2)を許可する。
また、この時phpスクリプトはowner,group,otherのうち[  ]の権限で動作するので
作成・修正されるファイルは、[  ]の権限で操作されることになる。
                             [ 配点5点 ]
76nobodyさん:03/10/05 02:31 ID:???
>>74
この場合のオーナーはファイルのオーナー
rootで操作したんでも無い限り、ファイル作成時のユーザーがオーナー

実行時に作成したファイルは、実行時には644 の左が使われるし、
ftpで送ったファイルは実行時には644の右が使われる

っていくら説明しても、それはわかってますとか言われるからもういいか・・・
77nobodyさん:03/10/05 02:33 ID:n0nqs8Ff
>>76
何が悪いか分かりました。どうもありがとうございます。
78nobodyさん:03/10/05 06:17 ID:???
環境の違いとかも、ちいとは頭の中にあるかい?
例えばsuEXECでCGIなPHP動かしてる場合と、
ApacheのDSOとして組み込んだPHPとでは
PHPスクリプトがどういったユーザで動くか調べてミソ。
79nobodyさん:03/10/05 14:14 ID:???
他サイトから特定のコードだけを抜き取り他サイトで表示するスクリプトって著作権侵害にはならないのでしょうか。
ex.YahooJapanのトピック部分を抜き取り自サイトに表示する。
80nobodyさん:03/10/05 14:47 ID:???
>>79
なる。
Yahoo!はお金を払って記事をもらっているんだから
それをPHPで勝手に取ったら訴えられても文句は言えない。
81nobodyさん:03/10/05 14:54 ID:???
事件の情報とかは著作物じゃないけどね。某スポみたいに脚色しまくりなのは著作物だけどw
82nobodyさん:03/10/05 17:46 ID:???
Googleはどういう扱いなの?
83nobodyさん:03/10/05 21:02 ID:???
Webアーカイバはどうなるの?
84_:03/10/05 21:08 ID:???

                 ス

                 レ

                 違

                 い


産経のヘッドライン引用問題で某ニュースアグリゲーションサイトが閉鎖に追い込まれ、その辺のネタは散々やった。
探せ。/.J とか Google とか連邦の過去記事とか。

何故おまいらは関係の無いネタを持ち込んだり、マルチポストしたり、コミュニティをマニュアル代わりに使うのかな。
スレでも掲示板でもMLでも目に触れる所に立てばイナゴのように初心者が沸いてきてFAQかPHPとは無関係なネタ/基礎能力欠如なネタで溢れて腐っていく。
もうお腹一杯。さっさとVBに戻れ。Javaれ。PHPじゃ食えませんよ、まだPerlの方が仕事ありますよ。
Javaならちょっと使えただけでPHPの1.5倍の金は貰えますよ。地方でも仕事ありますよ。いやマジで。
85nobodyさん:03/10/05 21:23 ID:???
すいません
全ページPHPでもgoogle検索に引っかかりますか?
86_:03/10/05 21:33 ID:???
>>85
自分でサーバー、クライアントで絵を描いて検証してみれ。つーか検索してみれ。「Pukiwiki PEAR」とかな。


_| ̄|◯ 以下のどれかが欲しいかな〜って思うんでつか、おまいらどうですか。

1. 初心者板復活&隔離
2. 原則質問禁止のPHPを語るスレ(情報交換)
87nobodyさん:03/10/05 21:47 ID:???
>>86
初心者質問スレ+原則質問禁止のPHPを語るスレという二本立てが委員でない?
88nobodyさん:03/10/05 21:48 ID:???
>>86
狂おしく同意。

#PHP初心者は別にかまわんのですよ、人間初心者は勘弁。
89nobodyさん:03/10/05 21:49 ID:???
>>86
2.は激しく過疎になる洋館
90nobodyさん:03/10/05 21:51 ID:???
>>86正直、いらん。どんなもんでも、受け入れろ。
91nobodyさん:03/10/05 21:55 ID:???
>>88
> #PHP初心者は別にかまわんのですよ、人間初心者は勘弁。
禿同
9285:03/10/05 21:56 ID:???
>>86
はい(´・ω・`)
93nobodyさん:03/10/05 22:57 ID:???
もう一度聞きます。
何故宇宙空間において光は白で闇は黒なんですか?
94nobodyさん:03/10/06 00:26 ID:???
PHPでフォームの送信前にチェックを行っているのですが出来ません。
何度も見直しました。私は正しく書いています。これはバグなのでしょうか。













>>93
釣るならこんな感じでな。
95nobodyさん:03/10/06 01:24 ID:???
誤爆ですが何か?(藁
96nobodyさん:03/10/06 01:28 ID:UZIf4An3
かなり初歩的な質問なのですが、
unko.txtの中身をインクルードして$unkodesuyoに代入したい場合どうすれば良いのでしょうか。
97nobodyさん:03/10/06 01:29 ID:???
すいません、>>1を見たら初心者スレがありますた。
そこ行ってきます。
98nobodyさん:03/10/06 01:31 ID:???
と思ったら既に消えていた・・・
●も買ってませんし。
ということで回答願います。
99nobodyさん:03/10/06 01:49 ID:???
掲示板の表示でXMLデータを吐かせXSLもしくはCSSで自由にデザインできるようにと考えています。
動的なXMLデータにXSLを適用させるにはこれも動的に生成してやる必要があるんでしょうか?
もしくはXSLやCSSの記述で対応できるのでしょうか?
100nobodyさん:03/10/06 03:13 ID:???
>>96
file

>>99
本7は入ってくるな
101nobodyさん:03/10/06 05:14 ID:???
>>99
自分で勉強しろ
102nobodyさん:03/10/06 09:48 ID:???
掲示板の表示でXMLデータを吐かせXSLもしくはCSSで自由にデザインできるようにと考えています。
動的なXMLデータにXSLを適用させるにはこれも動的に生成してやる必要があるんでしょうか?
もしくはXSLやCSSの記述で対応できるのでしょうか?

掲示板の表示でXMLデータを吐かせXSLもしくはCSSで自由にデザインできるようにと考えています。
動的なXMLデータにXSLを適用させるにはこれも動的に生成してやる必要があるんでしょうか?
もしくはXSLやCSSの記述で対応できるのでしょうか?

掲示板の表示でXMLデータを吐かせXSLもしくはCSSで自由にデザインできるようにと考えています。
動的なXMLデータにXSLを適用させるにはこれも動的に生成してやる必要があるんでしょうか?
もしくはXSLやCSSの記述で対応できるのでしょうか?

掲示板の表示でXMLデータを吐かせXSLもしくはCSSで自由にデザインできるようにと考えています。
動的なXMLデータにXSLを適用させるにはこれも動的に生成してやる必要があるんでしょうか?
もしくはXSLやCSSの記述で対応できるのでしょうか?

掲示板の表示でXMLデータを吐かせXSLもしくはCSSで自由にデザインできるようにと考えています。
動的なXMLデータにXSLを適用させるにはこれも動的に生成してやる必要があるんでしょうか?
もしくはXSLやCSSの記述で対応できるのでしょうか?

1031/2:03/10/06 12:53 ID:2EmhPsS3
PDFをダウンロードさせるプログラム。簡略化してます。PHP4.3.3。

/* testpdf.php */
<?php
$filename="/path/to/target.pdf";
$fp = fopen($filename,"r");
header("Content-type: application/pdf");
header("Content-Length: ".filesize($filename));
header("Content-disposition: inline; filename=".basename( $filename ) );
readfile( $filename );
?>

これだとどのブラウザでも正常に動きます。が、

<?php
session_start();//これを追加しただけ
$filename="/path/to/target.pdf";
$fp = fopen($filename,"r");
header("Content-type: application/pdf");
header("Content-Length: ".filesize($filename));
header("Content-disposition: inline; filename=".basename( $filename ) );
readfile( $filename );
?>

だと、IEだけダウンロードできなくなります(5.5SP2)。
1042/2:03/10/06 12:54 ID:2EmhPsS3
保存か開くか選ぶダイアログボックス
(ただし、「開く」のラジオボックス以外disabled)が出て、「OK」押すとダウンロード開始
しようとするのですが、すぐに別ダイアログで、「Internet Explorerでは、……(対象のURL)
をダウンロードできません。このインターネットサイトを開くことができませんでした。要求され
たサイトが使用できないか、見つけることができません。後でやり直してください」と出ます。

session_start()でCookieを焼いているのがまずいのかと思い、その行のかわりに
header("Set-Cookie: name=test");
というふうにしたら正常にダウンロード可能。
また、冒頭に
ini_set('session.use_cookie',0);
としても症状かわらず。
また、ブラウザ側でCookieオフにしても症状変わらず。

サーバのログには200が出ています。転送容量は…ログに出なくしてあるな。
管理者にゴルァしておきます。

http://pc2.2ch.net/php/kako/1038/10389/1038988518.html
の951からが少し似ているが今回の場合POST/GET関係無いし原因は別か?

何か気付いた方お願いしますです。
105nobodyさん:03/10/06 14:09 ID:???
106nobodyさん:03/10/06 14:40 ID:???
Web上にあるPHPのソースは覗かれる可能性がありますか?

掲示板のプログラムを作ったのですが、
プログラム中でパスワードの認証をしていて、
ソースを覗かれてしまうとパスワードがバレてしまうのです・・・

もし覗かれる可能性があるのなら、
パスワード等はどのようにして隠せば良いのでしょうか?
107nobodyさん:03/10/06 15:04 ID:???
>>106
md5
crypt
108nobodyさん:03/10/06 15:08 ID:???
>>106
その覗く相手が同じサーバのユーザというのなら対策は難しい

safe_modeでcgiの実行一切不可能であれば読まれない可能性あるかなあ
109108:03/10/06 15:10 ID:???
あ、DB等の別システムに認証するというんでなけりゃ
>>107 の方法は使える
110nobodyさん:03/10/06 15:29 ID:XSBc/Bqw
php3を使っているんですが
arrayに後から値を追加したいのですがどのようにすればよいのでしょうか?
array_push()は使えないので・・
111nobodyさん:03/10/06 15:40 ID:???
>>106
テキストファイルにパスワードを暗号化して書き出してやる。
.htacessでパスワード・ファイルでのアクセスを不許可しておく
112nobodyさん:03/10/06 15:44 ID:???
if文で変数に入った900と1000を比べると900のほうが大きくなってしまいます
900 < 1000 が真となるにはどうすればいいですか?

おそらく文字列として比較してると思うのですが数値として扱う方法がわかりません
113nobodyさん:03/10/06 15:50 ID:zshIUJNC
えーと変数に代入するときに

$a = "900";
$b = "1000";
ってやってる?
114112:03/10/06 15:54 ID:???
>>113
$ranking[]=fgets($fp);
としています
115nobodyさん:03/10/06 16:27 ID:IsREoXOt
>>114

尻に"\n"が混じってないか?

$ranking[] = trim(fgets($fp));
とかしる
116106:03/10/06 16:34 ID:???
$入力されたパス=crypt($入力されたパス);
if ($入力されたパス==cryptを通した正解パス){
正解時の処理;
}
としてみましたが、
Notice: Undefined variable:  と言うエラーが出ます。

ちなみに、DBは使用していません。.htaccessは使用出来ません。
HTMLフォームから入力されたパスワードを、PHPのプログラムにて単純に判定しています。
cryptを通した正解パスは、別のphpプログラムにてテキストファイルに出力保存し、
それをコピーして使いました。

何か根本から使い方等が間違っているのでしょうか・・・?
117112:03/10/06 16:37 ID:???
>>115
trimを使うことでうまくいきました!!
ありがとうございました
118nobodyさん:03/10/06 16:44 ID:???
Notice: Undefined variable はエラーじゃないぞ
119nobodyさん:03/10/06 17:19 ID:???
それにNoticeが出てるのはその行じゃないだろうな
120nobodyさん:03/10/06 18:04 ID:XSBc/Bqw
test
121nobodyさん:03/10/06 18:06 ID:???
>>116
cryptの結果は環境によって違うことがあるらしいから
同じ文字列が元でも、ローカルでcryptしたものとサーバー側で
cryptしたものが異なっているかもしれないです。
代わりにmd5を使ってみてはどうでしょう?

記憶を頼りに書いているので間違ってたらフォローたのんます>他の人
122121:03/10/06 18:08 ID:???
あ、>>116をよく読んでみたら同じコンピュータでcryptしてるのかな?
123nobodyさん:03/10/06 18:33 ID:???
>116

おまいはマニュアルを読んだのか?と小一時間(略

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

入力されたパスにかける塩を選ばないと塩がランダムに
なっちまって判定できんじゃろ
124nobodyさん:03/10/06 18:49 ID:???
$入力されたパス=crypt($入力されたパス,cryptを通した正解パス);
if ($入力されたパス==cryptを通した正解パス){
 正解時の処理;
}
こうなるかね。Noticeは別の警告
125nobodyさん:03/10/06 18:52 ID:???
文字列を切り詰めるのだhttp://jp.php.net/crypt
126nobodyさん:03/10/06 19:11 ID:???
あー鼠うるせー
127nobodyさん:03/10/06 21:36 ID:???
うんこと
128nobodyさん:03/10/06 22:58 ID:8F72d/Cl
ユーザー登録や、アンケート送信とかでよく使われる、「この入力内容でよろしいですか?」
っていう確認画面があるじゃないですか。 あれって、裏で入力内容をどのように保持してるんでしょうか?
MySQLへのデータ登録と関連付けて考えていますが、一時的にDBの方にクエリを保存して仮IDを発行
しているのか、それともクエリをそのまま確認画面まで保持しているのか、いい方法が思いつかないので
質問してみました。 よろしくお願いします。
129nobodyさん:03/10/06 23:10 ID:???
>>120



   「               絶               句               !!」



MLも質問版もこんな調子だけど、おまいら手持ちの少ない知識でファンタジーする前にもっと勉強して上の人のコード読みまくれ。

<input type=".. value="submitted value" readonly>

もしくは

<p>submited value</p>
<input type="hidden" name=".. value="submitted value">

職業離れてプログラムを好きでない、プライベートの時間や収入を削って学習に注ぎ込めないなら潰し利く間に辞めた方が幸せよ。
知識労働系の雇用は国内需要含めて10年経たず第三国に取られるぞ。
130nobodyさん:03/10/06 23:51 ID:???
大丈夫、10年たったら管理職だ
131nobodyさん:03/10/07 01:35 ID:???
>>128
簡単なのはフォームの隠しフィールド。
ちゃんとやるなら、Apache::Sessionでも使え。
132128:03/10/07 01:41 ID:orXehoSz
>>129

>>120>>128の間違いでしょうか。 ありがとうございました。 hidden属性での持ち回りはやったことがあるのですが、
なにぶんパラメータ等が多いのでもっとエレガントにできないかとずっと考えていたのです。

>>131さんのセッションでの管理はよさそうですね。 ちょっとこちらの方向で考えてみようと思います。 どうもありがとうございました。
133nobodyさん:03/10/07 01:49 ID:???
あ、しまった。ここ、PHPスレだった。
Apache::Session は Perl のモジュールな。スマソ。
134nobodyさん:03/10/07 02:03 ID:???
PHP内でIMGタグが使えないのは俺だけ?
「echo」や「?><img scr=... <?php」でも
IMGタグだけが飛ばされて処理されるんだけど所注意みたいなんあるのかな?
135nobodyさん:03/10/07 02:20 ID:86/MwT3y
釣り杉
136 :03/10/07 03:48 ID:2M8EJ7IK
Debian GNU/Linux 3.0 を使っています。
/tmp/ に phps で始まるファイル名を持った大きなファイルが出来るのですが、
これは何のために作られているのでしょうか?
137nobodyさん:03/10/07 08:32 ID:???
あ、134は釣り?
138nobodyさん:03/10/07 11:10 ID:???
>>136
埋め込み式の宿命
消えないで残るのは問題
139nobodyさん:03/10/07 11:25 ID:86/MwT3y
アップローダか何かでデータを一時保存して移動させずに残ってるんじゃないか?
140 :03/10/07 12:04 ID:2M8EJ7IK
>>138 埋め込み式ということは mod_php の影響?

PHP Accelerator を使っているけど、
それは phpa_ で始まるファイルを一時的に生成してます。

>>139 ありえる…
と一瞬思ったんですが、 php.ini でアップロード用のパスは別のところを指定してるんです。
とはいえもう一度チェックしてみます。
141106:03/10/07 13:40 ID:???
出来ました。ありがとうございました。
一応マニュアルも読んでいたのですが意味が分かってませんでした・・・

$正解パス=”クリプトを通した正解パス”;
とやっていたのを、
$正解パス=’クリプトを通した正解パス’;
としてみたら上手く行きました。
ありがとうございました。
142nobodyさん:03/10/07 13:59 ID:???
>>141
どこが違うのだ?
パスの文字列に$が含まれていた...

ではないよな?
143nobodyさん:03/10/07 14:03 ID:???
別の理由でなおったんだろ、もうほっとけ
144106:03/10/07 14:11 ID:???
>>142
何故か"を'になおしたら上手く行きました。
元の文字列に$は含まれて居ませんよ。
crypt通した後のは$1$とかついてましたけどね。
145nobodyさん:03/10/07 14:18 ID:86/MwT3y
libcryptってマルチバイトのサポートしてんの?
146nobodyさん:03/10/07 14:18 ID:???
>>144
( ´,_ゝ`)プッ
147 :03/10/07 14:50 ID:2M8EJ7IK
1バイト文字としてみたときに $ が入っていて、
展開が起こっているような気がする今日この頃、
皆さんいががおすごしなのか、こちらではさっぱりわかりません。
148nobodyさん:03/10/07 15:07 ID:???
>>145
うるせーよ本7
149nobodyさん:03/10/07 15:23 ID:???
>>147
エスケープ文字、シングルクォーテーション
その前にもうちょい質問の精度上げてくれ。解釈はこれであってるよな、、


       _____
   / ̄.....//.... θ ̄>
  ∠|::::::::::::::U:: τ ::::::<
⊂二|::::::::::::::::::::::::::θ_>
    ̄∠/ ̄ ̄出てくる質問初歩の初歩ばっか、、、もうダメぽ
150nobodyさん:03/10/07 16:43 ID:???
初心者スレがなくなったとたんこうなったな
まあそれまでは存在も忘れられてたような気がしないでもないが
151nobodyさん:03/10/07 17:42 ID:UJhZyky9
質問させてください。

ストリングから正規表現でマッチするものを探し、そのポジションを取得するような
関数は無いでしょうか。
ステップを分ければ出来るのでしょうが、出来れば簡単にすませたいもので…。

例:
$hoge = 'abc123defg';
正規表現で /\d\ とすると
帰ってくるのが4,5,6。
同様に/\d[3]/として4、のように返ってくればいいなと思っています。
152134:03/10/07 18:29 ID:???
134だけど、マジっすw
widthとheight指定したらIMGタグ自体が消えるっぽ

今はCSSで逃げたけどなんでだろー
153nobodyさん:03/10/07 18:32 ID:???
>>152
ソース出して見ろよ
154nobodyさん:03/10/07 19:01 ID:???
PHPで動的にPDFファイル作ろうとおもったら、今一番何がイケてますか?
フリーのとか有償のとかありますけど
155nobodyさん:03/10/07 19:08 ID:WYMHo7wY
fileやincludeなどでファイルを読み込むと読み込んだ先がカレントになるんですが、
これを、読み込んだ元がカレントにする関数とか方法ってないですかね?

詳しく言うと、元のファイルが/www/hoge/hoge.phpでその中に./test.phpとリンクがはられていて、
その元ファイルを呼び出すファイルが/www/hoge.phpだとすると、
/www/hoge.phpがカンレトになってしまい、そこから/www/hoge/hoge.phpを呼び出すと、
./test.phpが/www/test.phpと思い込み、エラーになってしまうんです。
これを/www/hpge/test.phpにしたいってわけなんです。
156134:03/10/07 19:14 ID:???
>153
サンクス
windows2k で an-httpd です

<?php 何かいろいろw ?>
<img src="./img.gif" width="88" height="31">

これにアクセスすると表示されません
また
<?php
echo "<img src=\"./img.gif\" width=\"88\" height=\"31\">";
?>
も無理です。
widthとheightを消せば表示できます

PS. widthとheightが無くてもbanner.gifって名前のgifも表示できません
157134:03/10/07 19:19 ID:???
追記
redhat/apache のレン鯖でも同様の事態に・・・
158nobodyさん:03/10/07 19:34 ID:GRXqyYP0
詰まらない質問ですが、
配列の初期化のとき最後のカンマってなくてもうまく行くじゃないですか。
あれって本当はあっちゃいけないんですか?それともあっても別にいいんですか?
気になりました。

例)
static $sample_array = array
(
"aaaa",
"bbb",
"cc",
"ddddd", // ←このカンマ
);

バシっと気持よい答えをください。
おながいします。
159nobodyさん:03/10/07 19:54 ID:???
PHPでは問題なし。
ほかの言語ではだめなものもある、たぶん。
バシっとした回答でなくてすまんが、この程度はGoogleなり
なんなりを使って自分で調べる癖をつけておくれ。
160nobodyさん:03/10/07 19:56 ID:???
>>158
ttp://www.php.net/manual/ja/function.array.php

ちゃんと読め
おかげさまで楽でたすかる。
161nobodyさん:03/10/07 20:04 ID:GRXqyYP0
>159
や、ググったんだが気持よくなかったんだよ。

>160
気持よくないよー。英語のとこ?
162160:03/10/07 20:08 ID:???
>>161

>英語のとこ?
そこんとこ。

古いやつでもそうだったが、
array()に値を追加していく場合に、
最後の要素のカンマを省かなければならないといった気遣いが不要になるので
前の行をコピーして値の修正とかが楽にできるってこった。

#気持ち悪いのは確かだが
163http://www.nanashi.org:03/10/07 20:20 ID:???
連邦のゲットニュースみたいに、投稿したURLのページの中身を参照するのはどうすればいいのですか?
もうスクリプトは配布してなかったので・・・
164nobodyさん:03/10/07 21:39 ID:???
>>134
ぷろ糞みとろんしてんだろ
165nobodyさん:03/10/07 22:05 ID:???
PHP4.1.2で
インスタンスの配列をループして操作するとき
foreach( $objlist as $o ) $o->flag=TRUE;
と書くとうまく動作しません。
foreachは要素のコピーを返すので
当然と言えば当然なのですが
このようなことをやりたいときにはどうしたらいいのでしょうか
166nobodyさん:03/10/07 22:29 ID:???
配列の初期化で最後のカンマがあってもいいのはC言語からの伝統だ
167165:03/10/08 00:10 ID:???
解決しました
168nobodyさん:03/10/08 01:41 ID:XADCVAdl
そんなヤツが自己解決できてしまうような言語使用を再編するべきだ。
無駄に関数が多いが入門から考えれば勘違いしたり応用ができない人間を産む元だ
169nobodyさん:03/10/08 01:52 ID:???
>>168
中国かどこかの方ですか?
170nobodyさん:03/10/08 01:54 ID:???
>>169
いつも通り、本7
171nobodyさん:03/10/08 02:12 ID:???
PHP+MySQL掲示板作ろうぜ
http://pc2.2ch.net/test/read.cgi/php/1064937268/570-576
IDが一致
172nobodyさん:03/10/08 09:37 ID:???
すいません。

PHPがCGIとして動いているのか、それともApacheのモジュールとして動いてい
るかは、スクリプトから判断できないんでしょうか?

phpinfo()の中にはそれらしいのが見当たらないので質問させてもらいました。
173nobodyさん:03/10/08 09:38 ID:???
すいません。

PHPがCGIとして動いているのか、それともApacheのモジュールとして動いてい
るかは、スクリプトから判断できないんでしょうか?

phpinfo()の中にはそれらしいのが見当たらないので質問させてもらいました。
174171,172:03/10/08 09:40 ID:???
2重カキコすいません。
175nobodyさん:03/10/08 10:23 ID:???
すいません、教えて下さい。
最近みんなが本7って言葉をよく使うのですが
この用語はどういう意味ですか?
176nobodyさん:03/10/08 10:25 ID:???
177171,172:03/10/08 10:54 ID:???
>>176
そのものズバリでした。
次からはもっとマニュアル熟読します。
ありがとうございました。
178171,172:03/10/08 11:13 ID:???
>>177
さらに、phpinfo()の出力にもちゃんと表示されていました。
Server API の項目が Apache ならApacheモジュールとして実行中
CGI ならCGIとして実行中
でした。
次からは出力結果も凝視します。
ウソをいいましてすいませんでした。
179nobodyさん:03/10/08 12:35 ID:???
>>177
>そのものズバリでした。
175かとおもてワラテタよ。勘違いは漏れだった。逝ってくる。
180nobodyさん:03/10/08 12:41 ID:???
EUCでコーティングして、SJISで結果を出力したいのですが

ob_start('mb_output_handler');
print "テスト";

このようなコードで上手くいってます。ob_flush()を
実行しなくても結果がブラウザに出力される理由がよく
分かりません。ところが

ob_start('mb_output_handler');

を hoge.php に書いておき、別ファイルで
require "hoge.php";
print "テスト";

すると何もブラウザには出力されません。ob_flushを追加
する必要がありました。これはどういうことなんですか?
181nobodyさん:03/10/08 13:34 ID:???
モジュールのPHP4とPHP5を共存させようとしてます。
php.iniのパス問題でつまずきました。
Windows版バイナリパッケージでphp.iniの位置やファイル名を変更する事って出来るのでしょうか?
182nobodyさん:03/10/08 16:13 ID:???
/usr/bin/php4に
php.iniを置いたとして
/usr/bin/php5にも
php.iniを別個置いておく

そしてapacheならのhttpd.confは、以下の様に設定する
LoadModule php4_module /usr/bin/php4/sapi/php4apache.dll
AddType application/x-httpd-php .php

LoadModule php5_module /usr/bin/php5/sapi/php4apache.dll
AddType application/x-httpd-php .php5

※apache2なら、iconv.dllにもパスを通しておく
出ないとapacheが起動しない

これでは、、無理かな
183nobodyさん:03/10/08 16:16 ID:zHBhV8xs
これの挙動を説明できる方いますか?

class B {
function none() {}
}
class A {
var $v;
}

$a = new A();

$a->v = "a";
$b = $a;
$b->v = "b";
echo "a={$a->v}:b={$b->v}<br>";// a=a:b=b

$a->v = new B();// オブジェクトで上書き
$a->v->none();// !!!これが重要!!!

$a->v = "a";
$b = $a;
$b->v = "b";
echo "a={$a->v}:b={$b->v}<br>";// a=b:b=b ?????

$a->v = new B();// オブジェクトで上書き

$a->v = "a";
$b = $a;
$b->v = "b";
echo "a={$a->v}:b={$b->v}<br>";// a=a:b=a
184183:03/10/08 16:18 ID:zHBhV8xs
プロパティにオブジェクトをとり、
そのオブジェクトのメソッドコールしたあとでコピーすると
参照コピーになってしまっているようなのです。
PHP4.3.0です。
185183:03/10/08 16:43 ID:zHBhV8xs
すみません。

Bug #24485 $a = $b; become $a=&$b; when I use a function
http://bugs.php.net/bug.php?id=24485

のようですね。
186nobodyさん:03/10/08 18:17 ID:01SskDWs
PHPモジュール版って何ですか?
187 :03/10/08 18:53 ID:???
188134:03/10/08 20:39 ID:???
>164
「ぷろ糞みとろんしてんだろ」
意味わかんなかったけど解決
ノートンが広告削除してたよ・・・
189nobodyさん:03/10/08 21:49 ID:???
Proxomitron。
まぁノートンの広告消しと同じようなことをするやつだな。
HTTPリクエストヘッダを書き換えたりレスポンスを見たりできるので重宝してる
190nobodyさん:03/10/08 23:58 ID:???
$_SERVER['REMOTE_ADDR']で取得するIPアドレスは
偽装する事は出来るんでしょうか?
addslashesしてそのままDBに登録してしまっても平気でしょうか?
191nobodyさん:03/10/09 00:31 ID:???
>>190
判断はHTTPDの仕様によって変わるんじゃないかな。
ブラウザの吐く環境変数とイーサカードの受信IPが整合していれば問題ないでしょ。
192nobodyさん:03/10/09 03:19 ID:???
>>190
リファやエージェントと違ってクライアントがどうこうできるものでない事は確か
193nobodyさん:03/10/09 13:48 ID:???
画像アップローダ等にある画像アップ機能ってどうやって作るんですか?
194nobodyさん:03/10/09 13:53 ID:???
そのレベルの事を言うヤシは
プロに金払って作ってもらい
195nobodyさん:03/10/09 13:55 ID:???
>>193
<INPUT TYPE="file"> と <FORM METHOD="POST" ENCTYPE="multipart/form-data">
を使う
196193:03/10/09 14:05 ID:???
WWWサーバー側にはファイルを受け取るための特別なCGIスクリプトなどを設置しておく必要があります。

って書いてあったんだけど、このcgiスクリプトって大体のサーバは標準装備してたりするのかな。
自分で作らないといけないのなら、そのスクリプトはPHPでも製作可能?
ってか素人には難しいですか。
197nobodyさん:03/10/09 14:06 ID:???
やめとけ
198193:03/10/09 14:08 ID:???
そうします
199nobodyさん:03/10/09 14:47 ID:???
printとechoって何が違うんですか?
どちらを使うべきですか?
200nobodyさん:03/10/09 14:58 ID:???
男は黙ってecho
201nobodyさん:03/10/09 15:08 ID:???
echoってなんか可愛いやん
202nobodyさん:03/10/09 15:15 ID:???
そうですか。個人的にはプリントはプリんとしていてすきでしたが、明日からはechoにしてみます
203nobodyさん:03/10/09 15:17 ID:???
人の意見に左右されるやつだな
漢はがんこにprint
204nobodyさん:03/10/09 15:24 ID:???
女はしおらしくprintf
205nobodyさん:03/10/09 15:38 ID:???
write.responce
206nobodyさん:03/10/09 15:45 ID:???
>>199
先ずドキュメント嫁。
ま、折れも昔は単なるエイリアスだと思ってた
(ドキュメントの差異は無視して)けど、ソースでも別ものでした。

どっちでもいい場合は、折れはecho使うことが多い。
207nobodyさん:03/10/09 15:50 ID:???
ドキュメント多すぎてどこにあるかさがせんスマソ
教えて君ですまないが教えてくれ。
208nobodyさん:03/10/09 16:08 ID:???
さがせんじゃなくて探してないんだろ
209nobodyさん:03/10/09 16:08 ID:???
210nobodyさん:03/10/09 16:21 ID:???
違いについて説明したページがあるのかと思って探してたんだよう。
>>209の心意気に感謝して漏れも

男は黙ってecho

211nobodyさん:03/10/09 16:40 ID:???
>>198
えー子やなぁ
212nobodyさん:03/10/09 16:54 ID:???
サーバ上にあるbmpファイルをpngに変換したいのです。
jpegからならimagepng()を使って可能っぽいのですが、
bmpからだと何か方法はあるのでしょうか?

ImageMagickを使う方法もあるのですが、速度が必要になるので、
重いImageMagickは使いたくないのです。
よろしくお願いします。

213nobodyさん:03/10/09 17:07 ID:???
>>212
bmpなんて糞な形式を使わないっていうのが一番いいと思います。
214nobodyさん:03/10/09 17:34 ID:???
BMPは圧縮してないベタなので、じつは簡単に読める
(圧縮してるのもあるが、これも単純なRLE)
215nobodyさん:03/10/09 18:05 ID:???
急にドット絵が懐かしくなってきた
216nobodyさん:03/10/09 18:56 ID:???
ドット絵の大作をみると感動するな。下手糞でも
217nobodyさん:03/10/09 20:01 ID:???
連想配列
$hash_a = array("a"=>"a");

$hash_b = array("b"=>"b");
をくっつけて
$hash_c = array("a"=>"a", "b"=>"b")を作りたいのですがどうやればいいのでしょう?
array_pushではうまくいかないし、$hash_c = array($hash_a, $hash_b)でもダメでした。。。
218nobodyさん:03/10/09 20:13 ID:???
array_merge
219nobodyさん:03/10/09 20:55 ID:???
>>218
あんがと
助かりました
220nobodyさん:03/10/09 22:37 ID:???
みなさんは .incファイルを通常どこに置きますか?
221nobodyさん:03/10/09 22:42 ID:???
思いついたところ
222nobodyさん:03/10/09 22:44 ID:???
   
   ↓このへん

223nobodyさん:03/10/09 22:52 ID:???
/tmp
224nobodyさん:03/10/09 23:20 ID:???
>>213
仕事なんで使わざるを得ないんですよ。。。
やっぱり無理なのかな?
225nobodyさん:03/10/09 23:28 ID:???
   / ̄ ̄ ̄ ̄ ̄ ミ
  /   ,――――-ミ
 /  /  /   \ |
 |  /   ,(・) (・) |
  (6       つ  |
  |      ___  |   / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
  |      /__/ /  < なわけねえだろ!
/|         /\   \__________
226nobodyさん:03/10/10 01:19 ID:???
>>224
ImageCreateFromWBMP + imagepng はダメなの?
227nobodyさん:03/10/10 01:26 ID:???
>>226
この場合、WBMPってモノクロビットマップじゃなかったっけ?
228nobodyさん:03/10/10 02:13 ID:???
>>227
ガーン WindowsBitmapじゃなくてWirelessBitmapだったのか....
229nobody:03/10/10 04:52 ID:???
メールボックス内のメールに既読フラグを立てたく
imap_setflag_full(&mbox, 1 ,"\\Seen");
と書いているのですが既読になりません。

この関数ってPOP3じゃ使えないとかそんなこと無いですよね?
230nobodyさん:03/10/10 10:32 ID:???
   / ̄ ̄ ̄ ̄ ̄ ミ
  /   ,――――-ミ
 /  /  /   \ |
 |  /   ,(・) (・) |
  (6       つ  |
  |      ___  |   / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
  |      /__/ /  < なわけねえだろ!
/|         /\   \__________
231nobodyさん:03/10/10 14:46 ID:i+VDBrMs
PHPで作成した配列(要素の数は可変)をDB(MySQL)のフィールドに格納したいのですが、
DBの方ではそのような型が定義されていませんよね? みなさんはどのようにして配列を
格納されていますか?

思いついたのは、PHPでimplode()でカンマ区切り等の文字列に変換してTEXT型のDBフィールドに格納、
取り出すときにはexplode()で配列に戻す、という方法なんですが、もっと理想的で速そうな処理方法って
ないでしょうか? もしかしてバカな方法をやってるんでないかと思って質問してみました。
232nobodyさん:03/10/10 15:15 ID:???
>>231
serialize() <-> unserialize() 使ってる。
233nobodyさん:03/10/10 15:16 ID:???
RedHat9+Apache2.0.47でphp4.3.3をXSLT付けて再コンパイルしようとしてPHPのコンパイルでつまずきました。
rpmで
expat-1.95.5-2
sablotron-1.0-1

ソースコンパイルで
httpd-2.0.47
php-4.3.3
libxml2-2.5.9
をインストールし
./configure --with-apxs2=/usr/local/apache2/bin/apxs --ena
ble-mbstring --enable-mbstr-enc-trans --enable-gd-native-ttf --with-gd --with-fr
eetype-dir=/usr --with-jpeg-dir --with-zlib=/usr --with-png-dir --with-pgsql --w
ith-xml --enable-xslt --with-xslt-sablot=/usr/lib --with-iconv-dir --with-sablot
-js
でPHPコンパイルしようとしたら
checking for Sablotron libraries in the default path... found in
configure: error: not found. Please re-install the Sablotron distribution.
とでます。どうすれば解決できるでしょうか?
Sablotronらしきものが/usr/lib/libsablot.so.0にあるので
いろんなパス指定したりファイル名変えてみたり移動されたりしながら試したんですがダメでした。
宜しくお願いします
234nobodyさん:03/10/10 15:18 ID:???
>>231
例えばキーと値のカラムを持つ配列格納用の別テーブルを作っておく、なんてどうでしょうね。
235nobodyさん:03/10/10 16:29 ID:vIPOBxmm
テキストファイル読み込みで
最後の1行だけを読み取ろうとして、

for($i=0;"\n"!= fgetc($fp);fseek($fp,$i--,SEEK_END)){

}
$saisyugyo=fgets($fp);

としたんだけど、改行のない1行だけのテキストで無限るーぽ。

forの中にファイルポインタが先頭であればブレークってのを入れれば
回避できるんでしょうが、ファイルポインタが先頭ってどう取得すればよいのか知りませんか?
236nobodyさん:03/10/10 16:42 ID:???
>>235
ループの外で
$j = filesize('hoge.txt') * -1;
ループの中で
if ($i < $j) { break; }
237nobodyさん:03/10/10 16:46 ID:???
>>236
できますた!サンキストです!
238nobodyさん:03/10/10 16:49 ID:???
>>235
ファイル位置を知るならftell()だけど、
そもそもそのやりかたは・・・・
239nobodyさん:03/10/10 16:53 ID:???
>>237
確認もせずに書いたので成功してなにより。
でも$a = file($b);→$c = array_pop($a);→unset($a);の方が楽だよね。
240nobodyさん:03/10/10 16:53 ID:???
>>236
よく見ると先頭1文字が取得できず。。

>>238
なんかマズいですか?
241236=239:03/10/10 17:04 ID:???
>>240
あ、やっぱり。$i < $j を $i <= $j にすればOKと思われ。(念のため、"=="にはしない)
238さんが言っているのは負荷のことだと思うから239で書いた方法も試してみなはれ。
他には
while (!feof($fp)) { $saisyugyou = fgets($fp, 50000); }
で回すのもありかな。
242nobodyさん:03/10/10 17:10 ID:???
>>241
239と
while (!feof($fp)) { $saisyugyou = fgets($fp, 50000); }

ってバカでっかいテキストでも大丈夫ですかね。アクセスログ的な。。
ファイルポインタを後ろから読んでいくか、
全部取り込んでからか、
負荷的にはファイルポインタ後ろからってほうがいいのかなと思ったんですけど、
どうなんでしょ
243nobodyさん:03/10/10 17:10 ID:???
PHPってfgetpos/fsetposがないんだ。
244nobodyさん:03/10/10 17:11 ID:???
外部コマンドを呼べるならtailを使った方がよさそう。
245nobodyさん:03/10/10 17:19 ID:???
>>242
file()使う方はメモリをアホほど喰う可能性があるけど
ループ内でfgets()を使う方は割とエコロジー。
(ファイルが数千〜数万行のときは知らない)
241に書いたコードでうまくいかなかったときは
いちど自分で原因を考えてみてくだされ。
246nobodyさん:03/10/10 17:21 ID:???
数千〜数万ならマシンの能力にもよるけど一瞬だYO!
247nobodyさん:03/10/10 17:22 ID:???
ファイルがでかすぎる&メモリ節約でなら一時ファイルに必要なデータだけ
切り出したほうがいいと思われ。
248nobodyさん:03/10/10 17:33 ID:???
>>245
241の方法はやはりうまくいきませんでした。
ちなみに<=にすると先頭2文字がとれなくなりますた。
んで、$j-1,$j-2と調整してみるとfgets自体が取得できないようになりますた。

というわけで
file()に関してはお手軽なんで、軽量のファイルに、
while〜はデカいサイズが想定されるファイルに対して使ってみる事にしますた。
249nobodyさん:03/10/10 17:41 ID:???
$i-- だからだよ。ちょっとは(ry
250nobodyさん:03/10/10 17:42 ID:???
>>249
あーあ言っちゃった・・・・
251nobodyさん:03/10/10 18:05 ID:???
PHPでconfigure作ったらバカでしょうか
252nobodyさん:03/10/10 19:19 ID:???
蛇足かもしれんが、>>235はforループのfor文にいろいろつめこむのは
やめたほうがいい。ぱっと見で、その行に2つバグが潜んでいる
253nobodyさん:03/10/10 20:09 ID:???
>>233
本7?
254nobodyさん:03/10/10 22:29 ID:???
レッツPHP!の写メールBBSっていうのを試しているのですが
それでpop.phpで受信メールの設定。
POP3サーバーとユーザー名、パスワードを指定して
試しに動作させてみて、その指定したアドレスに添付ファイル付けて送って
更新したのですが、書き込みされていないのです。
なにか原因があるのでしょうか?

スクリプトはこれですhttp://php.s3.to/bbs/bbs7.php
255nobodyさん:03/10/10 22:41 ID:???
>>254
CGI設置について質問
http://pc2.2ch.net/test/read.cgi/php/1054216089/
256nobodyさん:03/10/10 23:05 ID:???
>>254
失礼しました
そちらの方で聞きたいと思います
257254:03/10/10 23:06 ID:???
あ、いやPHPです・・
こちらで聞きたいのですが
258nobodyさん:03/10/10 23:08 ID:???
phpだろうが関係ない
設置できないんだろ?
259nobodyさん:03/10/10 23:10 ID:???
スクリプトはこれですって、落としてきて見て教えろってことかよ?
260254:03/10/10 23:25 ID:???
いやそういう事じゃなくて説明があるじゃないですか
こういう感じの奴ですって事です
261254:03/10/10 23:26 ID:???
>>258
設置は出来ましたが動作しないのです
262nobodyさん:03/10/10 23:30 ID:???
>>261
そういうのを設置できていないと言うんじゃないか?

まあいいけど。
メール取ってこれないんじゃないかな。
鯖はソケット使えるの?
263nobodyさん:03/10/10 23:41 ID:???
どう動作しないのか、エラーログはどんな感じなのか
メール鯖には確かに入っているのか、そのへんはどうなんだ
264nobodyさん:03/10/10 23:42 ID:???
>>261
設置してみた
動いたよ

ところで、設置してる鯖はどこ?
多くの無料鯖じゃ無理っぽいけど
265254:03/10/10 23:50 ID:???
http://yellow.ribbon.to/
にしてみました。
無料鯖どこも一杯で・・一応PHP設置可の所です。

@yahoo.co.jpで受信してるのですが
ただ受信するだけでPHPに読み込んでくれない・・
もしかして@yahoo.co.jpはダメなんですかねぇ

>>261さんは鯖どこ使いました?
メールアカウントどこ使ってますか?
もしよろしければ詳しく教えて頂けないでしょうか?
266nobodyさん:03/10/10 23:54 ID:???
>>265のサイト、safemodeってなってるがsafe_mode ってソケット使えないのかね?
267nobodyさん:03/10/11 00:16 ID:GizYondi
俺も写メールBBSで画像がUP出来なくて困ってます。

鯖はxreaで、xreaのアドを使用しています。
助言お願いしますm(__)m
268nobodyさん:03/10/11 00:41 ID:???
>>265
アンカー>>261になってるけど俺へのレスかな?
鯖は、うちのホスティング鯖
メールも同じく
URLは・・・有料だし広告とか言われそうなんで貼るのやめとく
269nobodyさん:03/10/11 00:58 ID:???
なぜエラーを書かないのかと
270nobodyさん:03/10/11 01:47 ID:???
携帯画像アップローダに有名どころのレン鯖に合わせるパッチを添付したら
価値ありますかねぇ?
271nobodyさん:03/10/11 02:04 ID:???
>>270
パッチの程度による
272nobodyさん:03/10/11 10:05 ID:???
設定ファイルから自動で適用するようにして。
正確にはパッチじゃないな、ライブラリの参照形式だな。
273254:03/10/11 12:00 ID:???
すいません
>>264さんです。

たぶんpop.phpの設定が間違ってるようです・・
274nobodyさん:03/10/11 12:11 ID:???
safe_modeの適用ってホームディレクトリ外にして欲しいよな
275nobodyさん:03/10/11 12:14 ID:???
>>273
他の人が気にしているのは、スクリプトの設定じゃなくてサーバの方の設定なのよ。
PHPを置く方のサーバの phpinfo() を晒してみたら?
276254:03/10/11 12:55 ID:???
サーバー変えてみようか・・
どっか良いところ・・
277nobodyさん:03/10/11 13:13 ID:???
>>276
なぜ駄目なのかはっきりわかるまではサーバ替えても無駄だと思うよ
278254:03/10/11 13:16 ID:???
多分、pop.phpの

// 受信メールサーバーの設定
// POP3サーバー
$host = "pop.mail.yahoo.co.jp";
// ユーザーID
$user = "xxxx";
// パスワード
$pass = "xxxx";

ここが違うんだと思います
ここ以外特に変更する必要はないし、問題はサーバとPOP3サーバーかと
思います。
279nobodyさん:03/10/11 13:48 ID:???
なんでレッツで聞かないんだ?
280nobodyさん:03/10/11 14:54 ID:???
>>254 >>267
>>255が誘導しているスレにおいで。
そっちのスレの>>17にテンプレがあるからそれに沿った書き込みで。
281nobodyさん:03/10/11 15:39 ID:???
PHPスクリプトをApacheのモジュールの様に動作させる方法について
少しでも情報ありませんでしょうか?
書籍は無しでおながいします
282nobodyさん:03/10/11 16:13 ID:???
>>281
Apacheモジュールのようなもの?モジュールでなくて?

 O S も 書 か な い で 質 問 で す か ?

283nobodyさん:03/10/11 16:17 ID:???
OSは、Plan9です。
よろしくお願いします。
284nobodyさん:03/10/11 16:49 ID:???
>>282
DSOとして生成できるのかよくわからないのでそういう言い方ですがApacheモジュールを期待しています。
OSに依存するんですか?
285281:03/10/11 16:49 ID:???
ちなみにApache2を意識しています
286nobodyさん:03/10/11 16:54 ID:???
apacheのモジュールを作成できないPHPを知らないんだが、、、
plan9は無理なの?
287281:03/10/11 17:02 ID:???
ご理解いただけてるとは思うので恐縮ですが一応補足させていただきますと、
mod_phpの生成ではなくApacheモジュールをPHPスクリプトでコーディングしたいのです。
ApacheのディレクティブをPHPで追加してやりたいわけです。
288nobodyさん:03/10/11 17:14 ID:???
本7臭
289nobodyさん:03/10/11 17:35 ID:???
ApacheのAPI呼べば可能
みんなやってるよ
290281:03/10/11 18:13 ID:???
>>289
典型的な例ではどのような構文を書くのでしょうか?
292281:03/10/11 22:37 ID:???
>>291
丸2日ググりまくったけど見つからないんですよ。
Perlについては少し解説がありましたがPHPでモジュールを作るって
いうのは私には見つけられませんでした。なんでだろ
293nobodyさん:03/10/12 01:45 ID:???
function a() {
global $arr;
$arr = file("hoge.txt");
}

function b() {
global $arr;
print_r($arr);
}
先にa()で$arrをfile()で配列にいれて
b()内で$arrを表示・・・

こう言う使い方できないのかな・・・?
いろいろやってみてもprint_rできないのですが

出来るのかまた、出来ない場合は普通どうしてるんでしょうか?^^;
294nobodyさん:03/10/12 01:52 ID:???
$arrの定義を外でもやったらどうかな?
普通引数にするけどな
295294:03/10/12 01:55 ID:???
>>293
と思ったが普通にできる。どうやったらできないんだ?
296293:03/10/12 02:02 ID:???
>294
普通は出来るよね??
上のソースそのままですがん〜って感じです・・・。

とりあえず サンクスぽ
297294:03/10/12 02:04 ID:???
>>296
上のソースそのままじゃ無理だけどな。
a();
b();
の呼び出しが無いとね
298nobodyさん:03/10/12 03:16 ID:???
ShiftJISの
$a='あああ';

UTF-8の
$bに入れたいんですけど
どうしたらいいんでしょうか?

jcode.phpsとかも試したのですが、
だめでした。
299nobodyさん:03/10/12 03:23 ID:???
一つの変数に2つの文字コードを入れる意味はなによ。
300nobodyさん:03/10/12 03:27 ID:???
>>298
エンコード汁
301298:03/10/12 03:28 ID:???
検索エンジンの選択用PHPを作っているのですが、
他の検索エンジンがShiftJISを使っているのに対し、
アマゾンだけがUTF-8を使っているので
ヘッダでとばしたときに、アマゾンだけ文字化けするんです。
302nobodyさん:03/10/12 03:32 ID:???
jcode.phpsの使い方を間違っているだけ。
ソース読めば分かること。
303nobodyさん:03/10/12 05:02 ID:???
PHPってなんでも関数が用意されてて頭使わなくて
済みますね。びくーりしました。
304nobodyさん:03/10/12 05:13 ID:???
if文で文字列比較できないのに
switch文でなら出来るつーのは
どういう了見よ・・・
305281:03/10/12 10:21 ID:???
いろんなサイトを探し回ってますが今だ見つけられずじまいです。
何かヒントだけでもいただけないでしょうか?
306nobodyさん:03/10/12 13:25 ID:+VODMSwZ
初心者です。
webからアクセスされるphpで、getで来る変数名がわからないとき、
どのように取得すればいいですか?
307281:03/10/12 13:29 ID:???
>>306
foreach文で予約変数を回す
308nobodyさん:03/10/12 13:32 ID:???
>>307
あんたには聞いていないと思うよ。
309nobodyさん:03/10/12 13:39 ID:???
>>281
自分でApache APIへのwrapperを書くしかないだろうね。
ApacheのディレクティブをPHPで追加したいって所で、
ああこの人分かってないな、本7だなって気がするけど。
リファレンス類やサンプルは下のURLにあるよ。
http://www.apache.org/dev/
http://modules.apache.org/
話を続けるならapacheスレだね。
310281:03/10/12 13:44 ID:???
了解しました。ありがとうございます。
そして名無しでもバレるという事実
311306:03/10/12 13:51 ID:+VODMSwZ
いえ、予約変数とかじゃなくて、なにが来るかわからないんです。
そのときGETで取得できる全ての変数を知りたいんですけど、
ダメですかね?
312281:03/10/12 14:01 ID:???
foreach($_GET as $key => $var){
print "{$key}={$var}";
}
313nobodyさん:03/10/12 15:45 ID:???
俺が>>288で言った通り本7だったろ
奴の書き込みは瞬時にわかる
314nobodyさん:03/10/12 16:58 ID:???
PHP ・・・ツマラン
315nobodyさん:03/10/12 20:39 ID:+pOfhY6n
header("Location: $u");
$uはURL
これをサーバーにアップロードするとちゃんとリダイレクトできるんですが、
ローカルでやるとエラーが出ます。
Warning: Cannot add header information - headers already sent by (output started at ***:2)

解決策教えて下さいまし。
316nobodyさん:03/10/12 21:00 ID:???
>>315
まずPHPマニュアルのheader関数のところを見て、怪しいと思ったところを挙げよ。
そして2つの環境のphp.iniの設定の違いを見よ。
317nobodyさん:03/10/12 21:35 ID:???
GETで値を別のphpファイルに渡したいんですが

//hoge.php
print "<a href=\"./output.php?num=$array[0]\">出力へ</a>";

//output.php

$num = $_GET["num"];

で取得できると思うんですがなぜかできません。

ちなみに、localhost( Apache + PHP4.3.3 )では正しく取得できたんですが…
318nobodyさん:03/10/12 21:37 ID:???
>>315
>headers already sent by (output started at ***:2)
これを読んで理解できないなら***:2周辺のソースくらい書こうぜ
それからサーバーとローカルのOS、WEBサーバー、PHPのバージョンは?
質問に答えようがないぞ
319nobodyさん:03/10/12 21:49 ID:???
おまえらPHPのバージョンくらい書いてください。
お願いします。

>>317
正しく取得できるならいーじゃん
320nobodyさん:03/10/12 21:57 ID:???
>319
自宅鯖(テスト環境)で取得できても、
レンタル鯖にアップしたら取得できなくなるんです。

レンタル鯖のphpのバージョンは4.0.6です。
321nobodyさん:03/10/12 22:03 ID:???
>>320
それを先に言え。

HTTP GET 変数: $_GET
注意 4.1.0で導入されました。これ以前のバージョンの場合は、 $HTTP_GET_VARSを使用して下さい。
322nobodyさん:03/10/12 22:05 ID:???
>>320
$_GETは4.1.0以降
register_globalsがoffなら$HTTP_GET_VARSを使うしかない
323315:03/10/12 22:05 ID:???
>316 >318
すみません。
ローカル Win98se PHP423(phpdev) Apatch
サーバー LINUX PHP432(CGI) Apache
周辺のソースといっても、リファを調べてクリックしたら
自サイトからならデータベースのカウントを+1してリダイレクト
そうでないならカウントせずリダイレクト、だけなんで…。
324nobodyさん:03/10/12 22:06 ID:5sejX4lf
>>317
とりあえず
print "<a href=\"./output.php?num={$array[0]}\">出力へ</a>";
てすrクセ付けた方がいいかも。

325317:03/10/12 22:10 ID:???
>321,322
知らなかった_ト ̄|○
すんなりうまく動きました。本当にありがとうございます。

感激のあまり勃起しますた。

>324
なるほど。
細かいところもしっかりできるよう習慣づけしないとイクナイんですね。

326nobodyさん:03/10/12 22:23 ID:???
>>325
            ,iノノ
          ,、ノノ:レ
        ,,:i,i/:'/'~/                 ,/!
     ,、_,ノ:!~;'彡-三ヾ、               ,从i  ,
     ,i[ !' ~  ~:;;、'~'ヽ               ノ ::;i!.ノi
    ,/゙ ,ヽ!ゝ   ~ii::ミ            λ  ノ'~ :;レ' :;;!
    ゙i;:  `>_:,;ii,ミミミi           ,v'.i ,ノ ::;/ ::;ノ   _,,、-,-
    '!'~`~)||!!ヾ!~ ::i,)          ,从,レ :;;/ :;ノ彡-''~゙ :i!'゙
     、彡ノノノ  ::ii人          /;/;;ノ゙;;;::i-'<、,_,,、-'~
    ,i'゙~i::ノ゙;: .:: ::iiヾ      i',   ,ノ゙/-彡'~: ::_;;_;;;::::ヾ、--、_
    i゙::i .::; ノ: ,iヾ ::゙i、_  __,,,ノv:レ从)ivト'|'゙::;;-''''~ ;;__ _;;ヾ、|~ ̄
    '゙i,:;::/ ;;-'ノ'  ~ヾ〉~''~゙ ---、, :;;ノ:i'从iiiニ=彡三ミミミ;;::i, ゙'i,
     !,;::i i ;!'゙   ::;i'゙      ~゙彡;゙ノ,レ'~,ノ゙!!=-ii、,゙ヽ, 'i;::i, i
     i,i::iミ゙    ::;i         彡彡<゙;;,ノ'二~' 彡 i 彡!,i'
      レi;     ::;i,;        ,、-彡'~~∠゙~  彡i'゙ '~´
       ヽ,     ::ゝ, 、   、___ノノ'~~フ ̄    '゙
        ヾ、ヽ、i   :ゝ,゙'i ''-ミミ= ~'-<
         ヾ、;;::::!!、  ゙i.|トトi::::::ミ'~ ̄~
           ~'ヾヾ-,、____ !__::::ヽ,
              ,ノ:::;/ ~゙ヽ):::::;)
             ノ::;ノ'   /゙:::;/
           ,-'''"ン"   /::;/
   __,,、、、-‐/'"i-、(、,、,,,,,/゙/
   二='''、::::::!、-┘ヾ--/:::;/ゝ
    ̄ ̄ ̄   ,、、-/ー'゙ノ::;∧,、,
       ∠二―┴,=< ::;ノヾ、,」ニ=ー
           ./:,、┴゙
          //
          !'
327nobodyさん:03/10/12 22:25 ID:???
>書籍は無しでおながいします
→楽をしようとする
>ちなみにApache2を意識しています
→もったいぶった書き方
>ご理解いただけてるとは思うので恐縮ですが一応補足させていただきますと
→自分が目上のような態度
>典型的な例ではどのような構文を書くのでしょうか?
→調べようとしない
>丸2日ググりまくったけど見つからないんですよ
→"PHPスクリプトをApacheのモジュールの様に動作させる方法"とググる->見つからない->使えないインターネットだな
>いろんなサイトを探し回ってますが今だ見つけられずじまいです
→検索エンジンすらまともに使えない(上記も参照)
>foreach文で予約変数を回す
→なんでも回答したがるが本7語などが入り混じって意味不明(例:予約変数を回す)

補足:自作自演はかなり下手

以上の点から本7の書き込みは直ぐに特定できます
328nobodyさん:03/10/12 22:55 ID:???
意地でもソースを出さない>>315,323は放置で願います。
329nobodyさん:03/10/12 23:15 ID:???
>>328
ソースです
            ,iノノ
          ,、ノノ:レ
        ,,:i,i/:'/'~/                 ,/!
     ,、_,ノ:!~;'彡-三ヾ、               ,从i  ,
     ,i[ !' ~  ~:;;、'~'ヽ               ノ ::;i!.ノi
    ,/゙ ,ヽ!ゝ   ~ii::ミ            λ  ノ'~ :;レ' :;;!
    ゙i;:  `>_:,;ii,ミミミi           ,v'.i ,ノ ::;/ ::;ノ   _,,、-,-
    '!'~`~)||!!ヾ!~ ::i,)          ,从,レ :;;/ :;ノ彡-''~゙ :i!'゙
     、彡ノノノ  ::ii人          /;/;;ノ゙;;;::i-'<、,_,,、-'~
    ,i'゙~i::ノ゙;: .:: ::iiヾ      i',   ,ノ゙/-彡'~: ::_;;_;;;::::ヾ、--、_
    i゙::i .::; ノ: ,iヾ ::゙i、_  __,,,ノv:レ从)ivト'|'゙::;;-''''~ ;;__ _;;ヾ、|~ ̄
    '゙i,:;::/ ;;-'ノ'  ~ヾ〉~''~゙ ---、, :;;ノ:i'从iiiニ=彡三ミミミ;;::i, ゙'i,
     !,;::i i ;!'゙   ::;i'゙      ~゙彡;゙ノ,レ'~,ノ゙!!=-ii、,゙ヽ, 'i;::i, i
     i,i::iミ゙    ::;i         彡彡<゙;;,ノ'二~' 彡 i 彡!,i'
      レi;     ::;i,;        ,、-彡'~~∠゙~  彡i'゙ '~´
       ヽ,     ::ゝ, 、   、___ノノ'~~フ ̄    '゙
        ヾ、ヽ、i   :ゝ,゙'i ''-ミミ= ~'-<
         ヾ、;;::::!!、  ゙i.|トトi::::::ミ'~ ̄~
           ~'ヾヾ-,、____ !__::::ヽ,
              ,ノ:::;/ ~゙ヽ):::::;)
             ノ::;ノ'   /゙:::;/
           ,-'''"ン"   /::;/
   __,,、、、-‐/'"i-、(、,、,,,,,/゙/
   二='''、::::::!、-┘ヾ--/:::;/ゝ
    ̄ ̄ ̄   ,、、-/ー'゙ノ::;∧,、,
       ∠二―┴,=< ::;ノヾ、,」ニ=ー
           ./:,、┴゙
          //
          !'
330315:03/10/12 23:16 ID:???
(;´Д`)
preg_match("/^(http:\/\/)?([^\/]+)/i",$_SERVER["HTTP_REFERER"],$matches);
$ref=$matches[2];
preg_match("/[^\.\/]+\.[^\.\/]+/",$ref,$matches);
if(!empty($HTTP_GET_VARS['u'])){
if($ref=="**" || $ref=="localhost"){
$dbh=mysql_connect("**","**","**")or die('I cannot connect to the database.');
mysql_select_db("**");
$result=mysql_query("SELECT num,hits FROM $list where num=$num order by num desc limit 1");
@$rows=mysql_num_rows($result);
if($rows==0){mysql_query("insert into $list (num)values($num)");
header("Location:$u");exit;
}else{while($row=mysql_fetch_array($result)){
$hits=$row["hits"];$hits++;
mysql_query("update $list set hits=$hits where num=$num");}
header("Location:$u");exit;
}}else{header("Location:$u");exit;}}
331nobodyさん:03/10/12 23:18 ID:???
>>324
それ
{$hoge}
でも
${hoge}
でも、どっち使ってもいいんだっけ?
332nobodyさん:03/10/13 05:52 ID:???
cronで起動した場合、相対パスは使用する事が出来ないんでしょうか?
ブラウザから例えば「/www/xx.php」を実行するとそのまま動くんですが
cronだと「/www/xx.php」内の相対パスでincludeしているところでエラーになってしまいます。
333nobodyさん:03/10/13 07:01 ID:???
PHPでUTF-8を扱いたく、以下のようなコードを書いてブラウザに
表示させたところ、2行目は表示できませんでした(文字化けする)。
原因としては何が考えられるでしょうか?

※■の中にはコメントのコードが入っています。
※ファイルはUTF-8+CRLFで保存してます。
※php.iniのmbstring.internal_encoding = UTF-8 です。

<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html;charset=UTF-8">
</HEAD>
<BODY>
<?php
echo '■' . '<BR>'; // 0x66cf
echo '■' . '<BR>'; // 0x8d7f
echo '■' . '<BR>'; // 0x8d9f
?>
</BODY>
</HTML>

OS:FreeBSD 4.8、Apache 1.3.28、PHP 4.3.3
ブラウザWindows 2000、IE 6.0
334nobodyさん:03/10/13 13:11 ID:???
RSSファイルを生成するスクリプトを作成しているのですが、
If-Modified-Since:
に対応させるための方法はないでしょうか?
335nobodyさん:03/10/13 13:49 ID:???
>>334=本7
本7様♥
336nobodyさん:03/10/13 14:11 ID:???
>>327補足
・情報を小出しにする(無意識にそうしているのが質の悪いところ)
・自分のスキルでは到底無理なことをしようとする(自分で解決する気も無い)
・なぜそういうことをしたいかわからない(おそらく本人がいちばんわかってない)
337nobodyさん:03/10/13 14:19 ID:???
そんなことより質問に答えてやれよw
338nobodyさん:03/10/13 14:22 ID:7TyFsjru
そんなことよりちょいと聞いてくれよ
PHP4.1以前で、セッション名って変更できる?
339294:03/10/13 14:26 ID:???
>>333
php.ini のmb_string周りの設定はどうなってる?
340nobodyさん:03/10/13 14:29 ID:PDbyXYpZ
109 :名無しさん@お腹いっぱい。 :sage :03/10/13 13:27
RSS対応にした
あとはIf-Modified-Sinceを使えるようにするだけだな

334 :nobodyさん :03/10/13 13:11 ID:???
RSSファイルを生成するスクリプトを作成しているのですが、
If-Modified-Since:
に対応させるための方法はないでしょうか?
341nobodyさん:03/10/13 14:39 ID:v8ETw5US
騙りも皮脂だな

>>333
ブラウザがIEならMETAタグを無視して勝手にエンコードする場合があるよ。
ヘッダの時点で宣言した方がいいかも。
HTTPDのプライオリティも関係あるんかなぁ?
342334:03/10/13 14:46 ID:VoOrKj4x
>>340
上の書き込みの人とは関係ありません。IDが出ないこの板では分かりませんが・・・
343334:03/10/13 14:55 ID:VoOrKj4x
>>336
スクリプトを出す必要があるのでしょうか?
ヘッダに関係ある部分だから必要ないかと思うのですが。

RSSの表示部は完成してます。
344nobodyさん:03/10/13 14:56 ID:???
ところでさ、includeとreadfileって効果は同じじゃないの?
同じだと思ってるけどなんか違うの?
345334:03/10/13 15:05 ID:VoOrKj4x
>>344
include は <?php ?> で囲まれているところをPHPのスクリプトと解釈しますが
readfile は関係無しに出力します。
346nobodyさん:03/10/13 15:16 ID:???
>>334
その自分の質問の最中に他人の質問に答える癖を直せよw
347nobodyさん:03/10/13 16:10 ID:???
>>334
if-modified-sinceの内容をチェックして、RSSの表示部でブラウザに304を返す。

自分の質問に関係ないレスで名前に番号を入れるのは止めれ。
やりとりの履歴を見る時に邪魔になる
348333:03/10/13 17:01 ID:???
>>339
どうもありがとうございます。

mbstrin関係はこうなっています。

mbstring.language = Japanese
mbstring.internal_encoding = UTF-8
mbstring.http_input = auto
mbstring.http_output = UTF-8
mbstring.encoding_translation = On
mbstring.detect_order = auto
mbstring.substitute_character = none;
mbstring.func_overload = 0

>>341
Netscape 7.0でも同じ結果でした。
そういう問題ではない?

349nobodyさん:03/10/13 17:39 ID:???
>>334は本7
>>334は本7
>>334は本7
>>334は本7
>>334は本7
350nobodyさん:03/10/13 18:16 ID:???
>>349
            ,iノノ
          ,、ノノ:レ
        ,,:i,i/:'/'~/                 ,/!
     ,、_,ノ:!~;'彡-三ヾ、               ,从i  ,
     ,i[ !' ~  ~:;;、'~'ヽ               ノ ::;i!.ノi
    ,/゙ ,ヽ!ゝ   ~ii::ミ            λ  ノ'~ :;レ' :;;!
    ゙i;:  `>_:,;ii,ミミミi           ,v'.i ,ノ ::;/ ::;ノ   _,,、-,-
    '!'~`~)||!!ヾ!~ ::i,)          ,从,レ :;;/ :;ノ彡-''~゙ :i!'゙
     、彡ノノノ  ::ii人          /;/;;ノ゙;;;::i-'<、,_,,、-'~
    ,i'゙~i::ノ゙;: .:: ::iiヾ      i',   ,ノ゙/-彡'~: ::_;;_;;;::::ヾ、--、_
    i゙::i .::; ノ: ,iヾ ::゙i、_  __,,,ノv:レ从)ivト'|'゙::;;-''''~ ;;__ _;;ヾ、|~ ̄
    '゙i,:;::/ ;;-'ノ'  ~ヾ〉~''~゙ ---、, :;;ノ:i'从iiiニ=彡三ミミミ;;::i, ゙'i,
     !,;::i i ;!'゙   ::;i'゙      ~゙彡;゙ノ,レ'~,ノ゙!!=-ii、,゙ヽ, 'i;::i, i
     i,i::iミ゙    ::;i         彡彡<゙;;,ノ'二~' 彡 i 彡!,i'
      レi;     ::;i,;        ,、-彡'~~∠゙~  彡i'゙ '~´
       ヽ,     ::ゝ, 、   、___ノノ'~~フ ̄    '゙
        ヾ、ヽ、i   :ゝ,゙'i ''-ミミ= ~'-<
         ヾ、;;::::!!、  ゙i.|トトi::::::ミ'~ ̄~
           ~'ヾヾ-,、____ !__::::ヽ,
              ,ノ:::;/ ~゙ヽ):::::;)
             ノ::;ノ'   /゙:::;/
           ,-'''"ン"   /::;/
   __,,、、、-‐/'"i-、(、,、,,,,,/゙/
   二='''、::::::!、-┘ヾ--/:::;/ゝ
    ̄ ̄ ̄   ,、、-/ー'゙ノ::;∧,、,
       ∠二―┴,=< ::;ノヾ、,」ニ=ー
           ./:,、┴゙
          //
          !'
351nobodyさん:03/10/13 19:08 ID:???
>>350
これの意味は?
昨日からいろんなとこで貼ってるようだけど意味あるの?

それともキチガイにレスしてしまったかな・・・
352nobodyさん:03/10/13 20:15 ID:???
ZERO BOARDというPHP掲示板があるのですが、
これの日本語化、および英語化されたものは無いでしょうか?
もしよろしければ誘導お願いします。

ZERO BOARD配布サイト
ttp://www.nzeo.com/
353nobodyさん:03/10/13 20:56 ID:???
本7っていうのはちょっと調べたらすぐ分かる質問をする人の別称なん?
354nobodyさん:03/10/13 21:51 ID:???
画像アップロードについて質問があります。アップロードの手順は、

HTMLのフォーム(multipart/form-dataを指定)から入力→submit→phpファイルへ
$_FILESで各データを取得→各エラーチェック(ファイルサイズや画像形式等)→
エラーがあった場合unlinkでアップロードされたファイルを削除
エラーが無い場合ファイル名を生成しサーバ上のファイルを目的の
ディレクトリへ移動し生成したファイル名にする(move_uploaded_file)

で良いんでしょうか?
この手順で作ってみたのですが上手く動作しないのです。
手順自体がおかしいのでしょうか。
(何か別のミスをしている可能性もありますが)

ご教授よろしくお願いします。
355nobodyさん:03/10/13 22:07 ID:???
>>354
他のPHPあぷろだを参考にするのが速いような。
356354:03/10/13 22:24 ID:???
>>355
探して見たのですが、詳しく解説されているところが無かったのです。
他の言語のアップロード講座は見つかるのですけどね。
あったとしてもDBを使用していたりして、
DBを使用していない自分としては分かり難くて・・・。
マニュアルも見たのですけど、イマイチ感じがつかめなくて。
良く分かって無いままスクリプト書いてみたんですが案の定エラーが出まして。
どこかに参考になるページがあったら是非教えて下さい。

もう一回マニュアル睨み倒しみるか・・・
357nobodyさん:03/10/13 23:21 ID:v8ETw5US
>>349
>>341が俺なわけだが
358nobodyさん:03/10/13 23:23 ID:v8ETw5US
>>356
これが参考なるかも。自作の作りかけだが
http://org.s38.xrea.com/u_loader.php
359344:03/10/13 23:39 ID:???
>>345
遅くなったけどありがd☆
360nobodyさん:03/10/14 00:45 ID:???
>>358
お前は氏ね
361nobodyさん:03/10/14 01:48 ID:???
ところで、Win2003でApache2+PHP(ISAPI)が動いたヤシっている?
漏れWin2003評価版にインスコしてみたけんが、Apache2に
「php4apache2.dllが見つからねぇ」って言われたよ。
両者とも本家のWinバイナリね。
例のコンパイル環境の問題かな?
362nobodyさん:03/10/14 03:05 ID:uZqCVe4G
俺の所ではWindows2003+apache2.0.47+PHP4.3.3RC1(php4apache2.dll)で動いてるぞ。
Apache1.3.28と共存で
363361:03/10/14 03:15 ID:???
>>362
マジデスカッ。
製品版だとApache2+PHPが走るのかしら。。。
Apache2単体なら評価版でも何ら問題なく走るんだが。
けっこういい値段するしな。ちと考えます。
情報サンクスです。
364nobodyさん:03/10/14 03:54 ID:???
DSO版をユーザ権限で動かす方法はありますか?
365nobodyさん:03/10/14 04:04 ID:???
ありません
366nobodyさん:03/10/14 09:27 ID:uZqCVe4G
>>364
とあるコミュニティで検討中だよ。
Apacheの一部をカーネルと連携してsuExecできるようにするらしい。
root権限を持たせてもいいと思うかどうかが好みの分かれるところだろうけど
367nobodyさん:03/10/14 09:28 ID:uZqCVe4G
>>363
評価版ビルド3790でも動いたよ。
DLLをいっぱいコピーしなければいけないが配置はあってる?
368nobodyさん:03/10/14 11:18 ID:YzAAC/yO
PHP4でHTTPリクエストを$_POSTじゃなく
PHP3みたいに$だけで受けるようにするには
どうすればいいのでしょうか?
369nobodyさん:03/10/14 11:39 ID:???
register_globals = on のこと?
それとも
import_request_variables() のこと?
370nobodyさん:03/10/14 12:19 ID:???
>>368
extract($_POST);
371nobodyさん:03/10/14 12:22 ID:???
>>368
キケンだからお止めなさい
372nobodyさん:03/10/14 15:41 ID:???
>>361
ウィザードで入れただけで何もしてないんだろうよ
373nobodyさん:03/10/14 17:08 ID:???
簡単そうなのに悩んでいるのでおながいしまつ。

$suuji = '2.50';

って入っている $suuji を echo $suuji ってやると当然 2.50 って表示されてしまいますが
これを 2.5って表示させるにはどうしたらいいんでしょうか。
374nobodyさん:03/10/14 17:14 ID:???
>>373
いくつかやりかたはあると思うけど、
とりあえず文字列から数値に方変換するにはキャストするかな
echo (float)$suuji
とか、
$suuji = (float)'2.50';
とか
375nobodyさん:03/10/14 17:16 ID:???
ミスった
×方変換
○型変換
376nobodyさん:03/10/14 17:23 ID:???
373です。
>>374
ありがとうございます。一生懸命
float($suuji)
とやって、エラーが出るので悩んでいました。
教えていただいた方法で期待通りの動作をしました。
377nobodyさん:03/10/14 17:36 ID:uZqCVe4G
>>373
俺もこの間覚えてみた

$f = 1.23456;
print round($f,1);
378nobodyさん:03/10/14 19:30 ID:???
>>361
解凍したフォルダ内のdllsフォルダにあるiconv.dllを
system32にコピーしてみなさい

本7のような気もするがまぁどうでもいい
379nobodyさん:03/10/14 19:46 ID:uZqCVe4G
>>362が俺なんだが
380nobodyさん:03/10/14 20:02 ID:???
>>379
俺って誰?
381nobodyさん:03/10/14 20:33 ID:???
最新版PHPマニュアルのキーワードのとこが文字化けるんだが直せないものだろうか?
382nobodyさん:03/10/14 21:45 ID:???
>>381
UTFってこと?
383nobodyさん:03/10/14 22:04 ID:???
>>380
オレオレ詐欺だっ!!
384nobodyさん:03/10/14 22:17 ID:???
array_mapやarray_filterの引数にオブジェクトの配列を与えるときの使い方が
いまいちわからないのですが、
class Foo {
var $name;
function Foo($name) {
$this->name = $name;
}
function name() {
return $this->name;
}
}
$f1 = new Foo('hello');
$f2 = new Foo('goodbye');
$fa = array(&$f1, &$f2);
echo implode(',', array_map('name', $fa));

こういう使い方はできないんでしょうか? やっぱり
array_map(create_function('&$o', 'return $o->name();'), $fa)
みたいに書かないとダメ?
385nobodyさん:03/10/14 22:26 ID:???
>>383
ついに糞7の野郎!!
オレオレ詐欺までやり始めたかぁっ!!!

プルルルル・・・

ばあさん「はい?」
本7「オレな訳だが。」
ばあさん「はい?」(耳が遠くてよく聞こえてない)
本7「お金が必要なわけだが。」
ばあさん「はい?」(耳が遠くてよく聞こえてない)

話が噛み合わないまま延々と続く
386nobodyさん:03/10/14 22:33 ID:uZqCVe4G
俺のphp.iniを試しに使ってみ
Windows2003評価ビルド3790+Apache2.0.47+PHP4.3.3RC1のphp.ini。
extensionsを指定してmb_stringとGDを使ってる。
インストール先はC:\phpの設定
http://org.s38.xrea.com/php.zip

ついでにここも参照
http://www.dream-seed.com/server/php_apache.html
387nobodyさん:03/10/14 22:37 ID:???
>>385
>話が噛み合わないまま延々と続く
あちこちで多数例を見ただけにワラタ
388nobodyさん:03/10/14 23:15 ID:71oM1yKq
EUCで出力されたphpに内部の日本語ファイルは書き換えずに強制的にSJISに変換するphpないですかね?
http://www.spencernetwork.org/jcode/
とか試したんですが、今一うまくいかなくて。
389nobodyさん:03/10/14 23:19 ID:uZqCVe4G
mb_conver_encoding
390nobodyさん:03/10/14 23:21 ID:uZqCVe4G
mb_convert_encodingがダメならHTTPリクエストヘッダを書き換えるとか。
ダメなら最初に背景色と同じ色で隠した文字列をEUCの文字化けで出力して
ブラウザ騙すとか。
391nobodyさん:03/10/14 23:37 ID:eVLxWpfG
PHPのインストール後のテストをしているのですがうまくいきません
たったいま始めたばかりで参考書片手です。
Win98にApache MySQLをインスト&テストし終わり
PHPをしかる場所に置き、設定ファイルなどしかる処置をし
"<? phpinfo() ?>" と書いたファイルtest.phpを読み込ませると
ただ単に文字として書いた内容がブラウザに表示されました。
始めたばかりで全くの手探りなのでどういう風に質問すればいいか
解りませんが、お優しい方ご教授ください。
392nobodyさん:03/10/14 23:41 ID:???
uZqCVe4Gは本7なわけだが
393388:03/10/14 23:48 ID:71oM1yKq
>>389-390
mb_convert_encodingでいけました。
アリガトン。
394nobodyさん:03/10/14 23:49 ID:uZqCVe4G
>>391
やった手順を全部書いてみそ。
絶対何か抜けてるから
395384:03/10/14 23:50 ID:???
あああ、根本的にマニュアルの説明を勘違いしていました…。
コールバック関数にオブジェクトのメソッドを指定する場合、というのは
>>10 みたいなケースのことだったんですね。

それはそうと、create_function なんて名前にせずに lambda にすれば
よかったのに。
396391:03/10/15 00:03 ID:1om/G7JO
>>394
まずApache と MySQL はテスト成功でした
PHP4のインストール手順をやった順番に書いてみます

1.PHPアーカイブを解凍、フォルダをphp4にリネームC:直下へ
2.php4ts.dllをC:\WINDOWS\system32へ
3.php.ini-distの本文内、extension = に指定の文字列追加
4.php.ini-distをphp.iniとしてC:windowsへ(リネーム後もini-dist形式)
5.Apacheの設定ファイルhttpd.confの最後に指定の文字列追加
6.Apache再起動C:~/~/Apache\htdocs\以下にノートパッドで
作成したtest.phpを配置
7.テストhttp://localhost/test.php
397nobodyさん:03/10/15 00:05 ID:???
>>396
<?php phpinfo(); ?>
にしたら動いたりして
398nobodyさん:03/10/15 00:10 ID:83jxjsoO
4がよく分からない
399nobodyさん:03/10/15 00:12 ID:???
文字としてそのままでたというのは、phpを認識していない
httpd.conf の、AddType が間違ってるか、Apacheをリスタートしていない
400391:03/10/15 00:19 ID:1om/G7JO
ちょっと試してみます、みなさんありがとうございました
後日報告させていただきます。
401nobodyさん:03/10/15 00:30 ID:83jxjsoO
>>391
もし4.のphp.ini-distがphp.iniで内容は3.のままって意味なら
5.だね。
LoadModuleと>>399が間違ってるかも。
402nobodyさん:03/10/15 00:34 ID:???
いきなり低レベルな質問かもしれませんがお願いします。

ランダムで二つのリンクに振り分けるものを作ろうとしています。
おそらく現在のタイムを使って奇数か、偶数かで振り分けるのがよいと思うのですが
どのように記述すればよいかわかりません。
どなたかご教授お願いします。
403nobodyさん:03/10/15 00:47 ID:???
>>402定番叩き















マニュアル嫁プ
404nobodyさん:03/10/15 00:54 ID:???
なんで、こんな過疎板で荒らすんだろう・・・
405391:03/10/15 01:06 ID:1om/G7JO
しつこくすいません
5.で書いた所が自信がなかったので詳しく書いてみます
httpd.confの最後の行
#</VirtualHost>

の下に2行追加
LoadModule php4_module c:/php4/sapi/php4apache.dll
AddType application/x-httpd-php .php
スペースなどそのままです、いかがでしょうか?
スペルミスより書式に問題があるような気がするのですが#など..

あと3の部分はリネームしてもファイルタイプがini-dist形式
と表示されていたというだけです。
406nobodyさん:03/10/15 01:12 ID:???
いんでない?
後はサービスの停止と起動やれば、phpのソースがそのまま出ることは無い、、はず
<? ?> 形式はphp.iniによっては使えなくすることもできる
<?php ?>も試せ
407nobodyさん:03/10/15 01:14 ID:???
リネームしてもファイルタイプがini-dist形式
てのがよくわからん、、ここはもうちょっと要確認、かも
408nobodyさん:03/10/15 01:42 ID:???
>>396
WindowsにPHPをインスコしたこと無いから手元の本より。

>2.php4ts.dllをC:\WINDOWS\system32へ

本によると(以下引用)
必要なDLLファイルをシステムフォルダにコピーします。
コピーするDLLは、C:\php直下のphp4ts.allとc:\php\dllsフォルダ以下のDLLファイル全てです。
%windir%、あるいは%windir%\system32以下にコピーして下さい。



だってよ!
409408:03/10/15 01:44 ID:???
誤:C:\php直下のphp4ts.allと

正:C:\php直下のphp4ts.dllと
410nobodyさん:03/10/15 08:17 ID:83jxjsoO
>>408
WinNTの構成だね。
Win2003のディレクトリ構成はWin98に近い感じだよ
411nobodyさん:03/10/15 08:29 ID:???
これはPHPに限ったことじゃないんだけど、アクセス解析スクリプトって大抵
Agent名とIPアドレスとHost名が出るんだが、サーバマシン上でローカル接続
した時に、Host名がサーバマシンの名前になっちまうってのは、漏れのどこの
設定が悪いからか分かるヤシいる?
普通はほれ、外部からのアクセス者と一緒でIPアドレスからホスト名を逆引き
して利用しているISPでのホスト名になるやんか。
そんだが今の漏れの環境だとそうはならずに自分が決めた文字列になっちまうんよ。
ホストもIPアドレスもAgentもないアクセスとして記録されることもあるし、ホスト名に
自分のマシン名だけのアクセスも記録されちょる。
環境はWin2003評価版+Apache2+PHPなんだが、怪しい所を指摘してもらえると
嬉しいんだが。。。
412361:03/10/15 08:36 ID:???
スンマソン。名前入れ忘れたポ。
>>367
レスさんくすです。お恥ずかしい、自分の設定ミスですた。。。
その後無事に稼動できまして、>>411のような症状に悩まされて
います。
413nobodyさん:03/10/15 10:42 ID:???
>>411
fusianasanすれば回避方法を教えてやる
414219.117.222.18.user.rb.il24.net:03/10/15 10:44 ID:83jxjsoO
>>411
とは別人だぞ
415nobodyさん:03/10/15 12:15 ID:???
>>414
また本7か
ってか、藻前いつ寝てんだよ
416413:03/10/15 12:33 ID:???
411=414が確定しました
というかフシアナなんてしなくても最初から分かってたんだけどね。
あの中途半端な文章を書けるのは本7以外考えられない。
というわけで自分で調べてくれ(ゲラ
417nobodyさん:03/10/15 13:08 ID:CyuIMk2s
3桁以上の数字だけ抜き出したいんですけど、どうすればいいでしょうか。
「[0-9]{3,}」でhitするものだけを抜き出したいんです。。
おねがいします。
418nobodyさん:03/10/15 13:11 ID:???
3桁だと、
([0-9][0-9][0-9]*) でいい気がするが・・・
419nobodyさん:03/10/15 13:21 ID:???
>418
417のが短いじゃん。
420nobodyさん:03/10/15 13:31 ID:???
じゃあ417の質問意図はなんだ?
421411:03/10/15 14:11 ID:???
>>413殿、当方本7殿とは違います。
422EATcf-178p25.ppp15.odn.ne.jp:03/10/15 14:12 ID:???
スンマソン、411ですが>>421でfusianasanミスりました。
423nobodyさん:03/10/15 14:31 ID:???
>>417
eregで
424nobodyさん:03/10/15 14:42 ID:83jxjsoO
なんでもかんでも正規表現で済まそうとするのは良くない。
巧みなルーチンで目的を果たそう。
425nobodyさん:03/10/15 15:17 ID:???
なんでもかんでも本7だろ?で済まそうとするのは良くない。
巧みな自作自演で目的を果たそう。
426nobodyさん:03/10/15 15:59 ID:???
シロウト鯖屋を野放しで済まそうとするのは良くない。
巧みな通報で目的を果たそう。
427nobodyさん:03/10/15 17:06 ID:???
PHPを使ってMySQLにデータ入力する際、
ラジオボタンでvalue="可能"
とする場合にのみデータベースの更新に失敗する、
という不思議なことが起こってしまったのですが?

value="可"とかvalue="不可"とかvalue="かのう"では
きちんと更新できるので
「能」っていう文字に問題がありそうなんですが?
さっぱり分からんです。どうすればよいですか?
428nobodyさん:03/10/15 17:07 ID:???
どうして口調が変わってるのかな
429nobodyさん:03/10/15 17:09 ID:???
>>427
EUCにすえbううと
430nobodyさん:03/10/15 17:10 ID:???
>>427
エスケープ
431nobodyさん:03/10/15 17:33 ID:???
>>427
MySQLのキャラクタセットは何になっていますかな?
432427:03/10/15 17:43 ID:???
キャラクタセットはsjisです。
EUCにしろってのは、
今までsjisで作って来たので辛いです。
エスケープってのは\のことですか?
value="\可\能\"もダメでした。
433nobodyさん:03/10/15 17:46 ID:???
ここんところ、
本7用の質問スレッドになっちゃてるな
434nobodyさん:03/10/15 17:48 ID:???
わかんないからってあちこちつけんなよ・・・
能のSJISの2バイト目は\x5c 典型的じゃん
435434:03/10/15 17:55 ID:???
>>432
value="可能" ってHTML上でか?
その時点ではSJIS対応してるんだから無意味
mysql_escape_string() を通してみたらどうか?
436nobodyさん:03/10/15 18:14 ID:83jxjsoO
妄想厨か
437nobodyさん:03/10/15 18:38 ID:???
438nobodyさん:03/10/15 18:57 ID:uFEWlZud
439nobodyさん:03/10/15 20:02 ID:???
414 名前:219.117.222.18.user.rb.il24.net[] 投稿日:03/10/15 10:44 ID:83jxjsoO
>>411
とは別人だぞ

436 名前:nobodyさん[] 投稿日:03/10/15 18:14 ID:83jxjsoO
妄想厨か
440nobodyさん:03/10/15 22:28 ID:???
質問があります。
move_uploaded_file($_FILES["filename"]["tmp_name"],移動先ディレクトリ);
の移動先ディレクトリは、
$_FILES["filename"]["tmp_name"]から考えるのでしょうか?
それともこのPHPファイルのあるディレクトリからでしょうか?
例えば、
PHPファイルのある場所がhttp://localhost/hoge.phpで
$_FILES["filename"]["tmp_name"]がhttp://localhost/temp/ファイル名で
移動先ディレクトリが./img/ファイル名だったら、
http://localhost/img/ファイル名かhttp://localhost/temp/img/ファイル名
のどちらになるのでしょうか?
441nobodyさん:03/10/15 22:45 ID:Q8Tqd69h
レッツPHPさんの−IndexUpdater−使ってるんですが、ちょっとうまくいかなくて困ってます。

index.php -ここからupdate.php(プログラム本体)を呼ぶ-
|
|-php(フォルダ)
|-php2(フォルダ)
|-update.php
|-new.txt(ログファイル)

こういう構成なんですが、update.phpの14行目の$logfileのところを、update.phpからの相対パス(new.txt)にすると、index.phpから呼び出したときにエラーが、index.phpからの相対パス(./php/php2/new.txt)にすると書き込んだ時にエラーがでます。
どうやったらこうならないでしょうか?

全部同じフォルダに入れればいいのはわかってるんですが、ごちゃごちゃさせたくないのでこの構成のままでうまくやりたいのです。

他人様のプログラムを拝借する程度の知識しかありません。ひとつご教授のほどをお願いします
442nobodyさん:03/10/15 22:58 ID:???
>>440
絶対パス(/から)か、相対パスで指定。
443nobodyさん:03/10/15 23:08 ID:???
>>441
絶対パス(/から)で指定。
444441:03/10/15 23:10 ID:???
>>442
あぁ、そうか。 URLで指定すればいいのですね・・・。(ローカルでのテストができないのが非常に不便ですが)

これは勘ですが、index.phpからログファイルを呼び出すときもあるし、update.phpからログファイルを呼び出すこともあるらしいので片方からのパスでログファイルを指定するとエラーがでるのではないかと思います。

絶対パス指定しか方法ないですかね?

445nobodyさん:03/10/15 23:40 ID:???
アワアワ(;´д`;)
446nobodyさん:03/10/16 00:07 ID:???
よくわからんが、includeかなんかで呼び出してるのかな?
カレント(実行)ディレクトリが違う場所から同じファイルを
指定するなら、相対パスは無理だわな

絶対パスって例えば、/home/user/public_html/php/php2/new.txt 等になるよ、URLとは違う
447441:03/10/16 00:39 ID:???
>>446
はい。includeで呼び出してます。

>絶対パスって例えば、/home/user/public_html/php/php2/new.txt
これはサーバーのディレクトリの最初からってことですか?(すいません、勉強不足で)

ところで、ローカルでテストできるように C:\WWW\php\php2\log.txtってやったらできませんでした。
サーバーにUPしてみないとテストできないものなんでしょうか?
448nobodyさん:03/10/16 00:43 ID:???
ローカルでもフルパスはかわらないけど、、、
ローカルでは相対だと動作するの?
449441:03/10/16 00:52 ID:???
>>448
絶対パス(今までURLと思ってました)でできました!

/www/php/php2/log.txt

ありがとうございました。
450nobodyさん:03/10/16 01:44 ID:???
includeとかでディレクトリを指定するとき
フルパスで指定してるんだけど
ちょっと構成違う他のサーバとかに持っていくとき
フルパスだと書き直さなければならないことがあって
ちょいと面倒くさいのです。

このあたりエイリアス指定が出来るようにならないでしょうか?
あーでもphp.iniをいじるしかないのか?
じゃあ結局無意味かなー うーん

みんなどうしてるん?
451nobodyさん:03/10/16 01:57 ID:???
ベースを変数で持ち、そこからの指定を個々に持つ
ベース以下の構成を同じに保てば、ベースを替えるだけで済む
何も変えずにってのは難しいな
452nobodyさん:03/10/16 04:11 ID:???
>>450
相対パスにすれば良いんじゃない
453nobodyさん:03/10/16 05:37 ID:MA3MLSPW
php forumをいじってるんですが、
  'FORUM_NAME' => $forum_name,
という記入でFORUM_NAMEの中に特定の文字を追加したいんですが、どうすればいいですか?
454nobodyさん:03/10/16 08:28 ID:???
普通に相対パス指定で動きますが。
455nobodyさん:03/10/16 09:35 ID:???
>>450
エラーが出てますだけじゃよく分からんよ
相対指定にした時の2つのエラーメッセージ教えれ
456nobodyさん:03/10/16 09:43 ID:???
>>450
getcwdとかで実行時のカレントディレクトリが実際に自分が想定したディレクトリなのかを確認してみたら?
getcwd使えなかったらpassthruでlsするとか。
457nobodyさん:03/10/16 10:24 ID:???
自鯖とか使ってると相対指定じゃ済まないような配置に
することが多いので、絶対指定を多用してる
(まあ済むといえば済むが、いったん/を経由したりするほど)
458nobodyさん:03/10/16 12:11 ID:uRxYgEXf
それは鯖缶としてのセンスの問題だろう
459nobodyさん:03/10/16 12:57 ID:???
センスつーか、マウントしてる媒体の問題もあるし。
基本的に/var以外に書き込めない環境とか
460nobodyさん:03/10/16 13:05 ID:???
質問。
includeした後にその内容を変数に代入する方法ってある?
461460:03/10/16 13:09 ID:???
file関数発見で自己完結。
スレ汚しすまそ
462nobodyさん:03/10/16 14:00 ID:???
>>458
本7が言うことじゃない
463nobodyさん:03/10/16 14:03 ID:mtzpeVVl
464nobodyさん:03/10/16 15:13 ID:???
>>444
何故440へのレスに441がレスしているのかと。
465nobodyさん:03/10/16 16:45 ID:???
440以降のやりとりはちょっと頭が混乱するなw

includeも、include するファイルのパス指定と、
includeされるファイルの内容のパス指定がごっちゃになってる

で、>>440は解決してないのかい?
466nobodyさん:03/10/16 18:45 ID:???
PHP - 写メールBBSの設置についての質問です。
http://xxx.co.jp/data/xxxxx-xxx.mmf
を、
ダウンロードCGI 「ezget.cgi」を使用し、
http://xxx.co.jp/data/ezget.cgicat=devkdjx&file=xxxxx-xxx.mmf
のようにしたいのです。
どうやらURLリンクの所をいじれば出来そうなのですが、
アドレスの上に「ezget.cgicat=devkdjx&file=」を
付けるにはどのような感じにすればいいのですか?
分かる方が居ましたら教えてください
467nobodyさん:03/10/16 18:49 ID:???
>>466
糞マルチ氏ね!
468nobodyさん:03/10/16 18:55 ID:InaqVP3p
>>466
マニュアル読んでる?

文字列操作なら
http://php.s3.to/man/language.operators.string.html
http://php.s3.to/man/ref.strings.html
あたりを先ず読んでから訊けや糞が
469nobodyさん:03/10/16 18:58 ID:???
まぁまぁ、そう怒るなよ皆の衆
知ってるなら教えてあげればいいじゃないか
ケチくさいヤツらやなぁ
470nobodyさん:03/10/16 19:09 ID:uRxYgEXf
答える価値がない
471nobodyさん:03/10/16 19:11 ID:???
ゲラゲラ(^∀^)本7のくせに
472nobodyさん:03/10/16 19:53 ID:???
質問です。
このスレを読んだだけで本7のレスが特定できてしまうのですが病気でしょうか?
473nobodyさん:03/10/16 20:00 ID:???
>>472
正常です
みんな本7のレスは、わかってます。
474nobodyさん:03/10/16 20:39 ID:???
本7は生きてる価値がない。
自分で学ぼうとせず人に頼りっぱなしの奴に生きてる価値はないからね。
こういったDQNはいつの時代にもいるんだよ。
475nobodyさん:03/10/16 21:08 ID:???
このスレでよく使われている本7ってどういう意味?
476nobodyさん:03/10/16 21:24 ID:???
>>475
一部の頭の悪い厨房が答えられない質問が来たときに
スケープゴートにするやつ。
477nobodyさん:03/10/16 21:30 ID:???
>>476
あ、そーゆう意味ですか・・
どうもありがとうございました
これで今夜はぐっすり眠れる・・
478nobodyさん:03/10/16 21:35 ID:???
>>475
本7に関わらない方がいいよ
479nobodyさん:03/10/16 21:38 ID:uRxYgEXf
ファンが多いと困る
480nobodyさん:03/10/16 23:00 ID:???
>>382
遅レスすまないです。
オンライン版じゃなくchm版のPHP 4.3.3マニュアルです。
chm版4.3.2のはキーワードの所が化けてなかったのですが、上書きしてしまったのでもう打つ手がないのです。

_| ̄|○<ダレカタスケテ...
481nobodyさん:03/10/16 23:00 ID:???
>>479
本7様(・∀・)イイ!!
482440:03/10/17 00:31 ID:???
>>465
解決しました。ありがとうございました。
483nobodyさん:03/10/17 02:02 ID:???
もう_| ̄|○になりましたので質問します。。
http://users72.psychedance.com/logview.cgi?srv=aa.2ch.net
上記2ch鯖監視所みたいなのをphpで作ろうと思ってるのですが、

対照鯖のポートが落ちてるか落ちてないかの判定と出力まではできました。
そこで定期的にhtmlの内容を自動変更出力するにはどうしたらいいのでしょうか?
一応自宅鯖でやってるのですが、cronで定期的にphpファイルを実行してます。
---------------------
<html>
<body>
<?php
 <ポート監視コマンド;>
   if(!$fp){
    print"鯖落ちてます<img src="***">"; 
    }else{
    print"鯖生きてます<img src="***">";
    }
?>
</body>
</html>
-----------------------
こんな感じでサイトにアクセスされるだけで実行されてしまい、
鯖からのみの自動更新がうまくいきません。
自動で定期的にhtmlファイルを作成させたいのでヒントだけでもお願いします。。
484483:03/10/17 02:20 ID:???
あっ。もしかしてアクセス権の問題。。?
485nobodyさん:03/10/17 02:24 ID:lRor6c6a
fopenでURLが使えるのが便利なんですが
プロキシサーバを設定することはできませんか?
マニュアルやphp.iniを見たのですが、それらしいのが見つかりませんでした。
486nobodyさん:03/10/17 02:31 ID:r41INcsv
悪用の元になるので教えたくない
487nobodyさん:03/10/17 02:38 ID:???
echoとprintの違いを教えてください、、
488nobodyさん:03/10/17 02:55 ID:???
>>487
男は黙ってecho
489487:03/10/17 03:10 ID:???
男ですが黙ってられませんw;
490nobodyさん:03/10/17 03:22 ID:???
491nobodyさん:03/10/17 03:38 ID:???
>>487
printは返り値があるって違いだけ。
492487:03/10/17 03:39 ID:???
すみません。実は女でした。
493487:03/10/17 03:40 ID:???
>>491
あっありがとうございますw
494nobodyさん:03/10/17 03:44 ID:???
ちなみに、他言語もやってるならprint(基本的に出力はprintlnとかprintfが多いので、書き慣れの意味で)
PHP一筋ならechoがお勧めだろうか。あとは好みかな?
495nobodyさん:03/10/17 03:45 ID:???
…って、どっちが良いんですかって質問じゃなかったな、ごめん。
496nobodyさん:03/10/17 03:53 ID:???
>>485
curlとか
497nobodyさん:03/10/17 04:28 ID:???
PHPにて連想配列を関数に参照渡しする方法はありますでしょうか?

perlの場合、
sub config {
 my ($config) = @_;
 ${$config}{'test'} = 'test.';
}

&config(\%CF);

print $CF{'test'};
でいけるのですが、PHPの場合、
&config(\%CF);
の部分で%が使えずにどうしたものか悩んでいます。
498nobodyさん:03/10/17 05:23 ID:iyTCqXRR
会社のマシンで、データを共有するため
マシンを一つ設けて、運用しています。
どのようなデータかというと、フリーモデル、フリーテクスチャ、
参考となるムービ、プロダクションの作品等。
一応、管理者がディレクトリ分けして、
ネットワークコンピュータ上から
ユーザが、当てはまるであろうというカテゴリ(ディレクトリ)に、
データをコピーしておいています。

実際のところ、効率的に、利用されていないのが実情です。
現状を以下に記述します。
499nobodyさん:03/10/17 05:23 ID:iyTCqXRR
現在、サーバへ各個人が、
データを各々の見解で適当にアップロード(データをコピー)しています。
そのため、データを閲覧及び利用しようと思った際に、
必要となる情報にアクセスするのに時間がかかっています。
(結局、マスターCDから情報を引き出したり、以前作った素材をもう一度作って
 しまったり、同じ物をもう一度ダウントロードしたりと、2度でまになり、
 非常に、効率の悪い状態になっています。)

以上です。
500nobodyさん:03/10/17 05:24 ID:iyTCqXRR
そこで、サーバの利用方法の見直しを含め、
以下を目的とするシステムを構築しようと考えてます。

・制作する際に、必要となるデータへの効率的なアクセス
 (フリー素材、各アプリのフリープラグイン等)。
・様様な制作方法のアプローチの検討のための利用。
・システム化(フォーマット化&合理的な)された制作方法の確立。
・共通のデータを一つの共有資源にまとめ、各々のマシンのHDDデータの軽減。
 (ベストは、個人マシンのHDDに、プロジェクトファイルのみ。
  個人で、いろんなファイルはあると思いますが。)

機能的には、以下を考えてます。
501nobodyさん:03/10/17 05:25 ID:iyTCqXRR
○ブラウザでの運用、利用&管理

○カテゴリごとのプレビュー表示。(簡易サムネイル表示などあると
嬉しいです。)
(カテゴリ例:Free_Model,Free_Tex,Free_Motion...)

○ユーザのファイルアップロード機能
 予め管理者が決めておいた(カテゴリごとに)
 ディレクトリ以下へアップロード。
 アップロードした際に、日付時間表示。

○検索システム(条件付検索)
 (例えば、Q.春+花+黄色等で、データベース検索で、ブラウザ表示。)

上記のため、WEBベースでシステムを作ろうと思いますので、
上記の条件を全て満たさなくてもいいのですが、
これをベースにカスタムすれば、できるかもしれない程度で
いいので、なにか参考になるPHP(WEBアプリ)、CGIなどあれば
お願いします。

また参考になるサイト、意見、助言、このような機能も必要では?
と、いろんな情報をお待ちしております。

長文で申し訳ございませんが、ご教授お願い致します。
502nobodyさん:03/10/17 05:31 ID:???
>>497
\ -> & でも、Perlみたいにアドレスを送るわけではない。
503nobodyさん:03/10/17 05:34 ID:???
>>501
長文で悪いんだけど、こんなの知りませんかはスレ違い。
504nobodyさん:03/10/17 05:34 ID:r41INcsv
PHP5のせいでPHPの明るい未来は閉ざされた・・・というか終わったと思うんですがいかがでしょうか?
あと3年はPHP4が主流でそのごparrotに食われると予測してますが
505nobodyさん:03/10/17 05:39 ID:???
>>479
×ファンが多いと困る
○敵が多いと困る
506nobodyさん:03/10/17 05:40 ID:???
>>504
私は多言語派なので、parrotに関わらず優れた開発環境が出てくる分には大いに歓迎かなぁ…
507nobodyさん:03/10/17 07:00 ID:r41INcsv
>>506
私も多言語を包括する事は用途によって合理的な物を選べる点で良いと思うけど
同じような機能を有するものはクラス・メソッドの名称等は標準化していいと思う。
どうせなら利用・記述方法が共通でMFCやglibcのラッパを用意してもらえると
存在意義は大きく変わるんじゃないかな。しかもDelphi並の使いやすいIDEも平行して
開発すれば社会的な利益としては計り知れない。
でも、結局うやむやな仕様になって使いにくい環境になりそうな悪寒
508nobodyさん:03/10/17 08:14 ID:???
本7がさいきんおぼえたたんご。
包括、glibc、ラッパ
509nobodyさん:03/10/17 08:28 ID:???
>>502
なるほど。
ということは、やろうとしている方法はPHPではスマートでは無いのでしょうか?
複数の変数とかを一括で関数に渡せるので便利だったんですが…

みなさんはこういった場合、どういった方法で関数に複数の変数を渡していますか?
510nobodyさん:03/10/17 08:39 ID:???
>>509
Perlをやってると、そこらへん疑問に思うかもしれないけど
PHPだと、配列でそのまんま渡せます。
return array( $x, $y ); // return array( array(), array() );
= return [ @x, @y ]; と書くと分かりやすいかな。
ちとPerl久しぶりなので激しく間違ってるかも。
511nobodyさん:03/10/17 08:41 ID:???
return (\@x, \@y);
二つ渡す場合はこうか・・・。
512nobodyさん:03/10/17 08:58 ID:???
>>497

$config = array('a'=>'b');
function config(&$config) {
...
}
こんな感じじゃないの?
513nobodyさん:03/10/17 09:38 ID:???
>>510-512
レスありがとうございます。
やりたい事のサンプルとして、以下のようにしたら望みの動作をしてくれました。

function Config(&$cfg) {
 $chg[test] = 'testing.';
}

Config($CF);

print $CF{'test'};

>>510さん、どもです。なんか変な風に考えてしまっていたようです。
>>512さん、まさにその通りでした。

まだ先は長いですが、これで安心して寝れます。
514nobodyさん:03/10/17 09:40 ID:???
あ、記述ミスです。

function Config(&$cfg) {
 $cfg[test] = 'testing.';
}
515nobodyさん:03/10/17 10:12 ID:???
一定時間ごとにPHPスクリプトを自動実行するには
どうすればいいのでしょうか?
FTP接続で自動バックアップを考えています。

あとPHPののっかったhtmlファイルを拡張子がhtmlで実行するには
どうすればいいのでしょうか?
よろしくお願い致します。
516nobodyさん:03/10/17 10:41 ID:???
>>515
1. cron(at)でCGIかCLIのPHPスクリプト回すのが一番。
2. apacheだったら、httpd.confとか.htaccessで設定。
517nobodyさん:03/10/17 10:58 ID:???
>>516

やはりcronですか。難しそうですがこれしかないならチャレンジしてみます。

2番目のApacheの具体的な設定方法を教えていただけないでしょうか。
具具ってもいっぱい出すぎで該当のやつがみつけられないんです。
518nobodyさん:03/10/17 11:08 ID:???
>>517
httpd.conf で
AddType application/x-httpd-php .php .phtml
とかやってるだろ?
ここに .html を追加してapache再起動したらいいよ
519nobodyさん:03/10/17 11:36 ID:???
>>518
だめだぁ〜言われたとおり設定を行ってApache再起動
したけど単なるHTMLとして解釈されてしまうよ。
520nobodyさん:03/10/17 11:59 ID:???
htmlのtype宣言は消した?
521nobodyさん:03/10/17 12:10 ID:EO2RAth+
>>518
>>515さんじゃないですが、それが知りたかった。へぇ〜〜
522nobodyさん:03/10/17 12:15 ID:???
.htmlにするにはどうしたらいいか?
と考える時、.php でどうして動いてるのだろう
とは考えないのかね・・・
523nobodyさん:03/10/17 12:54 ID:???
別に考えないだろ・・
524nobodyさん:03/10/17 13:08 ID:???
php.iniで session.save_path にサブディレクトリを含むディレクトリを指定すると
garbage collectionが起こらず、session dataファイルがいつまでも残ったままに
なるらしい(php.ini-distのコメントにそう書いてあった)。
自分でcd /path/to/sessions; find -cmin +24 | xargs rm しろなんて…。
なんでこんな仕様なの?理由が知りたい。
525nobodyさん:03/10/17 13:23 ID:r41INcsv
ディレクトリの所有権が問題なんじゃない?
526524:03/10/17 13:44 ID:???
>>525
どういうこと?「/tmp以外ならgarbage collectionが起きない」ならわかるけど、
「subdirecotryを含む場合は起きない」という仕様だから、permissionとかowner
とかは関係ないような気がするが。
また525がいうとおりだとしても、「ディレクトリのpermissionやownerをこうこう
こういうふうに設定しろ」と説明すればいいだけのような気がするが。
どうだろうか?
527nobodyさん:03/10/17 15:33 ID:???
サブディレクトリが匿名ユーザに書き込み権限がないとmod_phpが生成する時は
Apache実行ユーザでいいと思うけどPHPエンジンがファイル操作する際はPHPのユーザ
権限で書き込みできないとDenyされるって事だと思う。
セッションの管理はmod_phpではなくZendエンジンでしょ?
528nobodyさん:03/10/17 15:43 ID:9WYomLWQ
何か厨な質問なんですが。
下記のようなスクリプトを書いて、phpself.phpとして保存し、
<?php echo $PHP_SELF; ?>

サーバにアップロードしてアクセスすると
Notice: Undefined variable: PHP_SELF in /path/to/phpself.php on line 1

と怒られます。しかし、phpinfo()では正常な値が帰ってきます。
スクリプト内で$PHP_SELFを使うのに何か特別な設定がいるのでしょうか?
OS:TurboLinux 7.3Server、Apache 1.3.28、PHP-4.3.3です。
529nobodyさん:03/10/17 15:49 ID:r41INcsv
$PHP_SELFはおじいちゃんなんだよ
530nobodyさん:03/10/17 15:51 ID:???
>>528
漏れのWindows2000, apache2.0, PHP4.2.2 ではちゃんと返ってくるな。

531524:03/10/17 15:53 ID:???
>>527
いや、だから、実行ユーザとか書き込み権限がどうのこうのという話と、
サブディレクトリがあるかないかで動作が変わるという話は、関係ないのでは?
/fooと/foo/barというディレクトリを考えたとき、双方に同じ書き込み権限を
設定してあっても、PHPの動作は変わるんだよね。
だったら、権限とか実行ユーザとかは関係ないじゃん。
532nobodyさん:03/10/17 15:54 ID:???
>>528
register_globalsがオフなんじゃないかな

その設定で取得したければ
echo $HTTP_SERVER_VARS['PHP_SELF'];
を使うべし。
533nobodyさん:03/10/17 15:57 ID:???
>r41INcsv
お前はクラックされたアップローダでも直してろって
534nobodyさん:03/10/17 15:59 ID:r41INcsv
>>524
セッション・データを生成するプログラムと後の始末をするプログラムは
別なんじゃないかな?
試しに/var/sessionでパーミッションを777にして試してみなよ。

535nobodyさん:03/10/17 16:01 ID:9WYomLWQ
>>529,530,532
どうもありがとうございます。
register_globalsは確かにオフです。
phpinfo()関数のときは値が帰ってくるのでそこまで頭が回りませんでした。

echo $HTTP_SERVER_VARS['PHP_SELF'];
こちらで上手く逝きました。感謝です。
536532:03/10/17 16:05 ID:???
>>535
もし一旦設定を変えられる環境だったら、register_globals をオンにしてみそ。
$PHP_SELF でも値を取得できるようになるから。

なんでも外部から与えたナマ変数をそのまま使えてしまうとうセキュリティ上の問題から
デフォルトでオフになったみたいです。

#実験が終わったらオフにもどしておくように

537nobodyさん:03/10/17 16:06 ID:r41INcsv
$_SERVER["PHP_SELP"]ってのもある。
$_SERVER
$_GET
$_POST
$_REQUEST
$_FILE
$_COOKIE

PHPマニュアルにも新旧で違いあるよ。
538nobodyさん:03/10/17 16:18 ID:???
>r41INcsv
お前はクラックされたアップローダでも直してろって 
539535:03/10/17 16:23 ID:???
>>536-537
どうもです。php.iniを変更して確認しました。
phpinfo()で返ってくる変数は現在の環境で有効だと思い込んでいたのが
間違いでした。これからはもう少しマニュアルを良く読みます。
540nobodyさん:03/10/17 16:33 ID:???
556 名前:nobodyさん[] 投稿日:03/10/17 06:46 ID:r41INcsv
結構イケてると思うんだが

http://org.s38.xrea.com/u_loader.zip

557 名前:nobodyさん[] 投稿日:03/10/17 06:52 ID:r41INcsv
サンプルはこんな感じ
300kbpsぐらいの鯖

http://s1.arigato3.net/~hon7/test/u_loader.php


ID:r41INcsv
ID:r41INcsv
ID:r41INcsv
ID:r41INcsv
ID:r41INcsv
ID:r41INcsv
ID:r41INcsv
541nobodyさん:03/10/17 16:38 ID:???
あんま奈々タンいじめんなよ
542nobodyさん:03/10/17 17:23 ID:???
本田奈々たん(*´д`)ハアハァ
543nobodyさん:03/10/17 17:51 ID:tuRUBulJ
すいません、
小数点以下を切り捨てたときに、.0を残したいのですが、どうすればいいでしょうか?
たとえば、3.00とかです。
round等をつかったときは、00を切り捨ててしますので困っています。
どなたか教えてください。お願いします。
544nobodyさん:03/10/17 18:02 ID:???
sprintf("%d.0",$int_value); とか自力でつければいいのでは?
545nobodyさん:03/10/17 18:40 ID:???
>>543
echo number_format(3.0, 2, '.', ',');
546nobodyさん:03/10/17 19:15 ID:???
sprintf()なら、 %.7f とかあるべさ
547nobodyさん:03/10/17 20:02 ID:i4Qqj/dj
$int_value = 3.00;
sprintf("%4.2f",$int_value);

こんな感じ?
548nobodyさん:03/10/17 22:41 ID:aDnPaay9
質問です。
$file = "/somedir/somefile";
$mode = '0750';
chmod ($file, octdec($mode) ); // works
でファイルのパーミッションが変更できるのはわかったのですが、
ファイルのパーミッションを取得する方法はありますでしょうか?

あと、ディレクトリにもパーミッションの取得、変更は出来るのでしょうか?
549nobodyさん:03/10/17 22:48 ID:???
>548
あるよ。
550nobodyさん:03/10/17 22:49 ID:???
あと、なんで試してみないの。
551nobodyさん:03/10/17 23:29 ID:???
>>548
この、0750 っていうのは8進数だからね。
取得時もそこに気をつければいい
552nobodyさん:03/10/17 23:45 ID:???
>>548
マニュアルのファイルシステム関数のところをよーく見れ
553548:03/10/18 00:12 ID:5gUtBB1U
>>549
取得の方法教えてください。

ディレクトリはそのままディレクトリを指定すれば出来るみたいですね・・
554548:03/10/18 00:15 ID:5gUtBB1U
マニュアル見てきました。
fileperms(string $file);
で出来るんですね。
ありがとうございます。
555質問です:03/10/18 00:18 ID:i7XRCw+X
2ちゃんからアドレスクリックすると
This domain name, "ime.nu", may still be available for registration!
って出るんだけどどうしたらいいのですか?
556nobodyさん:03/10/18 00:36 ID:???
557555:03/10/18 00:44 ID:i7XRCw+X
ごめんなさいパソコン初心者でどうすればいいのか全く
わかりません。詳しく教えていただけないでしょうか?
558nobodyさん:03/10/18 00:48 ID:BOWcHtAW
スレ違い棚
559nobodyさん:03/10/18 01:24 ID:???
560nobodyさん:03/10/18 15:20 ID:???
http://www.cybersyndrome.net/ で見かけるyahoobb串と、
生のYBBホストではいったい何が違うんでしょうか?
串のみ遮断したいんですが方法が思いつきません
561nobodyさん:03/10/18 15:24 ID:???
環境変数と開放ポート。
562nobodyさん:03/10/18 15:24 ID:???
しまった、PHPスレじゃねーか。
563nobodyさん:03/10/18 15:55 ID:BOWcHtAW
誤爆マンセー
564nobodyさん:03/10/18 21:37 ID:???
ファイルの最後の行はずっと変えないで
追記していくことってできるでしょうか。。。
もしできるのならやり方を教えていただけないでしょうか

こんな感じにです
aa
bb
zz

aa
bb
cc
zz

aa
bb
cc
dd
zz
565nobodyさん:03/10/18 21:38 ID:???
ソートして保存するって事か?
意味わかんね。
566nobodyさん:03/10/18 21:44 ID:???
スレッド式の掲示板のようなものを作ろうと思いまして
read.cgiのようにすると毎回処理するのが面倒くさいじゃないですか?負荷もかかるし
だから直接HTMLにしようと思いまして。。
んで一番下に投稿フォームをつけようと思うんです(これが例に出したzです

ごめんなさい。説明が下手で。。。
567nobodyさん:03/10/18 21:57 ID:???
記事とフォームはまた別になるんじゃないの。
フォームを記事として扱ってるわけでもあるまい。
必要な記事を全部出力した後に、フォーム用のHTMLなりを読み込めば良いんじゃない?
568nobodyさん:03/10/18 22:07 ID:???
hogehoge.phpの中身をこんな感じにして
一本化にしたいってことなんです
書き込まないときにはふつうにHTMLを
読むのとあんま変わんないようにしたいのす。

<? include(head.php); ?>
記事
<? include(form.php); ?>

>>567さん
ごめんなさい。。ちょっとわからないです
569nobodyさん:03/10/18 22:11 ID:???
あぁ、いまわかりました!!
記事部分も別のファイルにして
読むファイルを
<?
include(head.php);
include(main.php);
include(form.php);
?>
にしろってことですか?
570nobodyさん:03/10/18 22:21 ID:???
真性バカか釣りなのか・・・それが問題だ。
571nobodyさん:03/10/18 22:25 ID:???
ほんとにごめんなさい
マジです
始めて三日目です
マンモス本とグーグルでやってたんですけど
見つかりませんでした。。
572nobodyさん:03/10/18 22:41 ID:???
んで、初心者発言したことでうざがられてる事はわかるんですけれど
できれば指定した行を上書きすることが可能かどうかだけでも教えてください、、、
ググリますんで。。
573nobodyさん:03/10/18 22:44 ID:5gUtBB1U
/***/hoge/test.txtに属性変更をしようとしたのですが、許可されていませんとのエラーが出てしまいました。
ちなみに/hoge(ディレクトリ)の属性は777にしてあります。

なぜ変更できないのでしょうか?教えてください。
574nobodyさん:03/10/18 23:05 ID:???
セーフモードでオーナーが違うから、とか?
パーミッションを777にするやつはよくわかってないやつってことはわかる
575573:03/10/18 23:12 ID:5gUtBB1U
777にしているのはやはり関係ないですか。
セーフモードというのはなんでしょうか?
apacheのオーナーは「apache」になっていると思います。
ファイルを生成させるとapacheがオーナーになってるので。
576nobodyさん:03/10/18 23:56 ID:???
>>572
出来るけど定型処理じゃないから、ぐぐっても出てこないと思うよ。
やりたいんだったら「どうすればそうなるか(アルゴリズム)」を考えて、
素直に処理を書けばOK。あと通常、ファイルシステム上のテキストファイル
ってのは「指定箇所を書き換えて」という処理(ランダムアクセス)をするには
向かないもの(シーケンシャル)なので、移し変えながら処理をするスタイルを
取る点にも留意すべし。
577nobodyさん:03/10/19 00:02 ID:???
>>576
ぅう、ありがと。。
あれからちょっと調べてたらarr_popと言うのを
見つけたのでためしに書いてみました
これで出来るでしょうか。。

$put2 = file($PHP_SELF);
$form = array_pop($put2);
$puts = array_push($put2,$res,$form);
$fop2 = fopen($PHP_SELF, "w");
fputs($fop2, $put2);
fclose($fop2);
578nobodyさん:03/10/19 00:10 ID:???
ほー
アルゴリズムってそういう意味だったんだ。。
プログラム自体、HTML以外には初めてのことなので本当にわかんなかったんです
この板もはじめてで空気とか全然読めなかったけど
すごい親切な方ばかりでよかったです。。
579nobodyさん:03/10/19 00:41 ID:???
perlの質問は、Webprog初心者の質問にも流れるのに、なんでphpは分散しにくいんだろう。
php初心者質問とふつーの質問スレに分けても、ぜんぜん使い分けられないし。教えてプリーズ。
580nobodyさん:03/10/19 00:46 ID:???
煽られたーー
帰るー
581nobodyさん:03/10/19 00:59 ID:xFrCMz16
ご感想のみのレスって第三者にとってノイズでしかないと思うんだよね。
ゴミはゴミを呼び寄せるわけだし、どうして書き込むんだろう。
何かを感じてから書き込むまでが直結してて思考が介在せず反応だけ、ということはもしやボット?
582わむて ◆wamuteW7DE :03/10/19 01:26 ID:???

                   ┌―――――――――――
                   | みるまらー
               ,‐ '´ └V――――――――――
              / i レノノ))) \
                人il.゚ ー゚ノ人   /|
                / ̄ ̄Λ    / |
_______ --―ヽ/     ヽヽv――---__________
 ̄ ̄ ̄――-、-,---Λ日| . ´   ヽ|Eヨ |\___--、-,― ̄ ̄ ̄ ̄
        ,〇、-==||日\  λ/ |Eヨ | |===ー  ,〇、
               ̄ ̄  ̄    └―┘´
583nobodyさん:03/10/19 01:40 ID:7x9NCvqy
>>564
http://s37.1000gex.net/1000gex_4_1.zip

read.php
bbs.php
穴が開くほど嫁
バグが残ってるバージョンだが基本的な実装はちゃんと出来てる
584nobodyさん:03/10/19 01:53 ID:???
アホか
バグが残ってるのわかっていてなぜ直さない?
585nobodyさん:03/10/19 02:54 ID:???
バグ直す暇も惜しい位に他人に見てもらいたいのね。
586nobodyさん:03/10/19 03:05 ID:???
>583-585
帰ってくれ。
587nobodyさん:03/10/19 03:16 ID:7x9NCvqy
最新バージョンは公開してないって事。
ある程度の収穫があればまた公開するけど。
588nobodyさん:03/10/19 10:01 ID:???
>>564
こんな感じか?
$insert_line = "xxx\n";

$old_file = fopen('oldfile', 'r');
$new_file = fopen('newfile', 'w');
$prev_line = null;
while ($line = fgets($old_file)) {
if (!feof($old_file)) {
fputs($new_file, $prev_line);
$prev_line = $line;
}
else {
break;
}
}
fputs($new_file, $insert_line);
if (!is_null($prev_line)) {
fputs($new_file, $prev_line);
}
fclose($old_file);
fclose($new_file);
589nobodyさん:03/10/19 10:21 ID:???
中途半端に知識を与えない方が良い。
590nobodyさん:03/10/19 10:27 ID:???
>>588
本7臭がする
591nobodyさん:03/10/19 13:52 ID:???
こんな感じでやったらできました
みなさんありがとうございましたです。。。

$put2 = file($thisname);
$form = array_pop($put2);
$num = count($put2);
$put2 = join($put2,"");
$res = "$put2<dt><a name=\"$num\">$num</a> $pname$ptrip : $date$pmail</dt><dd>$pcontents</dd>\n<?require('form.php');?>";
$fop2 = fopen("$thisname", "w");
fputs($fop2, $res);
fclose($fop2);
592nobodyさん:03/10/19 17:05 ID:V9it2xD1
無料サーバーとかで、アカウント発行とかありますよね。
あれって、自動でやってるみたいなんですが、
どうやってるんでしょうか?
perlやphpでユーザーを新規で作ることってできるんでしょうか?
誰か教えてください。お願いします。
593nobodyさん:03/10/19 17:11 ID:7x9NCvqy
教えない
594nobodyさん:03/10/19 17:12 ID:APNZtqdb
特定の日付から○○日後ってのはどうすればよろしいでしょうか?

strtotimeでやれるような気もしたのですが、
「現在から○○日後」ってのしか俺には出来ません。
本やらマニュアル読んで考えたのですが、アホなんで分かりませんでした。
595nobodyさん:03/10/19 17:31 ID:???
その、現在を取得しているのと同じ形式で指定日時が取得できればいいわけだ
596nobodyさん:03/10/19 17:32 ID:7x9NCvqy
ヒントだけ

一日は86400秒
time()で得られる数値は1970年1月1日9時00分から現在までの秒数(UNIX時刻)
date()関数で変換
597nobodyさん:03/10/19 17:55 ID:V9it2xD1
>>592ですが、一度、perlで作ったのですが、うまくいきませんでした。
どうか教えてください。
お願いします。
お願いします。
598nobodyさん:03/10/19 18:01 ID:7x9NCvqy
>>597
cronは理解できるか?
599nobodyさん:03/10/19 18:05 ID:???
>>598
cron?
600nobodyさん:03/10/19 18:14 ID:7x9NCvqy
>>597
RedHatでしか試していないが
makeuser(シェルスクリプト)
#!/bin/bash
useradd $1
echo
echo "ユーザ名\"$1\"を追加しました "
echo "$1:$2" | /usr/sbin/chpasswd

echo "ユーザ名\"$1\"のパスワードを\"$2\"に設定しました"
echo
chmod 755 /home/$1
cp /etc/skel/* /home/$1/*

一分おきにcronでテキストに書き出した新規ユーザ情報を回収して
このシエルスクリプトに情報を渡して実行

テキストのフォーマットは
ユーザ名,パスワード,\n

601nobodyさん:03/10/19 18:15 ID:7x9NCvqy
これをcronで回す
<?php
$file_path = 書き出したファイルのパス
$fdat = file($file_path);
foreach($fdat as $var){
$user_data = split(','$var);
if(!(($user_data[0]) and ($user_data[1]) and (strlen($user) < 12)
and (strlen($user_data[1]) < 12))){
print "異常な情報です";
exit;
}
$res = exec("makeuser {$user_data[0]} {$user_data[1]}",$res_str,$var);
print $res_str;
?>
602nobodyさん:03/10/19 18:16 ID:7x9NCvqy
split(',',var);
の間違い
603nobodyさん:03/10/19 18:28 ID:???
>>600
PHPスレなんですが
604nobodyさん:03/10/19 18:32 ID:???
>>600
とかいう以前に、センスのない
なぜcronなどつかう
605nobodyさん:03/10/19 18:36 ID:???
みんな見落としてるよ
>>601にちゃんと「異常な情報です」って書いてあるじゃないか
606nobodyさん:03/10/19 18:36 ID:7x9NCvqy
>>604
君ならどうする?
607nobodyさん:03/10/19 18:51 ID:???
適当を書き並べて教わろうって腹だったか
なるほどおかしなコードだと思ったよ
そんな手には乗らないよ
608nobodyさん:03/10/19 18:57 ID:7x9NCvqy
イヤ君みたいな迂闊な人間から得るものは何も無いだろう。
cronを否定する論理が聞いてみたいだけ。
609nobodyさん:03/10/19 20:33 ID:???
cron使うくらいならinetdとかソケットでrootで実行するやつで
待ち構えていたほうがましだと思うが

あくまでもcronと比較して、だが
610nobodyさん:03/10/19 20:57 ID:???
611nobodyさん:03/10/19 20:58 ID:???
>>606
>>592をみれば
ユーザを追加するにはどうすればいいか
が論点なんだから
perlやphpからadduser呼べばいい
が答だろ
(それについてどうやるか というのはあとで)

それを、なぜcron使うのか逆に知りたいんだが
612nobodyさん:03/10/19 21:27 ID:???
JPGファイルっていつから動くようになったんですか。。。。
http://plaza4.mbn.or.jp/~arm_bbs/pic/lsd.jpg
613nobodyさん:03/10/19 21:34 ID:???
すご..............
目に悪くないか?これ
614nobodyさん:03/10/19 21:43 ID:7x9NCvqy
>>609>>611
root権限をsetuidしたプログラムを対外に公開する危険性はどうなるんだ?
それでも初心者に薦めるのか?
615nobodyさん:03/10/19 22:12 ID:???
>>614
cronも大差ないが
616nobodyさん:03/10/19 22:14 ID:???
そもそも、inetd 使うやつはsetuid 関係ないだろ
しかも実行結果が取得できる
617nobodyさん:03/10/19 22:22 ID:???
>>ID:7x9NCvqy
本7だろ?
618nobodyさん:03/10/19 22:25 ID:???
おっと、他スレ見て確信
昔Chatでその方法教えてやったんだよね。
>rootでcron回す
619nobodyさん:03/10/19 22:27 ID:???
結局他人の受け売りだったのか
さすが本7
620nobodyさん:03/10/19 22:36 ID:???
>>614
それもあるし、HTTPの場合1回の接続時間があまり長くかからない
ようにする必要もある。

621nobodyさん:03/10/19 23:32 ID:7x9NCvqy
inetdにしてもsetuidと危険度は変わりない。
ましてやroot権限で走るプログラムがHTTP関係と直にやり取りするのは
実用上のセキュリティー・モデルとしてありえない。
上で質問した本人の趣味サーバがどうなろうが知ったこっちゃないが
全権限を奪取された事にも気づかない初心者だった場合ネットワーク上の
脅威になるよな。
どんなものでも弱点はあるし完璧な物はないだろうが危険である認識を
促す事が重要だし可能な限り万全を施すべきだ
622nobodyさん:03/10/19 23:38 ID:???
>>621
cronでデータ拾って実行するのと
本質的に危険度は変わらないんだが。
むしろ適当こいたデータを機械的に
しかも一時に大量に処理する可能性が有る分怖い
623nobodyさん:03/10/19 23:57 ID:faEGA12Q
●●●マスコミの 「盗聴/盗撮」 は許されるの?その7A●●●    http://natto.2ch.net/mass/kako/1004/10049/1004950940.html
615 名前: 文責:名無しさん 投稿日: 01/12/29 21:36 ID:UPTFCLuM
自作自演組織その1

マスコミには番組を作るためのネタが尽きた場合に、
金をもらって「自作自演を請け負って」ニュースや番組のネタを提供をする
サクラの様な(公安警察のサクラとは違う)組織があるのではないでしょうか?
自作自演がばれない様にするためにマスコミ関係者とは直接には関係ない
「自作自演を請け負う組織」が存在するのではないかと思われます。

ここに書かれている盗聴に伴う集団ストーカー的な嫌がらせなどは
マスコミとつるんだ、さくら部隊が請け負っているのではないでしょうか?。
「自作自演請け負い組織」はネタを自作自演する意外にも、
マスコミ業界批判者を叩いたり、同じ業界人の犯罪行為の口封じのため
に動員されることもあるのではないでしょうか?

某テレビ局の記者が珊瑚に傷をつけてそれを番組のネタにした自作自演が
行われましたが、実はこういった行為は氷山の一角で
「組織的」日常的に行われているのではないかと疑ってしまいます。
マスコミ業界の腐敗はわれわれの想像をはるかに超えていると思います。
多分、自作自演組織の存在を知っているのはマスコミ業界の一部の人間だけでしょう。
大半のマスコミ人は知らないのではないのでしょうか?
624nobodyさん:03/10/19 23:59 ID:???
普通、DB管理するんじゃないの?
ユーザー情報は
625nobodyさん:03/10/20 00:22 ID:???
どれを普通とするかは状況による
626nobodyさん:03/10/20 00:22 ID:???
ポン7標準で話が進んでる。
627nobodyさん:03/10/20 00:28 ID:???
明々後日の方向に話が飛んでるな
628nobodyさん:03/10/20 00:57 ID:???
本7ネタおなかいっぱい
629nobodyさん:03/10/20 01:37 ID:4wGqq/Xx
>>622
それが怖いからさっき書いたPHP部でちゃんと判別してからシェルに渡す。
サービスが直接Webアプリと連携する事に比べ相対的に安全と思う。
鯖の話はこれで終了
630nobodyさん:03/10/20 01:43 ID:???
本7本7本7
631nobodyさん:03/10/20 02:37 ID:???
>>629
そもそもそういうことやるのにphpはないだろうと
cronしか、phpしか知らないならそういえよ
632nobodyさん:03/10/20 03:07 ID:4wGqq/Xx
そう来たか。
PHPスレだしPerlでは失敗したと言うから手元にあったシェルスクに合わせて
即席でPHP巡回スクを書いただけだが。
モデルとしてだけな。

でもPHPだけでサーバ構築する事はできるだろ。
問題はない
633nobodyさん:03/10/20 04:06 ID:???
PHPでuseraddってできるのですか?ブラウザから
634nobodyさん:03/10/20 04:58 ID:4wGqq/Xx
出来るが危険だから絶対止めておけよ
635nobodyさん:03/10/20 06:45 ID:???
>>634
早くuseradd使って申し込みフォーム作れよ
636nobodyさん:03/10/20 08:42 ID:???
>>592が言ってるアカウントってOS上のユーザアカウントの話じゃないんじゃねーの?
システム上のユーザ管理なんてOSのユーザ管理とは別だろ?
何故、adduserとか、そっちの方に話が行くのかが判らん。
637nobodyさん:03/10/20 08:45 ID:???
あー良く見たら「無料サーバで〜」とか書いてあった
俺の読み違いだ スマソ
寝起きなんで
638nobodyさん:03/10/20 09:17 ID:???
無料サーバとかがやってる申し込みしたらホームページが
設置できるようになるヤツの事を指しているように見えるから
OSのアカウント管理で良いんじゃない?
639nobodyさん:03/10/20 10:37 ID:???
モジュールPHPからは不可能なのは当然と言う前提で
進んでたみたいなのに、>>633-634みたいなやりとりが出るか・・・
640nobodyさん:03/10/20 11:22 ID:4wGqq/Xx
モジュールからでも間接的には可能ではある。
execで実行するファイルにroot権限が委譲してあればいいだけ。
万一インターフェース側からアタックが成功したら犯罪ツールの出来上がりだが
641nobodyさん:03/10/20 11:50 ID:???
それは本7だけ。
まともに知識がないから>>640のようなことが言えてしまう。
1から勉強しろ。
642nobodyさん:03/10/20 12:04 ID:4wGqq/Xx
なんだこいつ
643nobodyさん:03/10/20 12:19 ID:???
そもそも質問者は環境を書いてないし、adduserが使えるかどうかはわからんな
644nobodyさん:03/10/20 12:38 ID:4wGqq/Xx
結局は不安定極まりないPHPでOSツールを作る事がどうかって部分で
見解が変わるんだろうな。
645nobodyさん:03/10/20 12:43 ID:???
どうして本7っていうんですか?
なんかの開発コードネームですか?
646nobodyさん:03/10/20 13:25 ID:???
ここはPHP質問スレです。
647nobodyさん:03/10/20 15:06 ID:???
PHPでHTTPサーバ書いてみたんですが興味ありますか?
648nobodyさん:03/10/20 15:14 ID:???
>>647
俺もやった。

なんとなくイメージ的に本末転倒なところが楽しいよな。
649647:03/10/20 15:17 ID:???
せっかくおもちゃ作ったんでminiservにあやかって携帯min作ってみます。
650nobodyさん:03/10/20 15:18 ID:???
>>644
その不安定極まりないPHPで>>629のようなチェックをするのか?

サアコイ!
651nobodyさん:03/10/20 15:37 ID:4wGqq/Xx
普通はシェルスクかCとかPerlだわな
652nobodyさん:03/10/20 15:56 ID:???
大元の質問者はPerlで失敗したらしいが、なんでphpならうまく行くと思ったんだ?
653nobodyさん:03/10/20 16:15 ID:4wGqq/Xx
文法的に解せやすいからでしょ
654nobodyさん:03/10/20 16:44 ID:???
徳岡出て行け!!スレを荒らすな!!徳岡出て行け!!スレを荒らすな!!
徳岡出て行け!!スレを荒らすな!!徳岡出て行け!!スレを荒らすな!!
徳岡出て行け!!スレを荒らすな!!徳岡出て行け!!スレを荒らすな!!
徳岡出て行け!!スレを荒らすな!!徳岡出て行け!!スレを荒らすな!!
徳岡出て行け!!スレを荒らすな!!徳岡出て行け!!スレを荒らすな!!
徳岡出て行け!!スレを荒らすな!!徳岡出て行け!!スレを荒らすな!!
徳岡出て行け!!スレを荒らすな!!徳岡出て行け!!スレを荒らすな!!
徳岡出て行け!!スレを荒らすな!!徳岡出て行け!!スレを荒らすな!!
徳岡出て行け!!スレを荒らすな!!徳岡出て行け!!スレを荒らすな!!
徳岡出て行け!!スレを荒らすな!!徳岡出て行け!!スレを荒らすな!!
徳岡出て行け!!スレを荒らすな!!徳岡出て行け!!スレを荒らすな!!
徳岡出て行け!!スレを荒らすな!!徳岡出て行け!!スレを荒らすな!!
徳岡出て行け!!スレを荒らすな!!徳岡出て行け!!スレを荒らすな!!
徳岡出て行け!!スレを荒らすな!!徳岡出て行け!!スレを荒らすな!!
徳岡出て行け!!スレを荒らすな!!徳岡出て行け!!スレを荒らすな!!
徳岡出て行け!!スレを荒らすな!!徳岡出て行け!!スレを荒らすな!!
徳岡出て行け!!スレを荒らすな!!徳岡出て行け!!スレを荒らすな!!
655nobodyさん:03/10/20 18:19 ID:a3GYoigl
http://forums.webxtractions.com/viewtopic.php?t=151&postdays=0&postorder=asc&start=15
この2番目の"phpBB Desktop"ってやつを使ってみたくて設定してるんですが、
どうしてもそのフォーラム全部をとってきてしまいます。
これを特定のフォーラム内のトピックだけを拾うようにしたいのですが、どうすればいいでしょうか?
656nobodyさん:03/10/20 18:44 ID:tMjH1Di2
変数によって読み込むファイルを変えて、

if(!include($inc)){
require "notmatch.inc";
}
else {
require $inc;
}

としてみたのですが、存在しないファイルが指定された場合に
notmatch.inc
を読み込むようにしたのですが出力されるページに
Warning: Failed opening 'hoge.inc' for inclusion (include_path='.:/usr/share/pear') in /home/***/index.php on line 31
と出てしまいます。
どうすればエラーメッセージ無しで出来るのでしょうか?
657nobodyさん:03/10/20 19:27 ID:???
>>656
if(!@include($inc))
658nobodyさん:03/10/20 19:38 ID:tMjH1Di2
>>657
ありがとうございます!
659nobodyさん:03/10/21 02:07 ID:???
しつもーんです。よろしくおねがい。

$$hoge みたいにドルが2個ついているのってどんな意味なの?
660nobodyさん:03/10/21 02:43 ID:???
代金は、20ドルってことです。
661nobodyさん:03/10/21 04:32 ID:???
クラスのメソッドをクラス内で別ファイルから定義する事はできますか?
662nobodyさん:03/10/21 04:34 ID:rJx6CyQO
リードメール特集です。日本語での登録解説を作成しました。
これからは完全無料のメール受信で稼ぐ時代です。
これらは登録無料でかつメール受信(メール中のリンクをクリック)とHPのPaid2Clickのバナーをクリックするだけでお金がもらえます。
また紹介者を増やすことで収入は格段に上がっていきます!
月に100万も夢ではありません!!!
詳しくは↓↓↓をクリック!
http://www.geocities.jp/hajimenotamago/hajimenotamago.html

663nobodyさん:03/10/21 07:04 ID:???
>>659
$abc = 1;
$foo = 'abc';
$$foo += 1;
echo $abc;
とかやってみればわかるよ。
664664 1/2:03/10/21 10:11 ID:B3RGM3wq
PHP初心者コーナーが見当たらないのでこちらで、質問させていただきます。

PHPのメーリングリストをみていたら
「<?
//$_GET['key'] = stripslashes($_GET['key']);
//magic_quote_gpcがonの場合は上の行をアンコメント
$template = <<<HTML
入力文字列は {$_GET['key']} です
HTML;
?>
<html>
<body>
<?eval('echo "$template";') ?>
</body>
</html>
ここに、$_GET['key']に、'.exit().'が入力されていると何が起きるのでしょうか。exit()の代わりに、
system(something..)が入力されていると何が起きるのでしょうか。私は恐ろし
くて口に出す事さえできません。興味のある方は是非各自のテスト環境でお試し
ください。(中略) 注意:上記のコードを公開されたWebサーバにおいてはいけません。」

とかいてあったので、試して見ました。(続)
665664 2/2:03/10/21 10:11 ID:B3RGM3wq
私が書いたのは以下の通りです。

evaltest.php
----
<?
$_GET['key'] = stripslashes($_GET['key']);
//magic_quote_gpcがonの場合は上の行をアンコメント
$template = <<<HTML
入力文字列は {$_GET['key']} です
HTML;
?>
<html><body>
<FORM method="get" action="evaltest.php">
<INPUT type="text" name="key">
<INPUT type="submit" name="evaltest">
</FORM>
<?eval('echo "$template";') ?>
</body></html>
----
で、やってみたら何も起こらなかったんですが、何か書き方が悪いんでしょうか?
「入力文字列は .exit(). です 」って表示されるだけです。

何が起こるのが普通なんでしょうか?
よろしくお願いします。
666nobodyさん:03/10/21 11:05 ID:???
既に文字列として扱われるから
667nobodyさん:03/10/21 12:51 ID:???
eval()じゃあるまいし
668nobodyさん:03/10/21 17:19 ID:PdgDO9zt
リンク先のページへ移動する時、関数の値を持ち越す方法はどうするとよいですか?

当方、
http://www.yahoo.com?aaaaa=<?php print $aaaaa;?>

のようにしてたのですが、
これだと$aaaaaの値が2バイト文字になるとエラーでてしまいました。
669nobodyさん:03/10/21 17:21 ID:???
エンコードすれば?
670nobodyさん:03/10/21 17:49 ID:???
urlencode()
671nobodyさん:03/10/21 18:44 ID:???
>>665
$_GET['key']がどこで展開されるか、よく考えてみればわかる。

.exit(). とかじゃなくて、
<script language="JavaScript">window.alert('hoge');</script>
とか入力してみると面白いよ。
672nobodyさん:03/10/21 20:01 ID:???
>>664
こうすれば望みどおりの結果が得られる。

<?eval("echo \"$template\";") ?>
673nobodyさん:03/10/21 23:04 ID:???
初心者にお薦めの参考書教えてくださいm(_ _)m
674nobodyさん:03/10/21 23:05 ID:???
10日で覚えるPHP入門教室
675nobodyさん:03/10/21 23:20 ID:???
イカガ谷発・本7が教えるPHPリファレンス 第29版
676932:03/10/21 23:39 ID:???
>>675
なんかマジ売れそうな響きだな。
677nobodyさん:03/10/21 23:57 ID:???
>>674
俺も買った。

今はPHPマニュアルにお世話になってるが
678nobodyさん:03/10/22 00:32 ID:7rGRaPDl
海外のスクリプトでMySQLを使った「Active PHP Bookmarks」
h ttp://lbstone.com/apb/?version=1.1.02
を使おうと思ったのですが、
やはり表示されたページの日本語は文字化けしてしまいました。
データベースに書き込まれたデータも文字化けしているようです。

日本語に対応させたいのですが、
PHPってPerlのJcode.plみたいなのがいるんですか?
フォームからのデータ受け取りのところで何かするのですか?
データベースへ書き込むところで何かするのですか?

初心者で申し訳ないのですが、アドバイスお願いします。
679nobodyさん:03/10/22 00:39 ID:???
このスクリプトを参考にしてみなよ

http://1000gex.net/mtb
680nobodyさん:03/10/22 00:43 ID:???
>>678
普通は受け取ってすぐ変更するんじゃないかな。
日本語対応は、マルチバイト関数が使えなければ、jcode.phpsを使うべし。
681nobodyさん:03/10/22 00:57 ID:???
>>678
マルチバイト特有の処理が無いなら、フォーム〜スクリプト〜DBを
EUC-JPで統一すれば、まあそのまま通ることが多い。
jcodeが必要だののレベルだとスクリプト読めないと駄目。
682678:03/10/22 01:10 ID:7rGRaPDl
>>680
Multibyte Support enabled
Japanese support enabled
Multibyte (japanese) regex support enabled
とでてきたのでjcode.phpsを使う事になりそうです。

>>679
参考にしてみます。ありがとうございます。


以前にPHPを勉強してみようと思って
「はじめてのPHPプログラミング」という本をかってみたのですが、
読み進めるにしたがって疑問が増えていくのはどうして・・・_| ̄|○

echoとprintってどうちがうのでしょうか?
683nobodyさん:03/10/22 01:12 ID:???
>>682
おいおい、>>679は参考にはならんぜ
反面教師にはいいかもしれんが
684678:03/10/22 01:14 ID:7rGRaPDl
リロードしわすれてた・・・。

>>678
>jcodeが必要だののレベルだとスクリプト読めないと駄目。
ドキッ
いやいや、ありがとうございます。はじめより、希望が持ててきました。
EUC-JPに統一ですか。。。データベースの方はEUCとか書いてたので
スクリプトがちがうのかなぁ。
685678:03/10/22 01:20 ID:7rGRaPDl
>>683
(; ̄Д ̄)なんと...
686nobodyさん:03/10/22 01:23 ID:???
>>678
enabled なのでPHP単体で日本語処理関数が使えるってことなんだが...
jcode.phpはmb_*が使えない時に使う。

echo printネタはもう飽きた
687nobodyさん:03/10/22 01:28 ID:???
sting関数をmb_string系に置き換えれば通ると思う
688nobodyさん:03/10/22 01:32 ID:???
というか俺の環境では何もしなくてもマルチバイトでSJIS日本語が渡ってくるが。
689678:03/10/22 01:37 ID:7rGRaPDl
>enabled なのでPHP単体で日本語処理関数が使えるってことなんだが...
ギャー(恥)
所詮、初心者でした。どうやって使えるのか調べるのかと、infoを思いついたのだけど
知ったかはダメでしたね・・・。

>sting関数をmb_string系に置き換えれば通ると思う
(゚д゚)ウマー
690nobodyさん:03/10/22 02:02 ID:???
trrt
691nobodyさん:03/10/22 02:17 ID:???
>>682
男は黙ってecho
692nobodyさん:03/10/22 02:27 ID:???
俺はprintf()派だな
693nobodyさん:03/10/22 03:02 ID:???
デジャブかよ・・・夜中だがw
694nobodyさん:03/10/22 05:51 ID:???
すみません、もう限界ぎりぎりわからないので質問させていただきます。
自宅鯖でやってるんですが・・

phpをcrontabで実行しようとしているのですが、
php内にある、fogetsやfopen、fclose関数が有効な資源ではない・動かないってエラーが返ってきます。
--------------------------------------------
Warning:fgets():supplied argument is not a valid stream resource
in /var/www/html/test.php on line 7 他。
--------------------------------------------
cronを使わないで手動でブラウザから実行すると正常にfgetsも認識して動くのですけど、
cronで実行するとなぜか動きません。
crontabの中身は
一分毎に実行するように
*/1 * * * * /usr/local/bin/php /var/www/html/test.php
apacheの設定でもphpももちろん動くように設定してあります。(ブラウザ上で動きますから・・)
phpのバージョンは4.3.3、osはredhat7.3使ってます。
chmodも一応全て777に設定してあります。
わかる方ヒントだけでもお願いします。。
695nobodyさん:03/10/22 09:33 ID:???
cronで実行すると環境変数やカレントディレクトリが違うから。
su - user でsuして、その直後に/usr/local/bin/php /var/www/html/test.phpと
やってみると何かわかるかも。
(cron実行時のカレントはおそらくそのユーザーのHOME)
696nobodyさん:03/10/22 10:58 ID:???
>>691
でたっ。ファンですぅ

>男は黙ってecho
697682:03/10/22 13:23 ID:pQX+zas0
>>691
女でつ。
698nobodyさん:03/10/22 15:52 ID:???
699nobodyさん:03/10/22 18:39 ID:???
>>697
女なら黙ってスリーサイズ
700694:03/10/22 18:40 ID:???
>>695
こんんいちは>>694です。
無事に正常に動くことを確認できました。
すごく大事な事を教えてもらったようなので大変感謝してます。
ありがとうございました^^
701nobodyさん:03/10/22 20:25 ID:???
PHPというか実装方法に関する質問です。

とあるページが1週間に一回(火曜)更新されます。この一部を表示するPHPを書こうとしています。
PHPが開く度に相手のサーバに負担をかけてはいけないと思うので、できればキャッシュを
した方がいいと思ってます。

その場合みなさんなら、どうしますか?
できれば、cronは使いたくないです。汎用性を持たせたいので。
見に行くときに何かしらのトリガーが必要と思いますが、どうすればいいでしょうか?

・PHPのアクセスカウンターをみて、例えば1000回ごとなどに見にいく。

箇条書きにしようとしたのにこれ以上、思いつかない...
いい方法ありましたら、ご教授願えればと思います。よろしくお願いします。

702nobodyさん:03/10/22 21:21 ID:???
>>701
更新内容をHTMLファイルに吐き出して、一般ユーザーはそちらに
アクセスさせるようにするとか。blog系はそういうのが多い。
703nobodyさん:03/10/22 21:35 ID:???
>>701
更新されるタイミングが一定であれば、ユーザーのアクセスをキーにデータ取得処理を発動させれば良いのでは?

ユーザーアクセスがあった場合にアクセス日時を記録(上書き更新)していって、
1.前回のアクセスと今回のアクセスの日時を比較
2.更新日時をまたぐ場合のアクセスがあったらデータ取得処理
とか。
704nobodyさん:03/10/22 22:17 ID:???
PHPの吐き出すバイナリ・コードって実行直前はどこに移動するんですか?
705nobodyさん:03/10/22 22:43 ID:???
>>702,703
ありがとうございます。

>>703 さんの方法が良さそうですね。
なるほどと思っちゃいます。
更新のタイミングは、2,3日のうちのいつかって感じなので、もうちょっと考えないと
だめかもしれませんが、その2,3日の後のいつかに設定しておけば良さそうです。

smartyを使ってるページなので、smartyのキャッシュと組み合わせると良さげかな?

もうちょっと細かい実装方法を考えてトライしてみます。
ありがとうございました。
706nobodyさん:03/10/22 22:59 ID:???
>>704
あなたのパソコンです。
707nobodyさん:03/10/22 23:15 ID:???
取得したデータをファイルに保存しておいて、次回実行時には
そのファイルの修正時刻を stat() 関数で取得し、現在時刻と
比較。一定インターバルを経過してたら再取得で、それ未満なら
取得済みデータを返す、とか。
708nobodyさん:03/10/22 23:27 ID:???
>>707
条件判定にもう一ひねり加えて、保存ファイルの修正時刻が
一番最近の火曜日より前か後かにすれば、要求にピッタリ合う。
709704:03/10/22 23:51 ID:???
要するに逐次的にコンパイルするのであって単体のプログラムとして保持できるような物ではないって事でしょうか?
710nobodyさん:03/10/23 00:12 ID:???
ひょっとしてコンパイル結果のバイナリコードを保存して高速化したいと
思ってる?
それなら PHP Accelerator がおすすめ。
ttp://www.php-accelerator.co.uk/
711404.HDML ◆StMXML.EXE :03/10/23 00:13 ID:???
>>709
そんな悩みに、PHPAcceleratorがお応え致します。

ttp://www.ioncube.jp/
712404.HDML ◆StMXML.EXE :03/10/23 00:14 ID:???
>>710
か、被っただとー!?
713704:03/10/23 00:33 ID:???
>>710
>>711
ありがとうございます。
実はすでに実装してるんでよ。

高速化の意味もありますがWebアプリケーション以外の分野でPHPの
可能性を模索しているところなんです。
CやJAVAと並ぶ選択肢としてPHPを確立するには良質なソフトウェアが
高速動作する事が条件になると考えてます。
中枢部以外の所では初心者も積極的に開発が行えるようなシンプルな
OSツール(非カーネル)を作りたいと思って。
714nobodyさん:03/10/23 00:53 ID:pe/l7FMg
JpGraphでTrueType日本語フォントがうまく表示されません。
成功した方バージョンリスト晒して下さい。
おながいします。
715nobodyさん:03/10/23 01:46 ID:???
>>714
成功した人なんて日本にはひとりもいません。

もちろん、世界にもね。
716nobodyさん:03/10/23 02:03 ID:yh0ed223
サーバにあるファイルをユーザがダウンロードして、
そのダウンロードが終わったっていう事を取得するのは
どうしたらいいですか?
717nobodyさん:03/10/23 02:27 ID:9dbkTx6N
ファイルをPHPからストリームとして送信して最後に判定処理するしかないんじゃない?
718nobodyさん:03/10/23 04:31 ID:???
結局、phpでadduserできないんですか?
719nobodyさん:03/10/23 04:32 ID:???
>>718
できるって
720nobodyさん:03/10/23 04:41 ID:???
echoとprintの違(ry
721nobodyさん:03/10/23 06:42 ID:1axPgfdm
php5 betaが発表されてから大分だつけど正式バージョンはまだ
でないの?
722nobodyさん:03/10/23 07:29 ID:L/iQaCW8
5になってもOOP解らんし(;´Д⊂)
723nobodyさん:03/10/23 08:02 ID:???
激しく同意(;´Д⊂)
724714:03/10/23 09:02 ID:pe/l7FMg
>>715
>成功した人なんて日本にはひとりもいません。
>
>もちろん、世界にもね。

ヴェ?!マジ?

じゃ
http://ns1.php.gr.jp/pipermail/php-users/2002-August/009145.html
http://ns1.php.gr.jp/pipermail/php-users/2002-December/012273.html
http://ns1.php.gr.jp/pipermail/php-users/2003-June/016279.html
この人たちのは嘘?
725nobodyさん:03/10/23 10:28 ID:???
フォントファミリーの指定時の文字コードに注意せよ
726nobodyさん:03/10/23 12:07 ID:9dbkTx6N
>>718
何度も言うが外から使えるスクリプトには絶対させるなよ。
それとユーザ名・パスワードはきっちり無害化する事。
ヘタしたらマシンのroot権限奪われるぞ

$str = $_POST["username"];
exec("useradd",$str,$var);

入力データ
testuser;rm -rf /etc/hosts.deny
727nobodyさん:03/10/23 12:08 ID:9dbkTx6N
間違った

$str = $_POST["username"];
exec("useradd {$str}",$result,$var);

入力データ
testuser;rm -rf /etc/hosts.deny
728nobodyさん:03/10/23 12:29 ID:Cuunq9ay
プログラムから

POST /~user/bbs.php HTTP/1.0
Content-Length: 19

name=aaa&chat=hello

こんな感じでPHP4で作った掲示板にPOSTしてるのですが、
掲示板側で$_POST["name"]を確認してみてもからっぽでした。(aaaが入っていて欲しい)
どうすればプログラムから送ったパラメータが掲示板側で取得できるのでしょうか?

ちなみに、Perlで作った掲示板ではちゃんとパラメータが取得できました。
729nobodyさん:03/10/23 12:35 ID:???
>>718
adduserを実行できるのはrootだけ
ということで、phpからroot権限で実行する手段があれば可能

いくつか方法はあるけど、Perlでやったほうがいいと思うよ
オレはC + Ruby でやったけど
730日数(期間):03/10/23 12:44 ID:BjvblQZ2
なんか、こう日付がよくわからん。
例えば、現在の日付からから2003年12月24日までの
日数(期間)を求めたいときは、どんな風に書けばいいんだろう。
または、PHPの日付に関して詳しく書いてあるページとかないでしょうか?
731nobodyさん:03/10/23 12:59 ID:IMO93VsE
>730

詳しく書いてあるページは知らないけど日付の計算を簡単にやりたいなら
PEAR の Date パッケージ使ってみたら?

日本語の説明は無いけどそんなに大きなものじゃないからソースに目を
通せば使えると思うけど
732714:03/10/23 13:04 ID:pe/l7FMg
JpGraphのJpって日本て意味じゃないのかヨ・・紛らわしい。
マルチバイト標準で頼むわ
733nobodyさん:03/10/23 13:10 ID:???
>>730
PEARのDateを使うとよいかも。
ttp://pear.php.net/package/Date

require_once('Date.php');
$today = new Date();
$diff = Date_Calc::dateDiff($today->day, $today->month, $today->year,
24, 12, $today->year);
734nobodyさん:03/10/23 13:36 ID:9dbkTx6N
>>730
俺の場合はデータ用は全てUNIX時刻で記録してる。
表示する際にPHP標準のdate関数で置き換え。
PEAR使うと極端に重くなるのと、使える環境が前提なのがイヤなんで
必ず一般的な関数しか使わないよ。
UNIX時刻なら一日86400秒っていう定数で逆算できるよ
735nobodyさん:03/10/23 13:51 ID:???
処理1で、$a=***;
処理2で、$b=***;

$a == $b だったら、処理2に戻って
$a != $b だったら、処理3に進む
というのは、どうやって書けばいいのでしょうか?
736nobodyさん:03/10/23 13:56 ID:9dbkTx6N
while($a == $b){


}
737nobodyさん:03/10/23 13:59 ID:???
1日の定数なら(60*60*24)ってやるけどな
738nobodyさん:03/10/23 14:07 ID:???
>>736
ありがとうございます
739nobodyさん:03/10/23 14:38 ID:???
60*60*24+1秒の時もあるのでは。
740nobodyさん:03/10/23 14:45 ID:???
>>739
そりゃ計算できんわなw

それがあるからhh:mm:60 って表記が
エラーにならない環境があるんだよなー
741nobodyさん:03/10/23 15:30 ID:???
(゚∀゚)うるう秒といっても、実際には
100秒くらいを、100分の1秒ずつ増やして数えるから
時計上 hh:mm:60 という表記は 無いよ
パリからの電波をキャッチしる!
742nobodyさん:03/10/23 15:57 ID:9dbkTx6N
毎日時刻修正しときゃいいじゃん
743nobodyさん:03/10/23 17:13 ID:???
>>741
日本ではその年の1月1日か 7月1日の8時59分59秒の後に一秒挿入される
フランスは違うの?それとも方式変わったのか?
744nobodyさん:03/10/23 18:41 ID:9dbkTx6N
タイム・サーバ使ってりゃそんな事気にしなくていいよ
745nobodyさん:03/10/23 18:54 ID:???
ntp使ってない環境なんてほとんどないだろ
12:59:60 表記が有効かどうかって話だよ
746nobodyさん:03/10/23 19:20 ID:???
RFC2445はうるう秒に限って認めてるね。
747nobodyさん:03/10/23 21:18 ID:???
ユーザーの操作を受けて時間の掛かる処理を実行するスクリプトを作っているのですが、
とりあえず処理が終わる前に画面だけは表示しようと思って今は次のようにしています。

header("Location: " . [次の画面のURL]);
{
  時間の掛かる処理
}

ところが、これでは次の画面を表示するのは処理が終わってからになってしまいます。
何とか、処理が終わる前に次の画面だけでもすぐに表示させるようにできないでしょうか?
748nobodyさん:03/10/23 21:32 ID:???
バッファフラッシュでどうにかならん?
749747:03/10/23 21:40 ID:???
>>748
header(〜);
flush();
長い処理

ってことですよね?
残念ながら、どうにもなりませんでした。
750nobodyさん:03/10/23 22:04 ID:???
そりゃバッファが空やからね。
ダミーのhtmlを書いてやればロケーションに飛ばせる。
けど、時間の掛かる処理はバックグラウンドのスクリプトにexecでまわしてやるのが常道でないの。
751nobodyさん:03/10/23 22:06 ID:???
自分で計算したいなら、
ユリウス日で通日の差を計算するのがよいかと。
「通日 計算 function」でぐぐってごらん。
752nobodyさん:03/10/23 22:57 ID:9dbkTx6N
XSSでもやるのか?
753701:03/10/23 23:32 ID:???
亀レスすまそ。

>>707 さん
>>708 さん
のを足して、

取得したデータの保存ファイルの修正時刻を現在時刻と
比較。一定インターバル(例えば1日)経過してたら再取得で、それ未満なら
取得済みデータを返す。

が、良さそうですね。

>>708 さんの言う
> 条件判定にもう一ひねり加えて、保存ファイルの修正時刻が
> 一番最近の火曜日より前か後かにすれば、要求にピッタリ合う。

これちょっと僕にはよく理解できませんでした。
火曜より後か前かで判定すると、火曜より前または後の場合、毎回取得してしまうん
じゃないかと理解したのですが、そういうことでしょうか?
754nobodyさん:03/10/24 08:40 ID:???
>>750
よく、時間のかかる処理のステップごとに経過を表示していく
ページを見掛けるけど、あれってどういう実装になってるんでしょうね?
Location や Refresh ではなくて、JavaScriptを使ってるみたいだけど…
755nobodyさん:03/10/24 11:01 ID:???
>>754
世間じゃどうやってるか知らないけど
うちがやってるのは<img>読み込み
処理が終わったらimgを送りつけてる
JavaScriptではimgがダウンロード終わったか
見張ってるだけでいい
756708:03/10/24 12:09 ID:???
>>753
> > 条件判定にもう一ひねり加えて、保存ファイルの修正時刻が
> > 一番最近の火曜日より前か後かにすれば、要求にピッタリ合う。
>
> これちょっと僕にはよく理解できませんでした。
> 火曜より後か前かで判定すると、火曜より前または後の場合、毎回取得してしまうん
> じゃないかと理解したのですが、そういうことでしょうか?

火曜より前なら取得、火曜より後なら取得しない、ってことです。
もし取得したならファイルの修正時刻も現在に更新されるので、
次の火曜日が来るまでは取得しないことになります。
757708:03/10/24 12:11 ID:???
>>756
ただ、火曜日当日をどう扱うかが面倒かも。
758nobodyさん:03/10/24 12:47 ID:???
>>747
JavaScriptを使った、ブラウザの実装依存の方法だけど、
ユーザーのリクエストを受けて処理を実行するスクリプトを、
1. 「お待ちください」と表示するだけ
2. 処理を行い、結果を返す
の2つに分けて、1で
<body onload="window.location='2のスクリプトのURL';">
と書いておくってのはどう?
1と2とはセッションなりhiddenフィールドなりでデータを受け渡すように
すればいい。
759758:03/10/24 12:57 ID:???
>>758
あ、ダメだ。1のスクリプトにはフォームが存在しないから
hiddenフィールドは使えないや。2のスクリプトを呼び出す
URLに含めてしまうか、セッションのどちらかですね。
760nobodyさん:03/10/24 13:05 ID:OBlNcuw2
もっと根本的にやりたいならHTTPヘッダでコネクション継続を宣言して
その間に別プロセスで処理しながら出来上がった結果を送るストリームにするべき。
761nobodyさん:03/10/24 13:16 ID:???
>>760
サンプルとかないてすか?
理屈は分かるんですけど、実装方法がよく分かりません
762nobodyさん:03/10/24 15:10 ID:OBlNcuw2
>>761
マニュアルにストリームっていう所とPOSIXっていう所があるから見てみ?
763nobodyさん:03/10/24 17:24 ID:???
>>762
ありがとう
読んでみる
764nobodyさん:03/10/24 23:01 ID:9Mjaoib6
foo.html
-----
本ファイルの更新日時は<CODE>
<!--#config timefmt="%Y/%m/%d %X"-->
<!--#echo var="LAST_MODIFIED"-->
</CODE>です。
-----

boo.php
-----
<html>
</body>
<!--#include file="foo.html"-->
<?
echo "tesuto";
?>
</body>
</html>
-----

boo.phpのように ssi と php を混在させたファイルがあって,
ssi と php の両方の処理を行った結果を得ることはできますか?
AddHandler server-parsed .html .shtml
に .php を追加したりしてみましたができませんでした.

apache-1.3.27 + php-4.1.2 です.

やっぱ,apache2 にして出力フィルタをかまさないとダメですか?
765nobodyさん:03/10/24 23:14 ID:OBlNcuw2
関連性のないパーサを多重化するのってやっていい事なのかな?
766764:03/10/24 23:22 ID:9Mjaoib6
ウェブをあさってみるとリクエストは多いようですよ.
もしできたとして,そうすることががいいのか悪いのかはおいらにはわかりませんが...
ときに劣悪コードになる場合のほうが多いかもしれませんが.
なんかいい方法ないっすかねー
767nobodyさん:03/10/24 23:33 ID:???
boo.phpでssi用のコードをfoo.htmlに吐いてlocationで飛ばせばいいだろ。
だがssiで実現できる機能ならphpでも実現できる筈だが。
768nobodyさん:03/10/24 23:39 ID:OBlNcuw2
PHP用IDEを作ろうと思いVisual C++をインスコする為に箱を出して
きたんですが中のCDが無いんです。
どうしたらいいでしょうか?
769764:03/10/25 00:00 ID:???
>>767 
蟻が倒産
ssiを使わなければいけない事情があるのです.
770nobodyさん:03/10/25 00:29 ID:???
>>769
どんな事情? と聞かれる前に言えよな
771nobodyさん:03/10/25 00:33 ID:???
Perlで言うところの

$a =~ tr/abcdef/123456/;

と言う処理は標準の機能で実現出来ますか?
772nobodyさん:03/10/25 00:35 ID:???
>>771
できまs
773nobodyさん:03/10/25 00:49 ID:???
>>769
あんたの事情なんか知ったこっちゃない。
なぜssiとphpを混在させなければいけないのか、明確な理由があるのならわざわざ調べてアドバイスしたくもなるが、
意味不明な要求に対して調べてあげようとかは思わないな。
俺からみればssiを止めてphpにすればいいだけのような気もするし、ssiとphpを混在させる必要性が見あたらない。
ssiで言う
<!--#include file="foo.html"-->
は、
readfile("./foo.html");
で実現出来るしな。
774771:03/10/25 00:49 ID:???
>>772
ども。調べたら分かりました。
strtr()という関数で出来るみたいです。
775nobodyさん:03/10/25 01:00 ID:???
phpとSSIの混在は virtual()関数というそのものずばりがあるじゃないか
776nobodyさん:03/10/25 01:17 ID:???
phpでは、fcloseの時に、ファイルロックの開放はされない?
777nobodyさん:03/10/25 01:33 ID:???
>>771
ズバリ、ない。
$a = preg_replace($a,
array_map(create_function('$s', 'return "/" . $s . "/";'),
preg_split('//', 'abcdef', -1, PREG_SPLIT_NO_EMPTY)),
preg_split('//', '123456', -1, PREG_SPLIT_NO_EMPTY));
こんな感じ?

778777:03/10/25 01:36 ID:???
>>774
うう、strtr()があったか。
779nobodyさん:03/10/25 01:45 ID:hnti+XTr
初心者スレが見当たらないので、こちらで質問させて下さい。

PHPの勉強ができるサイトで、どこかオススメありませんか?
できれば、初心者からそれなりの内容(一般的なフリースクリプトが作れるくらい)
までカバーしてるところがいいです。
780nobodyさん:03/10/25 01:47 ID:???
すいません。質問してもいいですか?
よく、オフラインでホームページをみるのに、
ホームページを巡回してそのままごっそりファイルを保存してくるソフト
とかってありますよね。

これって、PHPで作れます?
curlとか使うと保存はできますけど、画像はさすがにダメですよね。
どうやればできるんでしょう?

すいませんけど知ってる方います?
781nobodyさん:03/10/25 02:10 ID:???
なんで画像が駄目だと思うの?
782nobodyさん:03/10/25 03:36 ID:BoyxXHL7
無意味に正規表現使うより1バイトずつ比較検証した方が効率よいと思われ。

int tr($str1,$str2)

しれ
783nobodyさん:03/10/25 04:33 ID:???
ソースをsjisで記述した場合、具体的にどういう不具合がありますか?
784nobodyさん:03/10/25 05:12 ID:???
EUCで表示すると文字化けする
785nobodyさん:03/10/25 12:25 ID:???
Windows厨であることがバレてしまう
786nobodyさん:03/10/25 13:22 ID:BoyxXHL7
デファクタ・スタンダードを厨と呼ぶとは自閉的だな
787nobodyさん:03/10/25 13:32 ID:???
>>783
デファクタ・スタンダードを厨と呼ぶとは自閉的だなといわれてしまうヤシを釣ってしまう
788nobodyさん:03/10/25 13:32 ID:???
お前、本7だな
789nobodyさん:03/10/25 14:02 ID:BoyxXHL7
だったらなんだ
790nobodyさん:03/10/25 14:21 ID:???
デファクタ デファクタ デファクタ
791nobodyさん:03/10/25 14:26 ID:kEDm0ZF/
redhatスレに投稿しようか迷いましたがまずはここで・・。
RedHatにインストールで入れると使えるhttpdに、同じくインストールから
入れると使えるらしいPHPを使えるようにする為の設定画面とか設定ツールとか
そういうものは無いのかな?
やっぱ /etc/httpd/conf/httpd.conf を自分で書き直さなきゃ駄目?
792nobodyさん:03/10/25 14:31 ID:???
>779
文法からTips・ライブラリ、目的毎につくるスクリプトまでの網羅的なサイトはない。
perlやpythonを触ったことがあるならマニュアルを引いて、興味のあるスクリプトを
読めば十分、ないなら以下で予習しつつテキストを買う。
http://jp.php.net/manual/ja/
http://php.hoge.org/php4_new/PHP4_Part-1.pdf

>783
パターンマッチでこける等。
793nobodyさん:03/10/25 14:36 ID:kEDm0ZF/
>780
wgetでいいじゃん
794nobodyさん:03/10/25 14:59 ID:BoyxXHL7
>>791
LoadModule modules/libpgp4.so
AddType application/x-httpd-php .php
795nobodyさん:03/10/25 15:00 ID:BoyxXHL7
訂正
LoadModule modules/libphp4.so
AddType application/x-httpd-php .php

激しく板違いなんで以後気をつけて
796nobodyさん:03/10/25 15:07 ID:???
( ´_ゝ`)本7のくせに
797nobodyさん:03/10/25 15:10 ID:???
>>791
apacheやsqlもろともインスコするツールはいくつかあったような気もするしなかったような気もするね。
rhのphpはmbオプションとかつくようになったの?
798791:03/10/25 15:16 ID:kEDm0ZF/
>>794,795
あんがと。httpd.conf書き換えて出来たよ。
>>797
RH9のphpは4.2.2でデフォルトRPMにmbオプションは付いていないのを確認。
まだ自分でrpm分解してconfigure書き換えなきゃ駄目みたい。
799nobodyさん:03/10/25 17:40 ID:BoyxXHL7
>>798
そんな事に無くてもRPM Sheachとかにphp-mbstring-4.2.3-9.i386.rpmってのがあるよ。
バージョン違うけど共通で使えるから問題ないよ。
tp://rpm.pbone.net/index.php3?stat=26&dist=12&size=144175&name=php-mbstring-4.2.3-9.i386.rpm

800764:03/10/25 18:24 ID:???
>>775
たんくす
気づかなかった・・・ includeやってダメだったからあかんのかと思った.
include と virtual の違いがわかった.・
けっきょこ virtual と ssi 駆使してうまくいったよ.
事情をおしおろって?そんなんできんですわ
ごめんあそべ
801nobodyさん:03/10/25 18:32 ID:???
本7へ

教授が1年目の医学生に最初の人体解剖の授業を教えている。

「人体解剖をするためには2つの事が出来なければならない。
第一は、恐怖を持ってはいけないと言うことだ。」

ここで教授は、死人の肛門に指を突っ込み、そして舐めた。
教授は学生に同じ事を目の前にある死体に行うように言った。
数分の沈黙の後、学生達は同じ事をする。

「第二は、鋭い観察力を持たなければいけないと言うことだ。
私は死人の肛門に中指を突っ込んだが、舐めたのは人差し指だ。」
802nobodyさん:03/10/25 19:14 ID:kEDm0ZF/
>>799
警告: php-mbstring-4.2.3-9.i386.rpm: V3 DSA signature: NOKEY, key ID f9651d5a
エラー: Failed dependencies:
php-common = 4.2.3 is needed by php-mbstring-4.2.3-9

どうすりゃいいのよ?
803nobodyさん:03/10/25 19:45 ID:???
レッツPHPの写メールBBSでの質問です。

auのケータイで、pmdファイルだとezgetを使ってDLさせるばあい
mailbbs.phpのリンク部に拡張子判別を追加すればいいのですが

// 画像がある時IMGタグ
if(eregi("\.(gif|jpe?g|png|bmp)$",$att)){
$imgsrc = '<img src='.$tmpdir.rawurlencode($att).' border=0 align=right vspace=5 alt="('.$size.'KB)">';
}//それ以外はリンク
elseif(trim($att)!=""){
$body.= '<br>添付:<a href='.$tmpdir.rawurlencode($att).'>'.$att.'</a>('.$size.'KB)';
}
//ここ以降を追加(ファイル名がpmdで終っていたらezgetを追加
elseif(eregi("\.pmd$",$att)) {
$body.= '<br>添付:<a
href=ezget.cgicat=data&file='.$tmpdir.rawurlencode($att).'>'.$att.'</a>('.$size.'KB)';

とすれば、通常アップロードしたファイルが http://xxx.xx/xxx/ezget.cgicat=data&file=xxx.pmd
となるはずなのですが上手くできません・・
何か原因があるのでしょうか?
いろんな所を見て回っても全く解決しません・・
どうかお願いします・・
804nobodyさん:03/10/25 20:09 ID:BoyxXHL7
>>802
オプションは何を渡した?
最悪 --nodeps したらいけるが
805nobodyさん:03/10/25 20:19 ID:kEDm0ZF/
# rpm -ivh php-mbstring-4.2.3-9.i386.rpm --nodeps
警告: php-mbstring-4.2.3-9.i386.rpm: V3 DSA signature: NOKEY, key ID f9651d5a
Preparing... ########################################### [100%]
1:php-mbstring ########################################### [100%]
/var/tmp/rpm-tmp.7905: line 1: /usr/sbin/php-module-install: そのようなファイルやディレクトリはありません
エラー: %post(php-mbstring-4.2.3-9) scriptlet failed, exit status 127

いけませんが何か?
806nobodyさん:03/10/25 20:31 ID:???
本7の言うこと真に受けるなってw
807nobodyさん:03/10/25 20:31 ID:???
>>803
CGI設置について質問
http://pc2.2ch.net/test/read.cgi/php/1054216089/
808nobodyさん:03/10/25 20:46 ID:???
本7はnodepマンセーだからなぁ
野良rpmマンセーだし
809先生:03/10/25 21:18 ID:???
本7さん、
×デファクタ
○デファクト
810nobodyさん:03/10/25 21:20 ID:???

わけわからんなぁ。もう。LINUXだろ?。
一番環境にやさしいOSなんだから、ソースからコンパイルしなさい。

それすらも出来ないなら、WINDOWSでバイナリを弄ってなさい。
うざい。




811nobodyさん:03/10/25 22:06 ID:???
WINDOWSでソースからコンパイルという手もあります
812nobodyさん:03/10/25 22:43 ID:???
PCの電源を切って寝るという手もあります
813nobodyさん:03/10/25 23:05 ID:???
つーか、インストールもできないやつはこの板に来るなって
自宅鯖板でも行っちまえ
814nobodyさん:03/10/25 23:12 ID:???
しかもなんで 4.2.3 なんだ。なんかバグがあったやつだろ。
815nobodyさん:03/10/25 23:44 ID:kEDm0ZF/
マルチしようかなぁ・・ボソ
816nobodyさん:03/10/26 00:28 ID:r+a985ln
>>805
nodepsが無効じゃないか?
普通はrpm -ivh --nodeps php-mbstring-4.2.3-9.i386.rpmだと思うが。
817nobodyさん:03/10/26 00:31 ID:r+a985ln
>>814
rpmベースだとライブラリ群に不整合でてくるから4.3.3とか入れるなら
他のアプリも一斉にバージョン上げないと簡単にはインスコできないんだな。
まずOpenSSLとlibcrypt あたりが引っかかる
818nobodyさん:03/10/26 01:05 ID:???
>>815

そうおもうなら、ぼそ、って言わないで、そうしたほうがよろし。
819nobodyさん:03/10/26 01:47 ID:???
>>814

「バグ」はどのバージョンでもあるから、別に問題じゃない。

それより、過去遺産に引きづられてるのならともかく、
最新のstable(風のだけど・・PHPの場合特に)バージョンでなく
旧い(4.2.Xなどの)ものを使う発想自体が、変だと、おもって
しまうが。

ttp://speakeasy.rpmfind.net/linux/RPM/rawhide/1.0/i386/RedHat/RPMS/php-4.3.2-7.i386.html
なんかでもだめなわけでつか?
って、rpmしらんので、勘違いだったらごめん

#でもこういうものって、商売上の保守=手抜きでの対応で使うもんであって、
#そうであっても、責任上、個人的にはソースコンパイルでテスト環境作っと
#くのが普通だろうと思うのだが違うのか?

820nobodyさん:03/10/26 03:37 ID:r+a985ln
>>819
RedHat9に素でインスコする事はできないだろうな。
対象にしてるglibcとかが違うと思う。
逆にソースコンパイルだと各ディレクトリのパスで初心者はつまずくだろうな。
PHPを拡張するならそう簡単にはconfigure出来ない。
出来てもmakeできない。
なんとかインスコできたが今度は他が動かなくなったりとかもある。
ヘタに無理なパッケージ構成をするとPerlやgccが動かない最悪の自体も起こりうる。
無難に手元の構成を少しずつ変えていくのがいいよ。
ちゃんと経過を手記に取っておこう


俺の場合の話だがとりあえず一日中いろいろググッたら大概の事は解決できたが
821nobodyさん:03/10/26 03:52 ID:k9CqgTd+
PHPの正規表現について詳しく載っているサイトや書籍教えて下さい。
822nobodyさん:03/10/26 04:15 ID:???
823nobodyさん:03/10/26 04:15 ID:???
php独自の拡張なんて無いじゃないっすか。
824nobodyさん:03/10/26 05:02 ID:r+a985ln
mb_stringやxsltは標準だと言いたいのか?
825nobodyさん:03/10/26 06:31 ID:???
826nobodyさん:03/10/26 07:14 ID:KifdnQ4N
スレ違い申し訳ありません。

yahooの日本シリーズMVP投票、みんなで「その他」に入れてみよーよ!
http://sports.yahoo.co.jp/baseball/jps/event/

面白くなるぞー!!時間がありませんのでよろしくお願いします。

一人1票です。
827nobodyさん:03/10/26 09:59 ID:???
>>820

他力本願rpmのmbstring対応版PHPを探すのに一日も時間かけるぐらいだった
ら、真っ正直にconfigure/makeのお勉強をして経験をつんどく方すすめるが・・・

LINUX各デイストリビュートとちがうUNIXの事実上標準のディレクトリ
構成も理解していることが今後も役立つだろうし。

#でもそもそも、mbstringオプション有効4.2.2 rpm
#は10分程度で発見できるとおもうが・・・・
#ttp://ftp.sanguine.jp/pub/sahughes/rhl/なんかじゃだめなのかい





828nobodyさん:03/10/26 11:10 ID:Il8xUlpX
迷った末にここに書かせてもらいます。板違いだったら誘導お願いします。。

訪問者がプロフィールを登録すると、その訪問者のプロフィールページが出来て、
そのページに簡単なBBSがつくようなスクリプトを探しています。

代替できそうなスクリプトはないでしょうか?
掲示板でやろうとすると、いずれプロフィール部分である親記事が消えてしまいます。

どぞよろしくおねがいします。
829nobodyさん:03/10/26 11:22 ID:cSEZvrn/
>>828
その位自分で書いたらどうなの。
830nobodyさん:03/10/26 11:25 ID:cSEZvrn/
>>827
>他力本願rpmのmbstring対応版PHPを探すのに一日も時間かけるぐらいだった
>ら、真っ正直にconfigure/makeのお勉強をして経験をつんどく方すすめるが・・・
configure/makeは誰でも出来ると思われ。
一般にrpmの分解構築の方がはるかに難易度高いぞ
831nobodyさん:03/10/26 11:31 ID:Il8xUlpX
>>829
やっぱりここに書くとそう返されてしまうんですね( ´・ω・`)
832nobodyさん:03/10/26 11:36 ID:r+a985ln
>>827
Makefile自分で作ったりてますが何か?
833nobodyさん:03/10/26 11:38 ID:???
>>828
掲示板で、スレッドの発言を固定できるのがあるから
それでやりたいことは代用できるんじゃないかな?
プロフィールをスレッドの親発言として書いてもらってから
スタッフがそれを固定に設定しなきゃいけないけど。
834nobodyさん:03/10/26 12:41 ID:Il8xUlpX
>>833
>スレッドの発言を固定できる
これは2chぽいのを探せば良いんですね。
そんなスレがあったような気がするので見てきます。
ありがとうございました(´∀`)
835nobodyさん:03/10/26 13:28 ID:???
>>834
これが初心者にも優しいらしいぞ。
XOOPS
http://pc2.2ch.net/test/read.cgi/php/1031736248/l50
836828:03/10/26 13:58 ID:Il8xUlpX
>>835
なんと今偶然XOOPSのサイトにたどり着いてた所でした。
でもあまり大規模なものじゃなくて良いんですよね。
こことか www.mac68k.com/php/phpBB2/
こことか earth.s13.xrea.com:8080/omegabb/index.php?mode=dispthread&threadid=10
も考えたんですが、使い方が難しいと閑古鳥になると思うので。
掲示板で内輪話をしがちな常連さんと
毎回始まる自己紹介スレ対策として使いたいんです。
837nobodyさん:03/10/26 14:01 ID:r+a985ln
ところで>>836はプログラミングできないのか?
838nobodyさん:03/10/26 14:06 ID:cSEZvrn/
>>836
>訪問者がプロフィールを登録すると、その訪問者のプロフィールページが出来て、
>そのページに簡単なBBSがつくようなスクリプトを探しています。
BBSは適当にリンク張れば良いし、あと何か作るとこあるか?
ってか30分かからんだろ?
ここはPHP質問だからサイト運営に関する事は他へ逝け
839nobodyさん:03/10/26 14:14 ID:???
>>836
この板は作る人の板なのよ
探してるだけの人は↓こちら
【CGI】こんなCGI探してますver.10【素材】
http://pc2.2ch.net/test/read.cgi/hp/1059878840/
840828:03/10/26 14:24 ID:Il8xUlpX
>>837
カスタマイズしかできません。。
>>838
http://www.google.co.jp/search?q=cache:FceB1qYKtVAJ:community.r-s.co.jp/top/+%E3%83%81%E3%82%A7%E3%83%AA%E3%83%BC%E3%83%8F%E3%82%A4%E3%83%84&hl=ja&ie=UTF-8
こんなのがやりたかったのです。
>>839
誘導ありがとございます。
>>833さんで十分だったんですが、返事を貰えたのでつい書いちゃいました。
841nobodyさん:03/10/26 14:57 ID:cSEZvrn/
>>840
二度と来るな!
842nobodyさん:03/10/26 16:12 ID:PUCNyIAg
メールフォームを作っているのですが
チェックボタンを設置したいと思います。
赤(red)青(bule)黄色(yellow)としたとき「()はname」
書き出すときのネームもそれぞれ
print ("$red");
print ("$bule");
print ("$yellow");

としないといけないのでしょうか?でも、これだとチェックボックスの
変数名の数だけprintが増えてしまいます。
何か良い案はないでしょうか?
843nobodyさん:03/10/26 16:28 ID:???
>>841
なんか嫌なことがあったの?( ´・ω・`)
844nobodyさん:03/10/26 16:29 ID:cSEZvrn/
>http://ns1.php.gr.jp/pipermail/php-users/2003-March/014551.html
>3. イメージ内で日本語を使う場合、イメージライブラリGDでJISX0208を定義して
>おく方が便利です。また、GD2では日本語の小さいサイズのフォントの描画が
>うまく行えない場合があるようです。
GDでJISX0208を定義って具体的に何処に定義するんだろう?
845nobodyさん:03/10/26 16:33 ID:cSEZvrn/
>>843
>なんか嫌なことがあったの?( ´・ω・`)
ソースも書かない奴が拘ったサイト持ちたがるってのがムカついた。
ちと言い過ぎたスマン
846nobodyさん:03/10/26 17:24 ID:???
>>845
よかった。マターリいきませう。
847nobodyさん:03/10/26 18:06 ID:???
>>844
gdのconfigureの時に指定する。
./configure --other-options --enable-jisx0208
他のプログラムからも使われるライブラリなので下手に触ってどうなっても知らんよ。
848nobodyさん:03/10/26 18:53 ID:wvZoLB0c
>>842
そもそもダブルクオートで囲む意味がわからない。
849nobodyさん:03/10/26 19:18 ID:cSEZvrn/
GDの現在のオプションがどうなってるか知りたいんだがなぁ。
phpinfo()出力するしか方法ないのか。
今のに追加してmake instすりゃどうよ?
>>847
そんなオプションなど無いが..
850nobodyさん:03/10/26 19:20 ID:cSEZvrn/
>>842
何を作ろうとしているのかさっぱり伝わらないが
それよりprint増えると何が問題なの?
851nobodyさん:03/10/26 21:31 ID:r+a985ln
make.statusというファイルに以前のオプションが全て記録されてるから
それを新しいオプションつけて実行したら適切に再コンパイルできるよ。
>>849

Delphiをインスコしたんで何か作ろうと思うんですが日本語フルサポートの
PHP用IDEっていかがなもんでしょ?
852nobodyさん:03/10/26 21:39 ID:???
zendかwebstudio
853nobodyさん:03/10/26 22:00 ID:???
>>846は氏ね
854nobodyさん:03/10/26 22:02 ID:r+a985ln
初心者にJAVAをインスコして使えってのは無理があると思う。
Delなら何のライブラリも要らないし。
初心者向けを狙ってみよう
855nobodyさん:03/10/26 22:03 ID:???
>>842
foreach (array($red, $blue, $yellow) as $color) {
print($color);
}
ってことがしたいのか?
856nobodyさん:03/10/26 22:36 ID:???
ID:r+a985lnは本7
857nobodyさん:03/10/26 22:39 ID:???
>>842
チェックボックスの事を言ってるんだったら
<input type="checkbox" name="color[]" value="red">
<input type="checkbox" name="color[]" value="blue">
<input type="checkbox" name="color[]" value="yellow">
に汁。どういう風に送られてる来るかは自分で調べてくらはい。
858nobodyさん:03/10/26 22:44 ID:cSEZvrn/
>>857
ハァ?

ところで本7って何?
859nobodyさん:03/10/26 23:39 ID:???
>>853
なんか嫌なことがあったの?( ´・ω・`)
860nobodyさん:03/10/27 00:05 ID:???
>>859が嫌
861nobodyさん:03/10/27 00:30 ID:???
顔文字とか使うなよ...
862nobodyさん:03/10/27 00:34 ID:???
(´・ω・`)

この顔文字って、何かイラつく
863nobodyさん:03/10/27 01:00 ID:???
(´・ω・`)
864nobodyさん:03/10/27 01:01 ID:???
>>833さんで十分だったんですが、返事を貰えたのでつい書いちゃいました。
865nobodyさん:03/10/27 01:57 ID:???
>>862
(´・ω・`)←これは基地外のしるし
http://aa.2ch.net/test/read.cgi/kao/1064147567/
(´・ω・`)←こいつをぶち殺すスレ
http://aa.2ch.net/test/read.cgi/kao/1060381471/
(´・ω・`) ←鼻に金玉ついてる
http://aa.2ch.net/test/read.cgi/kao/1038965538/
866nobodyさん:03/10/27 01:58 ID:???
|. ∧  ジ---あの…
|ω・`)
| ⊂ノ
|-u'
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄

こういうの見ると殺意が沸いてくるだろ。
867nobodyさん:03/10/27 02:46 ID:???
本7にはいつも沸くけどな
868nobodyさん:03/10/27 06:51 ID:???
>>851
> 日本語フルサポートの
> PHP用IDEっていかがなもんでしょ?
Eclipseって日本語サポートしてないの?

869nobodyさん:03/10/27 07:29 ID:LEbE/E2f
初心者はJAVAのインスコなんてやってられないと思うんだが
870nobodyさん:03/10/27 10:40 ID:???
PHP4とPHP5の違いはなんですか?
871nobodyさん:03/10/27 10:51 ID:pQKowmE2
1こあがった
872nobodyさん:03/10/27 11:05 ID:???
バージョンだな
873nobodyさん:03/10/27 13:41 ID:???
>>870
角度とか
874nobodyさん:03/10/27 14:41 ID:j8347ymE
感度とか
875nobodyさん:03/10/27 15:15 ID:???
あの、echoとprintの違いを教えてください。
私は男じゃありません。工事済みニューハーフです。
876nobodyさん:03/10/27 15:34 ID:???
>>875
男は黙ってecho
877nobodyさん:03/10/27 15:36 ID:???
echoってなんか可愛いやん
878nobodyさん:03/10/27 15:37 ID:???
マジレスすると >>209 のリンク先
879nobodyさん:03/10/27 16:23 ID:???
女はしおらしくprintf
880nobodyさん:03/10/27 16:28 ID:???
echoを書くとき、頭の中では「えちょ」と言ってる自分がいる。
881nobodyさん:03/10/27 16:50 ID:???
そうですか。個人的にはプリントはプリんとしていてすきでしたが、明日からはechoにしてみます
882nobodyさん:03/10/27 17:51 ID:???
すみません、男ならechoに関する質問で申し訳ないのですが、

ファイルの中身が例えば
----jump.txt----
hanage<br>\n
bo-bobo-<br>\n
----ここまで----
#テキストの中では実際に\nは表示されてません。
となっていて、
<?php
$fp=fopen("jump.txt","r");
$tokoroten=gets($fp,128);
echo $tokoroten;
fclose($fp);
?>
とすると、hanageしか表示されません。\nがあるからもちろんのことだと思いますが、
全部表示させるためのコマンドってありますでしょうか・・_| ̄|○オナガイシマス・・

環境:php4.3.3 OS:redhat7.3
883882:03/10/27 18:10 ID:???
foreachと配列とfile()の組み合わせで解決しました。すみません・・。
念のためメモをば。

<?php
$data_array = array();
$data_array = @file("jump.txt");
foreach ($data_array as $val);
print $val;
?>

--表示結果--
hanage
bo-bobo-
-----------
お騒がせすみません。
884nobodyさん:03/10/27 18:56 ID:???
配列を順番にファイルに格納するにはどうすればいいんですか?
885nobodyさん:03/10/27 19:34 ID:j8347ymE
for文
886nobodyさん:03/10/27 22:11 ID:???
>>882
もっとマニュアルを読むべき。
PHP 4.3.3 だったら file_get_contents が使えるはず。

echo file_get_contents('jump.txt');
887nobodyさん:03/10/27 22:27 ID:???
>>886
readfileと同じじゃないか。
なぜこれが追加されたんだろ。
888nobodyさん:03/10/27 23:38 ID:???
readfile() は出力しちゃうし、 file() は改行で区切って array にしちゃうのが違う。
889nobodyさん:03/10/28 01:26 ID:???
phpはシンプルな関数を組み合わせるという方向に行かず
あらゆる完結した関数を追加してくとこがすごいというかなんというか・・
890nobodyさん:03/10/28 01:58 ID:???
配列とかをCVS形式に変換する関数ってなんでしたっけ?
891nobodyさん :03/10/28 02:26 ID:???
ぷららで設置するには何か特別な事が必要ですか?
cgiサーバーにアップしたんですけど、phpにアクセスするとダウンロードが
始まっちゃう。。
892nobodyさん:03/10/28 02:34 ID:???
>>891
ぷららでPHPは使えない
893nobodyさん:03/10/28 03:14 ID:???
>>892さんレスありがとうです。

でもぷららサーバーの方でphpを使ってらっしゃる方が
結構いるみたいなんですが。。
894nobodyさん:03/10/28 04:12 ID:???
895nobodyさん:03/10/28 04:22 ID:mgX5GCy+
>>890
技評のポケリ引いてみたけど使いにくいし見つからなかった。
ついでになんだかブルーになって来た。
896nobodyさん:03/10/28 04:57 ID:???
>>890
>>895
cvsじゃなくてcsv違うの?
fgetcsv()
897nobodyさん:03/10/28 05:21 ID:???
既出の質問だったらすいません。
printとechoってどう使い分ければいいですか?
ちなみに今性同一性障害です。
898nobodyさん:03/10/28 05:27 ID:mgX5GCy+
敢えて言うなら気分
899nobodyさん:03/10/28 05:52 ID:???
RedHat標準のPHPに何も設定しないで普通に日本語TrueTypeフォント使えてる
方って居ます?
どうしても使えないんだけどな。
900nobodyさん:03/10/28 06:54 ID:???
>>895
マニュアルを探すより、自分でちゃちゃっと書いたほうが早いと
思うけど。
901nobodyさん:03/10/28 07:46 ID:???
>>899
たぶんそれは,RPMのオプションの問題と思われ。
rpm -qa | grep php でRPM のバージョンを確認。
php -qi | grep gd または phpinfo(); をブラウザから見て確認してみ。
ひょっとしたら RPM使えるバージョンがあるかも。
902nobodyさん:03/10/28 07:47 ID:???
>>897
あなたが男女を使い分けるように。
903nobodyさん:03/10/28 08:25 ID:???
>>890
join(",",$array)

ちなみにBs_CsvUtil.class.phpってのが便利だよ。
904nobodyさん:03/10/28 08:58 ID:???
俺はimplode使ってる
implode(",",$array)
905nobodyさん:03/10/28 09:00 ID:???
>>903
そこまで簡単ではないよ。

function join_csv($array) {
return implode(',', array_map(create_function('$item',
'if (preg_match("/[\",\r\n]/", $item)) {
return "\"" . preg_replace("/\"/", "\"\"", $item) . "\"";
}
else {
return $item;
}'), $array));
}
906nobodyさん:03/10/28 10:17 ID:???
CVSはコンビニエンスストアだな
907nobodyさん:03/10/28 12:41 ID:???
>>897
男は黙ってecho
908nobodyさん:03/10/28 12:43 ID:???
おどれら。

php.iniに変更を加えたら、アパッチ再起動必要か!?

答えろ!!!! オネガイシマス
909nobodyさん:03/10/28 12:51 ID:mgX5GCy+
>>908
必要です、これ世の中の定説!
910nobodyさん:03/10/28 12:53 ID:???
>>908
カエレ
911nobodyさん:03/10/28 12:55 ID:???
設定変更と子作りは計画的に
912nobodyさん:03/10/28 13:00 ID:???
>>901
>たぶんそれは,RPMのオプションの問題と思われ。
>rpm -qa | grep php でRPM のバージョンを確認。
>php -qi | grep gd または phpinfo(); をブラウザから見て確認してみ。
という事はそのままじゃ使えないという事か。
phpinfo()見る限りttfもgdも有効になってて問題ないと思うのだが。
もう少し詳しくアドバイス頂けると嬉しいのですが。
913nobodyさん:03/10/28 13:05 ID:???
PHPが勝てる言語ってなにかありますか?
914nobodyさん:03/10/28 13:07 ID:???
勝ち負けという観点が既におかしい
915nobodyさん:03/10/28 18:53 ID:???
mod_phpってなんですか。
916nobodyさん:03/10/28 19:07 ID:???
modzilla で PHPのサイトを見るためのツール
917nobodyさん:03/10/28 20:29 ID:???
PHPマニュアルの「PHP 型の比較表」に
どうも間違いがあるのを見つけちゃったみたいなのでつが、
どこに報告すればよいですか?
918nobodyさん:03/10/28 20:44 ID:mgX5GCy+
>917
心の中にしまって置いて下さい
919nobodyさん:03/10/28 20:45 ID:???
>>917
とりあえずここに報告しる!
920nobodyさん:03/10/28 21:14 ID:oaW5yEkT
Windows上のApache & mod_php環境で、HTTPのレスポンスの
ヘッダを全く出力させないようにするにはどうしたらいいですか?
# そもそもPHP側だけでどうにかなりますか?
921nobodyさん:03/10/28 21:17 ID:???
よくわからないエラーがでましたので教えてくさだい。。

構文エラーで
Parse error: parse error in /var/www/html/test.php on line 73
と出たのですが、72行までしかないのにエラー個所が73行目と指摘されています。
なぜでしょうか・・
今まで普通に動いてたのに、ちょっとphpファイルのどこかをいじったらこうなっちゃいました。
922882:03/10/28 21:25 ID:???
>>886さん
レス遅くなってすみません。
大変参考になりました〜

>>893さん
私もぷららでphp使ってます。
ぷららのDDNSサービスを利用した自宅鯖なので他の人達もそうなんじゃないんでしょうか?
923921:03/10/28 21:48 ID:???
解決しました。

途中の } が抜けてただけでした。回線切手エースコンバット4やってきます。

しかし、なぜ最後の行がおかしいって指摘されるんだろう・・。
924nobodyさん:03/10/28 21:48 ID:???
>>921
最後の行に } を追加する
925nobodyさん:03/10/28 21:49 ID:???
あー解決してんじゃん
926nobodyさん:03/10/28 21:55 ID:hb5ZtiDR
質問です。このスクリプト script.s16.xrea.com/2ch/ に、
スレッドが上下しても変動しない番号を親記事に付けたいんですけど
どうやれば良いのでしょうか?
スレッドはsageっ放しで動かなくてもいいです。
927nobodyさん:03/10/28 22:52 ID:???
既出の質問だったらすいません。
printとechoってどう使い分ければいいですか?
ちなみに今男ですが彼氏ができました。
928nobodyさん:03/10/28 23:06 ID:???
>>927
ひねりが足りん。

モウアキタ
929nobodyさん:03/10/28 23:08 ID:???
>>927
男は黙ってecho
930nobodyさん:03/10/29 00:10 ID:???
>>920
レスポンスヘッダ無しだとブラウザが困ると思うぞ。

>>923
PHPさまが最後の行まで読んでからオカシイと気付いたから。
931nobodyさん:03/10/29 00:16 ID:Z4ZWpCRl
PHPの文字列関数を実装するソースはどのファイルでしょうか?
C言語の勉強に見たいのですが
932nobodyさん:03/10/29 00:57 ID:fvmK/iUV
質問です。
ホスト名が国内ドメインかどうか判定したい場合の一般的な方法はなんでしょう?

それとこれはついでになりますが、プロキシ判定で80や8080などの
一通りのポートへ接続を試みて成功したケースがプロキシ接続とみて
問題ないでしょうか。

2chの判定ルーチンが80ポートをスキャンしてなかったような記憶があるのが
少し引っかかっているのですが…。

当方ネットワークは詳しくないです。
933php:03/10/29 01:23 ID:???
ここに、自動でフォームに書き込み、送信したいのですが
どうすればいいでしょうか。

皆さんも遊んでみてください。

http://pya.cc/bt/main.php
934nobodyさん:03/10/29 01:49 ID:???
>>921
ext/standard/string.c

>>932
gTLD的にいけばjp。
80はWebサーバのポート。問題あり。
935nobodyさん:03/10/29 03:57 ID:???
>>917
ドキュメント生成が追いついていない可能性があるので
CVSのものの方を確認してまだ直ってなかったら、
php-doc MLの方に投げてみてください。
http://cvs.php.net/cvs.php/phpdoc-ja/language/types.xml
936nobodyさん:03/10/29 04:05 ID:???
ごめん「PHP 型の比較表」だと、こっち。
http://cvs.php.net/co.php/phpdoc-ja/appendices/comparisons.xml
937nobodyさん:03/10/29 10:33 ID:???
「PHP 型の比較表」
厨でよく分からないので、とりあえずここに書いておきます。

表K-2 ==による穏やかな比較で、NULLとarray()の比較が 

NULL行 array()列 比較は TRUE
array()行 NULL列 比較は FALSE

と異なっているけど、両方ともTRUEだと思います。
938nobodyさん:03/10/29 13:37 ID:???
すいません、PHPで
if ($hitsuji in [0,12,24,36,48,60]) {
 処理
}
みたいな書き方ってできますか?
939nobodyさん:03/10/29 14:01 ID:???
>>938
マニュアルを読む知能が無いみたいなんで教えてあげます
http://www.php.net/manual/ja/function.in-array.php
940nobodyさん:03/10/29 14:05 ID:???
>>938
すいません、
$hitsuji in [0,12,24,36,48,60]はどういう意味ですか?
941nobodyさん:03/10/29 14:16 ID:???
質問。

requireについて。

/hoge/foo/main.php-----------
require("../fileA.php");

/hoge/fileA.php---------------
require("fileB.php");

/hoge/fileB.php---------------
print("hello");


という三つがあって、main.phpにアクセスしたときに
fileAの中でrequireしているfileBの相対パスは、main.phpを
起点に見られてしまうの?

fileA.phpを起点に見てほしいんだけど。

お願いします教えてください。
942nobodyさん:03/10/29 15:18 ID:???
>プロキシ判定で80や8080などの一通りの
>ポートへ接続を試みて成功したケース

うちは自宅サーバで80をIPマスカレードで公開しつつ、
別のPCでWebアクセスしてるが、
それはクライアントなのに80があいている事になる
Proxy関係なくね
943nobodyさん:03/10/29 16:17 ID:???
>>932
> 2chの判定ルーチンが80ポートをスキャンしてなかったような記憶があるのが
> 少し引っかかっているのですが…。

http://pc.2ch.net/test/read.cgi/sec/1002776091/l50

80はCGI Proxy対策かな
944932:03/10/29 16:50 ID:???
なるほどWEBサーバを立ち上げている場合があるんですね。
レスして頂いた方どうもです。

>>934
書き方が間違っていたのですが、国内ドメインかどうかではなく国内サーバかどうかの判定がしたいもので、
そうするとホスト名中の”jp”を検索するだけだとYBBなどの非JPドメインのプロバイダも弾いてしまうので
他にやり方があるんかなーと思った次第です。

まぁ今のところ非”jp”なのはYBBしか見当たらないので個別に対応しようかと思ってます。
945nobodyさん:03/10/29 17:08 ID:???
鯖が国内かどうかならIPアドレス範囲で弾けばいいだろ
946nobodyさん:03/10/29 17:38 ID:???
>>945
なるほどIPの範囲で判定する方法もあるんですね。
因みに何かご存知のIP範囲を利用した国外弾きのコードはありますでしょうか?。

調べてみるとJPNICで公表されている範囲は(J-COMなど)全てを網羅することはできていないようで、
正規表現の手間も考えると今はまだホスト名の判定の方がいいかなと感じています。
947nobodyさん:03/10/29 17:41 ID:???
すべてのホストがホスト名を返すわけではないが?
948946:03/10/29 17:44 ID:???
>>947
変換できないホストは無条件に弾くことになりますね
949nobodyさん:03/10/29 17:57 ID:???
NULLって何かの略?
950nobodyさん:03/10/29 18:02 ID:???
>>949
普通に英和辞書にのっとるがどうした。
951nobodyさん:03/10/29 18:47 ID:FTj5119Z
何らかの処理中に新しいWindowでページを開く事って出来ないですか?
header()じゃあ無理だし…。
952nobodyさん:03/10/29 19:50 ID:???
>>940
その人が羊年かどうか判定する処理です
953nobodyさん:03/10/29 20:03 ID:9bhE6T2A
>>951 Javascript
954nobodyさん:03/10/29 21:39 ID:???
>>941
こうすればいいんじゃないでしょうか。
ini_set('include_path', ini_get('include_path') . ':..');
require('fileA.php');
955nobodyさん:03/10/29 22:35 ID:???
さて、次スレはどうする?
このままPHP質問スレッド一本化でいいよな?
956nobodyさん:03/10/29 22:43 ID:???
>>952
12で割った余りを使わんの?(%)
957nobodyさん:03/10/29 22:48 ID:???
>>955
いや、分けようよ。
質問スレッドと回答スレッドで。
958nobodyさん:03/10/30 00:09 ID:???
>>956
というか、今年限定の使い捨てコードか?
959nobodyさん:03/10/30 03:18 ID:???
>>957
そんなアフォなことしなくていい。
960nobodyさん:03/10/30 04:12 ID:???
>>957
それはアフォすぎる
961nobodyさん:03/10/30 06:09 ID:???
じゃあ回答スレッドオンリーの方向で。
962nobodyさん:03/10/30 10:09 ID:???
質問オンリーのスレッドでもいいな。
963nobodyさん:03/10/30 17:55 ID:0UBfi9NJ
やっぱ初心者と別けるべきじゃない?
964nobodyさん:03/10/30 21:52 ID:???
非常に悪いんだが、参考にしてたPHP関数一覧のページが閉鎖されてしまった。
$s = "http://hoge.com/test/hoge/test.jpg";
として、test.jpgだけ抜き出す関数があったような気がするんだが、ちと忘れてしまって分からんのだ。
教えてくれまいか。
965nobodyさん:03/10/30 21:53 ID:???
初心者質問スレと、原則質問禁止の雑談スレに分けるとかいう話はどうなった
966nobodyさん:03/10/30 22:08 ID:???
>>964
basename
967nobodyさん:03/10/30 22:12 ID:???
>>964
参考にしてた、って…
http://www.php.net/manual/ja/ ではなく?

ちなみにそれはbasename()ではないかと思うが。


で、とりあえず1000近いし、まず質問スレ立てて必要なら後で雑談スレを別に立てればいいんじゃん?
968nobodyさん:03/10/30 22:28 ID:tW7d2qdo
PHPからMySQLにEUC-JPでデータを渡したいんですけど
どうすればよろしいのでしょうか?
969nobodyさん:03/10/30 22:45 ID:???
>>968
そんな漠然とした質問じゃなくマニュアルのMySQL関数で
いろいろ試せよ
970nobodyさん:03/10/30 22:55 ID:???
本7臭いな
971nobodyさん:03/10/31 09:28 ID:???
=====本7警告=====
972968:03/10/31 12:01 ID:HrZQdny1
MySQL関数ですか?
文字コード関係の関数ってありましたっけ?

フォームから受けた文字をmysql_query関数でinsertしたいんですが
mb_convert_encoding($name, "EUC-JP")
な感じでEUCにできるんですよね?

mb_detect_encoding($name)で見てもASCIIってでてくるのですが
間違っているのでしょうか?



973nobodyさん:03/10/31 12:31 ID:???
>>972
$name = mb_convert_encoding($name, "EUC-JP")
974nobodyさん:03/10/31 14:35 ID:???
うめ
975nobodyさん:03/10/31 17:28 ID:???
phpでimap系使ってるんですけど、
メールをRecent状態から既読に変えたいんですけど
どうしたらいいですか。

ちなみに seen = not Recent という認識でいいんでしょうか。


pop3での話です。
976nobodyさん:03/10/31 17:45 ID:0c98mEqb
"暴挙"をurlencodeしてからgetで渡して、
$_GET[]で取り出すと、
暴\挙
になってしまいます。
どうすれば正しく渡せますか?
977nobodyさん:03/10/31 18:30 ID:???
後で置き換えれば
978976:03/10/31 19:51 ID:???
function unescape($str){
$str = str_replace("\\\"", "\"", $str);
$str = str_replace("\\'", "'", $str);
$str = str_replace("\\\\", "\\", $str);
return $str;
}

$_GET = unescape($_GET);

を入れて解決しますた。
ありがとうございました。
979nobodyさん:03/10/31 21:58 ID:rlkA34qS
PHPじゃないかもしれないですけど、HTMLがレンダリングされた画像サムネイルを
生成できるライブラリとかってありますか?

Windowsで *.html を選択したときに、フォルダウインドウの左側にレンダリングされた
HTMLがちっちゃく表示されるじゃないですか。ああいうやつのことです。
ためしに Folder.htt の中の Thumb〜 っていうActiveX使ったら、ローカルでは
大丈夫だったけどhttp経由では使えなかったし。
980nobodyさん:03/10/31 23:08 ID:???
981nobodyさん
次スレ
【PHP】質問スレッド Part11
http://pc2.2ch.net/test/read.cgi/php/1067635640/