【PHP】下らねぇ質問はID出して書き込みやがれ 100
1 :
nobodyさん :
2010/10/27(水) 17:41:33 ID:2BwSQxVQ 質問者はまず
>>1 を良く読むこと(必須!)
過去スレ、関連スレ、FAQなどは
>>2-10 辺り
次スレは
>>980 が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。
◆前スレ
【PHP】下らねぇ質問はID出して書き込みやがれ 99
http://hibari.2ch.net/test/read.cgi/php/1286938893/ ◆質問用テンプレ
【OS名】CentOS
【PHPのバージョン】5.3
【連携ソフトウェア】MySQL ImageMagick
【質問内容】
◆質問する時の注意
・ スレを上げて自分のIDを表示させること。(メール欄に何も記述しない。専ブラのsageチェックを外す)
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に関連リンクの公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
(PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。)
◆質問後の注意
・2回目以降は最初に質問した際のレス番号を入れて、偽者防止に必ずIDを表示させること。
・解決しなくても回答をもらった場合はお礼を言うこと。
(荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)
◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。
【その他諸注意】
・SQL・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
2 :
nobodyさん :2010/10/27(水) 17:43:31 ID:2BwSQxVQ
3 :
nobodyさん :2010/10/27(水) 17:44:43 ID:2BwSQxVQ
4 :
nobodyさん :2010/10/27(水) 17:45:36 ID:2BwSQxVQ
【簡易FAQ】
1.文字コードは何を使えばいいの?
→1.UTF-8 2.EUC-JP のどちらか。迷うようなやつはShift_JISは使っちゃダメ。
2. このスレに書き込むときに自分のサイト名を晒したくない
→
http://example.com/が例文などのために予約されている 。hogehoge.comは使っちゃダメ。
3. ブラウザに何も表示されないんだけど・・・
→ Apacheの設定を見直せ。ファイルの拡張子は何にしてて、その拡張子でPHPを呼ぶようになっているか?
4. 記号の意味がわからないけどググりようがない
→ 「@」 エラー表示を抑制、「->」 オブジェクトのメンバにアクセス、「::」 静的なメソッド呼び出し、
「==」は暗黙の型変換をしてゆるい比較、「===」は型情報も含めた厳密な比較
5. echo "$arr['hoge']['fuga']"; と書いたらエラーになった
→ {おっぱい括弧}でくくって"{$arr['hoge']['fuga']}"にする
6. 一定時間ごとに自動的に何かしたいんだけど
→ cronかタスクスケジューラを使え。
7.extractって危険なの?
→変数上書き&初期化忘れなどで危険。楽だからという理由だけで安易に使わない。
8. include/requireに「〜.php?a=b&c=d」のようなパラメータをつけたい
→ URL呼び出しなら可能だけど、普通のファイル呼び出しではできません
9.include/requireでURLを指定しても何も起きない
→ .phpの拡張子のファイルをURLで呼び出すと、1度PHPプログラムとして実行された結果になる。
5 :
nobodyさん :2010/10/27(水) 17:46:49 ID:2BwSQxVQ
10. そもそもインストールの時点でうまくいかない
→ 確認すべきはPHPのconfigureの引数、php.iniの内容と置き場所、
Webサーバの設定(Apacheならhttpd.conf)、起動&再起動あたり
11. SQLの質問はどこで?
→ データベース板に誘導されるのが嫌ならPHPにうまく関連させて質問する
12. 文字列のなかに、英字のみとか数字のみとか記号が入っちゃいやんとかはどうしたらいいの?
→ ctype_〜()が手軽。複雑なパターンはpreg_〜()あたりで正規表現を使う。
13. $a1, $a2, $a3 ... のような変数名をうまく扱いたい
→ 可変変数で実現できるけど、むしろ配列を使って$a[1], $a[2], $a[3]等とするのがベター
14. echoとprintってどう違うの?
→ よく議論される話題であるが基本的に両者とも同じ。 以下ちょっとした議論。
http://www.faqts.com/knowledge_base/view.phtml/aid/1/fid/40 15. クッキーの情報をユーザから隠したい
→ セッション使え。ただしクッキーとセッションは仕組みが違うから同じように扱うな
16. strip_tags()で削除しないタグを複数指定したい
→ strip_tags($html, '<a><p><font>'); // htmlspecialchars()も検討すべし
17. CSVやTSVのファイルをスマートに扱いたい
→ まずはfgetcsv()。ただし日本語を含むと正常に動作しない場合があるので注意だ。
18. 値渡しと参照渡し(「&」を使う)のパフォーマンスの違い
→ C言語じゃないので、パフォーマンス目的で使いわけたらダメ。参照渡しにすると逆に遅くなったりする
参照渡しは引数に戻り値を設定したり引数を関数内で変更するなど、正しい目的に使うこと
19. ファイル入出力関数(fopen等)でリモートファイル(
http:// 〜とか)を扱う際の限界
→ fsockopen()でソケット通信 or PEARのHTTP系 or CURLで解決
必要ならHTTPをはじめとする各種プロトコル(どんなデータを送受信するか)はRFCなどで調べる
20. PHPからPOSTリクエストしたい
→19.を参照
21. 画像処理一般 or GDの限界
→ ImageMagick(PECLのやつ or シェルから実行)
22. 画像・音・動画はファイルで保存?DBに保存?
→ 好きにしてください
>>4 12 名前:nobodyさん[sage] 投稿日:2010/10/13(水) 14:40:33 ID:???
1.文字コードは何を使えばいいの?
→.基本的にUTF-8。次点でEUC-JP。文字コードで迷うようなやつはShift_JISは使っちゃダメ。
テンプレ変更するとこんな感じ?
PHP5.3からの非推奨関数について書いてもしょうがないしな。
UTF-8を使いましょう。シングルバイト文字でなければならない場合はEUC-JPを使いましょう。 こうじゃね
ケータイなんかも視野に入れるならshift-JISで書かなきゃだけどな
PHP は UTF-8 でいいだろ てかいまどき UTF-8 対応してない携帯あるんか? あの DoCoMo ですら UTF-8 表示できるぞ
最近はUTF-8で化ける携帯見たことないぞ、ケータイweb屋はどう思ってるのか知らんが
顧客がXXの携帯だと化けますで納得してくれればok
すみません。 いまwebアプリケーションを作りたいのですが PHP導入を考えて折ります。 PHP?っていうのがよくわからず どれをインストールしていいのかよくわかりません fc2などのレンタルサーバで動くのでしょうか? ダウンロードの場所など教えてくれたらありがたいです。 どなかた教えてください。
れんたるさーばーは だうんろーどできません
やっぱりサーバを買わないとだめなんでしょうか?・・・ PHP使えば簡単にwebアプリケーションができるときいたので
>>1 を見てみたんですが・・・いまいちわからないです
なるべくダウンロード先とかインストール方法教えて欲しいです
1をみろといったんじゃなくて1からみろといってるんだが
それを自分で調べることができないと、簡単には作れないのが事実です。
1を見たんですが導入法とかかかれてないっぽいです・・・
だめだこりゃ 日本語の通じない池沼には無理です諦めましょう
一応独習PHPっていう本があるのですが 導入方法がいまいちで、難しいです 自分的には、太鼓の達人みたいなゲームを作ってみたいと思っているんですが やっぱりサーバの知識も必要ですか? ダウンロードしてもインストールが・・・
ゲーム作るのにPHPは向いてません Flashスレにでもいってください
>>9 あるよ
ついでにいうと、「いまどき」っていうけど未だに数年前のケータイ使ってる人なんか若い人でもかなりいるからターゲットが最新機種を使ってる人前提のサイトとかでもない限り4、5年前の機種も視野に入れてた方がよいね
>>27 自分でもなんとなく思いましたが
Flashでしたか
友達がPHPでできるといって独習PHPを買うようにすすめられました
でも太鼓のアイコン?画像?あれが見つからなくて 素材とかが
PHPはWebでゲームが作れるともきいたんですが・・・
やっぱりFlashでしたか 僕もそう思ってたんですがFlashだと見ることしかできないんんじゃないかって
Flashで検索したほうがいいですか?おもしろFlashみたいに作るとか?
>>11 それって要するにOKじゃないって意味じゃないか
それ納得するクラなんかいないだろ
Flashだとゲームみたいに作れるってきいたことありますが 難しいのでしょうか? 目的はPHPでwebアプリケーションを作りたいのですが 太鼓の達人は2番目です
>>23 おれも携帯はshift-JISだ。
後はuff-8だ。
>>24 お前には無理だ。
一言いってやろう。
まずな独習PHPは別にサーバーをどっかからかりなくても
localhostで動かす方法は書いてある。
それを読んでない。
もうその時点でだめだろ。
おとなしくエロゲでもしてなさい
友達がネット上の人で・・・ Perl忍者さんっていうんですが、PHPは太鼓の達人を作れると熱く語っていました 独習PHPの本まで買わされて さきほど尋ねてみたんですが Perl忍者さん「うるせえよゴミ てめえでググレ」 とかいわれて・・・ モチベーションもさがります なので聞く意味がないです 最終的に聞いても無駄という自分なりの結論に至ったのでこのスレに質問してみました・・・
30 :
Perl忍者 ◆M5ZWRnXOj6 :2010/10/27(水) 23:24:39 ID:5gjOlAXp
だそうです
悪い友達を持ったものだな。
>>29 アフィリエイトで購入さえさせたら後はどうでもよかったんだろうな
PHPはゲームに向いた言語じゃないと思う
あとラクダ本も買わされました・・・ これを読めばハッカーになれる とか言われて だけどなれませんでした・・・僕がいけないのでしょうか・・・ぼくが・・・
35 :
Perl忍者 ◆M5ZWRnXOj6 :2010/10/27(水) 23:29:59 ID:5gjOlAXp
このコテでいくと無視されるので 生き残るすべを考えました
つか
>>12 の時点でこいつID出してないな
出すまでスルーした方がよくね?
>>23 いまどきっていうか、今ネットに接続できる携帯でUTF-8使えないのって、たとえば何て機種?
いい加減にネタレスでスレを無駄にするな
>>37 これこそggrksだよな
ググればすぐにでてくるようなことを聞いてんじゃないよ
40 :
Perl忍者 ◆M5ZWRnXOj6 :2010/10/27(水) 23:33:03 ID:5gjOlAXp
スルーできてませんでしたね いまは笑いがとまりません この釣れたっていう凄さ この釣りは素晴らしい娯楽だと私はそう思います。 また釣られてください おもしろすぎて うんこもれそうでした プリップリッ!! いじょ
41 :
nobodyさん :2010/10/27(水) 23:34:17 ID:Y0a/sAK/
なんだネタか。 今日はネタが多いな横浜が一番でかかったけど。
>>37 表示はできるけどPOSTかGETかどっちか忘れたけど渡された文字が化ける機種があったはず
確かauで割と最近の機種だったと思う
記憶違いならごめんな
嫁ボケ?
うんこプリプリ
auはformから送られたデータがShift-JISになるみたい 受け取ったものをUTFにエンコすりゃいいのかな
>>45 その中途半端な知識すらなくていまどきのケータイはどれでもUTF完全対応キリッって思ってる馬鹿よりはましだな
ググったら au+XHTMLでなくHTML+GET+UTF-8 の場合に文字化けするってあったよ
49 :
48 :2010/10/27(水) 23:41:36 ID:???
みにくかった au+HTML+GET+UTF-8 のとき文字化け
ケータイに幻想抱いてた人ざんねんでしたねww まだまだ不完全でしたww
ここ見る限り、XHTMLで書いときゃ問題ないってことじゃないの?
>>51 そーでもない
まだ現行機で化けるのはごろごろある
「ごろごろある」とか適当なことを言うな。 何パーセントとか、何機種あるとか具体的な数値を示せ。
>>53 自分で調べろよ
つっかかってるばかりで建設的な話はなにひとつしてないお前はそろそろうざい
>>38 お前がそうやって煽るから無駄なレスが増える件
>>51 「ここ見る限り」wwwww
視野狭すぎだろ、まともな携帯サイト作ったことないんなら黙っとけよ
まともじゃない携帯サイトすら作ったことがない奴に言われたくねぇな
なにそれ
おまいら落ち着け
携帯のブラウザ自体がまともじゃないからな
UTF-8未対応の携帯なんて現存してないっつの
UTF-8で作ったページが文字化けせず表示されているのに、フォームから送られてくる文字がShiftJISだったりするのがある。auとか。 サーバ側で変換してやればいいんだろうけどね
>>62 は現行スレすらまともに読めんのかwこんなやつかコーディングしてると思うと胸が熱くなるな
66 :
65 :2010/10/28(木) 14:09:19 ID:???
あ、語弊があるな 全キャリアを出来るだけ共通にするなら、Shift-JISの方がいいよ
67 :
nobodyさん :2010/10/28(木) 15:16:10 ID:9pb3lJf6
PHP4.3のサーバでclass内の関数の指定を function test(&$array) みたいにすると、エラーになりました。PHP5ではなりません。 &が問題だと思うのですが、どういう書き方をすればいいのでしょうか?
何のエラーなの? どうやって呼び出したの? 呼び出さなくてもエラー出るの?
何のエラーと言われても困ります。エラーはエラーなので。 質問に質問で返すのは止めてください。 どういう書き方をすればいいのかだけ教えてくれればいいです。
>>70 4.3で試したが、エラーにならねーぞ。 だから答えられん。
がっかりです。
IDでてないのは偽物としてスルーしろって。
スルーするのは俺の性に合わない
おまえ答えてないだろ。 というか忍者だろ。
Perler(笑)はあんま荒らさないほうがいいぞ PHPerのチンピラさんが黙っちゃいないぞ
ほえ〜
最近ほえほえ言ってるやつがいるがこれは新登場人物キモヲタさんですか?
/ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ | ケロちゃん 置いておきます \__ _________ ∨ r┐ _ / ̄ > ――- < \ | / ヽ | _ (\、 l ’ ・ ’ l /// \ l r‐、 / / ∠ r一 l\ 、ノ /ー‐ 、-‐′ `ーzヽ  ̄ ̄ r‐┐ | `ー| | ̄ ー′ _ | | r‐´ `ヽ | | l 「ヽ__ノ / \ l | / l l | | /「lヽ | // ヽ | l !__| /// } / `ー‐\ ヾ し′ ` ┘
80 :
nobodyさん :2010/10/28(木) 23:13:45 ID:8q8VhlYJ
PHPでは、クラス内クラスは作れないのですか?
やってみたけど無理っぽいね まぁインナークラスなんていらないよ
82 :
nobodyさん :2010/10/28(木) 23:46:06 ID:DRgi0wD2
【OS名】Windows7 【PHPのバージョン】php-5.2.14-Win32 【Apacheのバージョン】 httpd-2.2.16-win32-x86-no_ssl 【MySQLのバージョン】 mysql-essential-5.1.51-win32 【質問内容】 以前のバージョンでは正常に動作していたのですが、アパッチのバージョンを2.2.16にアップしてからlocalhostでは 問題なくアクセス可能なのに、グローバルIPやno-ipで取得したドメインでアクセスできずに困っています。 ネットで調べたところ、apache2.2.X系ではデフォルトのセキュリティが強化されている様子で初期設定では外部からの アクセスをはじくように設定されているようです。 そこで、httpd.confファイルのDeny from all の部分をすべてコメントアウトしたり設定をallowとdenyの順番を変えて みたのですが一向にグローバルIPではアクセスできません。 また、アパッチのエラーログには何も出力されておらず、何が原因でアクセスがはじかれているのかわからず困っています。 ブラウザからグローバルでアクセスすると『インターネットエクスプローラではこのページにアクセスできません』と表示されます。 もちろん、80番ポートの開放は確認済みですし、念のためファイヤーウォールなどをすべて遮断しても同様の結果です。 長くてわかりにくい文章で大変恐縮ですが、どなたかご存知の方がいらっしゃいましたらアドバイスをいただけますでしょうか。 お忙しいところまことに申し訳ありませんがよろしくお願いいたします。
83 :
nobodyさん :2010/10/29(金) 00:06:39 ID:Xy/EIFPC
同じphpファイルの実行が重複しないような処理にしたいです。 getmypid() でプロセスIDをファイルに保存して、同じPIDが実行中でなければ重複していないと判断、みたいに考えてみましたが これだと同じプロセスIDが別のプログラムに割り振られてしまった場合、 重複していないのにそう判断してしまうなど確実ではないので、もうすこしスマートな方法があれば教えていただけないでしょうか。
>>82 PHP関係ないんで自宅サーバ板で聞いて下さい
ていうかデスクトップOSで自宅鯖とかやらんでください
87 :
nobodyさん :2010/10/29(金) 02:03:38 ID:WgM1J2gE
【OS名】FreeBSD
【PHPのバージョン】5.2.14
【連携ソフトウェア】無し
【質問内容】
simplepieというRSSパーサーでアンテナサイトを作っています。
xxx.phpに下記のように書いて呼び出しています。
<?php
require_once("simplepie.inc");
$feed = new SimplePie();
$feed->set_feed_url("RSSフィードのURL");
$feed->init();
$feed->handle_content_type();
foreach ($feed->get_items(0, 5) as $item) {
$link = $item->get_permalink();
$title = $item->get_title();
$date = $item->get_date("(Y年m月d日)");
echo "<a href=\"".$link."\">".$title.$date."</a>";
}
?>
この時、RSSフィードに【〜〜.xml】や【〜〜index.rdf】といった普通のURLを入れると問題なく表示されますが、
【
http://feeds.fc2.com/fc2/xml?host=xx 】
このようなURLを入れるとブラウザの表示が真っ白になります。
エラーは出ず、ブラウザからソースを表示しても空っぽになっています。
URLに「?」が入っているとダメなのかなと思ってますが、解決策が分かる方がいましたらよろしくお願いします。
88 :
nobodyさん :2010/10/29(金) 04:24:59 ID:WgM1J2gE
自己解決しました
90 :
nobodyさん :2010/10/29(金) 07:15:39 ID:qVQ3oj65
rssをよんでるんですが、アメーバだとPR:ではじまる広告も含まれるので除外したいと思い $rssdata = simplexml_load_file($rssurl); if(stristr($rssdata->item[$i]->title, 'PR:') == FALSE){ 表示の内容 とやったんですが、これだと件名の中にPR:が含まれていたら表示されないってことですよね? 文頭のみ回避で、 if(preg_match("/^PR:/",$rssdata->item[$i]->title)){ としたら正規表現のためか凄く遅くなってしまいます なにか最適な方法はありませんでしょうか
>>90 stristrじゃなくてstriposにしたら?
if(stripos(〜) == 0) で文頭を検出できるでしょう
はにゃ〜ん
>>82 たぶんVista以降のhostsファイルの設定で直る
具体的な解決法はggr
間違えた、ggrks
98 :
nobodyさん :2010/10/29(金) 13:16:11 ID:HgRc7z/D
ホムペ見て基本的な構文とか文法は把握しました 最終的にはグーグルマップとかいじりたいです 幅広い知識をつけたいんですが、入門上がり用にいい書籍とかないですか?
99 :
井上 夏娜 :2010/10/29(金) 13:26:12 ID:SLi+UPuH
くだらん書き込みだらけのスレで100ゲトー
2chでの宣伝行為は対価を支払わなければなりません 面倒なことになる前に削除依頼を自分でだしてね
103 :
nobodyさん :2010/10/29(金) 19:38:29 ID:H5TyRJbe
質問です。 whileとechoと(preg_match('/^[a-zA-Z0-9\-]+?$/', $dirname)) でディレクトリ名を取得して で一覧を表示させるスクリプトを作りました。 しかし、順番がディレクトリに振り分けたローマ字順になりません。いい方法はありますでしょうか?
取得したものを配列に入れてソート関数を使う
ディレクトリ名を取得したいならdirnameじゃだめなの
>>103 <?php
header("Content-Type: text/plain");
$dir = "d:/";
$dirs = scandir($dir);
foreach($dirs as $v){
if (true === is_dir($dir.$v)) {
echo $v, "\n";
}
}
107 :
nobodyさん :2010/10/29(金) 20:11:15 ID:H5TyRJbe
>>91 == じゃなく === にすべきじゃない?
>>103 mataseikihyougenkayo
111 :
nobodyさん :2010/10/30(土) 05:14:07 ID:Pg/O0yGo
globalって使わない方がいいんですか? 何で代用すれば良いんでしょうか?
参照渡し
何かで代用しなきゃいけないくらいなら素直にglobal使えばいい。 無理してglobalを回避する意味はない。
だな
115 :
nobodyさん :2010/10/30(土) 11:52:23 ID:B6NRlhRH
$_POSTか$_GETに指定のキーを一度にとりだすことってできます? 今は一つ一つif使ってるけどなんでもあるphpだと何かありそうで…
できるよ
117 :
nobodyさん :2010/10/30(土) 12:01:30 ID:B6NRlhRH
へい、ブラザー 俺のif分を一つにして値を取り出してみないかい?
10 IF A$=1 THEN GOTO 100 ELSE GOTO 30
119 :
nobodyさん :2010/10/30(土) 14:24:33 ID:B6NRlhRH
それは、バ、basicやがな…
$hoge = isset($_REQUEST[$key]) ? $_REQUEST[$key] : '';
basicの読み方ってバで始まるの?
>>121 ベタな質問してんじゃねーよ。
IDだせよ質問するなら
しっかり守ってもらわないと
ってゆーかわかってて聞いてるだろ
くそまじめにレスして損した
123 :
nobodyさん :2010/10/30(土) 18:08:40 ID:4OR5mMiQ
文字列の最後の文字だけ削除するにはどうすればよいでしょうか? Rubyでいう chop! のようなものが見つからなくて。。 php5です。
>>123 substr($foo, 0, -1);
125 :
nobodyさん :2010/10/30(土) 18:19:52 ID:4OR5mMiQ
126 :
nobodyさん :2010/10/30(土) 18:30:53 ID:lhgqw71O
>>120 先生!それだとcookieちゃんまでしゅとくしちゃいます><
【連携ソフトウェア】Apache2.2 MySQL5.1 ImageMagick
$q = array_merge($_GET,$_POST); $q[$key]とかじゃだめかな。
129 :
nobodyさん :2010/10/30(土) 19:58:54 ID:N66kSH5M
>>128 good!
エレガントです!コレ採用しました!
俺はこれ使ってるけどGETとPOSTで同じキーで値を入力した場合、GETのは破棄されるんで注意な。
131 :
nobodyさん :2010/10/31(日) 02:43:00 ID:AxofEGjH
オブジェクト指向で書いていく場合は皆さん前もって設計図のようなものを描いたりしているんですか?
オブジェクト指向の方が設計なしでもsetとかgetとか書けばいいから簡単やん
umlはたまにかくな 構想をまとめる時とかホワイトボードかきながらあーだこーだ会議で喧嘩する時もね
ユースケース、クラス図、シーケンス図とマインドマップは使うこと多いな
シーケンス図しかつかわんわ
ソフトの設計って結構いい加減なイメージあるけど、 建築の設計ってどうなんだろうね? やっぱ工事が始まってから、設計変更とかしてるのかね? それとも、外観はきれいだけど、建物の中はスパゲティ状態なのか。
>>136 それをプログラマに聞いて回答もらえると思った?
>>137 おれはプログラマならそう言う回答をすると思っていたよ。予想通りの回答ありがとう。
139 :
nobodyさん :2010/10/31(日) 10:38:06 ID:iWbUWLws
$obj = new Test(array("a"=>"apple", "b"=>"vine")); こんなかんじでクラスを使うとき元になるクラスはどう書くのでしょうか?
class Test { public $a; public $b; public function __construct($array=array()) { if (isset($array['a'])) $this->a = $array['a']; if (isset($array['b'])) $this->b = $array['b']; } }
class Test { public function __construct($ary) { } }
どっちが良いコードでどっちがクズコードなのか分かんない
class Test { public function Test($ary) { } }
publicって書いてる時点でPHP5以降の書き方なんだから コンストラクタをTestとする意味は無いだろ
PHPはtime()をintで扱ってるけど2038年以降はどうなるの
>>145 32bit環境で使ってるとばっちり2038年問題にひっかかります
php5.2以降ならDatetime使って下さい
147 :
137 :2010/10/31(日) 17:22:48 ID:???
>>138 私は飲食店の店員でプログラマじゃないよ
予想がどうとか哀れな人だね
さぁ今日も熱き戦いが今始まりました ファイッ!
↑こういうのって面白いと思って書いてるのかな? いい歳して馬鹿みたい
ファイってw おっさん臭がきついなww よしおじさん煽っちゃうぞ!とかリアルで考えてんのかきめえwww
>>148 私は17の高校生でいい歳じゃないよ
自分の歳より下のガキに馬鹿にされて哀れな飲食店店員だね
おれはおっさんならファイッって書くと思っていたよ。予想通りの煽りありがとう。
今日もPHPスレは餓鬼くさいですね
おっさんがイメージする若者ってのが17ってことだけはわかった
>>154 そりゃ自称17が現れるスレだからな
頭んなかは餓鬼なんだろ
今時の17はもっとしっかりしてるんじゃね?
ハァ?マジで俺17なんだけど オッサンたちみじめだね
今時の17よりしっかりしてないおっさんだらけのスレ
じゃあ俺は8歳でいいよ で、この不毛な年齢争いはなんになるわけ?w
餓鬼の証明になるんじゃね
建築の回答がもらえなくて大暴れ(w
アンカーミスって察せないから池沼って言われるんだよオジサン
誰かこの工房建築スレに誘導してやれよ
飲食店店員も連れていってくれ
17にもなってこれはないな 実際はもっと幼かろう
アンカーミスをあげつらわれてマジギレワロタ
俺が17歳の時はとある言語の本を書いてたけどな ゆとりはほんと駄目だな 就職難じゃなくて能力がないだけだろ…
中二病こじらしたおっさんまで沸きだしたww
>>169 何こいつwwwwwwww
ただのオナニーでしょ?www
俺的まとめを本と勘違いwwwwwwwww
さすがPHPerは低レベルですねwwうぇ
17歳で本は昔なら普通 でもゆとりにとっては凄いようにみえるらしいな
えっ、今のゆとりって学生のうちに本を執筆しないの?まじで???
凄いとかどんだけ自分に陶酔してんだwwwwwww オッサンぱねーなまじで
>>174 いや同じおっさんでも執筆云々は理解できん
このおっさんだけ特殊なんだと思う
おっさんたちがくだらん本量産したから 今の若者には出版社から声もかかりやしねえ 武勇伝語る暇あったら自分の行いを反省しろ
あれ?武勇伝に聞こえたの? ふーん、息を吸うのと同じぐらいの労力だからそう言うつもりはなかったんだけどなぁ いやーすまんすまん 17歳には難しいか こういう話w
>>176 なにどさくさに紛れて私怨燃やしてんだよww
俺は15なんだが 2chは13〜18才くらいがほとんどだろ? ハタチ過ぎてで2chに粘着とかありえね〜
>>177 さすがっす
参考までに本の題名教えてくださいそれ読んで頭よくなりたいっす
おっさんの精神年齢の低さにみなどんびきである
おまいらおっさん同士で喧嘩して恥ずかしくない?
>>180 頭良くなりたいなら俺の本を探してみな…
それな何よりも難しい試練だ…
おっさんが仲裁にはいってきたw
15の俺から見れば18才以上はみんなおっさんなんだが
なんかのデータで2chは30〜40代が一番多いってかいてた 10代20代はSNSに移行して 2chにはおっさんしか残らんのだとよ
さっきから15って言ってるおっさんうざいな
8歳の私から見れば中学生っていがいと幼稚なんだなってかんじ
>>184 「それな何よりも」って何?おっさんのくせに日本語もまともに扱えないのか(プw
本だってどうせ誤字脱字乱丁だらけで読めた代物じゃねぇんだろwww
オッサン本UP
>>190 餌にひっかかるマヌケ…
推敲は著者とは違う人間がやるんだぜ…
よかったな、騙される前に知る事が出来てw
>>189 10の位と1の位を足して8歳とか?誕生日ケーキのロウソクかよ
本のおじさんは三点リーダを一個で使うからわかりやすいな 物書く奴が三点リーダをまともに使えないってのも悲しいが
>>192 自分は原稿を読み直しもせず編集に推敲させんのかよww
どうせ内容も編集が書き直してんだろ(プw
お前の書いた痕跡残ってねーよwww
>>195 は本を書いたって話を信じてあげてて実は優しいやつだと思う
あーあったあった 本の出版しませんかーってお誘いはよくあったなw 当時HTMLの勉強HPを開設してたんだがそういう話きたわ ただ当時のコンテンツみ直してみると断ってよかったなぁとしみじみ思う 改行には<p>を使いますとか書いてるHPなんだぜ? そんなレベルでも出版話が舞い込んできた2001年冬
>>195 俺に触れて火傷する事になるとはな…
すまない…
だからこれ以上俺に付き合うな…
でないと真っ赤な顔までも火に覆われる事になるぞ…
もう手遅れかもしれないが…
匿名掲示板なんだから信じる必要も無いし疑う必要も無い お互いに勝手なことを言い合っていればいい と15の俺が言ってみるテスト
テストって何年前に流行った用語だよw
さすがオッサン達 墓穴を掘りあってるな
>>201 おっさんたちってお前以外は俺しかいないぞ?
なんだ、全部201と202の自演か。つまらん
そんな強引に終息させようとしてもまだまだ続きますからね
15の俺もいますよ〜 おさーん達いいかげんウザいんですけど。逝ってよし
15ですから(藁 ところで17で本書いたおっさん。詳細キボンヌ
本書いたとか信じてるやついないだろw
しょぼい本で突っ込まれるのが嫌だから何も言えないんだよ 調子にのって本名で出しちゃったんだから察してやんな
作家先生消えちゃったね 建築スレにでも行っちゃったのかな
>>144 はBAKA
__constructなんて専用メソッドが用意されてるほうが特殊なんだから
他言語使いならPHP4、5に関係なくクラス名と同じものを使うのは普通
ちなみにpublic修飾子なんて普通わざわざつけない
おまいらPHP以外に何の言語を使えるの?
じゃぁ
>>143 を書いた俺は天才?
ちなみにクラスとかまだ使ったことないんですが。
サーバーがPHP4系のままなもんで。
これって遅れてます?
basicの読み方ってバで始まるの?
>>212 ハァ?じゃあお前の良コードっていうのを晒せや
>>212 あなたが書くコードは思い込みが多くてバグとか発生しやすそうですね
多言語がどうであれその言語の書き方にあわせて書くべきでしょ
ちなみにPHP 5.3.3 以降
>名前空間つきのクラス名の最後の部分と同じ名前のメソッドは
>コンストラクタとみなされなくなりました。 名前空間を使っていないクラスは今までと変わりません。
となるみたいだけど多言語とあわせると言うのであれば
名前空間も使うと思うけど、その場合あなたの書き方じゃコンストラクタにはならないよ?
他言語からの乗り換えを推奨して他言語を意識して作ってきたのに PHP5から独自性を打ち出そうとしてわけのわからない実装が増えちゃってる例だな
>>213 世にある言語のほぼ全て
メジャーなのは全て使える
各スレの宿題スレや質疑応答スレのコード晒した回答はほぼ俺
マジで
PHPでフレームワークなに使ったらいいかおしえて
荒らしは放置しなくてはなりません。 自演してあなたのレスを誘っています。 反応するのは彼らのご馳走にしかなりません。
ID無しの質問に答えないのはそういうことです。
226 :
nobodyさん :2010/10/31(日) 19:28:33 ID:txdtXXEb
PHPでフレームワークなに使ったらいいかおしえて
>>226 「PHP フレームワーク」でググるとよいでしょう。
「ググる」の意味がわからない場合はお問い合わせ下さい。
230 :
136 :2010/10/31(日) 20:20:37 ID:???
おまえらすごいな。 以上。
class Test { private function Test($ary) { } }
もはやめちゃくちゃなコードだな
インスタンス化できないことを明示するときにやるんですけどね。 PHPでは使えるのかな?
$aryに違和感感じてる俺は異端 $arrじゃないのか・・・
インスタンス化出来ないってわけじゃないだろ クラス外でインスタンス化できないだけであって・・・ クラス内のpublicメソッドからならインスタンス化可能だし で、使えるかどうかだけど確か使えたはず
class Test { private function __construct($ary) { } }
class Test { private function __construct() { } public static function getInstance() { return new Test(); } } $obj = Test::getInstance();
しんぐるとんぱたーん
Singletonですか。 で、Singletonってよくわからないんだけど、 結局どういうこと?何ができるの?
シングルトンにはすこし何かが足らんような気がするな。 あ、これ独り言ね。
これシングルトンじゃないよ
シングルトンにするならgetInstanceの中を
if (($this->instance instanceof Test) == false) {
$this->instance = new Test();
}
return $this->instance;
に変えてやる必要がある
>>237 のはコンストラクタがprivateの場合に
インスタンス化する方法をコード化しただけ
インスタンスするのにわざわざコンストラクタをprivateにする意味がわからないわ
>>246 コンストラクタをprivateにする必要があるのはどういった場合でしょうか。
また、
>>237 はどのような仕組みでインスタンス化できるようになっているのでしょうか。
>>247 シングルトンにしたい場合等で自分のクラス以外からは
インスタンス化させたくない場合がある時とかに
privateとする事でプログラム的に制約を与えることが出来る
>>248 >>237 はgetInstanceがTestクラスに所属するから
そこからのインスタンス化はできる
Java使いはレベルが高いですね
javaつーかオブジェクト指向の基礎ですがな
デザパタは応用で基礎とは言わんわ
253 :
139 :2010/11/01(月) 10:07:47 ID:3sRV6stz
俺の家の近くにはセブンイレブンが多いかな。
セブンイレブンとPHPに何の関係があるのでしょうか。 詳細キボンヌ
脈絡の無いものは誤爆であると見抜ける人でないと(掲示板を使うのは)難しい
サンクスとセブンイレブンを(コンビニ繋がりで)掛けてるんだろ。 言わせんなよ恥ずかしい。
ほんとオッサンはギャグセンスねえな!
釣りって知ってますか。 詳細キボンヌ
今日もおっさん達元気だな
おっさんに言われたくねぇな
お願いだから、【荒らしは無視・放置】 してね?ID有のみ回答だよ。 ★ 荒らしは放置されるのが一番苦手 → ウザイと思ったらそのまま放置。 ▲ 放置された荒らしは煽りや自作自演であなたのレスを誘います。 → 釣られてレスしたらその時点であなたの負け。 ■ 反撃は荒らしの滋養にして栄養であり最も喜びます。 → 荒らしにはエサを与えちゃだめ。
有IDのみ回答と言っても、無IDに回答する人も多いから破綻してんだよな いっそ板設定を全ID出しにすればいいのにね
強制IDじゃないのは、そもそもこんな過疎板で荒れたりしないだろって事だよ 勢い見てみろよ、このスレだけ特別に異常なの
おまえらは本当に開発者かと疑いたくなるな ID出そうが出さまいが匿名である以上状況が変わらんのは開発者ならよくわかってるはずだ
ここはマ板ではありません
270 :
264 :2010/11/01(月) 19:12:20 ID:???
ここまで荒らしのサンプルです。
ここまで? いえ、どこまでもです
ID無しに設定されてるってことは、 自演でも何でもお好きにどうぞ、って意味だろ?
>>268 お前は2chがわかってないな
ここ8年で強制IDになった板では軽い荒し(自演)は減ってるんだよ
ここはIDでないから気楽に荒しが行われる
強制IDでも、荒しの数は減ってもPCと携帯併用、ip変えたりp2つかっての自演などはあるけど
数は減るんだよ
っていうかこのスレ荒らされて困る人いるのか?本気で嫌な人いるのか?
>>274 にわかにマジレスくれてやるとかまともではないな
俺は15なんだけど、結構まじめにこのスレ読んでる 荒らされるのは本気で困るんだが
278 :
nobodyさん :2010/11/02(火) 01:30:31 ID:ICgbzolu
■サーバ情報
【OS名】windowsXP
【PHPのバージョン】5.2.14
【Apache】2.2.16
■php.iniの設定
; For Win32 only.
SMTP = smtp.nifty.com
smtp_port = 25
;smtp_port = 587
; For Win32 only.
sendmail_from =
[email protected] ■エラー内容
Warning: mb_send_mail() [function.mb-send-mail]:
SMTP server response: 501 5.0.0 Invalid domain name in
■質問内容
PHPでのメール送信の内容で質問があります。
コマンドプロンプトからはtelnetで25番ポートに接続し、認証が必要なくメ
ール送信できるのに、なぜPHPからはメール送信ができないのでしょうか。
ちなみにメールサーバーは契約しているプロバイダのものを使っています。
大変恐縮ですが、自分で設定(サブミッションポートなど)を変えてみても
送信できなかったのでどなたか解決方法をご存知の方がいらっしゃいました
らアドバイスいただけると幸いです。
よろしくお願いいたします。
ポート25番のメール送信で問題があるならまずOP25Bを疑う
メールログ見れ
281 :
nobodyさん :2010/11/02(火) 02:22:26 ID:ICgbzolu
>>279 貴重なアドバイスありがとう御座います。
OP25Bの場合はサブミッションポートだけを指定すれば送信可能というわけではないのでしょうか。
282 :
278 :2010/11/02(火) 02:24:41 ID:ICgbzolu
>>280 アドバイスありがとうございます。
アパッチのログを見たのですがメールログが見つからないのですが、どこか別の
場所にほぞんされているのでしょうか???
そんくらいで正規表現使うなとかこのスレでよく聞くけど if (!strstr("hoge", $str) && !strstr("huga", $str) && !strstr("hage", $str)) なんてときは if (!preg_match("/(hoge|huga|hage)/", $str)) のほうがいいよね?
phpにenumみたいなのないかな? NetBeansの候補に出したいんだけど
>>278 POP before SMTPじゃねーの?
>>279 コマンドプロンプトからポート25でOKと書いてあるのに何言ってんの?
>認証が必要なくメール送信できるのに これ自体が不思議でならない これだとスパム送り放題って事でしょ
288 :
nobodyさん :2010/11/02(火) 10:13:30 ID:MFB4pbx+
telnet でメール送信出来たマシンはPHPが動いてるサーバと全く同じ? 多分telnet はローカルマシンからしてるような希ガス
>>288 telnetでメール送信って、 smtpサーバーにtelnetでつないで HELOとか打ってくやつだろ?
293 :
nobodyさん :2010/11/02(火) 11:38:40 ID:MFB4pbx+
ん?そうだが、言いたいのはtelnetでsmtp叩いた環境と phpでsmtp叩いた環境が違うんじゃね って話だが?
としたらただのあほだよな。XPだから目の前のパソコンだろ。
>>278 ・正しいphp.iniファイルを修正したのかどうか。(phpinfoで確認)
・Apacheを再起動したかどうか。
・sendmail_from は正しいメールアドレスを設定しているかどうか。
・POP before SMTP の可能性はないか。
パケットモニタしてみればHELOコマンドの時点で蹴られてるのかどうかなどが
わかるが・・・
>>282 ちなみにApacheのログにはメール送信の記録は残らんと思うぞ。
PHPのmail関数が直接MTAを叩きにいくはずだから、記録があるなら
MTAのログだろう。
今回はWindowsでMTAを入れてないわけだからniftyのSMTPサーバーにしか
ログは残ってないことになるわな。
298 :
nobodyさん :2010/11/02(火) 14:52:51 ID:3UDUD+H/
しょうがないからSubmissionポートつかったら?
299 :
nobodyさん :2010/11/02(火) 14:53:30 ID:MFB4pbx+
PHPのmail関数が直接MTAを叩きにいく?
windowsだからな
Windowsじゃなくても一緒でしょ。 PHPのmail関数は直接sendmailにアクセスするわけだから。
あのさぁ・・・
Apacheを経由するわけじゃないからApacheのログには
メール送信の記録は残らないって話してんの。
backgroundの実装の話は
>>282 ,297の流れと関係ないだろ?
OKWaveにも似た質問あるけど同じ人かな? 環境わからんけどsendmail_path指定してるってことない? 確かこれの指定があれば優先されるんだったよな
「//」を外すと500になるんだけど何故だろう? 物凄く違和感がある //ini_set('display_errors', true); namespace newspace; echo 1;
307 :
306 :2010/11/02(火) 17:27:43 ID:???
あ、名前空間は最初に定義されなければなりませんか
ID無い質問やちょっとあれな回答があったとしても、 皆我慢してるんだぞ。今は嵐が過去るのをじっと我慢。つまらなくなったらいなくなるさ。
15の俺と違っておっさんは気が短くて困る
311 :
nobodyさん :2010/11/02(火) 20:05:46 ID:Z+1BHNaU
class c { function __construct() { return"22"; } } returnの22は取れないんだっけ?
コンストラクタでreturnできないし コンストラクタは基本的にプロパティをセットする場所と思えばいい そういうもの作るならstaticメソッドで作ってください
コンストラクタはインスタンスを生成するための処理。 戻り値が取れないのは、生成側のセマンティクスがそうなっているからという理由だけでなく、そういう用途のために用意されたものではないから。 またコンストラクタで処理が失敗した場合は、きちんと例外を投げてインスタンスの生成を阻止するのが筋。 なんつって
>>283 注意:
もし特定の haystack に needle があるかどうかを調べるだけの場合、 より高速でメモリ消費も少ない strpos() を代わりに使用してください。
んな使う関数なんてどうでもいいんだよ 同じような処理を何個も並べるか1つだけ正規表現使ってやるかのどっちがいいかって質問だろ
なら明らかに前者
なら明らかに前者(キリッ じゃねえよ strposで2件10万ループ 0.17 strposで3件10万ループ 0.24 strposで4件10万ループ 0.31 preg_matchで2件10万ループ 0.19 preg_matchで3件10万ループ 0.2 preg_matchで4件10万ループ 0.2 3件以上はpreg_match
strposが高速って嘘なの? 正規表現次第?
<?php $s = microtime(true); $c = 0; $str = "hogehoge"; for ($i = 0; $i < 100000; $i++) { if (strpos($str, "mogemoge") || strpos($str, "hugahuga") || strpos($str, "hogehoge")) { $c++; } /** *preg_matchの場合 * */ // if (preg_match("/(mogemoge|hugahuga|hogehoge)/", $str)) { // $c++; // } } echo microtime(true) - $s . "\n"; echo $c; 意図的にhogehogeを最後に持ってきてるベンチだから 最初のstrposにhogehogeが入ってればstrposが早いのは当然 ただ平均的に考えた場合preg_matchのほうが上
322 :
321 :2010/11/02(火) 23:36:43 ID:???
ミス if (strpos($str, "mogemoge") || strpos($str, "hugahuga") || strpos($str, "hogehoge")) { $c++; } ↓に訂正 if (strpos($str, "mogemoge")!==false || strpos($str, "hugahuga")!==false || strpos($str, "hogehoge")!==false) { $c++; }
間違ってるから釣りだと思ってスルーしてたのに。 &&以外に strstrの引数逆。
>>318 は最悪実行時間ね
ちなみに
>>321 のコードをhogehogeを先頭にした場合
strposは1/3の時間になるがpreg_matchでは変わらない
結論としてstrposは関数呼び出しに比例して最悪実行時間が上がるが
preg_matchではそうではない
文字列とするならシングルクオートに・・・
どっちも変わらんな。 必要な機能で選ぶべきだ。
検索文字列中にメタ文字があったら使えなくないか?
エスケープすればええやん
どっちも言うほど遅くなくね?
数ふやせばpreg_matchのほうがいいってことじゃね 最初のほうでマッチする保証があればstrposのほうが早いから 少なければ少ないほどstrposがよくて 多ければ多いほどpreg_matchのほうがよい
いずれにせよ1万回で
>>318 くらいの速度なら
実用上はさして差は無いと言えるんでは。
システム全体ではDBアクセスなどのほうがボトルネックになりそう。
実用上大して差がないとわかってるのに正規表現を毛嫌いするやつがいるからな preg_match("/hoge/",$str)とか正規表現使ってないものは確かに俺もないとは思うが目くじら立てるほどでもないよな
マッチさせて抽出・置換 させているということをわかりやすくするために (あえて)preg*しか使ってはいけない という規約を見たことがある 良い悪いは別にして、そういう考え方もあるって事だな
ID出してない質問なのになんでスルーしないんだよw
>>334 統一してる方が見やすいのは確かだな
pregは正規表現でも違っても使えるから統一するならこっちになるわ
机上の話としては面白かった。ありがとう。
でもifのコストが数万回繰り返してもその程度なら、別にstrposのループやin_arrayでいいんじゃ・・・とは思った。
検索対象語が大量に増えた場合に、「|」で連結してエスケープしないといけないpreg_matchよりは、
設定ファイルやDBから対象語を取得してそのままstrposやin_arrayにかけるほうがよっぽど楽な気が。
連結するまでもない少数なら尚更。
ちょっとしたスクリプトを書くときとかは個人の好みでpreg_match使っても全然OKだと思う。
>>334-335 ユーティリティとして関数やクラス作ってそれを使わせるようにすればいいんじゃね?
プログラムを読む側や書く側は実装がどうなっているか意識する必要はない。
元C使いだが、"123"などの文字列同士を足すと数値として計算されるのにビビった 最近までintvalかましてたよ
PHPは型ないからな
型指定をする必要が無いだけで型はあるぞ
型指定・・・?変数の宣言は型指定というよりメモリの確保では
>>340 宣言の話じゃないぞ。値の自動変換(?)認識(?)の話だ
>>337 連結に-+などを含めて試すともっと面白いぞw
文字列入れた変数を++するとかな。
$a = "a"; $a ++; // b !!
345 :
nobodyさん :2010/11/03(水) 16:16:38 ID:bRpTkRq5
PHPで親クラスの親クラスの関数呼ぶには parent::parent::でいいの?
Phpはガキが使う物
>>345 スタティックメソッドはクラスの継承に関係ない(遅延静的束縛はある)ので
A < B < C … CからA::fを呼びたい場合は A::f() と明示する
インスタンスメソッドという意味なら出来ない、というより誤ったアプローチ
>>348 まだまだ尻が青いのw
ABCに掛けてあるんだよ!
本当かな?
for ($a='aaa'; $a!='aaaa'; $a++) echo $a.' ';
フリーダムすぎんだろwwwww
352 :
nobodyさん :2010/11/03(水) 17:24:00 ID:rDLrrCQe
mb_send_mail関数を使ってメール配信してたんだけど、今日使用したらSoftbank宛のメールが 急に届かなくなりました。 2〜3日前までは普通に送信出来ていたので、ここ数日で使えなくなった模様。 Softbank側で何か仕様が変わったということなんでしょうか。第5引数でreturn-pathは 指定してあります。
>>352 1、ただの遅延
2、大量に送りすぎてあっちでなんかされた。
公表されてない微妙なラインがあるんだよ。一時間にいくつまで 一日でいくつまでと。
PHP関係なさそう。
スパマー認定乙
356 :
nobodyさん :2010/11/03(水) 17:51:08 ID:rDLrrCQe
>>353 qdmail使ったら送信出来ました。
ヘッダ関連かなーと思った次第ですが、どうなんでしょうねぇ。
>>354 サーセン
>>355 大丈夫です。
357 :
nobodyさん :2010/11/03(水) 18:06:20 ID:bRpTkRq5
特殊文字はhtmlspecialcharsでコードに変換されますが 変換じゃなくて、削除してくれる関数はないでしょうか?
人によって特殊文字の定義は違うだろうし自作するしかないな
359 :
nobodyさん :2010/11/03(水) 19:27:31 ID:T4aX8FO7
先生!現在開いているページのタイトルを取得したいんですけど、どうすればいいですか?
ミクシィチェックのモバイル版が、ページのタイトルを求めてきて困ってます…。
http://developer.mixi.co.jp/connect/mixi_plugin/mixi_check/spec_mixi_check <form action="
http://m.mixi.jp/share.pl?guid=ON " method="POST" >
<input type="hidden" name="check_key" value="xxxxxxxx" />
<input type="hidden" name="title" value="★ここを<!--#include virtual="title.php"-->みたいなので取得したい★" />
<input type="hidden" name="primary_url" value="★現在のURL
http://example.com/ " />
<input type="hidden" name="mobile_url" value="★現在のURL
http://example.com/ " />
<input type="submit" value="mixiチェック" />
</form>
現在開いているURLは$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']で表示するだけなんですが、
htmlの<title></title>に挟まれた文字を持ってきて表示するというのが出来ないです。
↓このperlスクリプトをphpに書き直したり改造したりして、何とかならないものでしょうか?
sub PageTitle {
local($fname) = @_;
local($result);
if (!open(FILE, $fname)) { &ShowError; }
while (<FILE>) {
if (m{((?i)<title>(.+)</title>)}) {
$result = $2;
last;
}
}
close(FILE);
($result eq '') ? 'unknown' : $result;
}
>>359 なるよ。正規表現で取ってるだけだから普通にPHPでも書ける。
もしくはJavaScriptでもおk
そのhtmlを表示しているページのタイトルだったら自分で分かってるはずだし、 どっかのページのタイトル知りたければ そのperlみたいなことすればいい。 そもそも、そこに入れる文字と htmlのページのタイトルって関係あるのかね。 すきな文字いれればいいやん。
362 :
nobodyさん :2010/11/03(水) 21:12:41 ID:T4aX8FO7
ここまでできました。<!--#include virtual="/title.php"-->で
http://example.com/のタイトルは表示できました 。
あとは、<!--#include virtual="/title.php"-->を使って
phpを呼び出したページのタイトルを取得するだけなのですが、
つまずいてしまいました。どなたか助けてください。
title.php
<?php
function getPageTitle( $url ) {
$html = file_get_contents($url);
if ( preg_match( "/<title>(.*?)<\/title>/i", $html, $matches) ) {
return $matches[1];
} else {
return false;
}
}
//echo getPageTitle( $_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'] );//←★現在のURLにしたい。この部分を教えてください。
echo getPageTitle( "
http://example.com/ " );//←これは呼び出せた。
?>
>>360 うちのケータイはJavaScript使えないです…。
>>361 全てのページが同じタイトルというのはちょっと…。
wordpressとかのブログならタイトルタグで呼び出せばいいだけなんですけど、
shtmlでサイトを構築してしまっているので、そうもいかないです。
>>359 ブラウザで「表示」→「ソース」
<title>〜</title>の間をマウスで選択し、右クリック→「コピー」
メモ帳などに貼り付ける
SSIはよく知らないんだけど 環境変数のDOCUMENT_NAMEでphpにファイル名渡してやって、それ使って読み込めばいいんじゃね?
>>362 phpソースの中に phpinfo(); を入れてみて
希望するURLが得られる環境変数を探せばいい
>>363 みたいなのって書いてる最中に「これ寒いな」って思わないのかな
おっさんだから空気よめないんだよ察してやれ
>>364 そっちの線も考えてみます。
>>365 一つ勉強になりました。
SERVER["DOCUMENT_URI"]
SERVER["HTTP_HOST"]
この辺りに目星を付けて、↓こんな感じにしてみましたけど、ダメでした。いったんメシを食います。
$http = '
http:// ';
echo getPageTitle( $http.SERVER["HTTP_HOST"].$_SERVER['REQUEST_URI'] );
$http.SERVER["HTTP_HOST"].$_SERVER['REQUEST_URI'] の文字列が希望するURLにちゃんとなってるか確認した? echoして確認してみそ
370 :
nobodyさん :2010/11/03(水) 23:39:22 ID:f+TY6XzX
つーか携帯はjavascriptは使えないはずだが
てかSERVER変数の中身確認せずにコード書いてるのかw
文字コードの関係で文字化けして〆タグがマッチしないのではないかとエスパーしてみる。
SSIでhttpリクエスト送れんのかよとエスパーしてみる
でも、
> echo getPageTitle( "
http://example.com/ " );//←これは呼び出せた。
らしいので、変数の問題かと。
$http.SERVER["HTTP_HOST"] がおかしいと思うけどね。
自分のページのタイトルを取得しにいくと、 そのページのPHPが自分のページのタイトルを取得しにいって、 そのページが自分のページのタイトルを取得しにいってとなるような気がするのですが・・・ まあ、パラメータつけといて、タイトル取得時はタイトル取得部を動作させないようにすればいいですけど。 だから、面倒でも、自分のページのURL取得したら、url->titleのデータを元に書き出すようにするしかないかと。
戻ってきました。レスどうもです。
>>374 >$http.SERVER["HTTP_HOST"] がおかしいと思うけどね。
はい。この行でエラーが出たのでメシを食いに行きました。
>>375 その線が臭いです。
「やけにテストサーバの動作が鈍い時があったな」とか、飯喰いながら思ってました。
また一からやり直します。
>>369 以下、phpinfo();です。
PHP Variables
_SERVER["DOCUMENT_URI"] /cgi-bin/index.html
_SERVER["HTTP_HOST"] example.com
_SERVER["REQUEST_URI"] /cgi-bin/
_SERVER["SCRIPT_FILENAME"] /home/ex/public_html/cgi-bin/genzai-title.php
_SERVER["SCRIPT_NAME"] /cgi-bin/genzai-title.php
_SERVER["SERVER_NAME"] example.com
_SERVER["PATH_TRANSLATED"] /home/ex/public_html/cgi-bin/genzai-title.php
_SERVER["PHP_SELF"] /cgi-bin/genzai-title.php
377 :
375 :2010/11/04(木) 00:44:50 ID:???
タイトルがshtmlの処理で書かれてるんじゃないんなら
PHPで取得すべきなのは ページのデータ (
http:// 〜で始まるやつで取得するやつ)じゃなくて
サーバー内のファイルそのもの。
_SERVER["SCRIPT_FILENAME"] を取得してタイトル取得 PHPの連鎖は起きない。
shtmlの処理で書かれてんなら、おんなじもの フォームに入れるだけ。
>>377 ありがとうございます、明日やってみます。
わざわざすみません。
379 :
nobodyさん :2010/11/04(木) 03:35:42 ID:QBk0rcZE
sqliteはset names使えない
381 :
nobodyさん :2010/11/04(木) 04:02:05 ID:QBk0rcZE
setnames外しました でもupdateされないっす><
>>376 >>369 に書いたけど、getPageTitle()の中身の文字列をechoして確認してみた?
それと、
>>374 に書いたように $http.SERVER["HTTP_HOST"] は文法的におかしいでしょ。
SERVERじゃなくて$_SERVERにしないと。
あと、SERVER["DOCUMENT_URI"] に目星を付けて、と書いてる割に REQUEST_URI になってるけど大丈夫?
385 :
nobodyさん :2010/11/04(木) 07:25:23 ID:H5un7pkx
simplexml_load_fileだとdc:dateが取得できないみたいなんですが、 取得するやり方教えてください
387 :
nobodyさん :2010/11/04(木) 07:44:29 ID:H5un7pkx
>>386 ありがとうございます
Node no longer existsって出ました
simplexmlオブジェクトをserializeしたらおこるみたいですね
うちのプロバイダ規制に巻き込まれてて携帯からだからお礼遅くなってすみません
388 :
nobodyさん :2010/11/04(木) 11:53:38 ID:1iy2rlVw
PHP5.2.3使ってます。 $_GETのパラメータで渡された ?day=2010-10-01 を検証したいとき 「これは日付を表す型だ」と一発で判別する方法(関数)ないでしょうか? うまい表現出来ないので変な言い方になってますが 2010-11-01/2010-11/2010-01/2010-1 この4パターンを対象にしたいと思います。 ムリなんでしょうか? カレンダーを生成するときに利用したいのですが… お願いします
strtotime どれも日付にしたいんだよね?
strtotimeと、checkdateで調べればとおもったけど、 strtotimeで 2010-1は無理だね。 ハイフンで切って2個なら1日とかにして checkdateではどうでしょう。
391 :
nobodyさん :2010/11/04(木) 12:11:55 ID:1iy2rlVw
392 :
nobodyさん :2010/11/04(木) 12:22:08 ID:QBk0rcZE
>>383 try {
$dbh = new PDO('sqlite:test.db');
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$sql = 'update tab1 set tag1 = $tag1 where dirpass = $returnpass';
$stmt = $dbh->prepare($sql);
$stmt->execute();
}
catch( PDOException $e ) {
echo 'Connection failed: ' . $e->getMessage();
}
?>
DB定義ってどこまで書けばいいのですか?
普段sqlitemanagerってのを使ってますが
初心者です。 <?php $mode=''; if($mode=''){ echo "空"; }else{ echo "空ではない"; } ?> これを実行すると「空ではない」と表示されます。 どういうことですか。 また、どうすれば空を検出できますか?
$mode='' だから 比較ではなく代入になってます
396 :
nobodyさん :2010/11/04(木) 13:02:29 ID:zPbOOHCy
あるPHPページにアクセスしてきたものに対して経由して来たプロキシを全て表示する方法(またはログに書き出す方法)はありますか? 環境は PHP5.16 CentOS5 です。
>>392 $tag1とか$returnpassってPHPの変数なんだろうけど、それだと展開されないんじゃない?
というかprepare使ってるのにプレースホルダ使わないの?
399 :
nobodyさん :2010/11/04(木) 13:19:55 ID:zPbOOHCy
>>397 調べられる範囲で経由してきたプロキシが分かればよいです。最悪、2つ前のIPを調べられる方法でもよいです。
やりたいことは、PHPにIPでのアクセスを設けたいのですが、
プロキシ経由でWEBサーバにアクセスしてるので、プロキシのIPが制限の対象になってしまいます。
出来ない。 制限しなければいいじゃん。
公開プロキシでのアクセスをどうにかしたい っていう事かなと思って話しをするけど 公開プロキシなんてどこかのリストから 使えるものを使うって感じなんだろうから それを拒否リストかなんかに登録すればいいんじゃねーの?
402 :
nobodyさん :2010/11/04(木) 13:36:50 ID:R2ciutWb
>プロキシ経由でWEBサーバにアクセスしてるので、 誰が?あなたが? >プロキシのIPが制限の対象になってしまいます プロキシを拒否りたいというわけではないということか
プロキシ経由してるやつをプロキシのIP制限以外で制限するのは無理だから。
たぶんやりたいのはプロキシIPみて拒否じゃなくて、 大元のIPを見て拒否りたいということだろう 匿名プロキシじゃなくて、わざと環境変数に元のIPを漏らしてるプロキシ使ってる場合は分かるけどそれ以外は無理 刑事事件になるようなものならプロキシ運営側に情報開示させてプロキシを逆に辿るようなこともできるだろうけど
406 :
nobodyさん :2010/11/04(木) 13:53:37 ID:nDeItJ+n
PHPの質問としていいのか微妙なところなんですが、 ini_set()でも.htaccessでもshort_open_tagだけがOffにできません ほかの設定は反映されるのですが・・ これは何が原因だと考えられるでしょうか?
407 :
406 :2010/11/04(木) 14:44:39 ID:nDeItJ+n
自己解決しました もう一度.htaccessをアップロードしなおしたら反映されました (さっき反映されなかったのはなぜだろう..ブラウザ側でキャッシュ見てたのかな) あと、もともとini_set()ではshort_open_tagは設定できないようですね
408 :
nobodyさん :2010/11/04(木) 18:07:14 ID:En7f4Y+6
【OS名】CentOS5.5 【PHPのバージョン】5.1.6 【連携ソフトウェア】特になし 【質問内容】 社内の既存のシステムでmail関数を使用してメールを送信してます。 内容はログやエラー内容なんですが、ネットワークの変更に伴い社内のSMTPを使用することになりました。 そこで現状のソースを崩さすにmail関数でSMTPを指定出来ればと考えてますが可能でしょうか?
409 :
nobodyさん :2010/11/04(木) 18:12:52 ID:R2ciutWb
410 :
408 :2010/11/04(木) 18:28:52 ID:En7f4Y+6
>>409 そちらのアドレスについては確認しているのですが、やはりSMTPの指定は無理ということでしょうか?
iniで設定できなかったっけ? デフォルトがlocalhostのになってるとは思うけど
あぁごめん設定できるのはwinか 会社のSMTP次第だとは思うけど リレーでなんとかならないかな? MTU何使ってるか知らないけどそっちのスレで聞いたほうが良いと思う
MTU→MTA なんかぐだぐだで死にたい
全国ロードショー 映画「イッペンシンデミル 7日間のデス・ゲーム」
415 :
408 :2010/11/04(木) 18:53:48 ID:En7f4Y+6
>>412 MTAに何を使っているかは不明だったのですが、社内から使用するには制限は特にないといわれました。
mail()でリレーとか出来るということでしょうか?
>>415 いや、そのphpが動作するサーバのMTAの設定で
社内のSMTPサーバへリレーさせるって意味だよ
MTAの設定変更が無理なら、mail()では無理なので
SMTP指定ができる、PEAR:mailとかQdmailとかを使う事になる
417 :
nobodyさん :2010/11/04(木) 19:08:17 ID:QBk0rcZE
>>398 selectやwhereはできました
プレースホルダ使っても駄目でした
>>414 こんなのでわろてしまうなんてっ・・・くやしいっ
>>417 シングルクオートだと展開されないよ
$sqlの中身をチェック
>>417 できましたってwhereにシングルコーテーションってこと?
`foo` = '$bar'みたいな
展開されないでしょって突っ込まれてるのに気付かないってどんだけ
422 :
415 :2010/11/04(木) 20:52:00 ID:beLXGvet
>>416 すいません。
サーバーで使ってるのはsendmailです。
>>422 これ以上は板違いになるが
単純な転送ならSMART_HOSTに設定すればいける
サーバの管理者に相談してみて
424 :
nobodyさん :2010/11/04(木) 23:14:59 ID:cN2tw34c
new \A\B\C()->Start(); PHPはこういう書き方させてくれないのがムカつく!
\てなんだよ
もしかしてnamespaceなのか
Start()で何返ってくるの?インスタンス?文字列?
>>428 文字列
::だとclass内で$this->が使えないので見通し悪くて仕方ない
Startを呼び出したんならStartしろよw
ああそういうことじゃなくて、Cクラスのインスタンスを作って、同時にStartメソッドを呼び出したいのか
432 :
nobodyさん :2010/11/04(木) 23:36:30 ID:tQnLbdgi
Webサイトをダウンロードするようなフリーソフトとかがありますが、 ああいった感じの機能のPHPライブラリとかってありませんか?
file_get_contents
>>433 何となくそれが返ってくるような気がしてたw
複数ページ丸ごと落としてくるフリーライブラリは意外とないものなのかな
>>424 function r($o) { return $o; }
r(new Klass())->foo();
autoboxing パッチが受け入れられるまでこれで我慢
>>434 foreach ($urls as $url) {
$results[] = file_get_contents($url);
}
437 :
nobodyさん :2010/11/05(金) 00:25:20 ID:FUZYrjbX
>>417 ですが 展開されます その上で言ってます
>>437 シングルでされるならそりゃPHPじゃないよ
439 :
nobodyさん :2010/11/05(金) 01:15:09 ID:FUZYrjbX
できたもん
ああそう、せっかく解決方法知ってるけどじゃあいいよ
441 :
nobodyさん :2010/11/05(金) 01:21:38 ID:FUZYrjbX
え...(´・ω・`)
PHPでシングルクォート(')内では変数展開されない 俺々PHPとかでPHP本体自体を改造してるなら別だけどね 実際発行されてるクエリは update tab1 set tag1 = $tag1 where dirpass = $returnpass のままっていう可能性しかない
443 :
nobodyさん :2010/11/05(金) 01:55:08 ID:XnKoTrfJ
たとえば、"ff" って文字を取得して、それを 255 に変換できる組み込み関数ってありました? あるいは、言語構造でもいいです。 お願いします m(__)m
444 :
nobodyさん :2010/11/05(金) 01:57:44 ID:FUZYrjbX
ダブルにしたお 1 no such column ってでたお..
あぁ、hexdec ってのがあるんでした。 すいません
447 :
443 :2010/11/05(金) 02:00:17 ID:???
>>443 「16進数 10進数 PHP」あたりでググればすぐにわかることを・・・
>>444 "update tab1 set `tag1` = '$tag1' where `dirpass` = '$returnpass'"
こんな感じに書き換えてみると良い
まぁ本当はPDOなんだからプレースホルダ使えってのが本音
$sql = 'update tab1 set tag1 = :tag where dirpass = :returnpass ';
$stmt = $dbh->prepare($sql);
$stmt->execute(array(':tag'=>$tag1,':returnpass'=>$returnpass));
450 :
nobodyさん :2010/11/05(金) 02:28:47 ID:xucJQOJ5
短縮URLなんかで使われている 0-9a-zA-Zのuniqueなkeyってどうやってつくるのん? ライブラリがあると思うんだけどキーワードが思いつかない…
451 :
nobodyさん :2010/11/05(金) 02:30:57 ID:FUZYrjbX
>>449 氏
書き換えさせていただきました
Connection failed: SQLSTATE[HY000]: General error: 1 SQL logic error or missing database
を吐いたんですけど
fsockopenでいけると思う 多分。 やったことないけど。
sqliteでそのエラーでupdate出来ないんでしょ? パーミッションでしょ。ファイルとフォルダの権限チェック
>>450 短縮URLは短さが命でしょ
uniqidはちと長いね
0-9a-zA-Zをただ単にランダムにして重複チェックするだけでしょ
長さがどうでもいいとか、0-9a-fまででいいなら
>>454 の言うようにuniqidでいい
456 :
nobodyさん :2010/11/05(金) 14:49:04 ID:FUZYrjbX
457 :
nobodyさん :2010/11/05(金) 15:22:26 ID:FUZYrjbX
DBの質問なんですが id 1 name 伊藤 age 23 id 2 name 田中 age 24 id 3 name 山田 age 33 id 4 name 桜庭 age 43 id 5 name 中村 age 23 を「age」の数値が多い順にソートしたいんですが良い方法ありますか? あと「伊藤」と「中村」は「age」が一緒なんですけど その場合はどうなりますか?
458 :
nobodyさん :2010/11/05(金) 15:25:12 ID:FUZYrjbX
すいませんDBはsqliteです phpを使います
459 :
nobodyさん :2010/11/05(金) 15:42:36 ID:n8qMHMgb
【その他諸注意】 ・SQL・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
460 :
nobodyさん :2010/11/05(金) 15:43:17 ID:FUZYrjbX
さーせん 誘導どうも
>>460 DBスレは動きが少なくて死んでるようにもみえるけど質問がないだけで、質問があれば丁寧に答えてくれるよ
>>461 人任せにせず、自分で該当スレへ行って答えるように。
>>462 答えるために行くよう後押ししたんだよ
つか今時キリッとか流行んないよ
____ / \ /\ キリッ . / (ー) (ー)\ <「つか今時キリッとか流行んないよ」 / ⌒(__人__)⌒ \ | |r┬-| | \ `ー’´ / ノ \ /´ ヽ | l \ ヽ -一””””~~``’ー?、 -一”””’ー-、. ヽ ____(⌒)(⌒)⌒) ) (⌒_(⌒)⌒)⌒))
眠い
書き方きもい・・・ $inst = new Task(); $inst->Run(); $html[] = $instance->m_html; $data[] = $instance->m_data;
なにそれ
はいはい、我慢ですよ。ガマン。
$div = 1; isset($div["format"]) ← trueになるんだけどこんな動作してたっけ? var_dump($div);
ならん
「こっちにくるなー」が表示されるんだけど・・・ どうしてだろ? $div = "sss"; if (isset($div["format"])){ echo "こっちにくるなー"; }else{ echo $div; }
>左から順に評価を行い、セットされていない変数があった時点で処理を終了します。 まさか$divがあった時点でtrueなのか、それとも間抜けな勘違いしてる?
$div = 1; if (isset($div["format"])) { echo "こっちにくるなー"; }
$divがStringだとtrue $divが空文字だとfalse $divがnullだとfalse $divがintだとfalse $divがfloatだとfalse $divがbooleanだとfalse
謎は深まるばかりである
上のとちがうやん。 文字列で[]やったときは違う。 さらにその[]の中を文字列にしたときは、文字列を数値としてみる。 "0"なら0 "1"なら"1" "format"なら なんと 0だ。
478 :
472 :2010/11/05(金) 19:49:19 ID:???
意味わかんね・・・
つまりelseの場合に挙動がおかしのかな
>>474 それはfalseになる
だからな、 $div = "abc"; で $div[0] は "a" $div[1] は "b" $div["1"] は "b" $div["format"] は "a" なのだよ。
480 :
472 :2010/11/05(金) 19:53:47 ID:???
>>479 >$div["format"] は "a" なのだよ。
これがわからない。
どうして$div["format"]が$div[0]になってしまうの?。
俺は仕様のことは知らないんであれだけどよ、添字が文字列だったら数字にする処理で 失敗したら0にする処理になってんじゃねーの?
482 :
472 :2010/11/05(金) 19:57:04 ID:???
あ、PHPはkeyをハッシュ値にしてあるはずだからハッシュ値が一緒になるとかいう話なのかな
PHPマニュアル 文字列より、 文字列のオフセット指定で整数型以外の型は整数型に変換されるとのこと。 print (int)"format"; は 0だよ。
484 :
472 :2010/11/05(金) 20:03:36 ID:???
あらー、他のキーにしてもformatと同じ症状がでるわ。 もしかしてPHP関連のファイルが壊れたかな、それともスクリプトの構造によってそうなるバグかな。
>>484 1こ上をみろ文字列を数値にキャストすると0になるだろ
486 :
472 :2010/11/05(金) 20:08:41 ID:???
>>483 >print (int)"format"; は 0だよ。
色々と文字を入れてみたけど全部0になる・・・
みんな、PHPのバージョンいくつ?
なんでハッシュを数値にキャストするとかミラクルなことしてんの
流れ読まずに申し訳ないが、なんでそんなことやってんの?
>>486 それは挙動として正しい
"12abc"とかやってみ
ハッシュじゃないから。 文字列の[]は特殊だから、仕様だから。 気持ち悪いとかそういうのはともかく、こうなってるから。PHPのバージョンとか関係ないし。
ハッシュテーブル$div["format"]のキーformatが内部でintにキャストされてるというのがそもそもおかしい訳だが・・・
だから文字列の入った変数への[]のアクセス時は違うんだって。 ハッシュテーブルじゃない。 整数でのアクセスのみ。整数でなかったらむりやり整数にしますってこと。
493 :
472 :2010/11/05(金) 20:15:26 ID:???
理解したかも こういうことらしい $dat = "string"; if (isset($dat["key"]){ echo "datがstringなら表示できます"; }
$div = array(); にしとけってことか
理解してないような気がする・・・
次期PHPでは文字列への文字単位へのアクセスで[]使うの廃止してもらおう。 $dat{1}でアクセスすればいいんだし。
他言語のcharAtに相当する関数(メソッド)を用意すればいいのにな
498 :
472 :2010/11/05(金) 20:26:20 ID:???
みんな、ありがと
>>492 夕食の準備であたふたしてたけど今それを読んで理解した!
そういう仕様だったのね
全く気付かなかった・・・
{}使えって返されて終わるんだな。これはこれでいいが、[ ] は紛らわしくて良くないな。
String::charAt($div, 4); PHP風に実装するとこんな感じになるんだろうな
501 :
nobodyさん :2010/11/05(金) 20:48:25 ID:7RxO5csW
phpの導入段階で躓きました・・・ まさかこんなところで詰まるとは思わず、ショックです。 【OS名】Win7 64bit 【PHPのバージョン】php-5.2.14-Win32 【連携ソフトウェア】Apache2.2、MySQL Server 5.1 【質問内容】一通りApache、MySQL、phpをインストールしました。 今はこれらの連携を行えるように設定を行っている段階ですが、phpinfo関数を記述したphpファイルの表示がうまくいかず、 ソースがそのまま表示されてしまいます。 <?php phpinfo(); ?> 現時点で行った設定の内容は下記になります。抜けているものがあるのでしょうか?それともまさか、64bitOSではphpは使えないのでしょうか? いずれもpathは通っている事と、apacheのindex.htmlが見えるところは確認しています。 (1)アパッチのhttp.confに下記内容を追加 AddType application/x-httpd-php .php AddType application/x-httpd-php-source .phps LoadModule php5_module D:\application\php\php5apache2_2.dll PHPIniDir "D:\application\php" (2)アパッチのmime.typesに下記内容を追加 application/x-httpd-php php application/x-httpd-php-source phps (3)phpのインストールフォルダのphp.ini-recommendedをコピーし、リネームしてphp.infoを作成 (4)phpのインストールフォルダのphp5ts.dllをCドライブのWindows\System32配下にコピー
>>501 コマンドラインでphp -vは通るかね
Apacheの再起動が抜けてる
504 :
501 :2010/11/05(金) 20:56:38 ID:???
すみません、書き忘れましたがApache再起動は試しました。 ・・・はずなのに、書き込む前に一応もう一度と試してみたら出来た・・・ config変えた後に再起動したんだけど他のタイミングでも必要だったのかなぁ ご迷惑をおかけしました、ありがとうございます(´・ω・`) それにしてもphpの最新版DLするところに繋がらなくてもにょる
>>504 やっぱり繋がらないんですね。自分に何か落ち度があるからかも?と思いました
が、落ちているなら仕方ありません。明日にまわします。書き込みありがとうございました。
508 :
nobodyさん :2010/11/05(金) 21:03:42 ID:8uc9Kp/O
>>506 失礼しました。上げないのがローカルルールなのかな?と勘違いしていました。
>>504 さんの書き込みで納得しましたので、もう大丈夫です。ではでは。
つーか、PHPスレでそんなこと聞かれてもわかる奴がいるわけないし。
他のスレでもわからんだろ。
つーか、もうアクセスできるし。
えっちいのは嫌いです!!
513 :
501 :2010/11/05(金) 23:40:13 ID:7RxO5csW
>501です。度々申し訳ない・・・ mysqlのDBにアクセスしたいのですが、 <?php $link = mysql_connect('localhost', 'user', 'pass'); if (!$link) { die('接続失敗です。'.mysql_error()); } mysql_close($link); ?> 上記ソースのみを記述したphpファイルを開くとFireFoxだと真っ白、IEだと500エラーとなってしまいます。 MySQLの方は、ソースに記載したアカウントでコンソールから問題なくアクセス出来るのですが・・・ 何を疑うべきでしょうか? とりあえずprint "test";だけ、等の最低限のphpは普通に開けるのですが。
extension読み込んでないんじゃね
次の予想 文字化け!
>>513 そういうときはデバッグコードを埋め込んでどこで止まってるのか確認する
例:
<?php
print "1<br>";
$link = mysql_connect('localhost', 'user', 'pass');
print "2<br>";
if (!$link) {
print "3<br>";
die('接続失敗です。'.mysql_error());
}
print "4<br>";
mysql_close($link);
print "5<br>";
?>
print 1wwwwwwwwwww
えっちぃのは嫌いです。
519 :
501 :2010/11/06(土) 00:18:03 ID:pkdvtjmF
>514 ちょっと調べてみたら、php.iniの記述で「extension=php_mysql.dll」がコメントアウトされていたので有効にしてみました。 extension_dirはphpのインストールフォルダのextフォルダを指定してあります。件のphpファイルは相変わらず駄目でしたが・・・ >516 例のソースをそのまま実行してみると1<br>が表示されました。
あとはPATH確認
522 :
nobodyさん :2010/11/06(土) 08:09:20 ID:tYfj4P03
最近sqliteの質問が多いな
PEARとかテンプレートエンジンとかフレームワークの話題禁止にしたらもう詰まる部分なんてほとんどないからな 質問が来るのはapacheの設定とDB接続関連ばかり
だからってそれを許容しているとスレを分けている意味がないわけで
別に許容してないよ スレタイ通り、下らない質問を書き込むスレなんだからそれでいいじゃない?
527 :
nobodyさん :2010/11/06(土) 11:32:50 ID:6C6SIbFK
$AA["BBB"]=1;//array $BB="BBB";//string if($AA[$BB]==1)echo〜; これでも動くけど最適なのは $AA[゙゙.$BB.゙゙]の方がいいのかな?
$AA["BBB"]=1;//array どこがarrayなんだ?どうみてもintだが・・・
529 :
nobodyさん :2010/11/06(土) 11:49:07 ID:6C6SIbFK
$AA=array("BBB"=>1); $BB="BBB"; if($AA[$BB]==1)echo〜; これでも動くけど最適なのは $AA[゙゙.$BB.゙゙]の方がいいのかな?
$BBを別のところで使ってないなら わざわざ$AA[$BB]とするためだけに$BBを定義する必要もないし $BBを""でくくる必要もない
どこが最適なんだ
>>529 やっつけすぎる
次回からはちゃんとしたソース出すようにして
533 :
nobodyさん :2010/11/06(土) 13:56:59 ID:l3gP+ufG
$array[$i]['id'] = 1; こういう多次元配列があって、$iは0〜100まであるとします。 この場合、id=なにか という条件で該当する配列を抽出したい場合、 foreachなどで1つずつ調べる方法しかないのでしょうか?
そうです
535 :
nobodyさん :2010/11/06(土) 14:07:51 ID:pKLLoUf3
質問の意味がわかってないんだが $array[0]['id'] $array[1]['id'] 〜 $array[99]['id'] $array[100]['id'] という配列があって?id=なにか? んー 意味が・・・
$array[0]['id'] に入ってる数字でしょ
>>535 たとえば
$array[0]['id']=='ABC';
$array[1]['id']=='BCD';
みたいな感じだったとき
'BCD'を指定して1を導きだしたいってことだろう
言わせんな恥ずかしい
この場合に標準関数のarray_searchが使えますか?って質問じゃないの?
User Contributed Notes には色々載ってるが結局ループささせないといけないのは一緒
540 :
nobodyさん :2010/11/06(土) 14:24:29 ID:pKLLoUf3
やっと意味がわかったわ
$a->b->cという形の構造体を作りたいのですがどう書けば良いのでしょうか? class a{ var $b = ?; //どう書けば? }
543 :
542 :2010/11/06(土) 17:05:39 ID:???
1つのclassではだめなのかな。 複数のclassで繋げてもIDEで補完してくれないし構造体を作ってもあまり意味なさそう。
class foo{ var $c = 10; } class a{ var $b = null; function a() { $this->b = new foo(); } } $a = new a(); echo $a->b->c;
>>544 おぉ、ありがと。
コンストラスタを使う方法までは思いつきませんでした。
function内で構造体をくっ付けてみても候補にでなくて諦めかけていました。
IDだしてねーやつに答えんなって
構造体とかワケわかんねーこと言ってんじゃねーよ
IDとか細けぇこと言ってんじゃねーよ
ほらID出さないやつに答えるから荒れる
551 :
533 :2010/11/06(土) 18:15:46 ID:l3gP+ufG
>>534-539 みなさん、色々とありがとうございます。
配列と配列を結合する、MySQLでいうJOINのような事をしたかったのですが、
結合元をforeachして、更にその中で条件の一致する結合先をforeachして〜
とすると処理にだいぶ時間がかかるので、foreachを使わずに
>>537 さんがいうような結果を得られる方法を探していました。
ループさせないと無理という事で納得しました。
荒らしにレスは喜びますので自重してください。
お前みたく反応するほうが悪い
>>546 みたいにIDにこだわる奴がいるから荒れるんじゃねーの
実際
>>545 までは荒れてなかったわけだし
>>554 みたいにルールをないがしろにするやつがいるから荒れる
あほか
実際荒れてんじゃん ID出してりゃこんなことになんなかっただろ
ID出しにこだわる人は2chの糞運営に強制IDにするように言ってみれば?
ローカルルールを守らないことを擁護してるやつってなんなの?
質問したいならルールくらい守れって思う
見事な荒れっぷりだな
ID出さずに質問するやつもIDないやつに回答するやつもどっちも駄目だね
擁護してるやつはそのどっちかだろうなw
ローカルルールでいうと、質問者にはIDを表示させることになってるが、 回答者にはID無しの人に答えてはいけないというルールは無い。 だからID無しの人に回答する奴を責めるのは間違い。
PHPに構造体(struct)なんてないって答えればおしまいだったのにな
荒れるのを防ぐのはもう我慢することだけ。 荒らしは、自演までしてレスを誘う。 反応するのが一番いけないこと。 相手してくれないとこなら、飽きて来なくなるって。
おまいがそうやって反応してる張本人w
568 :
nobodyさん :2010/11/06(土) 20:20:48 ID:pkdvtjmF
下記のようなチェックボックスのあるフォームを作成しました。 <form action="test.php" method="POST"> <input type="checkbox" name="test" value="abc"> ABC <input type="checkbox" name="test" value="def"> DEF <input type="checkbox" name="test" value="ghi"> GHI </form> このように、同じ名前を持ったチェックボックスを使い、0件〜3件のデータを同時にPOSTメソッドで受け取り、処理したいのですが、 どのようにデータを取り出せば良いのでしょうか? for($i=0; $i<count($_POST["test"]); $i++){ $test = $_POST["test"][i]; $testを用いた処理 } これでいけるかと思ったら駄目でした・・・(3つともチェックを入れてこの処理を行った場合、$test="A"という結果になりました) 何か根本的に勘違いしているでしょうか?よろしくご教示下さい。お願いします。
570 :
568 :2010/11/06(土) 20:47:46 ID:???
>569 おお、出来ました!ありがとう御座いましたor2
IDだしてねーやつに答えんなって
janeだけど、IDはどうすれば出るの?
ID出して質問しろ
>>564 酷い屁理屈だな
こういう手合いが沸くのもすべてローカルルールを無視したあほが原因
IDのことをうるさく言う奴が出てきたせいで荒れた
IDさえだしてればIDをうるさくいうやつも出てこなかったよなw
ルール守らないのをかっこいいと勘違いしていいのは中学二年生までだよ!
最近の傾向だわ。
>>577-578 のような基地外に何を言っても無駄だと周りが諦めて発言しなくなる。
それを俺様の主張が正しかったと思い込んで更に病気が悪化する悪循環。
>>579 も早くルールを守れるようになるといいな(笑)
この手のスレで
>>1 を軽視するようになったら終わりだな
またID無しスレでも作ったら?w
なんでスレのルール守らん側がこんなに威張ってんだ?
スレのルールどころかスレタイだからなw
ID出してるかどうかってのは
>>1 をちゃんと読んでるかどうかってのを判断する目安でもある
ID出さないやつが荒らしに変貌することはよくあること
盗人猛々しいとはまさにこのことだな。 なに居直ってんだよw
わざわざスレタイ変えてまでスレ分けてやったのに 向こうは流行らなくて自然消滅して結局吸収されてるじゃないか 敗北したんだから郷に入っては郷に従え
歴史を知らない新参に歴史を教えてやるのはいいことだ
ついにスレタイがさらに進化する必要がでてきたようだな
【PHP】下らねぇ質問は
>>1 読んでID出して書き込みやがれ
さすがにくどいwwwww
頼むから
>>1 ぐらい嫁や・・・
>>589 お前らが2ちゃんをダメにした歴史か?w
>>592 そんなんでいちいち削除依頼とか頭おかしいんちゃう
きりがないし下らない喧嘩に運営サイド巻き込むとかマジ迷惑
>>593 お前の知ってる2chはずいぶん狭い2chですね
>>594 Webprogの削除人がどんな人かは知らんが
他板なら余裕で消されてるよ、ちゃんと見てこい
荒らされるのが嫌だ〜〜というのを装うって荒らしてるっていう
荒らし荒らしって連呼するのにろくなのはいない
結局は主観に基づいてそいつに不都合なやつが荒らしにされてしまう
youtubeみたいにコメント評価して一定数いったらアボンとかでない限り結局は主観でしかない
俺にとっては煽ってる
>>592 が荒らしに見えてならない
600 :
nobodyさん :2010/11/07(日) 01:40:13 ID:78y4dU52
はいはい、
>>1 に書かれたローカルルールを守ろうね。
守れない方々を非難するレスを書かないように、次のローカルルールは書き換えようね。
これで良いですか?
ローカルルールを守りましょう それだけの話
ルール念仏野郎が顔を真っ赤にして荒らすからID全て出したら良いんじゃねーの。 その方が透明あぼーんでゴミ掃除が出来る!
お前が荒らしてることに気づけ ルール守らないってならそもそも使わなければいいだけの話
>>605 どうしてID公開に賛同しないの?
自作自演で荒らしているお前のIDが公開されたら都合が悪いからかw
盗人猛々しいを地でいってるな ルール守れないくずがルール提唱して賛同しる!キリッとかあほか
もうIDなしスレ立てちゃえよ なんでここでそうしたがるんだ
>>606 だからね物事をぐだぐだ言う前に過去スレみてこいっていってんだよ
696 名前:鷲鴨 ★ 投稿日:2008/09/07(日) 19:30:11 ID:???0
>>645 IDであらしはなくなりません。
運営サイドがこういう認識なの
お前もPHPやってんならこの言葉の意味がわかるだろ?
わかったかね?
わからないから書き込んだんだろ IDが固定とか思ってるんじゃねえのpgr
>>606 は馬鹿な提案をすることでうやむやにしたいだけだろ
マジレスするだけ無駄
管理人が他の管理人に注意してる感じだろうが正確にはこう言ってる
696 名前:鷲鴨 ★[] 投稿日:2008/09/07(日) 19:30:11 ID:???0
>>645 IDであらしはなくなりません。
あらし云々の理由でIDさわるの禁止
お、来た来たw この反応も精神を病んでいる特長の1つだ。 透明あぼーん用と書いてあるのにID公開で荒らしはいなくならないとか、 的外れすぎる。
自作自演で荒らしているお前のIDが公開されたら都合が悪いからかw 自作自演で荒らしているお前のIDが公開されたら都合が悪いからかw 自作自演で荒らしているお前のIDが公開されたら都合が悪いからかw 自作自演で荒らしているお前のIDが公開されたら都合が悪いからかw 物事は一貫して発言しましょうね
こいつに道理を理解させるのは不可能だわ 放置しかないと思う
>>615 スレの主旨も守れないような幼稚な人間に一貫性を求めるのも酷だろ
>>615 何度も同じ発言を貼り付けるその行動も病んでいる人に多い
あとだらだら引用するとかね
619 :
nobodyさん :2010/11/07(日) 09:02:13 ID:uVTZRllq
$a = Array('hoge1','hoge2'); $a = '配列を文字へ'; 最初配列を代入していた変数aに、stringを代入というか上書きというか みたいなことはできるっぽいのですが、 あまり多用しない方がいい、とかありますでしょうか? できるにはできる、なのか、phpの変数はそういうもの なのか理解が曖昧なのでおしえてください よろしくお願いします。
実際にメモリダンプしてみないとわからないかもね それか大量に配列用意してテストしてみるとかすれば 数値見ただけでわかるかもしれない ただ型とか含めて意識しないように作られてるから 「そういうもの」と捉えていいんじゃないかと思う 一応unsetっていう関数があるから心配ならそれ使えばよろしいかと
621 :
nobodyさん :2010/11/07(日) 09:44:28 ID:uVTZRllq
>>620 なるほどすっきりしました
ありがとうございました!
IDだしてねーやつに答えんなって
そこまでしてIDにこだわる意味がわかんね。 別にどうだっていいじゃん。
>>623 ならID無しでも良いスレを建てればいいだろ
>>623 みたいなやつって脳味噌が機能してないのかな
>>623 みたいに目先の罠にやすやすとかかる人ってなんとなく貧乏な気がする
ID出してない質問と回答なんてなかったのに
>>622 の一言であたかもそれがあったと思いこむ単純さ
すぐ騙されそうだよね
ID出してってのはルールじゃなくて単なる目安だろ? 煩いことを言う奴多すぎ。
629 :
nobodyさん :2010/11/07(日) 16:06:38 ID:75gzHf0C
>>628 IDなしで質問しる!ってスレ作れよwwwあほだなwww
>>629 直前の投稿と比較して同一であれば蹴るようにすりゃよい
>>630 何でそんなめんどくさいことしなくちゃならないんだ?
俺が質問するわけじゃないのに。
俺は単に
>>1 にはそう書いてあったとしても、ID出さずに質問する奴がいても
温かい目で見守れと言ってるだけだ。
いちいち「
>>1 読め」とか「ID出さない奴に答えるな」とか言う奴のほうが
よほどウザいしスレ汚しだと思う。
おれはIDもしくはトリップでもいいから表示するように言うのは、 成りすましが割り込んで勝手に答えて混乱させるのを防止するためだと思ってた だからルール守らないID出してない質問があれば名前欄に番号書いて「解決しました」ってレスして追い出してたりしてたんだと思ってたけど
>>633 温かい目で見守れってスレ作りゃいいじゃん
ここはルール守らない屑を屑として扱いますってだけだし
>>633 お前が質問するわけじゃねーなら質問するさいのルールにごちゃごちゃ言うんじゃねえよ女々しい糞め
ID出してないやつに答えてやれよって思うならID出してない糞に答えてあげるスレ作って答えてやりゃいいだろ糞め
639 :
638 :2010/11/07(日) 16:22:02 ID:???
>>638 みたいなよく読まないで擁護するクズも地味に鬱陶しいな
641 :
633 :2010/11/07(日) 16:27:13 ID:???
自己解決しました。
>>638 そういうこと。いちいち相手にするなと言ってる。
ID出せに反発する理由がわからんな なんか不都合あるっけ?
精神病の奴は未だにIDを出せと粘着してんのかw 質問&回答よりも、ID出せと荒らしている奴の発言がどれだけ多い事か。
この流れは、もめてるんじゃなくて、荒らしが自演してるだけですから、勘違いしないように。 NGにはできないけど、いっこずつあぼーんすればいいだけです。
ID出すのに反発してるあほは精神病っていう罵倒一辺倒なんだな まったく語彙のない屑っぷり 酷い哀れさ
>>644 そういうお前さんはどれか回答したのかい?
俺はひとつID出してる子の質問に回答したけどさ
>>646 だからお前は精神病だと言われるんだ。
ID出すなとは誰も言ってないだろ、ID出さなくても答える奴がいるだけの話なのに、
それをお前が粘着して荒らすから無駄にスレが流れるんだ。
>>648 それで、お前が回答したとどうやって立証するんだ?。
答えたとか答えてないとかくだらないやりとりでまたスレを流す気か。
荒らしだからわざとやってんのか!
俺はID出しても出して無くても懇切丁寧に回答してるし 今後もそうするつもり。
>>649 真剣に議論してやってんのに荒らしとは心外だな
>>649 この流れが無駄ならお前のレスも無駄だと自覚しろ。
ID出さなくていいスレ作って移住すればいいのになんでここでやりたがるんだろうな
>>653 ID出したくない派に回答できるひとがいないから廃れて終わる
だからなんでわざわざID出さなくていいスレなんて作らなくちゃいけないのかわからん。 つーか、このスレのID出せルール自体が無意味で無駄だと思ってる。
荒らしも結構しつこいな。
全部お前の自演なんじゃねーの?ww
そらID全公開になると困るわけだw
とりあえず
>>655 はID出して持論を繰り広げてくれまいか
あぼんしたい
>>657 お前こそ何をわかってんの?
ID出せといったところで出さない奴もいるし規制しようがないから
そんな実効性の無いルールは無駄だと言ってんの。
ID出してないやつに答えるとこういう手合いがつけあがる こいつらには回答する能力ないんだから放置すりゃ自滅するだろ
現在2chでいちばんぐだぐだなスレに認定されました。
>>666 いままでID出してない奴に回答された事例がどんだけあると思ってんの?
>>650 ↑ID出さないやつ専用
こいつが回答してくれるらしいぞワラ
ID出せってのにどうしてここまで反発するのかな 別に質問でID出して回答で出さなくても同一人物ってばれないしなにも都合悪くないよね?
ID出さない質問は成りすましされても文句言わせない これでいいでしょ
673 :
670 :2010/11/07(日) 17:00:56 ID:???
自己解決しました><
>>671 お前、読解能力あんの?
誰もID出せに反発なんてしてねぇだろうが。
ID出さない奴にいちいち目くじら立てるなって言ってんの。
それにIDを出せと質問者に突っ込むならわかるが、この基地外は回答者に答えるなと突っ込むからね。
676 :
674 :2010/11/07(日) 17:02:57 ID:???
自己解決しました^^
>>674 出せに反発してる人に書いてるのになんで反発してないお前が反論するの?
ほら荒れた
やっぱり
>>1 には従うべきだな
従っていればこんなことにはならなかった!
>>675 そのとおり。
基本的には
>>672 の考えが妥当だと思う。
実効性がないのにID出し義務化みたいなルールにするからID出せ厨が湧く。
「ID出し推奨」くらいが無難。
IDなしスレ作ればいいのになんでここに固執してんの
盗人猛々しいww
荒らしに対して荒らし専用スレ作れと言ってるようなもん
盗と猛って字似てなくね?
>>680 別に荒れてないと思います。
>>1 のルールの妥当性について真剣に議論しているだけです。
これを荒れてると評価する人こそこのスレには不要です。
ID出すなスレ作っといたからそっち使ってね
おい勢い1000超えってどういうことだよ!
>>688 ID出すな派は荒らしってことか?それは言い過ぎじゃね?
信念あって出さなくていいって言ってるんだから荒らしではないと思うぞ
>>650 ほらさっそくIDなしの質問が来てるぞ
懇切丁寧に答えてきてやれよ
あっちのスレのはやり具合でIDなくても答えるってのが詭弁だったかどうか証明されるな
まとめると他の回答者に自分の理想を押し付けて回答するなと騒いでいる基地外が スレを一人で荒らしまくっているだけというw。 自分で荒らしておいてID出さないからスレが荒れると言い出すわ、スレを勝手に立てて 自作自演で質問するわ、病んでいるとしか思えん。
おまいらPHPネタよりこういう議論の方が好きだろw 普段と勢いが全然違うなwww つーか、録画してたアニメ見てる最中なんだから邪魔すんなよ
こういうやつが沸くからID出してない質問は無視した方がいいな
病んでる、精神病、基地外と貶し方が一辺倒だから同じやつが騒いでるってわかるなw まじであほなんだろ
ルール守れ、守らなくてもいいなんて議論じゃねえだろw
なんか、あっちのスレ評判いいみたいだぞ。どうすんだおまいら。
>>701 ルール自体が無意味かつ無駄だという議論ですな。
>>702 住みわけたらいいだろ
どっちも不快な思いをせずに済むわけだろ?
逆に回答者がID出すことにしようぜ
>>703 ルールのない方のスレどうぞ
住み心地よさそうだよ
ID強制にっていうルールにしたのも議論なくだったと思うが・・・ ID若しくはトリをつけるっていうルールで さらにその前は特に明記されてなかったと思うが・・・
>>704 嫌だね。俺はこっちのスレのルールを変えることに生きがいを感じてるから
ほらあっちに質問者沸いてんぞ 懇切丁寧に回答してきてやれよ
過疎板だし また淘汰されるのは目に見えているが
>>705 ていうか全員ID出し必須にすればいいんじゃね?
ID出さない奴や質問者だろうが回答者だろうがスルーっつうことで。
まだやってたんか ドラえもんのAA貼って終わるレベルの話だろw
>>711 そう突っ込むとIDを出そうが出すまいが荒らしは居なくならないとかわけのわからない主張をするんだぜ。
IDを出せと散々荒らしている癖にIDを出されると自作自演できなくなるから嫌なんだとさw
714 :
nobodyさん :2010/11/07(日) 17:37:43 ID:sodv6nLQ
>>713 みたいに実際に反論された内容ではないものを論拠に語るやからって気持ち悪いわ
向こうほのぼのやってんぞ IDイラネ派には理想郷だろ 堅苦しいここを捨ててあっちに旅立とうぜ
717 :
nobodyさん :2010/11/07(日) 17:41:09 ID:sodv6nLQ
>>715 なんで
>>1 のルールも守れないやつが提案したルールに従わなきゃなんねえんだよ
あほなの?
実際
>>715 自身ID出すのに躊躇してる始末だからなw
1のルールなんてもんは
てきとーに書き換えられてきたルールなんだから
そんな堅苦しいこと言うなよ
>>707 のもそうだしこのスレタイだって
元からID出してとか入ってなかったしな
そのとおり とか 正解 とか 自分にアンカーつけて 虚しくないのかな
>>721 それを言ったら、ID出さない奴に回答するな、ってのも
>>1 には無いよな
>>723 それを言ったら、ID出してないやつに回答すんなよって言っちゃいけないって
>>1 にないよな
>>727 それを言ったら、ID出さずに質問するなよって言っちゃいけないって
>>1 にないよな
エクリプスのことを聞いてる子が放置されてんぞ 誰か回答してきてやれよ オレは使ってないから答えられないけど
>>727 じゃぁ、ID出さない奴に回答するのは自由ということでOK?
精神病の典型だけど極端なんだわ。 IDを出せを否定されるとIDを一切出したらだめだと勝手に思い込んで周りが何を言おうが聞いていない。 その象徴が「【PHP】下らねぇ質問はID出さずに書き込みやがれ 1」スレになるわけ。 かなり重症だから病院に行った方がよいと思うんだけど どうせ聞てないからな。
聞てないからな まで読んだ どうやって変換したらこうなるんだ? IDアンチは精神病に執着しすぎで気持ち悪いな
幼い頃にIDに虐められた
【OS名】MS-DOS 5.5/V 【PHPのバージョン】3.1 【連携ソフトウェア】Netscape Navigator 3.0 Gold 【質問内容】じゃぁ、ID出さない奴に回答するのは自由ということでOK?
>>734 ぶんてないからな
って読むんだよ
ぶんてないときに使う
聞いてないって打ってからいだけ消すとかなんか精神状態が不安定ぽww
「聞てない」の送り仮名は「てない」で合ってるわけだが。 精神病やっぱり重症だから病院行ったら?
>>739 >「聞てない」の送り仮名は「てない」で合ってるわけだが。
じゃあ
>周りが何を言おうが聞いていない。
これ「い」が多いんじゃね?
正しくは周りが何を言おうが聞ていない。になるはずだよな?
からかわれていることを聞ていない
今度から事前に通告してからからかうことに致します。
やたら精神病精神病って言うなと思ったら、 どうやら普段自分が言われてたってオチみたいだな
PHPでのメール送信に関する質問です。
メールタイトルとメール本文がともにEUC-JPで書かれています。
これを共にmb_convert_encodingでSJISに変換して、
mail関数を使いメール送信したいのですが、
メールタイトルだけが文字化けしてうまく表示できません。
$title = mb_convert_encoding($title, "SJIS", "EUC-JP");
$content = mb_convert_encoding($content, "SJIS", "EUC-JP");
$to = "
[email protected] ";
mail($to, $title, $content)
メール本文も文字化けせずに表示できる方法を、
ご存知の方はどうぞご教授くださいませ。
おいおい、これだけ言ってんのに
>>1 読まないで質問する奴が来たぞ。
みんな無視しろよーww
>>746 なんか良く分からんが、メールはSJISで出すもんじゃないぞ。
Subjectもマルチバイトをそのまま渡してもイカン。
悪いことは言わないから、mb_send_mail 使っとき。
つーかなんで使わんのじゃゴルァ!
751 :
nobodyさん :2010/11/07(日) 18:33:06 ID:sodv6nLQ
質問 >「聞てない」の送り仮名は「てない」で合ってるわけだが。 これマジなの?
753 :
nobodyさん :2010/11/07(日) 18:36:08 ID:sodv6nLQ
脱字を用いてからかうとは新しいな さすがは持ちだな
あっち繁盛してんじゃん 懇切くん行ってやりなよ
・過去にも散々ID出せ出さなくてもいいだろというやりとりがあったがそのうち自然消滅して沙汰にはならなかった ・しかし73スレ目でついにもうヤダこの流れとなってスレタイを変更して分裂することが決定した ・ルールが一緒なため「下らねぇ質問はここに書き込みやがれ」の流れを組む 「下らねぇ質問はID出して書き込みやがれ」と「ID出さんでも質問OKなスレ」に分裂 ・ほどなくしてID出さないほうは衰退しスレ立て1年でパート2で自然消滅 ・新スレがたつこともなくID出すほうと自然合併したのが去年の今頃 総論:敗北者は黙っていろ
教えたり教えられたりする不特定多数が利用する掲示板で勝っただの負けただの小さい話だと思わんのかね
ルールを守らなくてもいいとか言ってる馬鹿が少数派なのは
>>756 で立証済み
>>757 敗北者って言い方が気に入らないなら支持されてない方とでも言い換えてもいいよ
いつもあらすのは少数派だからな
そんなに気に入らんのならあっちのスレで大好きな懇切丁寧をやればいいのに
>>753 質問用テンプレを使用しない質問には回答いたしません。
763 :
nobodyさん :2010/11/07(日) 19:17:13 ID:quMPljDo
AtomAPI経由でライブドアブログに投稿するとバケラッタします。 UTF-8にエンコードしてあるんですがどうしてでしょうか?
もう荒らし方が見境ないな
>>763 エンコードしないときの挙動はためした?
何か余計なことしてるんじゃない
荒らしてる奴なんかいないと思うけど?
ほんと見境ないな
見境ないうえに盗人猛々しい
自覚がないって怖いよね そろそろ通報したほうがいいか
773 :
763 :2010/11/07(日) 19:41:35 ID:quMPljDo
>>764 のスレの同じ書き込みは自分ではありません。
何がしたいのか分かりませんが別の人です。
わかってるから大丈夫 俺のレスもコピペされてたからな
are?
次スレのスレタイは 【PHP】下らねぇ質問はID出して書き込みやがれ 28 これね
777 :
nobodyさん :2010/11/08(月) 01:15:22 ID:BUxEOjTw
今作っているサイトで、何らかのエラーが発生した時にその内容を エラーログに出力したいと思っています。 一般的なapacheのerror_logに出力されるPHPのwarning,error報告(あるべき引数がないとか)ではなくて たとえばトークンがない時などに不正アクセスとして「強制ログアウト+エラーページ転送」して 「何年何時何分にトークンエラー、リファラは****」などを書き込みたいわけです。 そういうことはできるんでしょうか? どうやったら良いですか? また、エラーログもapacheのエラーログに限らず任意のログファイルを指定したいです… よろしくお願いします
779 :
nobodyさん :2010/11/08(月) 01:26:19 ID:BUxEOjTw
>>778 おー、確かに管理者あてにメールで報告する必要ありますね
すっかり忘れてた、ありがとうございます
780 :
nobodyさん :2010/11/08(月) 06:38:58 ID:NCmcYlgE
よく配布されてるスクリプトみると function_existsとか使われてますがこれは冗長ですよね? なんかのプラグインとかで functionが存在しないとexit(このスクリプト自体を使わない)というならわかるのですが なんか関数を定義してるのでなんでこんなことしてるのか不思議です
>>780 関数がなかったときに代替となる関数を定義したりしてるんじゃないの?
具体的にはどのスクリプトの何て関数?
>>780 PHPのバージョンによって入っていない関数を使っていて、
なかったら同じ動作する関数をいれるとか。
あれ、IDを出さない質問に答えるのがスレの主旨に反するとか騒いでいた奴が 「【PHP】下らねぇ質問はID出さずに書き込みやがれ 1」を立てたのに どうして向こうのスレの主旨に反して仮想敵と戦っているのだろう。
785 :
780 :2010/11/08(月) 08:29:19 ID:NCmcYlgE
指摘されるまでPHPの関数とは気づきませんでした
関数名をググってみたところ
>>781-782 さんのおっしゃる通りでした
どうもありがとうございました
>>784 スルーできないと荒らしに加担してることになるぜ
みんなもスルーな
788 :
nobodyさん :2010/11/08(月) 11:23:29 ID:iHWn8jqU
PHPをchrootによるjail環境にしようと思っています まずApacheをjail環境にし、次にPHPもしようと思います ただ、この場合DBとの連携をするためにはMySQLもまたjail環境にしなければいけないのでしょうか? また、皆さんはLAMP環境においてApache、PHPなどをjail環境にて構築していますか?
>>788 そうしなくてはいけないかどうかは、貴方がきめることです。
しなければならないというわけではないが DBもjail環境にしたほうがいいんじゃないの >また、皆さんはLAMP環境においてApache、PHPなどをjail環境にて構築していますか? しょせんテスト環境だからそんな力入れないよ レン鯖屋やるわけじゃないんだし
>>788 そうしなくてはいけないかどうかは、貴様がきめることです。
>>788 ファイルシステム関係ない
MySQLへはTCPで繋がってれば別マシンでもいい
>>上 会社で運用するなら普通jail環境にはすると思うけどね ファイアウォールなんかで終わりではないし 基本的に一般の会社ってセキュリティのレベル低い 俺はクラッカーとかじゃないけど、すぐにあぁぁって気付いてしまうし 地方のサイトを作ってる会社とか酷すぎて見てられない
794 :
nobodyさん :2010/11/08(月) 23:55:06 ID:4DWaBd1y
複数のあるHPの画像を取得するプログラムを作成しています。 キャッシュされたURLから取得するので最新ではなくすでに削除されている可能性があります。 削除されている場合404やトップページ等のHTMLを取得してしまいます。 工程として、URLから拡張子と、file_get_contentsでソースを取得して、 取得した拡張子のファイルを作成し、そのソースを書き込む感じになります。 たまにHTMLを取得してしまうのでフェイクの画像になってしまうことがあります。 ソースには必ずしもhtmlや404という文字列が入ってるわけではなく、 またそれらの文字が画像バイナリにも含まれていないとは限らず判別方法に困っています。 取得したソースが画像バイナリかただのプレーンテキストかを判別する方法はありますでしょうか?
get_headers
ヘッダも嘘返すとこ多いし不可能じゃね
エロ画像でも落としてんの?
画像として正常に読み込めたら画像ってのはどうだ
そもそも200番でエラー返したりリダイレクトする鯖とかあんのか? 10年前は稀にあったが最近じゃみたことねぇ
404が画像になってたりしてw
801 :
794 :2010/11/09(火) 01:04:45 ID:2HKVFAPp
レスありがとうございます。
訂正でfile_get_contentsを使ってたのは、
ソースからキャッシュされたURLを取得するためでした。
実際の画像はcURLでとってきています。
curl_setoptでCURLOPT_FOLLOW_LOCATIONしています。
>>798 さんの発言が少し気になりますが、やっぱ無理そうなんですかね?
PHP6にis_binaryとかいう関数があるようですがこれはどうなんでしょう?
PHP6使える環境ではないですがPHP6なら可能なんですかね。
803 :
801 :2010/11/09(火) 06:18:41 ID:2HKVFAPp
>>802 寝ててレスおくれてすみません。
一度保存するならばこれで簡単にできそうですね。
ファイルに保存してない状態で(変数に入ってる状態で)この関数を使うようなことはできないでしょうか?
イメージ的には、
$a = file_get_contents("hoge.jpg");
print_r(getimagesize($a));
が動いてほしいのですが。
PHPでローカルファイルを指定する必要がある関数で、
代わりにそのファイルのソースを入れることで同様の処理が可能になるような機能はあったりしませんか?
ファイルを指定して内部でやってることを再現できればできるとおもうのですが、
PHPになんかそういうことをできる機能や関数はないでしょうか?
メモリ上に一時的なファイルを作成してそれを読み込むとか・・・
>>803 >ローカルファイルへの参照、あるいは (設定で許可されているなら)
>ストリームを用いたリモートファイルへの参照を指定できます。
805 :
801 :2010/11/09(火) 06:32:05 ID:2HKVFAPp
>>804 その言葉をみてなんとなくそんなことができるのかなぁと思ったのですが、
やっぱその文言はそういうことだったのですか?
ただ申し訳ないですが全然意味がわかりません・・・
出来れば具体的にどうすればいいか教えていただけると嬉しいです。
807 :
801 :2010/11/09(火) 06:47:43 ID:2HKVFAPp
>>806 すみません。ようやく理解しました。
cURLでサーバから画像ソースを取得する工程で、その処理を入れて調べればいいわけですね。
2重リクエストにならないか調査後に試してみたいと思います。
一応非効率ですが一度ファイルを出力してしまえば可能なことはわかったのでこれで質問終了します。
どうもありがとうございました。
ソース取得→ファイル作成書き込み→ファイルを指定する関数でそのファイルを指定→おかしかったらファイル削除 だと余計なIOが発生するから ソース取得→メモリに一時的にファイルとして保存してそれを使ってファイルを指定する関数が使えないか? ということかと思われ 取得先からソースを取得する時点で取得先ファイルに対してチェックすればいいということで納得したのかと
810 :
nobodyさん :2010/11/09(火) 16:43:36 ID:bQQ5pU57
配列の操作について質問します array( [0]=>'a', [1]=>'b', [5]=>'c' ) という配列を array( [0]=>'a', [1]=>'b', [2]=>'c' ) に一発で変換する関数はないでしょうか?
>>810 array_values
一度はマニュアルを読んだほうが良いよ
>>811 このスレの存在意義を否定するような発言は容認できません。
どちらかというと、どうして並び替えようと思ったのかが気になる foreach ($array as $key=>$value){ }
array_merge($val)とかね
>>803 できるお
http://jp2.php.net/manual/ja/stream.streamwrapper.example-1.php この例)で出ているクラスを
VariableStream.inc として保存しパスが通ってる所に保存
無意味な処理だが以下を例にしまつ
----------------------------------------------
//データを取得
$img_data = file_get_contents("hoge.jpg");
require_once("VariableStream.inc");
stream_wrapper_register("var", "VariableStream") or die("Failed to register protocol");
list($width, $height) = getimagesize("var://img_data");
こんな感じのことかな????
今回の要件では使うのは無駄っぽいけど、参考まで
getimagesizeって、内部でどうやって処理してるのかなぁ。 imagecreatefromstring(file_get_contents($src)) と imagesx imagesy じゃ無駄があるんだろうか。
>>811-815 はー、すみません、こんな関数があったとは…
助かりました、マニュアルもっと読むようにします
>>807 見てないかもしれないけど
ファイルを作成せず使う汎用的な方法としてデータスキームに変換する方法がある
$data_scheme = "data:image/jpeg;base64,". base64_encode(バイナリ);
getimagesize($data_scheme);
PHP以外でもデータスキームはIE以外のメジャーなブラウザで利用できるから
知っておくと役に立つかもしれない
>>816 これはすごい、ちょっと感動した
これCで実装して標準クラスにするべきだわ
DBで読み書きする例も面白いね
世界には変態が沢山いるからな
824 :
nobodyさん :2010/11/10(水) 10:31:56 ID:dwXH9brC
キーワードが空の時はエラーチェックをしてそこで終了したいのですが if(empty($key)){ echo "空欄です"; exit(); } とやると Fatal error: Call to undefined function exit() ってエラーが出るんですが undefinedってどういうことっすかね? die()でも出ます
関数が定義されてませんって意味 exitとdieは正確には関数ではなく言語構造だからそんなエラーは通常出ないはず
826 :
nobodyさん :2010/11/10(水) 10:51:06 ID:dwXH9brC
それは、つまり 何がどうなってて、どうすればいいんでしょうか?
俺も昔出たことあったな何でかは忘れたけど とりあえず環境も書いたほうが良いよ
とりあえず、ここへ書いたときはexitの前に全角空白が入っているが
全角スペースじゃねーの? 文字コードと設定によってはundefinedでるかもな
830 :
nobodyさん :2010/11/10(水) 10:54:35 ID:dwXH9brC
PHP 5.2.14 です 具体的にはさくらインターネットです
<?php $a=1; if($a){ echo 1; exit(); } echo 2; ↑これコピペして動かしてみ
832 :
nobodyさん :2010/11/10(水) 10:58:57 ID:dwXH9brC
すいません全角スペース入ってました お騒がせしました
なんのエディタ使ってるかわからんけど 全角スペースが目視できる設定にしといたが間違いないべ
834 :
nobodyさん :2010/11/10(水) 11:10:06 ID:dwXH9brC
それもあわててしました。 本当にご迷惑おかけしました 一晩悩んでました すぐ気がつくなんて感謝です
初心者はもうインデント禁止だな
勘弁してくれ
うわぁ・・・
インデントにタブ禁止してる規約あるけどあれなんでなんだろうな
ID出して書き込みやがれ
それだけの理由で禁止にするのはあんまりだわ バイト数だって半角スペース1つ分で少なくていいのにな
規約ってのは統一するためだろ どっちも一長一短あるしな 「タブ幅はエディタ設定によって違う」のなら、好きな幅に変えれて便利じゃない?って話にもなるし
エディタ設定云々はタブ幅指定でOKだろ
C言語世代はやけに毛嫌いするよねTAB
スペース派も4文字分だとか2文字分だとか、いやいや3文字分だとかウゼェしな
タブインデントといいつつスペースがまざっている事が多い タブインデントとスペースインデントがまざってしまうと (タブ幅が変わると)インデント崩れる だからタブは禁止というところもあるよ
スペースインデント禁止でも良いわけだ ゴチャ混ぜが最悪なだけでしょ
この際改行も禁止すべきだ。
PHPソースはともかくHTMLソースでやたらインデントしてるのって かえって見にくい。
ほとんど改行してないHTMLも見かけるけどね、googleとか
除去してるだけでしょ
HTMLから改行とインデントなくすだけでも リクエスト数があるサイトだと 結構転送量減らせるからそれは普通
>>852 わざと・・・って、わざとでないとしたら偶然?
有りでも無しでもわざとに決まっているではないか。
>>854 ソースを可読性のために改行することをしらない人もちょっと前のスレでいたし、
そういう意味で「(改行をしらないのではなくて)わざと改行していない」って言ってるんじゃないかな
たぶん
>>854 可読性をあげるために、インデント・改行は普通はするだろ?
でも特に何も考えず(何も意図せず)改行入れる/入れない人もいるわけだ。
「わざと」というのは、転送量などのことを考慮して、意図的になしにしているという意味で書いた
了解しました。
859 :
nobodyさん :2010/11/10(水) 18:45:44 ID:Lg2WsF+P
PHP 5.2.14です。 "Thu Sep 16 03:16:09 +0000 2010"という文字列の日付書式があるのですが、これをtime()で返すような秒に変換するにはどうしたらよいのでしょうか。 逆ならdate("r")でいいんですが。
strtotime
どうも
やってみて愕然とするがいいさ
間違えました・・・すみません
>>861 どうもじゃなくてありがとうございますだろ
ったく最近のガキはどういう教育受けてんだ・・・
>>864 教育を受けさせてるのは昔のおっさんだろ
昔のおっさんは今は爺さんじゃないか?
やはり礼儀もなってなければ知能も低い
スレまちがえてますよ
mysqlで構築したDBからデータを取得し、ページ上にechoで表示させようと考えています。 しかし、同じようにDBに接続し、クエリを発行しているのに取得結果が異なります。 対象のデータはchar型の文字列で、一方のページでは「TEST」となるのに対し、もう一方のページでは「"テスト"」となってしまいます。 接続には後述のような記述を用いていますが、SELECT文のみ異なります。 前者はSELECT * FROM test WHERE以下略 後者はSELECT aaa,bbb FROM test WHERE以下略 何故このような違いが出るのでしょうか?自分としてはクォーテーションが含まれない方が好ましいのですが、どうすれば良いでしょうか? $db = mysql_connect("localhost", "アカウント", "パスワード") or die("接続できませんでした\n"); mysql_query("SET NAMES utf8") or die("SET NAMES utf8 の設定ができません"); mysql_select_db("データベース名", $db) or die("該当するデータベースがないようです\n"); $query = "SELECT カラム FROM テーブル名 WHERE no = '$no'"; $result = mysql_query($query, $db); $row = mysql_fetch_row($result);
876 :
874 :2010/11/10(水) 23:18:46 ID:NEmk/IZ1
あぁ、申し訳ないです 改めて、よろしくお願いします。
877 :
nobodyさん :2010/11/10(水) 23:23:48 ID:kZSlAmYQ
$dbh = new PDO('sqlite:db.sqlite', null, null); $dbh->beginTransaction(); $sth = $dbh->prepare('INSERT idx (id, title, since, mtime) ' . 'VALUES (:id, :title, :since, :mtime);'); $sth->bindParam(';id', REQUEST_TIME, PDO::PARAM_INT); $sth->bindParam(':title', $title, PDO::PARAM_STR); $sth->bindParam(':since', $since, PDO::PARAM_INT); $sth->bindParam(':mtime', $time, PDO::PARAM_INT); $sth->execute(); PDOのbind*関数ってエスケープは不要だったっけ
不要と教えてあげただろ(キリッ
879 :
nobodyさん :2010/11/10(水) 23:28:31 ID:kZSlAmYQ
あ、ありがとう
>>874 TESTと"テスト"ってのはクオテーションが含まれない方がいいって話から察するに
TESTと"TEST"、あるいはテストと"テスト"のミス?
881 :
874 :2010/11/10(水) 23:31:16 ID:NEmk/IZ1
>880 あぁぁすみません、おっしゃるとおりです。 同じテーブルの同じデータを抽出しているのに、ダブルクォーテーションがつく場合とつかない場合があるという事です。
883 :
nobodyさん :2010/11/11(木) 00:57:19 ID:CAyGAnz/
PHPの処理のタイミングを教えてください。 phpファイルの先頭を以下のように記述しています。 (ADMIN以外がkanri.phpへアクセスしたらlogin.htmlへ飛ばす) ----- kanri.php --- <?php if($_SESSION["USER"] != "ADMIN"){ $url = "./login.html"; header("Location: $url"); exit(); } ?> <html><body> アドミン情報 </body></html> ------------------ この様な記述ですが、ADMIN以外がkanri.phpへアクセスしたときに kanri.phpの下部へ書かれているアドミン情報が見られる心配はないでしょうか? 大丈夫でしょうか?
884 :
883 :2010/11/11(木) 01:44:48 ID:CAyGAnz/
もう1つ質問です。883に関連していますが、 header でジャンプした場合、セッションが引き継がれないので urlの後ろにセッション変数を追加しないといけないと知りました。 具体的には header("Location: $url"."?".session_name()."=".session_id()); と書きますが、その場合アドレスバーにセッション変数が表示され非常にみっともないです。 header 関数のように、他のページ(htmlやphpファイル)へジャンプし 且つセッションを引き継ぐにはどうすればいいのでしょうか。
>>883 「心配はないでしょうか」と問われれば「心配です」としか答えようが無いね。
どのレベルでのセキュリティを心配しているのか不明なので答えようが無い。
ADMINアカウントを乗っ取れば見られてしまうなど
>>884 マニュアルのNotesによれば、
----------
A call to session_write_close() before the statement
<?php
header("Location: URL");
exit();
?>
is recommended if you want to be sure the session is updated before proceeding to the redirection.
----------
だそうですが、試してはいません。
ちなみにまさかと思いますが、session_startは実施しているのでしょうね?
session.auto_startでもいいですが。
887 :
881 :2010/11/11(木) 06:25:27 ID:???
>882 どうもです。 そちらでも質問してみることにしました
>>883 セッションの仕組みを理解することをお勧めする
//--------------------------------------------
// header でジャンプした場合、セッションが引き継がれないので
// urlの後ろにセッション変数を追加しないといけないと知りました。
//--------------------------------------------
どこで知ったのか知らんがこれ正しくは
//セッションが引き継がれない場合もある
じゃないかの?
それでも正しくないか・・・
これは別に「header でジャンプした場合」に限らんからなw
セッションIDの引渡しにブラウザ側もしくはPHP側の設定で
クッキーが使えない場合、残された手段がurlにくっつけてgetで引き回す方法しか残ってないだけ
かな?
890 :
nobodyさん :2010/11/12(金) 01:51:39 ID:FZPLBchw
こんばんは。 ユーザが入力した文字列($text)を表示するとき、いつも htmlentities($text, ENT_QUOTES, 'UTF-8'); としています。 今回、strip_tagsで一部のタグを許可したいのですが、 その場合はhtmlentitiesを使わずに strip_tags($text, '<ul><li><span>'); のようにするだけでXSSなどに対処できているのでしょうか? どうぞよろしくお願いします。
XSSで問題なのはJavaScriptなので それらを無効にできればよい 具体的にはjavascript文字列、<script>タグ、onClickなどのonイベントハンドラあたりを除去かな まぁ無難なのは直接タグを記述させるのではなく プレースホルダのような感じで代わりのものを使用する方法 なんか適当な代替タグのようなものを使って利用者にはそれで記述してもらう 例えば[太字]あいうえお[/太字][強調]こんにちは[/強調]とかしてもらって サーバ側でhtmlspecialchars処理のあとに[太字]を<strong>に置き換えたりする処理をすればよい
>>890 strip_tagsは
<span onmouseover="alert('XSS!!')" style="display:block;width:100%;height:100%">hey</span>
なんて記述も余裕でスルーするので、
>>891 の方法が現実的
893 :
nobodyさん :2010/11/12(金) 02:15:51 ID:FZPLBchw
>>891-892 なるほどー。
<script>タグは許可しませんが、確かに、他のタグ内でonclickなどを使われてしまう可能性がありますね。
それを除去する方法について知識がないので、代替タグにするのが楽かなと思いました。
早速やってみます。
ありがとうございました!
894 :
nobodyさん :2010/11/12(金) 05:21:11 ID:EVG7rP8i
日本語を扱っている場合、mbstringが使えるのって普通ですか? 私が使っているサーバで、phpinfo()するとmbstringの項目が出てこないので 管理者に問い合わせようとしています。
バージョンしらんけど古いサーバなら対応してないんじゃね その場合管理者にメールしてもスルーされると思うが root権限なしの専用鯖ならともかくどうせ共有鯖だろ?
896 :
894 :2010/11/12(金) 06:26:27 ID:EVG7rP8i
>>895 レスありがとうございます。
サーバの設置は今年の4月です。
業者への要求資料にmbstringについて明記していなかったのではないか、
と考えています。
私はサーバ管理者と連絡が取れる立場です。
業務用の専用鯖かな? 連絡して解決するならとったほうがいいかもね
拡張モジュールはmb以外にもたくさんあるから、 必要なモジュールがあるなら自分で確認しておかないと。
たくさんはいいすぎやろ ま、でも設定の確認をいくつかとmbは入れたほうがいい mbの出来はいまいちだけど代わるもんがないから
何がいまいちなんだよ…
文字コード判別が貧弱
どのライブラリもだろ… perlの時の自動判別限界をしらんのかいな…
いやだからperlのjcodeのgetcodeよりも貧弱だって おまいこそ知らんのか
そういう時は判別する文字を連結して放り込むんだよw
自動判別が理論的に必ず漏れるから意味無いといってるのにそれがわからんのかいな… 自動判別なんざ脆弱性の固まりもいいとこ
可能性を言い出したら切がないわ
PHPの文字コード自動判定は、理論的に漏れるとか厳密がどうのというレベルを語ることすらおこがましいくらいのクソっぷりということを忘れるなよ
mbstringで文字コード判別することなんてある?
まぁ仲良くしろよ
判別しなければならない状況で他に選択肢がないのにそれを批判して何の意味があるのかわからん。 自分ならもっとすばらしいものが作れるというなら作ってPHPに提供してやれ。 他サイトのXMLとか読む時に文字判別しなければならない事がある。 たらればを言うならxmlで指定してある文字コードすら信頼できないのに他に手がないだろ。
仲良くはできないな。嫌なら日本語使うのやめろ。
どのライブラリも同じとか言ってるやつ何も作った経験ないやつだろ
914 :
nobodyさん :2010/11/13(土) 16:13:06 ID:3Bs1U7D4
(1) サーバがPHPでHTMLを出力 (2) クライアントがJavaScriptで作成されたツールで、HTMLの内容を変更 (3) 変更内容をサーバに送信 (4) サーバが変更内容を反映し、再度PHPでHTMLを出力 という操作を行いたいのですが、(3)の仕方が分かりません。 どのようにすれば良いでしょうか?
>>914 ツールがjsらしいのでXMLHttpRequestを使ったら良いのでは?
917 :
nobodyさん :2010/11/13(土) 17:56:47 ID:Rt+/eZUv
(サーバーで)PHP実行中に、1分程度処理時間がかるので、途中経過を 端末に表示させたいのですが、 print "hoge"; flush(); くらいじゃ反応してくれないし、チョット調べた範囲では あまりうまい方法もなさそうなのですが、裏技でも結構ですので、 何か技はありますか。
919 :
914 :2010/11/13(土) 18:36:51 ID:???
>>915 その通りでした。スレチ申し訳ありません。
>>916 ありがとうございます。
調べてみます。
920 :
nobodyさん :2010/11/13(土) 20:54:50 ID:F54T5R+w
セッション初心者です。
フォームで入力した値を、セッション変数に保存させるページを作っています。
「最初の1回」は無事にうまく保存できるのですが、それを2回目以降「上書き」することができません。
何処がおかしいのでしょうか。
┏━━━━━━━━━━━━━━━━━━
┃sample.php
┗━━━━━━━━━━━━━━━━━━
<?php
session_name("samplesession");
session_start();
session_regenerate_id(true);
echo('<?xml version="1.0" encoding="Shift-JIS"?>');
?>
<!DOCTYPE html PUBLIC '-//WAPFORUM//DTD XHTML Mobile 1.0//EN' '
http://www.wapforum.org/DTD/xhtml-mobile10.dtd '>
<html xmlns='
http://www.w3.org/1999/xhtml '>
<head><meta http-equiv='Content-Type' content='application/xhtml+xml; charset=UTF-8' /></head><body>
現在値:<?= $_SESSION['name']; ?><br /><br />
<form action="sample_save.php" method="post">
<input id="name" name="name" type="text" value=<?= '"'.$_SESSION['name'].'"'; ?> />
<input type="submit" name="save" value="ひとまず保存" />
</form></body></html>
┏━━━━━━━━━━━━━━━━━━
┃sample_save.php
┗━━━━━━━━━━━━━━━━━━
<?php
session_name("samplesession");
session_start();
session_regenerate_id(true);
$_SESSION = $_SESSION + $_POST + $_GET;
header("Location: sample.php");
?>
921 :
お願いします :2010/11/13(土) 21:15:20 ID:VS6aZhgO
>>920 >$_SESSION = $_SESSION + $_POST + $_GET;
元セッションを足してる形になっているよ
923 :
917 :2010/11/13(土) 22:16:34 ID:???
>>918 ありがとうございます。
使ってみます。
924 :
nobodyさん :2010/11/13(土) 22:53:18 ID:RAat1siR
eclipse-php-helios-win32.zip をダウンロードしPHPのデバッグ実行をしようとしているのですが うまく行きません。 PHPプロジェクトを作成 ↓ PHPスクリプトを追加(newfile.php) ↓ Debug As ↓ Debug As PHP Web Page ↓ Not Found The requested URL /test_php_newfile.php was not found on this server どうすればデバッグ実行をする事が出来る様になりますか?
926 :
nobodyさん :2010/11/14(日) 07:49:17 ID:X4MA/FHW
UML図とかいう、アルゴリズムの流れを描く? ようなものを最近しりました。 僕は今、全部一人でプログラミングをしているのですが、この場合、UML図と いうのはそこまで必要ないのでしょうか?
アクティビテク図かな? ぶっちゃけ使わないよそんなの UMLといっても色々あるしなぁ とりあえずシーケンス図だけ覚えとけばいいかと 大規模なシステムじゃなければ業務でも必要ないと思うけどね 設計はお金もかかるしPHPじゃそこまでやらないのが実情
928 :
927 :2010/11/14(日) 08:55:28 ID:???
ごめんタイプミス アクティビテク図→アクティビティ
UMLはフレームワーク使ったようなMVCモデル開発でないとあんまり意味のないものだね
class図は作っておいても損はないな
>>926 今全部一人でやっているからといって、この先誰かに引き継ぐこともあるんでは?
男は黙ってフローチャート
1人で作業してても、ボリュームによっては全体を把握しにくくなる だからどういう形であれドキュメントにしておくのは良いよ webだと、ページ遷移図くらいは合った方が良い あとは余談だけど、全ソース・ディレクトリツリー・DBのTABLE定義書くらいは あるとすぐに確認できて良い
そういうのは全部頭に入っているので必要ないんです。
スカイツリーならうちから見えるよ。
936 :
nobodyさん :2010/11/14(日) 16:27:11 ID:KP5Lvxbs
unlinkでファイルを削除するとき、削除できたときのみ次の処理に進みたいです if(unlink($file)){ //次の処理へ }else{ //失敗しましたよ、警告画面へ } という感じでしょうか。 しかし、unlink失敗することなんかあるんですか? unlinkに限らず、copy();mkdir();rmdir();とかもそうですが、falseを返しうる関数では プロとして仕事してるみなさんは全部エラー確認してるんですか? 正直「うそだぁ〜?」って感じなんですが… そんなの滅多にないだろ、なんかの原因でそんなことになったらしょうがない、 「失敗した場合は E_WARNING レベルのエラーが発生します」ってマニュアルが言うなら E_WARNINGレベルのエラーが出たときだけ管理者にメール飛ばしてくれたら良いよ …というのが素直な気持ちです。 そんなことは可能ですか? どうしたらいいんでしょうか
ありえる可能性はあるのだろ? だったらその可能性を潰しておけばいいじゃないか 俺ならunlinkだけじゃなくてその後にファイルがあるかfile_existsで確認する 因みにエラーが発生した時にメールを飛ばすのは可能
939 :
926 :2010/11/14(日) 18:00:59 ID:RzAF58kR
みなさん、UML図というかフローチャート?に対する返信ありがとうございました。 ざっくりとどんなものかイメージがちょっとだけできました。 ありがとうございます。
何も知らないならちゃんと学んだほうがいいと思うけどね
何も知らないからここで聞いているのではないでしょうか。
ここで講義しろってこと?
必要なのか?という質問に対しての解答なんだから間違いじゃないだろ そして知らないなら学べというのはUMLとはどういった物かを 知っておいて損はないって事が言いたいんだろ UMLの内容を教えてくださいとかそういうのはスレチだし ここで質問されても困るわ
944 :
nobodyさん :2010/11/14(日) 18:37:24 ID:sSDOPmC3
>>922 おおっ…なるほど! 無事解決しました。ありがとうございます。
もうひとつ質問なのですが
<?php
$_COOKIE["test"] = "うむ";
if($_COOKIE["test"] == "うむ"){
$result = "クッキー有効です";
}else{
$result = "クッキー無効です";
ini_set('session.use_trans_sid', '1');
}
session_start();
session_regenerate_id(true);
print $_COOKIE["test"];
print $result;
?>
↑これを、クッキーを無効にしたブラウザで開いても
「うむ」「クッキー有効です」と出てしまいます…
ブラウザのクッキーが有効かどうか調べるには、どうするのが良いのでしょうか。
別ページでクッキーに値を入れてからリダイレクトしたら、
今度はクッキー有効なブラウザでも「無効です」と言われるし…
session.use_trans_sidを使わずに、直接埋め込んだほうがいいのかな。
946 :
943 :2010/11/14(日) 19:09:17 ID:sSDOPmC3
COOKIEに書いた値が送出されるタイミングの問題だろ
>>943 の例だと変数チェックしてるだけ
949 :
nobodyさん :2010/11/14(日) 22:29:25 ID:X4MA/FHW
WEB上の文章を取り込んで、 入力したキーワードを元にAND検索をしたいのです。 この場合、楽にできるプラグインとか関数など教えてもらえないでしょうか? ちなみに、WEB上の文章はデータベースに登録せず、毎回取得しては 捨てるので、データベースに入っているものを AND検索するわけではないです。 今までは、わざわざ 入力されたキーワードをスペースで割って、trimして、 2つのワード、どちらも検索に引っかかったらtrueとしていました。
つGoogle
つGoogleって何でしょうか
952 :
nobodyさん :2010/11/15(月) 00:30:27 ID:1Q0g3VPk
バリューコマースのAPIについての質問はNGですか?
<?php
function request(){
$urlbase = "
http://webservice.valuecommerce.ne.jp/productdb/search? ";
$token = "XXXXXXXXXXXXXXXXXXXX";
$keyword = "narumiya";
$url = "{$urlbase}token={$token}&keyword={$keyword}";
$xml = simplexml_load_file($url);
echo "<pre>";
var_dump($xml);
echo "</pre>";
}
request();
?>
こうした形式で書いて、APIのレスポンスが空になってしまうんですが何故でしょうか?
ちなみにSHOPと提携はしており、カテゴリーAPIへのリクエストではちゃんと結果が返ってきます。
とりあえずPHP経由しないでリクエストしてみたら?
すみません、COBOLで書かれたシステムをPHPで書き直す案件を 受注したのですが、COBOLが全くわかりません。 この場合、COBOLを一から勉強しないと駄目でしょうか。 PHPも勉強し始めたばかりなので他の言語に手を出したくないのですが。
自分の能力に見合った案件を受けること
9割で俺がやってあげるよ
957 :
nobodyさん :2010/11/15(月) 01:29:49 ID:1Q0g3VPk
>>953 それでも駄目でした。
バリューコマースでサンプルURLとして公開されているものを(不要なパラメーターを削って)
アクセスしてみても空だったので、問い合わせた方が良いのかもしれません…。
もう受注が決まってしまったので何とかしないといけないのです。 個人なので全て自分でやらねばならず、途方にくれています。 どなたかヒントだけでもいただけないでしょうか。
COBOLが全くわからないのです。 出来ると言ってしまった以上、何とかしないといけないのですが、 何から始めればいいのでしょうか。
>>960 本屋に行ってCOBOL入門とか書かれてる本を買うとか
phpはじめたばかりで個人で受注とか 世の中末恐ろしいな
>>960 そこは今から勉強してもどうなるものでもないんじゃ?
956じゃないにしても出来るやつを見つけて投げるのがベストだと。
逆にそれを続けられるならいい仲介になれる。
悲惨な末路が待っていることは確かだな
966 :
nobodyさん :2010/11/15(月) 08:56:24 ID:kwhiKnwN
質問させてください ((/log/CustomLog.php)) <?php $line = date('H:i:s')."\t"; $line .= $_SERVER['HTTP_REFERER']."\t"; $file = fopen('./data/'.date('Ymd').'.log', 'a+'); flock($file, LOCK_EX); fwrite($file, $line."\n"); flock($file, LOCK_UN); fclose($file); ((/log/log.php)) <?php require_once 'CustomLog.php'; ?> <html><body>カスタムログを記録</body></html> でlog.phpを実行するとブラウザには「カスタムログを記録」と表示されるのに、 ./dataディレクトリにはCustomLog.phpで作成されたはずのログが記録されません
967 :
nobodyさん :2010/11/15(月) 08:57:19 ID:kwhiKnwN
httpd.confの設定: User hoge Group hogehoge PHPの実行ユーザー名(自分):foo hogehogeグループにも参加 htdocsの位置:/usr/local/apache2/htdocs (drwxr-xr-x 4 root root) logディレクトリはhtdocs以下にあります(drwxrwxr-x 3 foo foo) CustomLog.php (-rw-rw-r-- 1 foo foo) dataディレクトリ (drwxrwxr-x 2 foo foo) 他にもファイルアップロードのスクリプト等でも思ったようにディレクトリ内にファイルがアップロードされませんでした Linuxのパーミッションの影響でしょうか? 色々と手を加えてみたのですが解決しませんでした
/log/dataっていうディレクトリはあるの? というかファイルパスの問題な気もするけど includepathとか設定しないかぎりはapache/logからはincludeされず /logからincludeしようとするよ?
>>966 <?php require_once 'CustomLog.php'; ?>
パスの概念がおかしいのでは?
エラーを表示するようにするかエラーログを見てくると良いかも
970 :
936 :2010/11/15(月) 09:44:53 ID:v7N8eLuf
ありがとうございます >俺ならunlinkだけじゃなくてその後にファイルがあるかfile_existsで確認する 本当にやってるんですか、凄いな 初心者向けのPHP開発本みたいなの見るとそんな慎重な確認処理なんて 書いてないですよね あれは非現実的で不要な処理だからじゃなくて「ページの都合」ってことだったのかな〜 他の皆さん、やってますか?
>>970 目の前にファイルがあるのですが、このファイルは削除しても問題ないですか?
なんて質問に誰がまともに答えられるw
>>954 これは釣りだと思いたい・・・
釣りじゃないなら恐ろしてく見てらんないわ
973 :
nobodyさん :2010/11/15(月) 09:56:47 ID:kwhiKnwN
/usr/local/apache2/htdocs/pz/ch2/log/内にdataフォルダ、CustomLog.php、log.phpが存在しております また、php.iniはinclude_path = ".:/usr/local/include/php:usr/local/lib/php"となっております このインクルードパスが問題なのでしょうか? 今エラーログを見てみたら、failed to open stream: Permission denied等のエラーが色々と出ておりました
>>973 htdocsがホームディレクトリだよね?
その直下にtestってフォルダ作ってその中にindex.phpを作成してアクセスしてみ
【htdocs/test/index.php】
<?php
touch("hoge.txt") or die("ファイルが作成できません");
これでtestにhoge.txtが作成されなかった場合testのパーミッションを777にして再度実行してみ
あとあるとしたらselinux周りかな とりあえず777で試す方が先だね
976 :
nobodyさん :2010/11/15(月) 11:10:07 ID:kwhiKnwN
自分、情けないことにSELinuxは設定が難しすぎて無効にしています すみません、一般的にこういう場合フォルダはrootで作成すればいいのでしょうか? 自分今までパーミッションの問題を避けて、fooユーザで作成したものをrootに変わり、root権限でhtdocs内に入れていたのですが fooで作成するとdrwxrwxr-x foo fooとなりますが、rootで作成するとdrwxr-xr-x root rootとなります で、どちらでもindex.phpにアクセスすると「ファイルが作成できません」と出ました ただし、chmod -R 777 としたらtestディレクトリ内にhoge.txtが作成されました と言うことはやはりパーミッションの問題だということなのかもしれません で、自分の環境で言うとlogディレクトリはdrwxrwxr-x foo fooとなっていますので、httpd.confに記載されている、 セキュリティの為にApache専用に割り当てたユーザhogeでは書込み権限が無いためにエラーになっていたのでしょうか? 皆さんは運用の為にPHPスクリプトを作成した場合、どのようにしてApacheに引き渡しているのでしょうか? 流石にパーミッションを777にはしていないと思いますが 自分のようにApache実行用にhogeユーザを作り、PHPスクリプトをfooユーザで作っている場合はどう運用すればいいのか分からなくなってしまいました
親ディレクトリを777にするんですが何か? そうしないとセーフモードで制限される関数が使えないし
978 :
nobodyさん :2010/11/15(月) 11:52:33 ID:kwhiKnwN
えっ? 親ディレクトリを777にするとは言うことなのでしょうか? 例えば今回の場合logフォルダを777にするということでしょうか? その場合、log.phpにフォームがあり、例えブラックリスト法、ホワイトリスト法、htmlspecialcharsとかで様々な対策をしていたとしてもクライアントから実行可能なスクリプトを作成されたりしないのでしょうか? 確かに動的にファイルなどを作る場合はwrite権限が必要でしょうが 自分、Windowsではまぁスクリプトを少々うってきたり、Linuxはそこそこ使いつづけていたのですが、実際にLinuxでPHPってのはやっておらず、パーミッション関係で迷っております 上でのhoge.txtは-rw-r--r-- hoge hogehogeで作成されていました となると、fooで作成したファイルなどが混在していてもいいのかとか、 ファイル、フォルダ共にどのようにパーミッション設定すればいいのか分からず非常に難しいです
>>976 その書き方だchownを知らない?
ユーザhogeで書けないと意味が無いので、rootでディレクトリを作ったあとで
chown でhogeユーザに所有者をかえて
chmod で権限を変えれば良い
apache専用ユーザがhoge、グループもhogeだとしたら
自分の場合は、ユーザfooのサブグループにhogeを追加する(usermod -G hoge foo)
そしてファイルやディレクトリの権限は660か770にする。
あー、ユーザー権限でPHPが動いていないだけな気がする。 hogehoge権限で動いていたら書き込めないのは当たり前。 ディレクトリを777にした時にファイルが出来たらしいけどその所有者誰になってます?。
>>878 もう少しディレクトとファイルの構成を考えたほうがいい
ログを保存する場所にphpスクリプトがあるというのがそもそもおかしな話
982 :
nobodyさん :2010/11/15(月) 12:19:49 ID:kwhiKnwN
>>979 chown -R webuser.webgroup htdocsとかですね?
デフォルトの/usr/local/apache2/内を削除し/var/www/内に移動させるために、他にもmkdir tmp -> chown webuser tmpなどしておりました
確かにそう言われればそうはしていなかったように思います
と言うことはいったんfooで作成したスクリプトをchown hoge.hogehogeで所有者を変えればいいのですね
>ファイルやディレクトリの権限は660か770にする
勉強になりました
>>980 所有者は978で書きました通り-rw-r--r-- hoge hogehogeになっております
やはり権限の問題だと思います
>>979 さんのおっしゃられている通りfooで作ったスクリプト群をchownでhogeに変えなかったのがダメだったのかもしれません
>>981 いや、これは自分で作ったスクリプトでは無く、Linuxでの動きを見るために参考書のサンプルを使ったのです
本当は公開フォルダの外に置くべき事は分かっているのですが、サンプルがこうなっていたもので
本当は例えばopen_basedirに/var/www/を設定して、公開フォルダは/var/www/htdocs/で、外部フォルダとして/var/www/tmp/などに入れようとか思っています
983 :
936 :2010/11/15(月) 12:23:42 ID:v7N8eLuf
>>971 え?そんなこと聞いてないですが…
そう思われてるのかな
984 :
980 :2010/11/15(月) 12:25:56 ID:???
>>982 あ、もともとユーザー権限で動かす気ないのか、すまん。
その環境で動かすとgroup hogehogeを利用している全ユーザーに少なくともデータの上書きはされる覚悟が必要だし
PHPファイルにパスワードとか書くと簡単に抜かれるからパーミッションとか気にしても知れてるかもよ。
この前、変な奴がわいてたからスレタイと文言を変えようかなw
いちいち荒さんでさっさと立てろ
俺が立てる
ところで
>>966 はサンプルらしいが何の本読んでるのか気になるな
怪しいコード満載そうでwktkするわ
991 :
nobodyさん :2010/11/15(月) 14:03:37 ID:kwhiKnwN
>>990 各言語にて書籍を乱発されている方の本ですw
その中のPEAR&ZFのサンプル本です
何故だか最近のPHPの本はWindows環境のXamppでの構築ばかり載っているので、linuxのパーミッションの事とか載ってないように思います
更に本番を想定したLAMP構築の本は何かあるのでしょうか?
自分、Apacheの設定ですらセキュリティとかパフォーマンス考えてやってたらめちゃくちゃ時間かかりました
MySQLは更に時間かかりましたが
ヤーマダーか
鯖のセキュリティを考えるのは鯖管であって開発側は意識する必要はない 開発側が意識すべきはアプリケーションのセキュリティ 鯖のパフォーマンスも同様 そんなの考慮したところで本番環境じゃ自分ではどうしようもできない(専用鯖ならいざ知らず) 開発側が考慮するのはアプリケーションのパフォーマンスであって鯖のパフォーマンスではない 鯖の設定やパフォーマンスを極めるのはPHP開発において実に無意味だ 本番で使う予定の関数をテスト環境でも使えるようにすればいいだけでOSはどうでもいい 確かにOSによって動作の異なる関数もあるがそれはマニュアルに注意書きしてあるし Windowsで動いてLinuxで動かないなんてPHPアプリケーションを作るほうが難しい パーミッションにしても勉強とかは必要ないしパターンを覚えればいいだけで意識する必要はない PHPファイルはいじる必要はないしログなんかは書き込み権限を与えるだけでよい ファイル操作するディレクトリは実行権限を与えればよい 俺らはPHPをやってるんだぜ
PHP使うのにOSの知識がいるのはコマンド操作する時ぐらいだな パーミッションなんてCGIを設定してきた世代には知ってて当然だが 最近は全く知らない状態からPHP開発したりで知らない人多いのかね? 開発の前に他人のスクリプトの設定を経験すると思うんだけどな Windowsにパーミッションの概念がないことは知らない人は何気に多そうだけど
どこを縦読み
ど
パーミッション知らないままPHPを使えているってことは xamppはすごいってことになるな
xamppじゃなくてwindowsの問題なのでは
1000 :
nobodyさん :2010/11/15(月) 15:26:37 ID:qtz/5+XK
1000
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。