【PHP】下らねぇ質問はここに書き込みやがれ 62
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2008/01/10(木) 18:09:19ID:???PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り
◆前スレ
【PHP】下らねぇ質問はここに書き込みやがれ 61
http://pc11.2ch.net/test/read.cgi/php/1198002831/
◆質問する時の注意
・ 自分のIDを表示させること。(メール欄に何も記述しないこと。空白も入力しちゃダメ)
・ サーバーのOS(Linux、Windows他)、WebサーバーとPHPの種類やバージョン等を明記すること。
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
◆質問後の注意
・偽者防止に必ずIDを表示させること。(メール欄に何も記述しない)
・2回目以降は最初に質問した際のレス番号を名前欄に入れること。
・解決しなくても回答をもらった場合はお礼を言うこと。
(荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)
◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。
【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで
0784nobodyさん
2008/01/24(木) 17:36:06ID:???なくてもできるけどな。
0785nobodyさん
2008/01/24(木) 17:51:59ID:GkmSThHqまじですか?
どういった方法で?
0786nobodyさん
2008/01/24(木) 17:56:26ID:???0788nobodyさん
2008/01/24(木) 18:15:08ID:???http://phpspot.org/blog/archives/2005/12/pop_before_smtp.html
これ読んでpopbeforsmtpで送れば?
0789nobodyさん
2008/01/24(木) 19:31:02ID:???俺はlinuxでしか動かないのがあるからlinux上でデバッグしようかとおもってるんだけど
仮想にぶち込んで低パフォーマンスだからeclipse動くか心配
0790nobodyさん
2008/01/24(木) 19:31:59ID:???kwsk
0792nobodyさん
2008/01/24(木) 19:43:49ID:???サーバ部分だけ仮想でLinuxいれりゃいいじゃん
FTPなり共有ファイルコピーなり少し手間はかかるが
0793nobodyさん
2008/01/24(木) 19:51:17ID:???phpizeいるもん全般とか…
>FTPなり共有ファイルコピー
あぁそれだよなー
一手間かかるのがあれだがやむを得ないかもしれない
0794nobodyさん
2008/01/24(木) 19:58:18ID:???0795nobodyさん
2008/01/24(木) 20:13:07ID:???エディタはeclipse。
vmにwinscpでログインしてコマンドからミラーリングアップロードを使う。
そするとローカルで保存sすればvmに自動で同期される。
んで、ブラウザでvm叩く
( ^ω^)うまー
0796nobodyさん
2008/01/24(木) 20:15:05ID:???( ^ω^)うまー ← レベルひっくw
無知ってしあわせですわねwwwww
0798nobodyさん
2008/01/24(木) 21:01:43ID:vo4pqLSehttp://journal.mycom.co.jp/column/ide/006/index.html
を参考にやったんだけどZendに置いてあるPDTはPHPプラグイン入ってないの?
これでやるにはどうすればいいの?
0799nobodyさん
2008/01/24(木) 21:10:35ID:9zAbxKxRPHPで、変数1(数字以外の文字列)が変数2(こちらも数字以外の文字列)と等しければtrueを返す条件文を書きたいのですが、何かいい方法はないでしょうか?
数値以外の文字列の比較が出来る関数とかがあったりするんでしょうか、
それとも正規表現使ってマッチさせるとかそんな感じでしょうか?
0800nobodyさん
2008/01/24(木) 21:11:59ID:???===演算子は型の比較まで行う
他にもgettypeで変数の型を調べることができるからそれを応用する方法もある
0801nobodyさん
2008/01/24(木) 21:13:41ID:???=== (厳密に比較したい)
0802799
2008/01/24(木) 21:16:09ID:???ありがとうございます!
0803779
2008/01/24(木) 21:31:25ID:???PHPプラグインが何を指してるかあれだが・・・
PDTとはEclipseにPHPの開発環境を実装するためのプラグインの事
他にもPHPEclipseやKoebiStudioてのもある
これらの開発環境にはPHP本体は入ってないので別途インストールする必要がある
Zendにおいてあるやつも俺が紹介したサイトにあるやつも
同じPDTで違いがあるとすればバージョンぐらいの差
それ以外でPDTの差は無い
英語が解らんならPleiadesってプラグインを
入れておけば良い
大抵のプラグインと本体が日本語化される
まぁそこらへんの必要なものが入ったのが779で紹介したURLにあるやつな訳だが・・・
0804nobodyさん
2008/01/24(木) 23:27:37ID:???それはGUI派かCUI派かであっておっさんか否かじゃなかろ
ガキでも必要ありゃviに慣れてvimやらemacs使い始めるもんだ
0805nobodyさん
2008/01/24(木) 23:43:09ID:???ガキじゃ必要でもそんなもの使おうなんて思わん
0808nobodyさん
2008/01/25(金) 00:56:25ID:???「edlinでconfig.sys弄ってます」みたいなw。
0809nobodyさん
2008/01/25(金) 01:31:14ID:???0810nobodyさん
2008/01/25(金) 02:15:07ID:???0812nobodyさん
2008/01/25(金) 03:05:06ID:???使いやすいエディタならなんでもかまわないし、たいしたこと言ってるわけではないけど、
IDEの話が出てる最中にvim使ってるとかはタイミング的に悪かったな。
そもそもUnix系でしか動かないものを開発するというのはまれなわけで、
大多数はVMで開発する必要もなければWindows以外で開発する必要もない。
そんな中で"普通に"という言葉を使ったのもまずかったな。
別に開発してるとしかいってないのだが、話の脈略で薦めているようにも見えてしまうわけで。
0813nobodyさん
2008/01/25(金) 04:07:47ID:HQAGAWGB設定を済ませて phpmyadmin にアクセスすると、
「mcrypt 拡張をロードできません。PHP の設定を確認してください」
と言われるので、続けて mcrypt libmcrypt もインストールしたんですが、
やはり変化がありません。
/etc/php.ini をいじるんだろうと思うんですが、
どのように設定すればいいんでしょうか?
http://jp.php.net/mcrypt に書いてあるとおり、
php をコンパイルし直さねばならないのでしょうか?
CentOS 4.6 x86 用の php は --with-mcrypt されてないようなので。。。
0814nobodyさん
2008/01/25(金) 04:47:30ID:???print("下らねぇ<b>質問</b>");
?>
の<b>のように、print()で<font>が使えると便利だと思うのですが
例えば<font color>とか、
こういうフォントを変えることができるものは<b>のほかにないでしょうか?
よろしくお願いします。
0815nobodyさん
2008/01/25(金) 04:54:23ID:???スタイルシートでも使えよと
0816nobodyさん
2008/01/25(金) 04:54:50ID:???>>1
それから
http://www.google.com/search?q=HTML&hl=ja&lr=lang_ja&num=100
0817nobodyさん
2008/01/25(金) 05:11:57ID:???>>816
あぁすみません・・
聞きたかったのは、print()で<b></b>や<I></I>が使えたので
色もこの調子で変えられないかとhtmlタグを探していて
fontがあったのですが、エラーが出たので
font的なものがあるのかなと聞いてみたのですが
ないようですね。言われるようにスタイルシートや別の方法を探してみます
ありがとうございました
0818nobodyさん
2008/01/25(金) 05:14:20ID:???htmlの話はすんなぼけ二度とくんな
0819nobodyさん
2008/01/25(金) 05:27:43ID:???>エラーが出たので
ダブルクオテーション(")で囲ってるときに
文字列でダブルクオテーションを使う場合エスケープしましょう
print ("<font color=\"red\">あいうえお</font>");
シングルのほうがこの場合は楽だけど
print ('<font color="red">あいうえお</font>');
どっちみちfontは古いし今や使われていないのでスタイルシート使いましょう
そしてhtmlだけの質問はWeb制作板だから次回からご注意あれ
0820nobodyさん
2008/01/25(金) 05:59:43ID:???PHPで文字列などを出力するのに使うprintやechoは、htmlのソースとして出力する。
つまりprint内にhtmlのコードを書けば当然htmlのソースとして反映される。
print内に<b></b>を書くことで太字になったのはphpの機能の一部というわけではなく、
phpがhtmlのソースとしてそのまんま<b></b>という文字列を出力しているから。
<font color="">でエラーが出たのは上の人が指摘してる通りエスケープ忘れ。
print "";で囲う""は、最初の"が表示する開始点をあらわし、2度目の"が終点をあらわす。
つまり
print "あ"いうえお"; というコードがあった場合、
phpは『あ』だけを表示しようとするが、『あ』の後ろに続くコードが『:(セミコロン)』で終わっていないためエラーを吐く。
この場合『あ』の後に続く『"』は文字列として表示したいわけで、
そういう場合エスケープ記号『\』を『"』の前におくと、その『"』は文字列として扱われることになる。
print "あ\"いうえお";
0821nobodyさん
2008/01/25(金) 06:00:49ID:???レベルが低いから?
0822nobodyさん
2008/01/25(金) 06:02:14ID:???そういうスレだし。お前を含めて煽ってるやつが馬鹿なだけ。
0823nobodyさん
2008/01/25(金) 06:05:25ID:???0824nobodyさん
2008/01/25(金) 06:06:10ID:RlEjDmZc「スレッドを最新更新順でソートして表示させる」というところで苦戦しています。
例えが下手でわかりにくいかもしれませんが、3回新規投稿が行われた場合に
・スレッドNo.3
・スレッドNo.2
・スレッドNo.1
の様に順番に表示させる事はもちろんできるのですが、
その後に2つめの投稿記事へ返信があった場合に
・スレッドNo.2
・スレッドNo.3
・スレッドNo.1
という様に更新された順に表示するにはどうすれば良いでしょうか?
自分なりに考えてみましたが、
1)スレッドNoを記載したテキストファイルを用意する
2)新規投稿が行われた場合は、ファイル内の最上部に追記
3)返信が行われた場合は、ファイル内の該当のスレッドNoを最上部に移動
4)閲覧する際にテキストファイルに記載された順番で出力する
という方法くらいしか思いつきませんでした…。
根本的に何か間違っている様な気がするのですが、アドバイス頂けると助かります。
0825nobodyさん
2008/01/25(金) 06:12:47ID:???更新日時を正の整数に置き換えてソート。簡単じゃん
0826nobodyさん
2008/01/25(金) 06:22:17ID:???DBで設計すれば楽なのに。
>>825のやりかただけだと親子関係がめちゃくちゃになるんで、
親子関係の情報もとって、更新日時でソートしたあとに、親子関係でソート。
さらにそのままだと親スレが一番下になるんで、
親子関係でさらに配列分けて配列を逆にしてから最後にくっつける。
0827nobodyさん
2008/01/25(金) 06:26:26ID:???0828nobodyさん
2008/01/25(金) 06:26:57ID:???むしろ面倒だから統一して管理したほうがよさげ(初心者用)
0829nobodyさん
2008/01/25(金) 06:37:31ID:???0830nobodyさん
2008/01/25(金) 06:40:06ID:???テキスト管理について意見を言わせれると的外れ発言のオンパレードww
0831nobodyさん
2008/01/25(金) 06:43:51ID:???簡単な処理ならともかく掲示板レベルはあきらかにDBのほうが効率的
ていうかさっきから煽ってるやつは同一人物?朝っぱらから元気だな
0832nobodyさん
2008/01/25(金) 06:45:03ID:???pgdbの存在を知らなかったりして
0833830
2008/01/25(金) 06:47:55ID:???ファイルの更新日時でソートするだけとかwwwwwwwwwwwwwwwww
0834nobodyさん
2008/01/25(金) 07:01:01ID:???ってことで、愚民の俺らにその高尚な脳味噌で考えた具体例を教えてくれよ
期待してるぜ
0835nobodyさん
2008/01/25(金) 07:02:20ID:???お前は何をいってんの?
更新日時をログに記録してるってことだろ。
日本語もわからないの?
0836830
2008/01/25(金) 07:03:07ID:???0837nobodyさん
2008/01/25(金) 07:07:24ID:???0838nobodyさん
2008/01/25(金) 07:10:38ID:???対人関係下手で家を出れない引きニートはかわいそうですね。
0840nobodyさん
2008/01/25(金) 07:53:35ID:???大体あってんじゃないの。
TEXTベースでやるのなら
1.スレッドNOを覚えているファイルを作る
2.新しい投稿があったら1を見てそれをファイル名とするファイルを生成し
投稿内容を書き込む
3.返信のときはすでにあるファイルをサーチし、投稿内容をマージ
返信に上限を付けるならここで上限チェック。
4.表示はいったん全ての投稿ファイルのタイムスタンプを読み込み
ソートして、出力順を決定する。
5.出力順に投稿ファイルを開き、内容を出力する。
6.実際には古いファイルを消去する仕組みも必要でしょう。
新しい投稿をトリガーにして、一定期間投稿のない投稿ファイル
=タイムスタンプが古いを削除する。
0841nobodyさん
2008/01/25(金) 08:56:06ID:???タイムスタンプを読み込んでソートするってことは
返信の際にそのファイルのタイムスタンプも更新してるわけだから
そのついでに最上段に持っていけば表示の時にソートする必要ないんじゃね?
そしたら古いファイルの削除も最下段を削除するだけで済む
age、sage機能をつけるんならいるだろうけど
0842nobodyさん
2008/01/25(金) 09:57:59ID:rbOm8Vt/来たメールのエンコーディングを調べる方法はありますか?
ヘッダー情報に文字コードがなかったので・・・
0844nobodyさん
2008/01/25(金) 11:33:44ID:KgKyfu/6.htaccessでやるべきか、phpの403で拒否するか、
もしくは、ルーティングテーブルで拒否するか、
よく分からないのですが、どれでやるのがベストですか?
宜しくお願いします。
0846nobodyさん
2008/01/25(金) 11:47:22ID:???> どれでやるのがベストですか?
抽象的杉。
サーバの移項も考えるかとか、負荷の量とか、改変の頻度とか、
それを作業する環境は何かなどいろんな尺度があるので、目的次第。
0847nobodyさん
2008/01/25(金) 11:52:40ID:???そりゃハードレベルでできるならそれが一番いいよ。
phpは最終手段。
phpよりhtaccess、htaccessよりルータ。
0848nobodyさん
2008/01/25(金) 11:55:06ID:KgKyfu/6すみません。もう少し具体的に書かせて頂きます。
使用サーバーは、さくら株式会社が提供する専用サーバーで、移行の予定はないです。
負荷は、不明ですが、よく中国や台湾から大量のアクセスでサーバーが落ちるという話を聞くので、
それに堪えられるようにしたいです。
よく分からないですが、1秒間に1万回リクエストされても耐えられれば大丈夫だと思います。
改変は随時です。怪しいIPアドレスは拒否するように定期メンテします。
0849nobodyさん
2008/01/25(金) 12:29:05ID:???0854nobodyさん
2008/01/25(金) 15:49:54ID:???なんでみんなこんなめんどうなもん使うんだろうってずっと避けてたよ
0855nobodyさん
2008/01/25(金) 15:53:58ID:rbOm8Vt/http://example.com/
のソースの文字コードを知りたいのですが、
metaタグから取得する以外にどのような方法があるのでしょうか?
レスポンスヘッダーから簡単に取得できないですかね?
0856855
2008/01/25(金) 16:02:45ID:rbOm8Vt/0857nobodyさん
2008/01/25(金) 16:21:17ID:???0858855
2008/01/25(金) 16:22:48ID:rbOm8Vt/それが気になったんです。
detectはheaderのcontent-typeの情報を受け継いでいるのか、
PHP側のアルゴリズムで解釈しているのか、その辺りの仕組みがよくわからないのです。
アルゴリズムで解釈しているのであれば、headerの値を受け取ったほうがより確実のようが気がします。
0859nobodyさん
2008/01/25(金) 16:30:11ID:???0860855
2008/01/25(金) 16:32:49ID:rbOm8Vt/YahooやGoogleでの検索で文字化けしたページが見つからないのがすごい・・・。
というか、文字化けしているページを弾いてるだけなのかな?
とりあえず、有難う御座いましたー。
0861nobodyさん
2008/01/25(金) 16:34:23ID:???http headerの文字コードはWebサーバ側で設定された値か、metaタグで指定された値になるんじゃなかったかな。
どちらにせよ人間が指定したものなので、信頼はできなさそうだが
0862nobodyさん
2008/01/25(金) 16:38:49ID:Lm6JW6Xcini_set('display_errors', 'On');をプログラムの先頭に記述しても真っ白のままです。
他になにかエラー表示関係の設定項目ってありましたっけ?
0863nobodyさん
2008/01/25(金) 16:40:35ID:rbOm8Vt/error_reporting
0864nobodyさん
2008/01/25(金) 16:43:34ID:Lm6JW6Xc6143なので、問題ないと思います。
0865nobodyさん
2008/01/25(金) 16:45:33ID:???php.iniの設定は?
それのdisplay_errorが0なら
ini_setする前にエラーが出ている可能性もある。
0866nobodyさん
2008/01/25(金) 17:25:45ID:Lm6JW6Xc0ですが、ini_setする前にエラーは無いです。
ローカルで試すとうまくいくのです
0867nobodyさん
2008/01/25(金) 17:34:44ID:???ini_setする前に何か行っている動作あったりする?
もしくは、ini_setを記述しているファイルが他のファイルから読み込まれるものだったり
0868nobodyさん
2008/01/25(金) 18:35:24ID:Lm6JW6Xc全く無いです。
<?php
ini_set('display_errors', 'On');
echoooooo "a";
?>
こんなんでも真っ白になります。
0869nobodyさん
2008/01/25(金) 18:37:59ID:???phpinfoしてみたらちゃんとini_set反映されてた?
ini_set('display_errors', 'On');
phpinfo();
0870nobodyさん
2008/01/25(金) 18:39:52ID:???ネタじゃないならphp.iniか.htaccessで
display_startup_errorsをonにする
それでも出ないなら出力処理してないだけだろ
0871nobodyさん
2008/01/25(金) 20:55:40ID:???基本的には>>847の考え方でいいと思う。
まずは、ルーターのみにしておいて、アクセス解析も同時に行う。
アクセス解析に不安なログが出ているようであれば、.htaccessも入れる。
ソフトの対応はリソースの消費も考えないといけないので、最初は
入れないで良いと思うというのが私の意見。
サーバのrootもってやるわけではない場合、セキュリティーにおいては
何処まで信頼するかは意見が分かれるところなので、最初から.htaccessまで
いるという人もいるだろう。
0872nobodyさん
2008/01/25(金) 23:06:00ID:KgKyfu/6アドバイスありがとうございました。
ルーティングテーブルでやればいいんですね。ありがとうございます。
私の場合、専用サーバーといっても、ルーターの設定はいじれないので、
webサーバー内のルーティングテーブルで設定します。
今までレン鯖(xrea)だったので、php以外の知識が要求されて四苦八苦中です。
助かりました。
0873nobodyさん
2008/01/25(金) 23:57:41ID:???0874nobodyさん
2008/01/26(土) 00:27:44ID:???こんなのがあるが相変わらずphpはハブられてる
http://www.void.in/wiki/Universalchardet
0877nobodyさん
2008/01/26(土) 10:03:21ID:uPT20mdm0878非通知
2008/01/26(土) 10:10:49ID:uPT20mdmダイジェスト認証した後にユーザ名を表示のしたいのですが、どうやって表示させるのでしょうか?
でゆうか、http://www.phppro.jp/phpmanual/php/features.http-auth.htmlの『例 34-2. Digest HTTP 認証の例』をつかうと『PHP_AUTH_DIGEST 変数を精査する
』の部分で『誤った証明書です!』と出力されるってことは、どこが原因なのでしょうか?
エロい人、おせーて(・∀・)
0879nobodyさん
2008/01/26(土) 10:27:04ID:???変更したのであれば変更点を書かないとわからない
0880非通知
2008/01/26(土) 10:58:46ID:???+---追加----
| <Directory "/usr/local/apache2/htdocs/member>
| AuthType Digest
| AuthName "BIOHAZARD LEVEL 4"
| AuthDigestDomain /member/
| AuthUserFile /tmp/digestpass
| Require valid-user
| </Directory>
#/usr/local/apache2/bin/htdigest -c /tmp/digestpass "BIOHAZARD LEVEL 4" dora
+---------
|Passwd : emon
#vim /member.index.php
+----変更点-----
| $realm='BIOHAZARD LEVEL 4';
| $user=array('dora'=>'emon','unkn'=>'own');
0882nobodyさん
2008/01/26(土) 11:49:23ID:???正規表現廚が必死
↓
0883nobodyさん
2008/01/26(土) 13:22:00ID:???■ このスレッドは過去ログ倉庫に格納されています