【PHP】くだらねぇ質問はここに書き込みやがれpart2
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
05/01/09 06:01:24ID:tJkdKk+eお前の下らない質問に回答があるかも知れないスレッドです。
0652nobodyさん
05/01/26 15:36:18ID:???>>639の処理手順は合ってるから、それ以上手の付け様は無いよ。
>>642が言ってるように根本的なやり方を変えるか、
>>647が言ってるような運用方法で軽減するかくらいしかない。
まぁ、jpegで1MBのファイルならメモリに展開した時に
10MB(php.ini設定か?)を超えてもおかしくないわな。
0653nobodyさん
05/01/28 00:31:06ID:o6jrdeht0654nobodyさん
05/01/28 03:39:06ID:???0655nobodyさん
05/01/28 07:24:10ID:???0656nobodyさん
05/01/28 09:47:33ID:???0657nobodyさん
05/01/28 12:18:03ID:???まあエロいことはいいことだ。
0658nobodyさん
05/01/28 13:14:06ID:???0659nobodyさん
05/01/28 13:39:35ID:???0660nobodyさん
05/01/28 14:35:04ID:xpvGFlmuくだらない質問でごめんなさい。
DBからUTF-8形式のデータを呼び出し、それらをfopenを使ってファイルに書き込むときに、ファイルの出力コードが勝手にShift-JISとなってしまいます。
mb_convert_encodingやutf8_encodeなどを使って、DBから呼び出した個々のデータを全てUTF-8にしても、ファイルそのものはShift-JISのままになってしまいます。
どなたか、ご対応の程よろしくお願い致します。
0662660
05/01/28 16:21:53ID:xpvGFlmuご回答ありがとうございます。
php.iniについてはレンタルサーバなので正確に中身を見る事は出来ませんが、ユーザが指定できるので、そこに記述した内容をコピーしますね。
language = "neutral
default_charset = "UTF-8"
mbstring.internal_encoding = "UTF-8"
mbstring.http_output = "UTF-8"
このような設定にしています。
他のページ等に記載していることを、見よう見まねで書いてみたのですが、やはりファイル出力はShift-JISのままとなってしまいます。
ご対応の程よろしくお願い致します。
0663nobodyさん
05/01/28 17:20:33ID:???0664nobodyさん
05/01/28 17:31:02ID:???fopenでファイルに書き込む際に自動的にエンコード変換を
掛けるなんてことはないのだがな。その「勝手にShift-JISとなってしまいます。」
や「DBにはUTF-8で格納されてる」つうのはどうやって確認してる?
あとDBMSの機能で、PostgresなんかはDBクライアントの機能として
MySQL4.1/5.0はDBサーバの機能としてデータのIN/OUTの際にエンコードの変換を
行うことができるので、その辺が影響して無いか確認。
影響してればPHPに取り込んだときには既に変換されてる
0665660
05/01/28 17:49:52ID:xpvGFlmuご回答ありがとうございます。
phpinfo()の該当する部分というのはこの辺りの掲載すればよろしいのでしょうか?
PHP Core
Directive Local Value Master Value
default_charset UTF-8 UTF-8
output_buffering 0 0
output_handlerno value no value
mbstring
Japanese support enabled
Directive Local Value Master Value
mbstring.detect_orderno valueno value
mbstring.encoding_translationOffOff
mbstring.func_overload00
mbstring.http_inputpasspass
mbstring.http_outputUTF-8UTF-8
mbstring.internal_encodingUTF-8UTF-8
mbstring.languageneutralneutral
mbstring.substitute_characterno valueno value
不要なものがありましたら、申し訳ございません。
また、必要なものがございましたら、お手数ですがご指摘の程、よろしくお願い致します。
0666664
05/01/28 17:52:18ID:xpvGFlmuご回答ありがとうございます。
勝手にShift-Jisになる確認方法の件ですが、fopenにて生成されたファイルをエディタ(Macユーザのためmiというエディタを使っています)で開いたところ、Shift-Jisになっているのです。
また、DB(MySQL)の件については、UTF-8でエンコードされたWebページのフォームから文章を入力し、PEARを使って
DBにInsertしています。そして、それを同じくUTF-8でエンコードされた違うWebページで出力させているのですが、文字化け等はおきずに正しく表示されています。
また、phpmyadminをutf-8に設定した状態でDBのデータを確認してみても、ちゃんと表示されております。これにより、MySQLのデータIN/OUTにおけるエンコード変換の影響はないと判断していますが、いかがでしょうか?
またCURLを使い、yahoo.co.jpを取り込み、同じようにfopenを使ってファイル出力してみたのですが、この場合は
EUC-JPとなるようです。
以下がスクリプトです。
$curl = curl_init("http://www.yahoo.co.jp");
$fl = @fopen('hoge.php', 'w');
curl_setopt( $curl,CURLOPT_FILE,$fl );
curl_setopt( $curl,CURLOPT_HEADER,0);
curl_exec( $curl );
curl_close( $curl );
fclose( $fl );
ご指摘の程、よろしくお願い致します。
0667660
05/01/28 17:53:37ID:xpvGFlmu申し訳ございません。名前のところに664と書いて投稿してしまいました。
0668nobodyさん
05/01/28 18:15:00ID:???エディタのエンコードの自動判定が判定しきれなくて
間違ったエンコードと認識してる可能性がある。
バイナリエディタを入手して文字コードで確認してみてください。
データのIN/OUTにおいて変換されてしまってる感じではなさそうだな…
0669nobodyさん
05/01/28 23:37:03ID:ZphJTcdtですが、色を変えることはできますか?
0671nobodyさん
05/01/29 16:48:34ID:y8zIQf8h接続中に何回か実行クエリを発行してもpg_closeしないと
結果が反映されてないみたいんですが、そうゆうものですか?
AUTO COMMITのようなことはできますでしょうか?
0672nobodyさん
05/01/29 17:05:42ID:???0674nobodyさん
05/01/30 01:48:28ID:???以前WIN環境(2k)のapache(1.3.27)+php(4.2.3)で作ってたんですが
今度同じWIN環境でapache(2.0.50)+php(5.0.1)に移行したら
プリント関数が使えなくなりました。
php.iniに「extension=php_printer.dll」も追加し、phpのextフォルダにも
php4環境からphp_printer.dllをコピって置いたんですが本来なら
このフォルダにあるはずだし、apacheを再起動しても
「指定されたモジュールが見つかりません」と怒られます。
ひょっとしてphp5になってからプリント関数は無くなったんでしょうか?
0675nobodyさん
05/01/30 01:56:07ID:???http://jp2.php.net/get/pecl-5.0.3-Win32.zip/from/a/mirror
0677nobodyさん
05/01/30 05:45:15ID:79430JFW特定の文字列を抜いて、
別のphpから表示したいのですが、可能でしょうか?
具体的にどんな方法が考えられますでしょうか?
例:a.html(abcdefという内容)
b.php a.html からdefを抜いて、
abcと表示。
0678nobodyさん
05/01/30 06:01:06ID:???0680nobodyさん
05/01/30 10:21:00ID:/AMMda4BFOMAの動画を再生させようとしてるんだが
http://www.hoge.com/hoge.asf
へ飛ばしたらバイナリはいてたのでIMGタグ使ってみたがやはり表示されない
なんか特別なFOMA用のタグでもあるのかね?
0681nobodyさん
05/01/30 10:29:29ID:???<a>か<object>だった希ガス
0682nobodyさん
05/01/30 11:04:05ID:???携帯用の動画は画面サイズがきまっています。
前に俺も携帯用の配信してた時にちょっとつまずいた。
正確な解像度はわすれたけど、ちょっと調べれば、わかったと思うよ。
あとは、.asfにアンカータグでリンクを張れば再生される。
0683nobodyさん
05/01/30 11:09:01ID:???nl2brという関数を知ったのですが、
ereg_replace("\n", "<br>", $hoge);
とするのと何か違いがありますか?
0684nobodyさん
05/01/30 11:31:53ID:???nl2brは、\nや\rを置き換えるんじゃなくて、挿入します。
\n \rを区別しないし、消されることも無い。
つまり、改行コードが「\n」のみだったら、以下と同じになります。
ereg_replace("\n","\n<br />",$hoge);
0685nobodyさん
05/01/30 12:01:05ID:???0686nobodyさん
05/01/30 14:30:09ID:???0687nobodyさん
05/01/30 14:56:28ID:???0688nobodyさん
05/01/30 15:23:51ID:???もっというと、
ereg_replace < preg_replace << str_replace < nl2br だぁね
0689nobodyさん
05/01/30 15:54:32ID:???もまえら、例えば低機能なカウンターや掲示板作ろうと思ったら、
どれくらいの時間かかる?
俺はかなりの初心者で数日かかりそうなんで、
参考までに聞きたい
0690nobodyさん
05/01/30 16:14:16ID:???掲示板なら60分
ちなみにPHP暦1ヵ月
0691nobodyさん
05/01/30 16:25:33ID:???完成に近くなると、設計をやり直したくなる。
0692nobodyさん
05/01/30 16:55:15ID:???0694nobodyさん
05/01/30 17:36:14ID:???CとPerlを9ヵ月、JAVAを2ヵ月
カウンタって簡単に壊れるものなのか?よっぽどの人気サイトか、貧弱鯖か…
# とかほざきながら、自サイトのカウンタはFC2のレンタルだったりする
>>689
ガンガレ
0695EK
05/01/30 17:44:10ID:4qD6156yPHPで簡単なアカウント認証システムをつくってます.
登録するときに,IPを調べて2重登録を防ぐということがしたいわけです.
しかしプロクシを通されると,どう対処すればよいかわかりません.
非匿名のプロクシなら,環境変数でHTTP関連の変数を調べればわかるのですが,
完全な匿名のプロクシだと検出できないんです.
エロいひと教えてください.
0697nobodyさん
05/01/30 17:59:46ID:???また、hoge.php?val
とアクセスした時、valはどうすれば取得できますか?
0698nobodyさん
05/01/30 18:21:56ID:???(ほとんど)共通する定型句があります。これのテンプレを別途作製し、PHPで
呼出せば、すっきりしてイイかなと思いました。
1) こういうPHPの使い方ってOK?あるいは目立ったデメリット等ありますか?
2) もしOKなら、DOCTYPEなんかもテンプレに含めて良いもんなんでしょうか?
0701nobodyさん
05/01/30 19:04:45ID:???PHP側の関数は何を使えばいいのでしょうか。ご教授願います。
0702nobodyさん
05/01/30 19:48:56ID:79430JFWfopen??
0704nobodyさん
05/01/30 21:19:37ID:???$obj =& $_SESSION['hoge'];
って書いてるんだけど何か美しくないですよね。
実際には$_SESSION['hoge'][][]と配列になっているので一行にすると
長くなりすぎる気がします。
なんかスマートな書き方がないものでしょうか?。
0705nobodyさん
05/01/30 21:44:08ID:vJLTbH4Q0706nobodyさん
05/01/30 21:44:11ID:???ログインした時点でアカウントをロックすればいいだけだよ
ただ、ログアウトせずにブラウザ閉じると再ログイン出来ないけどね
タイムログアウト処理も加えておけば良いかと
0707705
05/01/30 21:45:22ID:???$ip = getenv('REMOTE_ADDR');
でサイトを訪問してくれた人のIPアドレスをゲットできるけど、
さらに一歩推し進めてその人の国籍やプロバイダー情報も
検出してくれる機能って無い?
0708nobodyさん
05/01/30 22:03:29ID:???0709nobodyさん
05/01/30 22:04:35ID:???0710nobodyさん
05/01/30 22:29:31ID:???Perlの場合拡張子をcgiにすればできましたが、PHPの場合拡張子をphpにしても覗けてしまいます
0712nobodyさん
05/01/30 22:39:00ID:6jokYwmwが、わかる関数はありますか?
0718nobodyさん
05/01/30 23:31:34ID:???$_SERVER['HOGEHOGE']って、
それぞれメリットデメリットってあります?
0721nobodyさん
05/01/31 07:58:22ID:???0723nobodyさん
05/01/31 09:20:28ID:???値も指定しているようなものでしょ
ただ、キーを検索した場合に何を返すかの問題だね
値を返そうにも唯一ではない場合もあるしね
返すならintしかないかな
0724nobodyさん
05/01/31 09:28:29ID:???0725nobodyさん
05/01/31 09:31:13ID:???0726軟式PHP
05/01/31 09:35:12ID:???0727nobodyさん
05/01/31 09:46:40ID:???0728nobodyさん
05/01/31 11:18:56ID:???0729nobodyさん
05/01/31 11:23:38ID:???0730nobodyさん
05/01/31 11:24:12ID:???0731nobodyさん
05/01/31 11:33:35ID:???0733nobodyさん
05/01/31 11:59:06ID:???0734nobodyさん
05/01/31 13:22:53ID:???0735軟式PHP
05/01/31 14:36:44ID:???ttp://www.isl.cs.gunma-u.ac.jp/~shingo/make/7line/7line.html
0736nobodyさん
05/01/31 14:51:10ID:???0737nobodyさん
05/01/31 15:46:10ID:???0738nobodyさん
05/01/31 17:09:20ID:???0739nobodyさん
05/01/31 21:59:26ID:MOMf8Zhx0740nobodyさん
05/01/31 22:36:49ID:???それまでは正常に作動していました。
そして先日は集計結果が日に日に減っていく(0という数字が消されている?)という
事態にみまわれています。しかし入力データは無事に落ちています。
何もしていないのに、表示とプログラムが書き換えられているかのようです。
どのような理由が考えられるでしょうか。アホな質問で申し訳ありませんが、
どなたか考えられる原因を教えてください。よろしくお願い致します。
0742nobodyさん
05/01/31 22:48:34ID:???time関数では秒数の差になってしまうので…
0744nobodyさん
05/01/31 22:59:19ID:???(相対パス、絶対パス 両方できればありがたい。)
0747nobodyさん
05/01/31 23:28:08ID:???0749nobodyさん
05/02/01 17:07:48ID:???作りたいのです。手元の解説書を見る限りfopenでウェブページの取得ができそうなのですが
方法が分かりません・・・(パスにhttpで始まるURLを入れればよい、と書いてあるんですが・・・)
<?php
$target = fopen("http://pc5.2ch.net/test/read.cgi/php/1105218084/", "r");
print $target;
?>
結果は「Resource id #2」です。どこかがおかしいのか、この方針では無理なのか(その場合
どういう方針を使えば目的の動作をさせられるのか)ご存じの方いらっしゃいましたら
よろしくお願いします
0750nobodyさん
05/02/01 17:18:03ID:???http://jp2.php.net/function.fsockopen
0751749
05/02/01 18:04:45ID:???するために使う話だったのですね。。。
ソケット自体使ったことがないのでちと色々勉強してみまつ。どもでした
0752nobodyさん
05/02/01 19:07:38ID:???それを好きな文字に置き換えて出力する方法を考えています。
$text = $_REQUEST['text']; //フォームから文字列を取得
if(strstr($text,"特定の文字列")) //その文字列に、特定の文字列があったら、
と、このあとどうしたらいいか思いつきません。
何かアイデアをお持ちであれば御教授ください。
「こんな簡単なことも思いつかねえのか」と思うかもしれませんが、
どうぞよろしくお願いします。
■ このスレッドは過去ログ倉庫に格納されています