【PHP】下らねぇ質問はここに書き込みやがれ 46
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2007/05/12(土) 16:43:57ID:???PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り
◆前スレ
【PHP】下らねぇ質問はここに書き込みやがれ 45
http://pc11.2ch.net/test/read.cgi/php/1177635762/
◆質問する時の注意
・ 自分のIDを表示させること。(メール欄に何も記述しないこと。空白も入力しちゃダメ)
・ サーバーのOS(Linux、Windows他)、WebサーバーとPHPの種類やバージョン等を明記すること。
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
◆質問後の注意
・偽者防止に必ずIDを表示させること。(メール欄に何も記述しない)
・2回目以降は最初に質問した際のレス番号を名前欄に入れること。
・解決しなくても回答をもらった場合はお礼を言うこと。
(荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)
◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。
【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで
0693nobodyさん
2007/05/21(月) 09:44:33ID:???すいません既にその変更もしていました
phpは動いているのでそれはいわなくてもいいかなと思ったので
httpd.conf
LoadModule php5_module c:/php/php5apache2_2.dll
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
DirectoryIndex index.html index.html.var index.php
0695nobodyさん
2007/05/21(月) 10:15:06ID:tUHb9fVw現在、セッション変数を使い始めた初心者です。
数人が参加できるチャット画面を作っています。
1、ある人がそのページに参加すると、入ったという情報をファイルに記録する。
(フラグを1にしてるだけですが)
2、退出ボタンで退出すると、出て行ったという情報をファイルに記録する。
3、ブラウザを閉じたり、タイムアウトになったりした場合もファイルに記録する。←ここ
のようなことをしたいのです。
現在は、タイムアウトでいなくなった場合は、ずっとその人は参加し続けていることになってます。
ググッても独自関数みたいなものが出てきて、レベルが高すぎてさっぱりわかりません。
いいやり方はないですか?
0696685
2007/05/21(月) 10:26:15ID:???今解決しました
インストーラー版で一回インストールしたあと削除せずに
Zipを解凍して手動でインストールしたのが原因でした
一生懸命変更したiniファイルとは別のインストール版の方のiniをphpは読んでいたみたいです
インストーラー版を削除したらmysqlのプログラムも動くようになりました
0698685
2007/05/21(月) 10:37:57ID:???windows板で前に質問したときはすぐに回答いただいたんですけど
(笑)
0701695
2007/05/21(月) 10:58:25ID:tUHb9fVwそれです。ブラウザ閉じた時にセッションきるやつですよね。
その時に、ファイルに保存してある
1番,○○さん
っていうのも空欄に書き換えたいのですけど、どうしたらいいのですか?
0702nobodyさん
2007/05/21(月) 11:24:39ID:???0703nobodyさん
2007/05/21(月) 11:27:58ID:???0704nobodyさん
2007/05/21(月) 11:32:54ID:???0705nobodyさん
2007/05/21(月) 11:39:18ID:???0706nobodyさん
2007/05/21(月) 11:45:40ID:???0707nobodyさん
2007/05/21(月) 11:49:04ID:???0708nobodyさん
2007/05/21(月) 11:53:59ID:???0709695
2007/05/21(月) 12:56:23ID:tUHb9fVw楽しみに待ってます。
0711nobodyさん
2007/05/21(月) 12:58:25ID:3IxpO5VZセキュリティ関係で気をつけなきゃいけないことありますか?
0712nobodyさん
2007/05/21(月) 13:05:14ID:???どんなキャッシュファイルか分からないから
なんとも言いにくい
あえて言うのなら
・ドキュメントルートの下には置かない
もちろんシンボリックリンクも
・個人情報、パスワードをなどを書き込まない
どうしても書き込む必要があるときは、できるだけ
すぐに消すようにする
0713710
2007/05/21(月) 13:05:17ID:???SOHO・フリー・会社でWEBプログラミングしてる奴
名前: nobodyさん
E-mail:
内容:
ここはSOHO・フリー・会社でWEBプログラミングをお仕事にしてる人のスレです。
いろんな所に、いろんな年齢で、いろんな条件のひとがガンガってます。
儲かってる人も、細々食え出した人も、個人も会社勤めの人も、お互いの立場を尊重し
情報交換・愚痴交換して行きましょう。
0715nobodyさん
2007/05/21(月) 13:06:27ID:???0716nobodyさん
2007/05/21(月) 13:38:53ID:3IxpO5VZありがとうございます
動的ページをその都度データベースから引き出してるのが遅いので
よく使う&変更のないやつをキャッシュにいれておこうと思いました
>>714
フィーバーですか?
>>715
習慣で777と書いちゃいました
cmdも習慣で777と打っちゃうんですけど
0717nobodyさん
2007/05/21(月) 13:43:01ID:???0718nobodyさん
2007/05/21(月) 13:45:56ID:???700でいいじゃないの。
あと、キャッシュファイル名はハッシュにすればいいよ。
md5とかで('file path');で出し入れする。
0719nobodyさん
2007/05/21(月) 13:54:37ID:O1legeAPsession_start();
$_SESSION['count'] = 1;
とやるとテンポラリディレクトリに
sess_tm4m6v8sp4r42ptimhc3rquim6tっていうファイルができてました。
ローカルだから確認できたのですが、sess_という部分を
はじめて使うレン鯖などで調べる場合 どうやって調べるのでしょうか?
テンポラリディレクトリを読んで、中のファイル名一覧を取得してファイル名を取得というやりかたを
考えたのですが、これは違うと思ってて悩んでます。
どなたかご教授ねがいます。
0720nobodyさん
2007/05/21(月) 13:56:26ID:???0722721
2007/05/21(月) 14:05:01ID:3IxpO5VZ0723nobodyさん
2007/05/21(月) 14:05:45ID:???を使えるので、自分はキャッシュ使うときはそうしてる。
0724nobodyさん
2007/05/21(月) 14:19:03ID:???0725nobodyさん
2007/05/21(月) 14:32:09ID:O1legeAP今回はファイルに勝手につけられるsess_という部分を
調べたかったのですがsession_id()で試してみたらsess_より下の部分がわかりました。
オンライン中ユーザを表示するスクリプトが書きたかったのですがわたくしの力ではPHPでは難しいです・・orz
でもPHPで書かれたスクリプトを運用していらっしゃるサイトさんもありますので諦めがつきません。
0727nobodyさん
2007/05/21(月) 14:39:35ID:???パーミッションの設定で同じグループに属するユーザに権限を与えるとディレクトリにアクセスできるのですが・・・?
0729nobodyさん
2007/05/21(月) 15:05:42ID:???0731nobodyさん
2007/05/21(月) 15:15:30ID:???0732nobodyさん
2007/05/21(月) 15:27:06ID:tU+w3yaBimg srcでそのファイルを指定する事は可能でしょうか?
0735nobodyさん
2007/05/21(月) 15:36:03ID:O1legeAP0736nobodyさん
2007/05/21(月) 15:45:34ID:???アクセスカウンタ?それとも瞬間のアクセス数?
前者ならページを開いたときにインクリメントするものを作れば出来る
後者じゃないとは思うけど・・・
後者ならWEB(apache)のログを解析するしかないんじゃないの?
0737nobodyさん
2007/05/21(月) 15:48:19ID:???ログ解析なんか関係ない。ある種>>695と同じような質問だな。
とりあえずラフなもんなら、sessionを時間で区切って数えてやる。
今まさに「ブラウズ中」カウントしたいならajaxあたりでやる。
0738nobodyさん
2007/05/21(月) 16:46:11ID:oCyouogRPHPでSJISの文字を受け取り、EUC-JPに変換後、MySQLに格納しているんですがなぜか"ー"の文字だけ"?"に文字化けします。
PHPは5.1.6
MySQLのDEFAULT CHARSETはEUC-JPです。
色々見てみた結果、MySQLに格納しる前は普通に"ー"であるようなのです。
完全にMySQLの質問ですが、この板がホームな私にお力お貸しください。
0739nobodyさん
2007/05/21(月) 16:49:39ID:???>完全にMySQLの質問ですが、この板がホームな私にお力お貸しください。
こういう書き方は不愉快ですね。
0741738
2007/05/21(月) 16:56:42ID:oCyouogR不愉快な気持ちにさせてしまってすみません;;
MySQLは作成時に(create table時に)DEFAULT CHARSET=ujisにしています
ただ(文字コードEUC-JP)SSHでみると文字化けしています。
一度確認してみます。ありがとうございます。
>>740さん
返レスありがとうございます
そこは何度も確認したのであっているようです。
一度、EUC-JPに変換したものを再度SJISに変換してechoしたところ"ー"は文字化けしていませんでした。
0742nobodyさん
2007/05/21(月) 17:08:35ID:???0743738
2007/05/21(月) 17:15:17ID:oCyouogRprotected function UpdatePage1(&$str) {
var_dump($str['title']); //この時点では文字化けなし
mb_convert_variables("EUC-JP", "SJIS", $str);
var_dump(mb_conbert_encoding($str['title'], 'EUC-JP', 'SJIS')); //
$sql =
"UPDATE `hoge_tbl` SET `title`='".$str['title']."', `msg`='".$str['msg']."' WHERE `seq`=".$this->_values['seq'];
echo $sql;
parent::mysql_insert($sql);
}
0744738
2007/05/21(月) 17:17:55ID:oCyouogRaddslashesは助長になるので省いてますがきちんとconvertの後にかけてます。
DBに書き込む前のdumpでは文字化けしていません。
0745nobodyさん
2007/05/21(月) 17:21:27ID:???意味わからん。
>mb_convert_variables("EUC-JP", "SJIS", $str);
>var_dump(mb_conbert_encoding($str['title'], 'EUC-JP', 'SJIS'));<−−このタイポは問わないとして。
デバッグするなら
var_dump(mb_convert_variables("EUC-JP", "SJIS", $str));
のほうだろ。
0746738
2007/05/21(月) 17:39:41ID:oCyouogRご指摘ありがとうございます。
試した結果、EUC-JPでした。。
0747nobodyさん
2007/05/21(月) 17:56:24ID:O1legeAP勉強になりました。ありがとうございました。
0748nobodyさん
2007/05/21(月) 18:25:11ID:gTv1f8Kghttp://www.excite.co.jp/world/english/
に、
POSTで「こんにちは」を送信したところ、
翻訳されたら「S O. Tsu」と、変な変換になってしまいます。
$word = mb_convert_encoding($word,"SJIS","auto");
$post = 'before='. $word .'&wb_lp=JAEN&start=翻訳';
こっちはSJISで送信して、UTF-8で受け取っています。
$request = "POST $post_url HTTP/1.0\r\n";
$request.= "Host: $parse_url[host]\r\n";
$request.= "User-Agent: PHP/" . phpversion() . "\r\n";
$request.= "Content-type: application/x-www-form-urlencoded; charset=SJIS\r\n";
$request.= "Content-Length: " . strlen($post) . "\r\n";
//$request.= "Referer: $url\r\n";
$request.= "\r\n";
$request.= "{$post}\r\n";
おそらく途中で文字化けしていると思うのですが、どうして文字化けしてしまうのでしょうか?
ちなみに、英⇒和だと正しく変換されます
0749nobodyさん
2007/05/21(月) 18:52:01ID:???>Content-type: application/x-www-form-urlencoded;
この意味もわからずにどっかから取ってきたコードで、自分の水準以上のことをやるからそうなる
0750nobodyさん
2007/05/21(月) 19:08:59ID:O1legeAPTrueTypeフォントというのはパソコンを買ったときからC:\WINDOWS\fontsにたくさん入っているんですけど
このフォントディレクトリを指定したいのですがエラーがでて困り果ててます。
putenv('GDFONTPATH=' . realpath('C:\WINDOWS\fonts'));
っって記述はフォントへのディレクトリを指定しているつもりですが間違ってましたらご教授願います。
ソースはこれです
<?php
header("Content-type: image/png");
putenv('GDFONTPATH=' . realpath('C:\WINDOWS\fonts'));
$text = 'test'';
$font = 'arial.ttf';
$im = imagecreatetruecolor(400, 30);
$white = imagecolorallocate($im, 255, 255, 255);
$grey = imagecolorallocate($im, 128, 128, 128);
$black = imagecolorallocate($im, 0, 0, 0);
imagefilledrectangle($im, 0, 0, 399, 29, $white);
imagettftext($im, 20, 0, 11, 21, $grey, $font, $text);
imagettftext($im, 20, 0, 10, 20, $black, $font, $text);
imagepng($im);
imagedestroy($im);
?>
0751nobodyさん
2007/05/21(月) 19:14:19ID:EzwH2Xng>$text = 'test'';
これが問題なだけでしょ。
0752nobodyさん
2007/05/21(月) 19:23:14ID:O1legeAPそれも直してみたのですが、やはりパスが通りませんでした。
putenvを消して、$fontに絶対パスで記入したら動くのですが・・・私にはわかりません
0753732
2007/05/21(月) 19:36:27ID:f9N/ntIf試してみても動かないので
動いてる参考例ってないですか?
0754nobodyさん
2007/05/21(月) 19:55:17ID:???<img src="imgview.php?id=AAAAA">
【imgview.php】
<?php
if(! preg_match('/^\w+$/', $_GET['id'])) exit;
header("Content-type: image/jpeg");
readfile("../image/" . $_GET['id'] . ".jpg");
?>
とか?
0755732
2007/05/21(月) 20:18:22ID:f9N/ntIfなるほど、試してみます
0756nobodyさん
2007/05/21(月) 20:54:00ID:EzwH2Xngじゃあ
putenv('GDFONTPATH=' . realpath('C:\WINDOWS\fonts'));
echo getenv("GDFONTPATH");
の二行だけ試せよ。ワカラン厨はイラナイ
0757nobodyさん
2007/05/21(月) 21:01:46ID:???putenv('GDFONTPATH=C:\WINDOWS\fonts'));
駄目だったら
$tmp=getcwd();
chdir('C:\WINDOWS\fonts');
putenv('GDFONTPATH=' . realpath('.'));
chdir($tmp);
0758nobodyさん
2007/05/21(月) 21:25:08ID:???0760nobodyさん
2007/05/21(月) 21:52:52ID:???putenv('GDFONTPATH=' . realpath('C:\WINDOWS\fonts'));
$text = 'test'';
$font = 'arial'; // 拡張子を取る
でどうかな。
0762nobodyさん
2007/05/21(月) 22:30:18ID:EzwH2Xnggetenvを消したら動く
↓
じゃあgetenvが「悪さ」してるかもしれない。→という仮定の下、XXXを試してみた
とかいうのは、全然、ワカラン厨じゃないよ。質問者が思考停止しててどうするというこった。
0766nobodyさん
2007/05/22(火) 01:02:05ID:???0767nobodyさん
2007/05/22(火) 01:11:51ID:???0768nobodyさん
2007/05/22(火) 06:12:55ID:uBXy9NM+これは複数のブログのrssを表示させることが可能ですが、1つのサイトについて
1件しか標示させれません。
1つのサイトに付き10件ぐらい表示させる方法はないでしょうか?
ttp://210.143.110.132/~php/net/rss/rssup.php.txt(ソースです)
ほんとすいません。
アドバイス教えて下さい。
0769nobodyさん
2007/05/22(火) 06:21:32ID:???0770nobodyさん
2007/05/22(火) 06:37:08ID:uBXy9NM+すいませんでした><
0771nobodyさん
2007/05/22(火) 06:52:38ID:???0772nobodyさん
2007/05/22(火) 06:55:04ID:???0773nobodyさん
2007/05/22(火) 07:10:30ID:???0774nobodyさん
2007/05/22(火) 07:49:05ID:F6/h/Ppdsetcookie("cookie", "hello", time()+60*60*24);
このとき、クライアントにクッキーが発行されるのですが、XSSは発生ケースも考えられるでしょうか?
2番目のhelloにhtmlspecialcharsをかませるべきですかね?
0775nobodyさん
2007/05/22(火) 08:07:49ID:???そこはXSSに関係ないんじゃ。あとhelloにhtmlspecialcharsをかませてもhelloだよ。
むしろその推測しやすい値を何とかした方がいいよ。
0777nobodyさん
2007/05/22(火) 10:05:13ID:???0778nobodyさん
2007/05/22(火) 10:12:16ID:F6/h/Ppd>>775さんありがとうございます。クッキーを送信するときにhtmlspecialcharsは必要ないのですね。
クッキーを読み込むときのみサニタイズすることにします。
ありがとうございました。
0779nobodyさん
2007/05/22(火) 11:03:40ID:???>>768
まずPHPの言語リファレンス読んだほうが確実に早いと思うぞ?
このまま試行錯誤→10日くらいかかる
リファレンス読む→1日+試行錯誤→3日
0780nobodyさん
2007/05/22(火) 11:12:44ID:???俺の場合
このまま思考錯誤→検索して似たようなサンプルを探してみる→3日くらい
マニュアルを読んでみる→眠くなる→気がつけば1ヶ月→結局何も頭に入ってない
0781nobodyさん
2007/05/22(火) 11:15:00ID:???0782nobodyさん
2007/05/22(火) 11:45:23ID:O7vxYa15例文がちょっとずつついてると嬉しいのですが
0783nobodyさん
2007/05/22(火) 11:48:02ID:O7vxYa15○ よく使う関数
関す名を頻繁にど忘れするので、いつも手元に置いておけて、関数名と使い方をいっぺんに
思い出せるようなものが良いです お願いします
0784nobodyさん
2007/05/22(火) 11:52:11ID:???"hello"が実際は$_GET['password']みたいなことはないよな?
>>783
お前がよく使う関数なんてお前とお前の上司しか分からんわな。
0785nobodyさん
2007/05/22(火) 11:55:08ID:O7vxYa15正式なマニュアルだと1回も使ったことない・見たことがない関数ってありませんか?
そういう関数を省いた最小限+α的な良質なものが欲しいのですが…
0788nobodyさん
2007/05/22(火) 11:58:49ID:???ばか?
0789nobodyさん
2007/05/22(火) 12:03:14ID:O7vxYa15最近「ほしい関数」をど忘れするんです 会社は外のネットに繋がってないからググれないし
やっぱり正式マニュアルに手を入れて自分用のをものを作る方がよさそうですね
時間見つけてやってみます ありがとうございました
0790nobodyさん
2007/05/22(火) 12:04:20ID:O7vxYa15あ、はい、そうします
0791nobodyさん
2007/05/22(火) 12:10:38ID:???こういうのとか?
■ このスレッドは過去ログ倉庫に格納されています