【PHP】下らねぇ質問はここに書き込みやがれpart11
■ このスレッドは過去ログ倉庫に格納されています
ここなら本スレで回答のないお前の下らない質問に回答があるかも知れません。
次スレは>>970あたりが建てて下さい
・過去スレ
【PHP】くだらねぇ質問はここに書き込みやがれ
http://pc5.2ch.net/test/read.cgi/php/1099322141/
【PHP】くだらねぇ質問はここに書き込みやがれpart2
http://pc5.2ch.net/test/read.cgi/php/1105218084/
【PHP】くだらねぇ質問はここに書き込みやがれpart3
http://pc5.2ch.net/test/read.cgi/php/1107780435/
【PHP】くだらねぇ質問はここに書き込みやがれpart4
http://pc8.2ch.net/test/read.cgi/php/1110697712/
【PHP】くだらねぇ質問はここに書き込みやがれpart5
http://pc8.2ch.net/test/read.cgi/php/1114787573/
【PHP】くだらねぇ質問はここに書き込みやがれpart6
http://pc8.2ch.net/test/read.cgi/php/1117945031/
【PHP】くだらねぇ質問はここに書き込みやがれpart7
http://pc8.2ch.net/test/read.cgi/php/1121100429/
【PHP】くだらねぇ質問はここに書き込みやがれpart8
http://pc8.2ch.net/test/read.cgi/php/1123431535/
【PHP】くだらねぇ質問はここに書き込みやがれpart9
http://pc8.2ch.net/test/read.cgi/php/1125716012/
【PHP】下らねぇ質問はここに書き込みやがれpart10
http://pc8.2ch.net/test/read.cgi/php/1127581425/
0732nobodyさん
2005/10/27(木) 10:27:12ID:???1つ見つけたんですが、セキュリティ上問題っぽいので却下
0734nobodyさん
2005/10/27(木) 10:39:29ID:???直してというのは、その配布プログラムのことでしょうか?
それとも既存のPrel版システムのことでしょうか?
前者はログを淡々とHTMLに書き出していくだけの機能なので、
考えている形(既存のほかのシステムに近い形)にするには
結局時間がかかりそうです。
後者に関しては、もし存在しなければその方法で行くつもりでした。
Prelに詳しくないのでとっつきづらいですが
0735nobodyさん
2005/10/27(木) 10:55:58ID:???>考えている形(既存のほかのシステムに近い形)にするには
>結局時間がかかりそうです。
>>732 にはセキュリティ上の問題って書いてあるから,
それを直して使え,って書いたんだけど・・・
機能不足なら具体的に何が足りないのか書いて.
あと,Prel ってなんですか?
0737nobodyさん
2005/10/27(木) 11:05:57ID:???0738nobodyさん
2005/10/27(木) 11:10:30ID:???温かく成長を見守ってやろうよ。
0739nobodyさん
2005/10/27(木) 11:14:42ID:???公式ページを見た感じだとそう難しい事をしているわけでも無さそうだし、
機能を洗い出して一からPHPで書き直すのがいいんでないかい?
perlを良く知らないみたいだし、perl版に手を加えるよりもよいかと。
作ったものに自信が無い場合は、評価スレでコードレビューしてもらえばええよ。
0740軟式PHP
2005/10/27(木) 11:19:40ID:???セキュリティ上問題ってどんな作り方してんだつーのwww
0741nobodyさん
2005/10/27(木) 11:41:31ID:???ISO-2022-JPとJISって全く同じものなのでしょうか
それともISO-2022-JPはJISの一つなんでしょうか
よろしくお願いします。
0742734
2005/10/27(木) 12:03:09ID:???スクリプト自体は「PHP WEB拍手」でググって先頭にくるやつです。
セキュリティ上の問題って書いたのはそこが一番引っかかってたから。
(IP等の個人情報もベタにHTML出力している為、
出力先が分かれば個人情報駄々漏れ)
良く考えたら出力先をパーミッション変えて
直接参照できないようにすれば済む問題だったんですが、
それだと一々確認するのがメンドクサイな、と。
もしくはそういった情報を書き出さないようにするか。
(htaccessでパスワード制限かける手もあるか)
(そもそもセキュリティ上の問題とはちょっと違うかも)
どっちにしろ、一言メールフォームみたいな感じで
考えてたのと違ったので、改変するのに時間かかるなという話で。
結局、そういったスクリプトは無いでFA?
だとしたら、仰る通り一から作るのが早そうですね。
暇が出来たら頑張ってみます
0743729
2005/10/27(木) 12:18:39ID:???そか。ってことは、何かスクリプト作って不特定の人達に配布する時はその辺りも考慮しないといけないんだな。
勉強になったよ。ありがと。
0745nobodyさん
2005/10/27(木) 12:22:03ID:???暇だったのでそのスクリプトを読んでみたんだが。
IPアドレスをベタにHTML出力している件は、出力しないようにすればいいだけだし
ログファイルがURL直叩きで見える件は、ログファイルの出力先をURLでは参照できない位置に
変更すればいいし…
変更するのに5分もかからないだろ。
何が言いたいんだ?
0746nobodyさん
2005/10/27(木) 12:25:35ID:???ググったんですが、同じというような事しか書いてなかったんです。
でもどうみても違うような動作をしていたので
質問してみました。
0748nobodyさん
2005/10/27(木) 12:33:23ID:???mb_convert_encodingの第3引数に
JISを指定すると文字化けが起きて、
ISO-2022-JPを指定すると文字化けがおきませんでした
同じものだと思っていただけに納得いきませんでした
0750734
2005/10/27(木) 12:37:10ID:???いや、まぁ。
IPとか直接参照に関してはすぐ対処出来ないことは無いけど
結局、欲しい機能が大幅に足りないから
使うにしても結構手を入れなきゃいかんし、
だったら皆さんのレスにあったように1から作った方が早いかな、と。
それだけのことで
0751nobodyさん
2005/10/27(木) 13:03:20ID:???>>732
>PHP製の拍手システムスクリプトって配布されてないのでしょうか?
>1つ見つけたんですが、セキュリティ上問題っぽいので却下
↑↑どこをどう縦読みすれば
>欲しい機能が大幅に足りないから
が見つかりますか?
0752nobodyさん
2005/10/27(木) 13:04:34ID:???って書いているだけだったりして・・・
0753734
2005/10/27(木) 13:48:47ID:???いや、1回目のカキコでは書いてる時点ではそれが問題だと思ってて、
あとから良く考えたらこの出力結果じゃ必要な機能無いことに気付いて。
2回目以降はそれ(セキュリティ面)は解決できるけどって言う前提で書いてた
まぁ、あんまり出てきてもうざいんで消えます。
作成頑張る
0754nobodyさん
2005/10/27(木) 14:51:33ID:???3番目の引数に"ISO-2022-JP"を指定するとISO-2022-JP、"JIS"を指定するとISO-2022-JP-1かISO-2022-JP-2になる希ガス。
前者には半角カナや補助漢字が含まれていない。
文字化けの原因は、具体例挙げてくれないと何とも言えないが、両者の間に動作の違いがあるのは確か。
この辺のmbstringの挙動についてドキュメント化されたものは見つからなかったが、ソース見れば動作に違いがあることは明らか。
PHP4ならext/mbstring/mbfilter_ja.c、PHP5ならext/mbstring/libmbfl/filters/mbfilter_jis.cを参照。
マイナーバージョンによって多少ソースの場所が違う可能性もあり。
0756nobodyさん
2005/10/27(木) 15:11:06ID:???次からは”自分だけの前提”を作らないように、よく考えてから書き込みましょう。
まぁ、あれだ。日本語勉強してくれ('A`)
0758nobodyさん
2005/10/27(木) 15:16:57ID:???0759nobodyさん
2005/10/27(木) 16:48:31ID:???用意されていませんか?
001.jpg
002.png
003.jpg
003.gif
004.png
というファイルが入ってるディレクトリdirに対して
file_exists('dir/001.*'); -> true
file_exists('dir/010.*'); -> false
file_exists('dir/003.*'); -> true
のような動作をする関数です
0760nobodyさん
2005/10/27(木) 16:51:32ID:???0761nobodyさん
2005/10/27(木) 17:24:15ID:???0764nobodyさん
2005/10/27(木) 18:47:20ID:???$tgt = 'hoge';
これで、$tgtが$listに含まれるかどうかを調べるとします。
この場合、
if(strpos($list, $tgt)){}
と
if(strstr($list, $tgt)){}
ではどちらを使うのが良いのでしょう?
0766764
2005/10/27(木) 18:59:11ID:???ごめんなさい。
質問自体を間違えました。
if(!strpos($list, $tgt)){}
と
if(!strstr($list, $tgt)){}
で、含まれない場合のみ条件分岐したい場合です。
0768nobodyさん
2005/10/27(木) 19:05:11ID:???ファイル先頭〜<?phpと
?>〜<?phpと
?>〜ファイル末尾の3種類の変数展開されないヒアドキュメントが
自動的に標準出力へechoされるという認識で問題ありませんか?
0770nobodyさん
2005/10/27(木) 19:14:46ID:???ワザワザ混乱しやすい書き方をしなくても、これでいいのでは?
if(strpos($list, $tgt) === FALSE){
echo "含まない";
}
if(strstr($list, $tgt) === FALSE) {
echo "含まない";
}
0771nobodyさん
2005/10/27(木) 19:20:35ID:???ttp://www.php.net/manual/ja/language.basic-syntax.php
0772768
2005/10/27(木) 19:53:40ID:???ありがとうございます。
?>〜<?phpを跨ぐスクリプトを初めて見たときはギャグだと思いましたが、うまいこと出来てるんですねえ。
0773nobodyさん
2005/10/27(木) 19:59:06ID:???0774nobodyさん
2005/10/27(木) 20:04:27ID:???<?php
$outputname="abc.xml";
header("Content-Type: text/xml");
header("Content-Disposition: attachment; filename=$outputname");
require('abc.php');
?>
と書いてabc.phpが作成したxmlファイルをダウンロードさせると
いうプログラムを書いたのですが、これをダウンロードではなく
他のサーバにアップロードさせるという事は可能ですか?
分かる方教えてください。
0776nobodyさん
2005/10/27(木) 20:37:11ID:???受け取る側(アップロードされる側)がどのようになっているかによるけど、
一般的な方法だと、RFC1867で定義されているHTTPファイルアップロード
(<input type="file">のやり方)か、FTP関数を使ってFTPでアップロード。
0777764
2005/10/27(木) 20:43:45ID:???ありがとうございます。
マニュアルを見たりすると、確かにその書き方が素直ですね。
勉強になりました。
ところで、本題に戻りますが、結局のところ、
この場合、strposとstrstrではどちらを使うのが良いのでしょうか?
0778nobodyさん
2005/10/27(木) 20:51:42ID:???既に二人が strstr() を上げてるわけだけど,
その問題はそんなに重大なの?
同じことをするのにあるところでは strpos, 別のところでは strstr,
ってなってなければどっちでもいいと思うんだけど..
あるいは専用の関数を作って,あとから strpos/strstr を切り替えれるようにするとかさ・・・
0779nobodyさん
2005/10/27(木) 21:34:05ID:???>>764-767の様式だと指摘されている通り、strposでは正常に動かない
>>770であればどちらでも同じ。
好きな方をどうぞ。混乱するなら"===FALSE"を使う770を勧めるが
0780nobodyさん
2005/10/27(木) 21:39:08ID:Vm7GcHkRのfooの部分を取得したいんですが、どうやるんでしょうか?
hoge.php?foo=abc
こうやって渡さないとダメですか?
前者みたいなアドレスを見た記憶があるんですが・・・
0782nobodyさん
2005/10/27(木) 21:48:39ID:Vm7GcHkR0783nobodyさん
2005/10/28(金) 00:28:11ID:Mre4QHxwif($result == "") { error(); }
if($result == NULL) { error(); }
if(empty($result)) { error(); }
どれもダメでした・・・
0786nobodyさん
2005/10/28(金) 06:05:37ID:???負の値が返るって無いと思うけど、ありえない(と思われる)ことも考慮してエラーにする
ってことは普通してるけどな
0787nobodyさん
2005/10/28(金) 06:41:57ID:???まあ程度の問題。
fcloseとかもmanpageには戻り値見ないのは重大な問題みたいに書いてあるけど
実際気にしてないし。
0789nobodyさん
2005/10/28(金) 08:04:31ID:???ini_setで変更しようとしているのですが、phpinfo()で確認しても変更されていません。
これはサーバ側で変更されないように制限しているということなのでしょうか?
0790nobodyさん
2005/10/28(金) 11:38:56ID:???・ini_set(include_path)はどんな値を返してるんだ?(0か?)
・同じスクリプトの中でini_set()とphpinfo()を書いて確認してるよな?
0791nobodyさん
2005/10/28(金) 13:04:40ID:???これの予感 ビンビン
0792nobodyさん
2005/10/28(金) 14:32:52ID:???<?php
phpinfo();
ini_set("include_path", "hogehoge");
?>
とか。(´・ω・`)
0793nobodyさん
2005/10/28(金) 15:04:37ID:???ini_set("include_path", "hogehoge");
phpinfo();
?>
0794nobodyさん
2005/10/28(金) 15:36:01ID:traX7I47RHEL4にphp3はインストールできますでしょうか?
apache2がphp3に対応してないというのは調べたのですが、それ以外はわからないです。
OSが有償なので、手元に環境を作れなくて困ってます。
よろしくおねがいします。
0796nobodyさん
2005/10/28(金) 16:11:20ID:???>apache2がphp3に対応してない
してなくはない。CGI版のphp3を使え。
つか今時どういう用途でセキュアでないphp3使うの?
0797nobodyさん
2005/10/28(金) 16:31:53ID:???何?
0798nobodyさん
2005/10/28(金) 17:07:24ID:???ちっとはマニュアル読めよ。せっかく日本語訳(完全じゃないし、誤字脱字多いけど)があるのに。
ttp://jp2.php.net/manual/ja/function.mt-rand.php
=以下上記アドレス先の中の抜粋=
古いlibcの多くの乱数発生器は、怪しげであるか特性が不明であったり し、また低速でした。
デフォルトでは、PHP は rand() においてlibcの乱数発生器を使用します。
mt_rand() 関数は、その代替品となるものです。
この関数は、その特性が既知の乱数生成器 Mersenne Twister を使用し、
平均的な libcの rand()よりも 4 倍以上高速に乱数を生成します。
0799nobodyさん
2005/10/28(金) 17:15:35ID:???排他制御について聞きたいのですが、
ファイルを毎回操作するとファイルが消えないか心配なので
(ファイルロックを過信したくない)
postgresにログをダンプしておいて、
一定時間ごとにファイルに出力する
といった方法を考えていますが
こうすることで排他制御の信頼性はあがりますか?
0800nobodyさん
2005/10/28(金) 17:22:32ID:???0801nobodyさん
2005/10/28(金) 17:43:08ID:???0803nobodyさん
2005/10/28(金) 18:42:04ID:???> >>789
> ・ini_set(include_path)はどんな値を返してるんだ?(0か?)
ini_set自体は
string(41) ".:/var/tmp/httpd-1.3.33-root/PHP4/lib/php"
というサーバ規定値を返しています。
> ・同じスクリプトの中でini_set()とphpinfo()を書いて確認してるよな?
>>793と同じように記述しています。
0804nobodyさん
2005/10/28(金) 20:09:41ID:???http://自分のアドレス/bbs/install/install.php にアクセスして、
自分のサーバに適するように設定しました。
セキュリティのため「install」と「contrib」フォルダを完全に削除するのがよく分からなかったのですが、
右クリックでR削除しました。
成功していれば、http://自分のアドレス/bbs/自分の掲示板が表示されるはずですらしいのですが、
また
”ようこそphpBB2のセットアップ画面へ”
になってしまって、新規では出来なくなってしまいました。
登録終わったはずなんですが、何度リロードしても
http://自分のアドレス/bbs/install/install.phpになってしまって、
まったく先へ進めません。
”アップグレード”にして登録しなおしても駄目です。
というか、そのアップグレードの際に聞かれるphpBB2へのFTPパス
っていうのがわかりません。
すみません、なにか助言お願いします。
0805nobodyさん
2005/10/28(金) 20:18:40ID:???0806nobodyさん
2005/10/28(金) 20:38:59ID:???0807nobodyさん
2005/10/28(金) 20:44:49ID:???//index.html
<a href="hoge.php">クリック</a>
で呼び出したhoge.php側で、自分を呼び出したindex.htmlのファイルパスを特定することってできますか?
0808nobodyさん
2005/10/28(金) 20:47:44ID:???0809807
2005/10/28(金) 20:52:31ID:???から
/dir1/hoge.php
を呼び出したとき
//index.html
<a href="../hoge.php">クリック</a>
それでもhoge.phpにて自分を呼び出したファイルのパスを推測することは可能ですか?
0811nobodyさん
2005/10/28(金) 21:00:28ID:???$upload = ftp_put($conn_id, $destination_file, Auto.GIF, FTP_BINARY);
>>774に書いたようにPHPで作成(表示)したxmlファイルをアップロード
するにはどうしたらよいでしょうか?よろしくお願いします。
0812807
2005/10/28(金) 21:32:24ID:???> リファラー+自前処理
もしノートンとかリファラーが取れないシステムをクライアントが使っていたら
この方法は無理ってことですか?
0813nobodyさん
2005/10/28(金) 21:44:41ID:???セッションとか色々方法はあるけどな
0818nobodyさん
2005/10/28(金) 22:50:56ID:deFUSwPyここにあるスマイルってどこでダウンロードできますか?
0821nobodyさん
2005/10/28(金) 23:08:03ID:deFUSwPyほんとにお願い。
0823nobodyさん
2005/10/28(金) 23:21:20ID:???というただの配列を
array('a'=>'1', 'b'=>'2')
て感じに連想配列に変換してくれる標準関数というのはありますか?
マニュアルの配列のところをざっと見てみたんですけどそれらしいのは無かったので・・
0825nobodyさん
2005/10/28(金) 23:33:59ID:deFUSwPyないのだ。
黄色い、外人がよく使うオーバーな顔文字しかないのだ・・・。
0826nobodyさん
2005/10/28(金) 23:38:27ID:???そうですか(´・ω・`)
SEO対策に、'PATH_INFO'で受け取った文字列を配列にしたかったんですけど、自分で書くしかないですね。
0827nobodyさん
2005/10/28(金) 23:38:31ID:???ないけど、速攻書けるでしょ。
$src = array('a', '1', 'b', '2');
$dst = array();
for ($i = 0; $i < count($src); $i++, $i++)
$dst[$src[$i]] = $src[$i + 1];
0828nobodyさん
2005/10/29(土) 00:51:55ID:???俺のテレパス能力を駆使したところ、おまえは「そのページにある
"2ch風のスマイリー画像"が欲しいのだがどこにあるのか?」と読めた。
管理人に聞けよ。問い合わせフォームあるんだからさ。
0830nobodyさん
2005/10/29(土) 04:59:06ID:hGe3IwmV■ このスレッドは過去ログ倉庫に格納されています