【PHP】下らねぇ質問はここに書き込みやがれ 68
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2008/05/03(土) 22:52:16ID:???PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り
次スレは970が立ててください立たなかった場合は980よろ
◆前スレ
【PHP】下らねぇ質問はここに書き込みやがれ 67
http://pc11.2ch.net/test/read.cgi/php/1207863515/
◆質問する時の注意
・ サーバーのOS(Linux、Windows他)、WebサーバーとPHPの種類やバージョン等を必ず明記すること。
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
・偽者防止に必ずIDを表示(メール欄に何も記述しない)、若しくはトリップをつける事。
◆質問後の注意
・偽者防止に必ずIDを表示(メール欄に何も記述しない)、若しくは質問時のトリップをつける事。
・2回目以降は最初に質問した際のレス番号を名前欄に入れること。
・解決しなくても回答をもらった場合はお礼を言うこと。
(荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)
◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。
【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで
0666nobodyさん
2008/05/18(日) 02:30:07ID:???randができるのは↑のこと
今回、質問者の悩みは解決しない
0667nobodyさん
2008/05/18(日) 02:33:15ID:???0668nobodyさん
2008/05/18(日) 02:44:33ID:???randなんて今回は使わない
ゆとり乙
0669nobodyさん
2008/05/18(日) 02:54:04ID:???0670637
2008/05/18(日) 03:02:09ID:tgzZzG90ここのルールをよく知らないでの質問した私が悪いのですが、今更ですがIDを出します。
>>643
中身は見てます。phpに渡される時点で添え字が数字でなく文字列の場合は上書きされてしまっていますね。
と言うことはphp側ではどうしようもないということか・・・
>>646
マスターテーブルが自身をjoinして参照しなくてはならない場面があったからです。
こういう場合に、SELECT * ってSQLに書いた場合に、いちいち、
`T1`.`hoge_ID` AS `T1_ID`
`T2`.`hoge_ID` AS `T2_ID`
としないで済ませる事が出来る方法がないかと質問しました。
0671637
2008/05/18(日) 03:10:52ID:tgzZzG90テーブル
ID|名前|好きな人id
1 |太郎|3
2 |花子|1
3 |美咲|1
で、
太郎は美咲が好き
花子は太郎が好き
美咲は太郎が好き
という結果が欲しい。
まともにASするとか、このテーブルをID=>名前ってな連想配列にしとくとか、そういう手があるのは百も承知で、
SELECT
*
FROM テーブル AS `T1`
INNER JOIN テーブル AS `T2`
みたいに「*」使った場合に上記のような結果が欲しいわけです。
0672nobodyさん
2008/05/18(日) 03:24:37ID:???0673nobodyさん
2008/05/18(日) 08:46:12ID:???スレ違い
http://pc11.2ch.net/test/read.cgi/php/1158647441
0674nobodyさん
2008/05/18(日) 08:50:37ID:???向こうのスレいってこうゆとり
0675nobodyさん
2008/05/18(日) 09:15:25ID:???0676ヌルホース
2008/05/18(日) 09:42:14ID:???ありがとうございます(`・ω・´)
そういやhttp://tool-1.net/
って穴があるからスクリプト抜けるって聞いたのですが、本当ですか?
0677nobodyさん
2008/05/18(日) 09:43:20ID:???0679ヌルホース
2008/05/18(日) 09:51:07ID:???穴の勉強していたのですが、(`・ω・´)
穴があるサイトの例がhttp://tool-1.net/
らしいので(・・;)
一流のプログラマーが勢揃いしているところで聞かせてもらってます。
0680nobodyさん
2008/05/18(日) 09:54:37ID:???0681ヌルホース
2008/05/18(日) 10:00:32ID:???(・・;)
0682森
2008/05/18(日) 11:59:57ID:???0683nobodyさん
2008/05/18(日) 17:29:32ID:???以下のタイプを探しています
↓
「New NICOLE Board Type-2 v1.15b - Edit by 髭めがね」
かなり探したのですが見つけられませんでした。
再配布場所をご存知の方いらっしゃれば教えてください
0684nobodyさん
2008/05/18(日) 17:31:12ID:???0685nobodyさん
2008/05/18(日) 17:48:24ID:WBHzUPNU本を見ながらやってますが、「ダウンロードしたソースコードをサーバー上
の適当なフォルダへアップロード」って言うのと、
「tarコマンドで解答処理」ていうのがどこでコマンド入力するのかわかりません。
0686nobodyさん
2008/05/18(日) 17:49:27ID:???0687nobodyさん
2008/05/18(日) 18:20:09ID:???(リンクなどを押されたときに処理をはさんでからメールを起動させたい)
0688687
2008/05/18(日) 18:20:41ID:P5qlbfWP0689nobodyさん
2008/05/18(日) 18:26:26ID:NYmCH+10最近のPHP開発手法のトレンドは何でしょうか?
0690683
2008/05/18(日) 18:28:03ID:???すいません
0693nobodyさん
2008/05/18(日) 18:55:07ID:NYmCH+10#ここってネタスレになってます?
0695nobodyさん
2008/05/18(日) 20:19:49ID:???大差ないと思うがね。
0698nobodyさん
2008/05/18(日) 20:37:04ID:???PHPは基礎的な部分は簡単だけど、
安全なアプリを構築するのはかなりの知識が要るようなのですが。
0699nobodyさん
2008/05/18(日) 20:43:57ID:???アウトソースよりも、この場合はオフショア開発っていうお。
>>698
オライリーの入門PHPセキュリティおすすめ。
0700651
2008/05/18(日) 20:56:15ID:TyvZJlXjtable aaa
id pri message
11 5 あああ
12 2 いいい
13 5 ううう
14 3 えええ
この場合id 14のメッセージが3/(5+2+5+3)の確率で
表示されるようにしたいのですが良い方法はありますか
0703nobodyさん
2008/05/18(日) 21:36:04ID:???rand関係ないし
0704651
2008/05/18(日) 21:49:17ID:TyvZJlXj煽ってるのは僕とは別人です
宿題でもありません
0706651
2008/05/18(日) 21:53:40ID:TyvZJlXjどうするんですか?
0707nobodyさん
2008/05/18(日) 22:07:06ID:???0710nobodyさん
2008/05/18(日) 22:10:54ID:???0711nobodyさん
2008/05/18(日) 22:14:00ID:???rand関数を使うってことはifなどで振り分ける処理が必要になるよな
コード量がふえるだろ、わかるか
0712nobodyさん
2008/05/18(日) 22:14:27ID:???0713nobodyさん
2008/05/18(日) 22:17:37ID:???つ配列関数
0714nobodyさん
2008/05/18(日) 22:18:39ID:???つまり無駄なことをすればrand使わなくてできるんじゃねw
0715nobodyさん
2008/05/18(日) 22:19:12ID:???$array = array(1,1,1,2,2,2,3,3,3,3,4,4,4,4,4,4,5,5);
↑こんなのじゃないからな
こんなめんどくさいのならrand使うのといっしょ
あとは自分で考えろってこった
0716nobodyさん
2008/05/18(日) 22:20:19ID:???0717nobodyさん
2008/05/18(日) 22:21:37ID:???0718nobodyさん
2008/05/18(日) 22:26:14ID:???おれが手直ししてあげよう
0719698
2008/05/18(日) 22:26:23ID:???ありがとうございます。読んでみます。
基本文法習得をなんとか終えた後、
今「PHP サイバーテロの技法」という本を読んでいますが、
ヌルバイト攻撃とかディレクトリ・トラバーサルとか、自分にはかなり難しいですね。
とはいえ一通り対策が講じれるようにならないとまずいのですが…
PHP簡単、というのは良く聞きますがセキュリティまで考えたら
そんな単純な話ではないなぁ、と。
0720nobodyさん
2008/05/18(日) 22:27:41ID:???おれが手直ししてあげよう
0721nobodyさん
2008/05/18(日) 22:28:25ID:???早くコード書いて俺に答えを教えてくれ。もう日曜の10時半なんだよ。
0723nobodyさん
2008/05/18(日) 22:31:37ID:???0724nobodyさん
2008/05/18(日) 22:32:00ID:???0725651
2008/05/18(日) 22:36:59ID:TyvZJlXjまあ、困り度はそんな感じです
ななしで煽るのは止めてくださいずら
0726nobodyさん
2008/05/18(日) 22:43:42ID:???array_randでもrandでも好きなようにやればいいさ。
0727nobodyさん
2008/05/18(日) 23:10:02ID:???よし、ここは全くわからない俺が
しかもrand関数って何という俺が
風呂はいって
珈琲飲んで
パジャマに着替えてから一緒に考えてあげよう。
ところで、ID14のPRI値が3でmessage値が「えええ」だから
ID14のPRI/(全部のPRIの値)の確率でID14のmessageを表示されたいの?
0728nobodyさん
2008/05/19(月) 00:10:36ID:i7qsMY9zどうやればいいですか?
0729651
2008/05/19(月) 00:10:56ID:f/z8MzuC0731727
2008/05/19(月) 00:40:33ID:???$priarray
$messagearray
にDB取り込んで,取り出したいIDを$keyIdに入れ
function rndAnswer( $priarray,$messagearray,$keyId ) {
$keyId = $keyId-1;
$rndNum = $priarray[$keyid]/array_sum( $priarray );
/**rand使えるようにどうにかする。**/
return $answer;
}
よし、これ以上は小生には無理だ。あとはお前ががんばって教えてくれ。
0732nobodyさん
2008/05/19(月) 04:44:41ID:uTe3T86TUTF-8で運用するWebフォームから、iso-2022-jpでメールを出そうとしているのですが
文字コードマッピングの問題で 鰍竅`(WAVE DASH)などがどうしても化けてしまいます。
Web上での文字コードのルールについて基本的な知識やルールは承知しているのですが
ユーザが入力してくる文字(機種依存文字が多々あり)をそのままメールに活かすように
したいのです。
もし解決法をご存じの方がいらっしゃいましたら是非お知恵をお貸しください。
よろしくお願いいたします。
0733732
2008/05/19(月) 04:51:38ID:uTe3T86TPHP 4.4.2
FreeBSD 4.11-RELEASE-p17
Apache2系
です。
これまでは
mb_convert_string($mail_body, "iso-2022-jp", "UTF-8");
で試みています。
0734nobodyさん
2008/05/19(月) 07:01:59ID:???0735nobodyさん
2008/05/19(月) 10:17:54ID:???目的に合うかわからんけどMySQL側で。。バージョン依存あり
SELECT * FROM aaa WHERE id =14
AND RAND( ) < pri / ( SELECT SUM( pri ) FROM aaa )
0736nobodyさん
2008/05/19(月) 10:38:21ID:qHM47HMzファイルはアップロードできたのですが、
クライアント側のファイルのパスをサーバ側でも取得したいのですが
$_FILES['id']['name']にはファイル名だけしか入っていませんでした。
フルパスを取得するにはどのようにしたらよいでしょうか?
PHP Version 4.2.3 です。
0737nobodyさん
2008/05/19(月) 11:12:13ID:???0738nobodyさん
2008/05/19(月) 11:24:04ID:???Javascriptで取得できるから、あとはがんばって。
ただ、ブラウザごとに微妙に動作が違った気がする。
<form onSubmit="alert(this.file.value)">
<input name="file" type="file">
<input type="submit">
</form>
0739nobodyさん
2008/05/19(月) 11:46:25ID:qHM47HMzhiddenにthis.file.valueを設定すればよいということですね。
別件で作ったJavaサーブレットのアップロードでは取得できたので
PHPが隠蔽しているのかもしれません。
Javascriptでやってみます。
ありがとうございました。
0740nobodyさん
2008/05/19(月) 15:47:38ID:???PHP+Oracle接続環境を作成の際にエラーが出まして、
もし、分かる方が居たら教えて頂ければと思っております。
仮想マシン:Xen
管理OS:CentOS5
ゲストOS:CentOS5,Fedora8
apache 2.2.8
php 5.2.6
configureは出来たのですが、makeで以下のようなエラーが出ました。
libphp5.la
/usr/bin/ld: cannot find -lirc
collect2: ld returned 1 exit status
make: *** [libphp5.la] エラー 1
CentOS5,Fedora8共にエラーが出ております。
lircが見つからないといわれているので、
yum install *lirc*で全部入れてみましたが駄目でした。
両OSで出来ないのでXenのカーネルが問題なんでしょうかね…
よろしくお願いします。
0742nobodyさん
2008/05/19(月) 18:09:53ID:???なんでライブラリの問題でカーネルが原因になるんだか
/usr/bin/ld: cannot find -lirc はlircが見つからないではなく
libirc.aが見つからないって意味だ
よって yum install *lirc* とか無駄
libircが入ったパッケージをインストールするか、強引だがリンカの指定から-lircを外して動けばOK
0743nobodyさん
2008/05/19(月) 18:45:13ID:???解答ありがとうございます。
仮想サーバーと同じ構成のマシンがもう1台ありまして、
そのマシンはFedora5なんですが、
makeまではいけたので、
Xenのカーネルが問題なのかなと思ってしまいました。
エラーの意味やライブラリを理解できていない自分には、
リンカの指定をはずすなどかなり難しいそうなので、
libircが入ったパッケージを探してみます。
0744nobodyさん
2008/05/19(月) 19:41:48ID:xzrDZ7d0Apache 2.0
PHP 5
$h = popen('unko.exe');
if ($h == FALSE) die('失敗したにょ!');
fputs($h, ・・・以下省略
pclose($h);
こんな処理をしたいのですが、unko.exe は実際にはありません。
無いにもかかわらず popen の戻り値が FALSE にならないので
die してくれません。ちゃんと die してほしんです。
何か良い方法はありませんか?
0745nobodyさん
2008/05/19(月) 19:45:03ID:???0746nobodyさん
2008/05/19(月) 20:09:53ID:???PEAR::AUTHを使ってみたいのですが、
パスワード暗号化の時saltを付け加える事ってできますか?
暗号化方法の選択でSMD5等が無いようなので…
0747746
2008/05/19(月) 20:16:05ID:???0748746
2008/05/19(月) 20:28:11ID:xxBfPPP+0749nobodyさん
2008/05/19(月) 20:47:56ID:???0750nobodyさん
2008/05/19(月) 20:50:38ID:???0751nobodyさん
2008/05/19(月) 20:53:44ID:???0752746
2008/05/19(月) 20:56:08ID:xxBfPPP+他でも聞いたのですが答えがなかったのです。
0753nobodyさん
2008/05/19(月) 20:57:51ID:???http://www.pearlgakki.com/
0754nobodyさん
2008/05/19(月) 20:59:14ID:???pearlってライブラリなかった?
0755nobodyさん
2008/05/19(月) 21:00:11ID:???http://www.jap.co.jp/pearl/
0756ハチミツ
2008/05/19(月) 21:52:54ID:sdAnx2Kbttp://bbs.832tool.net/
のショボい掲示板を作って、パーミッションは604にしました。
しかし、なぜかindex.phpのスクリプトが抜かれてしまいます。
教えてください。
また、サーバはXREA.COMを借りています。
セキュリティの穴があるとか言われたことがあるのですが、誰か詳しい方教えてください。
0757nobodyさん
2008/05/19(月) 21:56:08ID:???0758ハチミツ
2008/05/19(月) 22:05:23ID:sdAnx2Kbほぼ自作のindex.phpに穴があるせいか、パスワードの入ったログファイル(.cgiでパーミッション606)がアクセスされてしまうのです。
普通なら.cgiは、アクセスされないのですが、穴の性で見られてしまっているということです。
0759nobodyさん
2008/05/19(月) 22:07:19ID:???どっかで見たと思ったらあった。
情報小出しにするんだったら、プーさんになめられとくもんだと思う。
△▲ WebProg 初心者の質問 Part17 ▼▽
http://pc11.2ch.net/test/read.cgi/php/1204462146/321-322
0760nobodyさん
2008/05/19(月) 22:08:14ID:???0761ハチミツ
2008/05/19(月) 22:10:33ID:sdAnx2Kbhttp://bbs.832tool.net/?id=test%00index.php
この不正アクセスで、index.phpがヌルバイト攻撃で不正アクセスされたのですが、%00を排除することにより、対策はできました。
今は
http://bbs.832tool.net/?id=%
こんなのは、不正アクセスとして、エラールーチンに飛ばしているのですが、
http://bbs.832tool.net/?id=test%00
が、チェックをすりぬけられます。
これは、穴になっていて、index.phpは不正アクセスされるのでしょうか?
0762ハチミツ
2008/05/19(月) 22:13:02ID:sdAnx2Kbよく意味がわからないです。
>>760
不正にindex.phpが見られたら、
同じディレクディレクトリにあったとしたら
pass.cgi
が見られたり、
../pass.cgi
と指定されたら見られてしまいます。
0763nobodyさん
2008/05/19(月) 22:21:40ID:???日本語も良く分からない。
index.phpに(不正なクエリと共に?)アクセスされと同階層にあるpass.cgiが見られてしまう?
謎。
ドキュメントルート以上に置くかapacheをちゃんと設定するかaccessで拒否るか拡張子phpにすればいいのでは?
0764ハチミツ
2008/05/19(月) 22:26:56ID:sdAnx2Kb指定されたファイルが見られてしまうと言うことです。失礼しました。
データの書き込みは
{$id}-log.cgi
と記述していまして、
id=testして、あればログファイルを記述しなければエラーをだすようにしているのですが
この$_GET['id'];
に不正に
index.phpが仕掛けれているせいか、-log.cgiが擦り抜けられてしまうという怖い攻撃らしいです。
昔はそれで、中身が表示されたのですが、今は対策したはずです。しかし、中身が漏れているらしく…
教えてほしいです。
■ このスレッドは過去ログ倉庫に格納されています