【PHP】下らねぇ質問はID出して書き込みやがれ 74
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2008/09/20(土) 20:23:08ID:???過去スレ、関連スレ、FAQなどは>>2-10辺り
次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。
◆前スレ
【PHP】下らねぇ質問はここに書き込みやがれ 73
http://pc11.2ch.net/test/read.cgi/php/1220440493/
◆質問用テンプレ
【OS名】vine linux
【PHPのバージョン】php5.26
【連携ソフトウェア】mysql
【質問内容】
◆質問する時の注意
・ スレを上げて自分のIDを表示させること。(メール欄に何も記述しない。専ブラのsageチェックを外す)
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に関連リンクの公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
(PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。)
◆質問後の注意
・2回目以降は最初に質問した際のレス番号を入れて、偽者防止に必ずIDを表示させること。
・解決しなくても回答をもらった場合はお礼を言うこと。
(荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)
◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。
【その他諸注意】
・SQL・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
0577nobodyさん
2008/10/03(金) 10:16:28ID:???0583nobodyさん
2008/10/03(金) 10:49:34ID:???0585nobodyさん
2008/10/03(金) 11:45:30ID:???0586nobodyさん
2008/10/03(金) 11:58:56ID:/eEzlvvLphpファイルを機能別に分けたりしてますか?
0587nobodyさん
2008/10/03(金) 12:20:21ID:???0588nobodyさん
2008/10/03(金) 15:56:15ID:xSW6clzhデータの整合性とか、大丈夫ですか?
0589nobodyさん
2008/10/03(金) 16:06:53ID:rpr6AsK7$sql = "SET NAMES utf8";
$result = mysql_query($sql);
とクエリを投げるようにして、とりあえず解決したのですが、
あまりスマートじゃないですよね?
上のPHP2文がある/無い で、文字化けする/しない という結果になるんですが、
この結果から、どの部分で文字コードがおかしくなっているのか予想ってできますでしょうか?
0590nobodyさん
2008/10/03(金) 16:21:01ID:???コネクトするたびにって、、、1ページ読み込むのに何回もコネクトしてるってこと?
DBのホストを分散しているとかは別だけど、もしそうならスクリプトを1から作り直したほうがいい
それかmysqlのコンフィグを書き換えデフォをUTFにする
0591nobodyさん
2008/10/03(金) 16:53:27ID:rpr6AsK7いや、データベースのクラスがあって、
そのクラスをnewするたびにconnectしています。
基本的に1ページには1回newして、そのオブジェクトを使うので、
1ページ=1connectです。
PHPのファイルがUTF-8で、my.cnfの設定もUTF-8に統一している
(コンソールからMySQLにつないで、statusで確認済み)のですが、
あと文字コードに関わる部分ってどこがあるでしょうか?
0592nobodyさん
2008/10/03(金) 17:13:26ID:???クラスにしているなら特にSET NAMEを複数書く必要もないしスマートだと思うけど
格納するクエリが文字化けしてなく、格納した時にすでに文字化けしているなら他に原因は思いあたらない
0593nobodyさん
2008/10/03(金) 18:08:56ID:???javascriptはアクセス先のPHPへ同じセッションIDを通知するから、
ページ全体を表示する際に生成したセッションと同一と言える
0594nobodyさん
2008/10/03(金) 18:10:44ID:???何にせよmysql側で対応したいなら、
MySQL「サーバ」とMySQL「クライアント」の文字コードを統一しないとな
PHPの文字コードじゃないから注意だぞ(PHPからMySQLクライアント(ドライバ)に渡る際に変換されるから)
0596211
2008/10/03(金) 19:14:51ID:XpYjXbv/質問でしたが、一応解決したので書いておきます。
結果的には oci8.so をユニバーサルバイナリにしてみたら動きました。
理由は説明できないので聞かないでください。
最初に書かないといけなかったような気がしていますが、環境は、
$ uname -a
Darwin macbook.example.com 9.5.0 Darwin Kernel Version 9.5.0: Wed Sep 3 11:29:43 PDT 2008; root:xnu-1228.7.58~1/RELEASE_I386 i386
です。
いろいろ試行錯誤していて、以前指摘された "DYLD_PRELOAD"に相当する
ものは"DYLD_INSERT_LIBRARIES"ではないかと思い、試していると、
$ export DYLD_LIBRARY_PATH=/usr/local/instantclient_10_2
$ php ocitest.php
(成功)
$ /usr/sbin/httpd
dyld: could not load inserted library: /usr/local/instantclient_10_2/libclntsh.dylib.10.1
Trace/BPT trap
こうなりました。全然理解できませんが。
ユニバーサルバイナリにしたら良いかもと勝手に思い、
$ pecl bundle oci8
$ CFLAGS='-arch i386 -arch x86_64 -arch ppc -arch ppc64' LDFLAGS='-arch i386 -arch x86_64 -arch ppc -arch ppc64' ./configure --with-oci8=instantclient,/usr/local/instantclient_10_2 --disable-dependency-tracking
$ sudo make install
これで試したらすんなり動きました。
おわり。
0597211
2008/10/03(金) 19:23:49ID:XpYjXbv/途中一行抜けてました。
$ export DYLD_LIBRARY_PATH=/usr/local/instantclient_10_2
$ export DYLD_INSERT_LIBRARIES=/usr/local/instantclient_10_2/libclntsh.dylib.10.1
$ php ocitest.php
あと、せっかくなのでちょっと追記。
$ file oci8.so
oci8.so: Mach-O universal binary with 4 architectures
oci8.so (for architecture i386): Mach-O bundle i386
oci8.so (for architecture x86_64): Mach-O 64-bit bundle x86_64
oci8.so (for architecture ppc7400): Mach-O bundle ppc
oci8.so (for architecture ppc64): Mach-O 64-bit bundle ppc64
$ file oci8.so.orig (動かなかったoci8.so)
oci8.so.orig: Mach-O bundle i386
$ file libclntsh.dylib.10.1
libclntsh.dylib.10.1: Mach-O dynamically linked shared library i386
0598nobodyさん
2008/10/03(金) 19:25:49ID:???0599nobodyさん
2008/10/03(金) 19:26:25ID:???0600211
2008/10/03(金) 20:00:31ID:XpYjXbv/http://pc11.2ch.net/test/read.cgi/mac/1216824430/
に似たような事例があって、いくつかわかりました。
標準でインストールされている httpd は x86_64 で動作しているようです。
アクティビティモニタ上で "Intel (64ビット)" と表示されていました。
で、oci8.so はユニバーサルバイナリにすることでロードされましたが、
その中で使っている libclntsh.dylib は i386 のバイナリしかないわけで
ocitest.php をapacheに実行させたら Trace/BPT trap で失敗してました。。。
なかなか上手くいかないもんだのう。。。
0601nobodyさん
2008/10/03(金) 20:28:26ID:???0602588
2008/10/03(金) 21:05:21ID:???どうも同一のセッションIDを送ってくれるので、大丈夫ということを知り安心しました。
回答つかないかと思ってあせってたんです(;´д`)
本当にありがとうございました。助かりました。
0603nobodyさん
2008/10/03(金) 22:38:52ID:19ebb2MR$array[1]["name"]
$array[2]["name"]
となっている配列があったとして、
nameの中が空の場合、その配列を削除したいと思っています。
ひとつずつIFで条件分岐する以外で方法はないでしょうか?
0604nobodyさん
2008/10/03(金) 23:42:28ID:???本体とログとかさらにいくつもファイル複数あるなら分けたほうがいい気はする。
0605nobodyさん
2008/10/03(金) 23:58:50ID:???なさげ。
普通にif文でやってください。
で、ついでに配列に格納する段階でどうにかするという方向性でいったら?
0606nobodyさん
2008/10/04(土) 00:02:17ID:qepvww6d0607nobodyさん
2008/10/04(土) 00:25:18ID:???デフォルトのまま使えば特徴は出るがそんなのはいくらでも隠蔽できるし
使ってる本人がこのサイトはなんたらのフレームワークで構築されてます
みたいな自己紹介してないとわからない
0608nobodyさん
2008/10/04(土) 00:29:35ID:qepvww6dなるほど。 ご回答ありがとうございました
0609nobodyさん
2008/10/04(土) 09:35:14ID:???require_onceの数が多くなってしまいます。
ファイルをインクルードするためのオーバーヘッドは気にしなくて大丈夫でしょうか?
0610nobodyさん
2008/10/04(土) 11:25:40ID:???ファイル数が多いならrequire_onceよりrequireを。
onceは重複チェックの分オーバーヘッドがrequireよりありんす。
0611nobodyさん
2008/10/04(土) 16:11:14ID:???WEBの解説ページに書いてあったんだけど、
それってUNIX環境だけだよね?
Windowsでは、起動しているメールサーバーソフト(mercuryとか)を
使って送信してるんだよね?
0612nobodyさん
2008/10/04(土) 16:23:54ID:qMLHDr64ここに、
「あとは、Apacheを再起動します。そうしないとphp.iniの設定内容が反映されません。」
って書いてあるけど、php.iniは
別にアパッチを再起動しなくても設定の変更は
反映されるよね?
0613nobodyさん
2008/10/04(土) 16:29:09ID:???モジュール版のPHPはApache起動と同時にPHPも内部的に稼動させるから、
Apache起動時点でのiniになる、だから変更には再起動が必要
CGI版なら、アクセス時にPHPが起動するから再起動は必要なし
0614nobodyさん
2008/10/04(土) 16:56:57ID:qMLHDr64自分のPHPがCGI版なのか、
モジュール版なのか、
どこを見て判定するの?
0615nobodyさん
2008/10/04(土) 17:28:26ID:qMLHDr64http://oshiete1.goo.ne.jp/qa4116414.html
↑ここに書いてあった。
「phpinfo()を見る」
「ServerAPIを見る」
「Apache 2.0 Handlerとなっていたら、モジュール版」
「CGIとなっていたら、CGI版」
0616nobodyさん
2008/10/04(土) 17:45:37ID:???質問に答えればすぐ終わることをわざわざ関係ないレスするやつ
答えにならないレスするやつのほとんどが質問してるやつがどういう答えを求めてるかがわかってない馬鹿
このPHPスレだけじゃなくてどこの質問スレも同じ
なんなんだろね?
リアルが馬鹿でどうしようもないから質問しに来たやつに対して優越感にでも浸りたいのか?w
0617nobodyさん
2008/10/04(土) 17:50:17ID:???4のサポートもう終わってるんだし5にしてくれよと思う
0618nobodyさん
2008/10/04(土) 17:53:44ID:???自分の入れるのがどっちなのかくらい分かってから使おうぜ・・・
>>617
運営に頼むか、そんなひどいとこは使わないのが吉。
0619nobodyさん
2008/10/04(土) 18:01:54ID:???いや、まだまだ殆どのとこが4じゃないかな
たとえ使えてもFTP接続先が/public_html/直下だったり結構ひどいとこばかりだわ
俺の探し方が下手糞なのかもな・・・
0620nobodyさん
2008/10/04(土) 18:05:36ID:???0621nobodyさん
2008/10/04(土) 18:25:57ID:???PHP可と書いてるところで登録してみたらPHP4だったーってのはよくあるな
>>620
いろんなとこ借りて覚えてないわ
他にはmod_rewriteが使えないとことか多いよな
0622nobodyさん
2008/10/04(土) 18:27:49ID:???0623nobodyさん
2008/10/04(土) 18:28:45ID:???php4でしか動かない奴も多いからな。
「ウチのblogが急に動かなくなった、どうしてくれる!」とか
クレームが来ること考えるとそう簡単には切れないべ。
0624nobodyさん
2008/10/04(土) 19:02:55ID:qMLHDr64これってどうやるの?
0625nobodyさん
2008/10/04(土) 19:12:43ID:???0626nobodyさん
2008/10/04(土) 21:02:35ID:Ac3kpf8kHTMLファイルからimgタグでtest.phpを読み込み、
そこで訪問者のログを取っています。
(<img src="./test.php?page=top" />←こんな感じです)
その時test.phpでは
header("Content-length: " . filesize('./dammy.gif'));
というように1px×1pxの画像を出力しているのですが、
画像を出力しないで済む方法はないでしょうか?
アクセスログの取り方はimgタグでやりたいと思っています。
分かる方いらっしゃればお願いします。
0627nobodyさん
2008/10/04(土) 21:04:14ID:???0628626
2008/10/04(土) 21:34:46ID:Ac3kpf8kページは原則的に静的という縛りがあります、すみません。
0629nobodyさん
2008/10/04(土) 21:35:45ID:???あと画像を出力したくない理由は?
どうでもいいことは書いてるけど必要な情報が足らん
0630626
2008/10/04(土) 22:01:56ID:Ac3kpf8kアクセス解析のプログラムはフリーで配布する目的でして、
手間がかからないよう静的ページからでもOKにしたいのが理由です。
>画像を出力したくない理由は?
特に大きな理由はありません。
ただbodyタグ内のどこにimgタグを突っ込んでもデザインが崩れなければ最高だと思いまして。
情報の後出し申し訳ないです。
0631nobodyさん
2008/10/04(土) 22:04:33ID:???やったことないけど
JavaScriptとしてPHPで読み込んでみてはどうかな?
<script type="javascript" href="./test.php?page=top"></script>
0632626
2008/10/04(土) 22:19:45ID:Ac3kpf8kありがとうございます、解決しました!
なぜかhrefをsrcに変更したところ動作しました。
javascriptでphpを呼べるんですね。
ホントにありがとうございました。
0634nobodyさん
2008/10/05(日) 12:36:18ID:???jsでするみたいだからどうでも良い話にはなるが
1x1のサイズだとbase64エンコードして出来た文字列を内部に持たせる方が楽だぞ
0635nobodyさん
2008/10/05(日) 19:21:16ID:BsaGVD4F「PHPマニュアル」
っていったら、
なにか公式のものがあるの?
ようは固有名詞になってるの?
0636nobodyさん
2008/10/05(日) 19:27:23ID:???0637nobodyさん
2008/10/05(日) 19:38:09ID:BsaGVD4Fここに書いてあるんだけど、
「6の項目は実現できませんでした。なぜうまく行かなか
ったかと言うと、ブラウザのキャッシュが大きな壁だった
のです。同じ画面にするとどうしても再読込あるいは次
の投票を行わないと反映されないのです。ある程度対応
策があるのですが、サーバー側のプロキシ(?)の問題も
あるようで100%は無理みたいですね。あちこちで見られる
アンケートもほとんど2画面ですからね。」
って書いてあるのだが、PHPでやる場合、
基本的に2画面設計にするのが業界の主流なの?
0638nobodyさん
2008/10/05(日) 19:47:25ID:BsaGVD4FPHPマニュアルってこれか?
まさかおまえら、これ全部読んだの?
0639nobodyさん
2008/10/05(日) 21:25:33ID:BsaGVD4FCGIゲームのテストって
ローカルでは限界があるのか?
0640nobodyさん
2008/10/05(日) 21:28:43ID:???0641nobodyさん
2008/10/05(日) 21:29:17ID:BsaGVD4Fここ読んだら、
[ステップ2] サーバにアップロードする
「今書いたPHPスクリプトファイルを、FTPソフト
でサーバのブラウザでアクセスできるところにア
ップロードします。CGIのようにパミッションを設定
する必要はありません。」
って書いてあるんだけど、本当にパーミッションを
設定する必要はないの?
0642nobodyさん
2008/10/05(日) 21:32:21ID:???0643nobodyさん
2008/10/05(日) 21:40:38ID:???0644nobodyさん
2008/10/05(日) 21:49:03ID:BsaGVD4F0645nobodyさん
2008/10/05(日) 21:51:45ID:???0646KillYouHag ◆KillYouHAg
2008/10/05(日) 22:12:26ID:???0647nobodyさん
2008/10/06(月) 00:22:36ID:szIkgH26mysqlと連携させましょう!ってなってるけど、別にsqlliteでも
いいんだよね。
0648nobodyさん
2008/10/06(月) 00:25:50ID:???0650nobodyさん
2008/10/06(月) 12:20:44ID:HtdN4tAqたとえば100行あって5行目hogeをfugaに変えるだけの時はどんな処理が一番いいですか?
下のようなものしか思いつきません。
$list = explode("\n",$file);
$list[4] = "fuga";
$file = implode("\n",$list);
0651nobodyさん
2008/10/06(月) 12:23:04ID:???0652nobodyさん
2008/10/06(月) 12:27:22ID:HtdN4tAqありがとうございます。
ログのようなもので簡単に言うと2chのsubect.txtっぽいものです。
10M以下です。
0653nobodyさん
2008/10/06(月) 12:33:17ID:???0654nobodyさん
2008/10/06(月) 12:47:45ID:???今後デカくなる可能性もあって、気になるというなら
ループとfgetsで対象の行まで処理してもいいかもな
無駄なループが出るが、ファイル全体を取り込む際のオーバーヘッドと比べて要相談
0655nobodyさん
2008/10/06(月) 13:40:08ID:szIkgH26↑ここに、
「効果的にデバッグしたい
最近PHPをはじめた方の為に、効果的なデバッ
グの方法をこっそりお教えします。
統合開発環境がいまだ無いPHPのデバッグで
は、要所要所で変数の値をprintされている人
が多いと思います。」
-----------------------------------------
、、、って書いてあるけど、これって古い情報?
まだIDEってないの?
0656nobodyさん
2008/10/06(月) 13:45:05ID:???0657nobodyさん
2008/10/06(月) 14:18:23ID:???しかも「PHP4は早いんです!」・・・ワラタ
PHP5の影もない頃の記事だな
0658nobodyさん
2008/10/06(月) 16:19:40ID:/7mWgEQF自分なりに解読しているのですが、その中であまり見かけない
記述を見つけたので何をしているか教えてもらえませんか
クラスの中に
$this->$kw($val);
と記述がありました。
0659nobodyさん
2008/10/06(月) 16:27:05ID:???--------------------------
<html>
<form action="output.php" method="post">
<input type="text" name="a"></td>
</form>
<?php
$c = $_POST['a'];
print ("$c");
?>
</html>
-----------------------------------------
↑このコードなんだが、
入力フォームの画面がoutput.phpで、
そこから渡される変数を受け取って、
処理をして画面に出すファイルも、同じく
output.phpなんだが、こういう、入力ファイルと、
出力ファイルが一緒、って、なんか気持ち悪いんだが、
2つのファイルに分ければすっきりすると思うんだが、
(入力が1.htmlで、出力が2.phpとか)
RFC的に、っていうか、なんか規約とかガイドラインとかで
決まってたりしないの?
「同じファイルで入力と出力を混ぜるな」とか。
0660nobodyさん
2008/10/06(月) 16:30:53ID:???http://www.komonet.ne.jp/~php/chap10.htm
http://www.scollabo.com/banban/php/php_11.html
この辺見たらわかるんでない?
0661nobodyさん
2008/10/06(月) 16:33:21ID:krVoA8nH$_SERVER['PHP_SELF']があるくらいだし、
1つのファイルでやるのはよくあるかと
てかhtmlの書き方がめちゃくちゃな気が…
0662658
2008/10/06(月) 16:36:38ID:/7mWgEQFありがとうございます
ただそのあたりは理解してるつもりです。
分らないのは
$this->$wk($val);
の部分の"->$"でアローの後の$が何なのかということなのです
0663658
2008/10/06(月) 16:39:49ID:/7mWgEQF可変ね
お騒がせしました
0664nobodyさん
2008/10/06(月) 16:41:22ID:???0666nobodyさん
2008/10/06(月) 16:58:10ID:???06672ch偽”管理”人 ◆2ch.net/cU
2008/10/06(月) 17:45:16ID:???何げに神酉
0670nobodyさん
2008/10/06(月) 17:58:49ID:szIkgH26ここみたら、xreaって
register_globalsがOn
みたいなんだけど、バカなの?死ぬの?
0671nobodyさん
2008/10/06(月) 18:01:42ID:???0672nobodyさん
2008/10/06(月) 18:07:18ID:J8jNqfv3↑こういうウェブサービスを自作したいと思います。
任意のページをブラウザで表示させ、そのスクリーンショットを取得し、
サイズや解像度を調整しサムネイルに加工するというものです。
これはレンタルサーバ(XREA)+PHPで可能でしょうか?
PHPで無理なのであれば、どのような言語やツールを利用すればよいですか?
0673nobodyさん
2008/10/06(月) 18:10:46ID:???0674nobodyさん
2008/10/06(月) 18:15:43ID:???エンジンだけで正確なキャプチャは取るのは神業だからな
0675nobodyさん
2008/10/06(月) 18:46:29ID:J8jNqfv3ありがとうございます。
やはり自宅サーバ立てるのが近道なんですかね。
でも管理コストが・・・。
0676nobodyさん
2008/10/06(月) 19:13:23ID:szIkgH26■ このスレッドは過去ログ倉庫に格納されています