【PHP】下らねぇ質問はここに書き込みやがれpart12
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2005/11/01(火) 17:56:36ID:???ここなら本スレで回答のないお前の下らない質問に回答があるかも知れません。
次スレは>>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/
【PHP】下らねぇ質問はここに書き込みやがれpart11
http://pc8.2ch.net/test/read.cgi/php/1129582431/
0041nobodyさん
2005/11/03(木) 01:53:54ID:???セッション変数は *基本的* に外部からは書き換えられない、という前提でいいよ。
PHPそのもののバグやサーバーのセキュリティの問題で、可能性がゼロと言えないのは確かだろうけど。
一般的にはログオン後はID(ユーザーIDのことだよね?)だけをセッションで持ち回るけど、
認証の処理が軽いのなら各ページ毎で認証チェックをしても別にいいと思う。貴方のポリシー次第。
普通は、そこの部分よりもセッションハイジャックの防止を色々と考慮するんじゃないかな。
0042nobodyさん
2005/11/03(木) 01:57:06ID:???$_SESSIONの中身自体は外部から書き換えられるって話は今のとこ聞いたことないけど、セッションハイジャック対策としてパスワードみたいなの持ち歩かせるってのはあるかもね。
>>38
つ <?=`ls /bin /usr/bin`?>
0045nobodyさん
2005/11/03(木) 04:32:04ID:???煽りではなくて教えて欲しいんだが、セッションハイジャック対策として
パスワードのような物セッションに持たせるのは有効なのか?
0046nobodyさん
2005/11/03(木) 04:40:42ID:q0r4E/Ghどうしたらよいでしょうか?
{2,4,3,2,4,6} → {2,3,4,6}
こういう感じです。
0047nobodyさん
2005/11/03(木) 04:42:56ID:???0048nobodyさん
2005/11/03(木) 06:57:37ID:???0049nobodyさん
2005/11/03(木) 07:38:19ID:q0r4E/Ghなんかそれでよさそうです。
どうもありがとうございますた。
0050nobodyさん
2005/11/03(木) 07:56:32ID:4j0uSvZA4.3.11から4.4.1にバージョンアップしました
やり方は設定をそのまま引き継ぐ為、php.ini以外のファイルを全て上書きしました
Apache2のサーバモニタにはPHPのバージョンは4.4.1と表記されているのですが
phpinfoで調べると4.3.11のままでした
phpinfoの表記も4.4.1にするにはどこを変えれば良いんでしょうか?
0051nobodyさん
2005/11/03(木) 08:11:53ID:52LMl42Q初心者です。
メールを一括送信するCGIを探してます。
送信先の一覧が管理でき、送信したメールに名前を表示できるようなやつです。
もちろんフリーで
0052nobodyさん
2005/11/03(木) 08:14:50ID:???0053nobodyさん
2005/11/03(木) 09:25:29ID:e6YB+Wfpダウンロード自体は成功しますが、そのあとページを移動してもブラウザのURLが固定され変化しなくなります。
なんとかならないでしょうか?
header("Content-type:text/plain");
header("Content-Disposition: attachment; filename=readme.txt");
header("Content-length: " . filesize("readme.txt"));
readfile("readme.txt");
0054nobodyさん
2005/11/03(木) 10:36:18ID:???セッション発行時のIPもセッション情報に保持して、突合せ。
ただし、接続ごとにIPの変わる可能性のある携帯電話では別の仕掛けが必要。
で、FA?
0055nobodyさん
2005/11/03(木) 11:22:01ID:4j0uSvZAこの板で質問するような内容じゃありませんでしたね
自宅鯖板で聞いてきます
0056nobodyさん
2005/11/03(木) 11:33:52ID:???NATやプロキシ経由で来られると、そこからのIPはみんな一緒になっちゃうから確かに低効果だよね。
漏れはIPと$_SERVERで得られる情報(HTTP_USER_AGENT, HTTP_ACCEPT, HTTP_ACCEPT_LANGUAGE等)で
付き合わせているけど、効果があるのかな。
考え出すと激しく不安…
みんなどういう情報で付き合わせてるんだろう。
0057nobodyさん
2005/11/03(木) 14:06:28ID:???--内容--------
def
--------------
def.txtの内容をabcに変えたいのですが、
$fp = fopen("./def.txt" "w");
fwrite($fp,"abc");
これでは abcdef になってしまいます。
ヘルプミー
0058nobodyさん
2005/11/03(木) 14:21:43ID:???"w" で fopen すると元のファイルはサイズ 0 になるから最終的には
abc だけのファイルになって、abcdef にはなるはずないけど。
何か勘違いしていない?
後、書き間違いだったらいいけど、"./def.txt" と "w" の間は , が必要。
0059nobodyさん
2005/11/03(木) 14:27:01ID:3fnwo6aV>ソースコード埋め込み定数参照の仕様が変更されているため
って、具体的になんのこと?
0060nobodyさん
2005/11/03(木) 15:12:18ID:???引数に参照を期待している関数に対して、変数以外が渡せなくなった。
例えばこんなコード。
PHP4.3.10 では正常に動作し、3 と表示される。
PHP4.4x ではエラーになる。
<?php
echo array_pop(explode('-', '1-2-3'));
?>
こう書けばどちらでも正常に動作する。
<?php
$work = explode('-', '1-2-3')
echo array_pop($work);
?>
0061nobodyさん
2005/11/03(木) 15:24:34ID:???誘導
http://news19.2ch.net/test/read.cgi/newsplus/1130985853/
006259
2005/11/03(木) 15:51:31ID:???なるほど、そういうことなのか。
でも PHP4.3.10 でも、 function hoge(&$str) みたいに定義した関数を hoge("unko") のような形では
呼び出せなかった気がするけど、気のせい?
しかし、その手の問題なら、ソースの中を探すのが大変だな。
ちょっとした検索ツールを作らなくちゃいけなそうだな。
0065nobodyさん
2005/11/03(木) 17:02:41ID:???0066nobodyさん
2005/11/03(木) 17:08:42ID:???register_globals = On で使ってる環境がそれほど多くないってことなんじゃない?
該当環境だったら、結構致命的な気がする。
おれもこの際だからPHP4.4.1にアップデートしようと思ってはみたけど、なにやら mb_send_mail に
バグなんだか仕様変更なんだかがあるらしく、見送りたくなってきたところ。
0067nobodyさん
2005/11/03(木) 17:23:12ID:???0068nobodyさん
2005/11/03(木) 17:25:10ID:???0070nobodyさん
2005/11/03(木) 19:04:00ID:???0071nobodyさん
2005/11/03(木) 19:14:46ID:???http://www.php.net/
0072nobodyさん
2005/11/03(木) 19:24:32ID:???0073nobodyさん
2005/11/03(木) 19:30:57ID:???apacheもPHPも上げて、スクリプトも書き直しつらい。
徹夜だ。
0076nobodyさん
2005/11/03(木) 20:18:02ID:???0079nobodyさん
2005/11/03(木) 21:47:34ID:e6YB+Wfp0080nobodyさん
2005/11/03(木) 21:50:28ID:???それともみんなは関数内でglobal命令で参照してるの?
0081nobodyさん
2005/11/03(木) 21:51:34ID:???0082nobodyさん
2005/11/03(木) 21:53:06ID:???んなばかな
どんなにローカル変数で頑張ってもグローバル変数使うでしょ
それともぜーんぶクラス化してプロパティで参照してんの?
0083nobodyさん
2005/11/03(木) 21:59:05ID:???ここは更新ボタン押しても二重投稿とかないけどこんな風にできない?
0084nobodyさん
2005/11/03(木) 22:01:38ID:???書き込んだ後で自分自身にリダイレクトしろ
function redirect($url){
header("Location: $url");
exit;
}
0085nobodyさん
2005/11/03(木) 22:03:52ID:???うん。
0087nobodyさん
2005/11/03(木) 22:31:19ID:???$guro = 1;
function hoge(){
$out = $GLOBALS['guro'] + 1;
return $out;
}
echo hoge();//実行結果:2
こんなふうにやるときの$GLOBALSって意味ですよね?
中身丸見えのオープンソースのものなら、書き換えて攻撃とかやる気にもなるけど、漏れなんかの書いた変態スパゲッティソースを外部から変数名を推測して攻撃するなんてほとんど不可能だと思うんだけど、どうでしょう?
register_globals = Offだけど、
extract($_GET);なんてやっちゃててるスクリプト山ほど書いて来たけど、一度もつつかれた事無いyp!
しょぼい仕事しかしてないからですか。そうですか。吊ってきます。
0088nobodyさん
2005/11/03(木) 22:32:25ID:???0089nobodyさん
2005/11/03(木) 22:58:23ID:???僕のサイト(素人サイト)は
register_globals=ONでしかうごかないページがあります。
まぁやばくなったら、$GET_['hoge']で変数を受け取れば
いいやって考えてました。
で、今回のセキュリティホール問題をみてて ON じゃやべー
って思って、httpで変数を渡す処理の部分は全部
$_GET['hoge']にしてOFFにしたんですが、うごかないです。
レンタル鯖屋が4.4.1にUPしたらしいのが原因?前は動いたのですが・・。
ちなみにプログラムはこれです。何かの本のサンプルをみて書きました。
クリック数カウントするためです。
http://www.hoge.com/count.php?no=1&url=http〜〜
<?php
$_GET['url'];
$_GET['no'];
MYSQLへのカウント処理
//指定されたURLへリダイレクト
header("Location: " . $url);
?>
デバック方法でも何でもよいのでアドバイス下さい。。
0090nobodyさん
2005/11/03(木) 23:01:41ID:???0091nobodyさん
2005/11/03(木) 23:07:45ID:???<?php
$url = $_GET['url'];
$no = $_GET['no'];
//省略
?>
ではないのか?
>デバック方法でも何でもよいのでアドバイス下さい。。
echo $url; //debug
//header("Location: " . $url);
0092nobodyさん
2005/11/03(木) 23:08:26ID:???0094nobodyさん
2005/11/03(木) 23:18:43ID:???function redirect($url){
header("Location: $url");
exit;
}
を書くことによって更新ボタン押しても二重投稿できなくなるの?
009589
2005/11/03(木) 23:29:19ID:???>>91
そのとおりです。
指定するの忘れてました。
それで見事にできました。
尚、前までは僕が書いたソースで出来ていたのは
なぜかは謎です。
009691
2005/11/03(木) 23:38:57ID:???registor_globals = on だから
$url = $_GET['url'];
相当の処理が自動で行われて動いてたんだろ。
0099nobodyさん
2005/11/04(金) 00:52:15ID:???ってPHP5で5.0.1→5.0.5でも同じなの?
ここ数日のバグの記事を見て自鯖のPHP更新(5.0.1→5.0.5)してたら
Fatal error: Only variables can be passed by reference
ってエラー出た。
0100nobodyさん
2005/11/04(金) 01:02:34ID:???だって見られて困るデータにDBに入ってないし。
DBのデータは変動しないからバックアップ戻せばいいだけだし。
つか、漏れ様の、漏れでさえ解んなくなるプログラムの変数名予測して攻撃するなんて不可能。
手間>得るもの
だからさ。
0101nobodyさん
2005/11/04(金) 01:05:50ID:???$sql = "まあ、ふつうのsql文";
$result = mysql_query($sql);
$rows = mysql_num_rows($result);
って書いてるところを
$sql = "まあ、ふつうのsql文";
$rows = mysql_num_rows(mysql_query($sql));
って書くのは、パフォーマンス的にはどうなんでしょう?
$sql = "まあ、ふつうのsql文";
while ($row = mysql_fetch_array(mysql_query($sql))) {
いろいろ
}
なんてのもいかがなもんでしょうか?
ずっと上の書き方してたけど、一行でも減らしたいと思うんですが。
0102nobodyさん
2005/11/04(金) 01:12:18ID:???こまめにバックアップとっとこう(´・ω・´)
0103nobodyさん
2005/11/04(金) 01:15:49ID:???・前ページ
<a href="next.html#page_bottom">次のページの下</a>
・次ページ(next.html)
・
・
・
<a name="page_bottom"></a>
</body>
</html>
で出来たんだけど
関数で呼び出したときにページの最下部を表示させるにはどうすればいいの?
0104nobodyさん
2005/11/04(金) 01:19:16ID:???0105nobodyさん
2005/11/04(金) 01:24:07ID:???ちょっと思い違いというか勘違いしてました
0106nobodyさん
2005/11/04(金) 01:27:55ID:???0107nobodyさん
2005/11/04(金) 02:24:26ID:???0108nobodyさん
2005/11/04(金) 04:23:52ID:uML+jUAbhttp://curl.haxx.se/download.html
ってPHPでも使えますか?
0109nobodyさん
2005/11/04(金) 04:26:26ID:???>って書くのは、パフォーマンス的にはどうなんでしょう?
かわんねーよ。ベンチとるまでもなく0.01秒以上の差がコンスタントに出たら、びっくりしてウソコもらしてやる。
>while ($row = mysql_fetch_array(mysql_query($sql))) {
何回mysql_query呼び出す気ですか?(これじゃループする度に呼ばれちまうんですけど)
>一行でも減らしたいと思うんですが。
減らすのは自由だが、今のご時世は可読性・保守性を重視する風潮があるので、同意を得るのは難しいと思われ。
人様に迷惑かけない程度にな。
>>108
うん
0110nobodyさん
2005/11/04(金) 04:51:08ID:???$rows = mysql_num_rows(mysql_query($sql));
でもいいのなら後この結果セットを使わないってことだよな。
だとしたらSQLでCOUNT(*)でもよさげ。
101の質問にはSQLが書いてないが、パフォーマンスを言うなら
SQLも無ければ考察は無理。
phpのパフォーマンスじゃなくMySQLに与えるSQLが影響を与える
可能性が大きい
と思う。つか自分で確認してみるという選択肢は無いのかね君には。
0111nobodyさん
2005/11/04(金) 10:51:45ID:???0112nobodyさん
2005/11/04(金) 11:02:20ID:???<a href="mailto:[email protected]">click here</a>
ってこと?
0113nobodyさん
2005/11/04(金) 13:53:43ID:???ttp://www.gac.jp/article/index.php?stats=question&id=16225&command=msg
>>111
ttp://www.gac.jp/article/index.php?stats=question&id=16237&command=msg
恥知らずなマルチはお止めなさい。
0114nobodyさん
2005/11/04(金) 14:04:45ID:J9d48tpa0115nobodyさん
2005/11/04(金) 17:25:37ID:V1LIAVum自分自身のファイル名をすることは出来ますか?
0117nobodyさん
2005/11/04(金) 17:42:00ID:???わぁーお、どもども。$_SERVERの方ばかり見てましたよ。
変な日本語は2ちゃん語の一種ということで・・。
0118nobodyさん
2005/11/04(金) 17:51:12ID:???マニュアルの3章〜5章には目を通しておいた方がよいよ。
余裕がないなら3章だけでも。
自分の日本語が変なのを2ちゃんのせいにするな( ゚Д゚)ゴルァ!!
0119118
2005/11/04(金) 17:53:18ID:???0120nobodyさん
2005/11/04(金) 18:03:48ID:???メールから取得した本文がquoted-printableでエンコードされているとmb_detect_encodeでも変になるし・・
メールのヘッダから取るしかないのかな・・
0121nobodyさん
2005/11/05(土) 04:30:57ID:???Content-TypeとContent-Transfer-Encoding見るしかないかな。
0122nobodyさん
2005/11/05(土) 11:24:59ID:???掲示板を設置してみたんですけど書き込みできません
掲示板は表示されてるのでPHPは動いてるようなんですが
設定すべき所があるのでしょうか?
環境は↓です
WinXP sp2
04WebServer 1.82
PHP 4.4.1
0123122
2005/11/05(土) 11:26:14ID:2U/gHABa0125nobodyさん
2005/11/05(土) 11:42:09ID:???ソースはこれ?
http://php.s3.to/bbs/p-bbs.php.txt
エラーも出ないね.
0126122
2005/11/05(土) 11:44:52ID:2U/gHABa掲示板のデフォ設定がhogehoge.comになってるようです
書き込みできるようになったら直します
>>125
そうです
レッツPHP!のP-BBSです
0127122
2005/11/05(土) 11:47:36ID:2U/gHABa原因は同じだと思うのですが
0128nobodyさん
2005/11/05(土) 11:50:03ID:???0130122
2005/11/05(土) 12:02:23ID:2U/gHABaphp.iniの270行目のことでしょうか?
error_reporting = E_ALL & ~E_NOTICE
↓
error_reporting = E_ALL
に変えてみました
0131122
2005/11/05(土) 12:04:21ID:2U/gHABaApacheは難しそうなので・・・
0132nobodyさん
2005/11/05(土) 12:09:20ID:???http://219.66.201.34/testbbs/p-bbsa.php?mode=regist
ってGETで渡すとエラー画面が出るんだけど,
POST だと何の反応もない.
0133122
2005/11/05(土) 12:15:02ID:2U/gHABa「POST 200 OK 正常に終了しました」とは出てます
でも掲示板では書き込み出来てないんですよね・・・
0134122
2005/11/05(土) 12:25:27ID:2U/gHABaうpろだです。これもUP出来ません
UPしてみるとファイル転送はされるんですけど
04WebServerのほうで100%正常終了って出ても、うpろだでは何も反映されないです
0136122
2005/11/05(土) 12:37:34ID:2U/gHABaこれで見れますか?
http://219.66.201.34/test.php
なんか見せたらまずそうな物まで見えちゃってますけど・・・
0137nobodyさん
2005/11/05(土) 12:40:28ID:???0138nobodyさん
2005/11/05(土) 13:06:21ID:???POSTが渡ってない模様。GETが含まれるとなんか渡るぽい
試しに
<form method="POST" action="/testbbs/p-bbsa.php">
を
<form method="POST" action="/testbbs/p-bbsa.php?hoge=piyo">
としてやってみそ。挙動が変わる。(エラーになってるみたいだけど)
なんか04WebServerの問題ぽいけど、よくわからん
POSTされたかどうか確認するには
<form method="POST" action="/test.php">
にしてやってPHP Variablesを見る。
0139nobodyさん
2005/11/05(土) 13:15:45ID:1PzhgjSf・ホスト名が逆引きできないホストからの書込を禁止
・正引きと逆引きの結果が異なるホストからの〜
・特定プロバイダ、特定IPアドレスからの〜
したいのですが、サンプルが見つからず四苦八苦しています。
よくあるやり方だと思うのですが、ど…どなたかヒントを…
(アクセス自体を禁止でも良いんですが、借りてるサーバが
余り.ht〜設定ファイルの自由が利かない。)
■ このスレッドは過去ログ倉庫に格納されています