トップページphp
1001コメント281KB

【PHP】下らねぇ質問はID出して書き込みやがれ 98

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2010/09/18(土) 19:20:37ID:???
質問者はまず>>1を良く読むこと(必須!)
過去スレ、関連スレ、FAQなどは>>2-10辺り
次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。

◆前スレ
【PHP】下らねぇ質問はID出して書き込みやがれ 97
http://hibari.2ch.net/test/read.cgi/php/1279833891/

◆質問用テンプレ
【OS名】CentOS
【PHPのバージョン】5.3
【連携ソフトウェア】MySQL ImageMagick
【質問内容】

◆質問する時の注意
・ スレを上げて自分のIDを表示させること。(メール欄に何も記述しない。専ブラのsageチェックを外す)
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に関連リンクの公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
(PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。)

◆質問後の注意
・2回目以降は最初に質問した際のレス番号を入れて、偽者防止に必ずIDを表示させること。
・解決しなくても回答をもらった場合はお礼を言うこと。
 (荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)

◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。

【その他諸注意】
・SQL・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
0112nobodyさん2010/09/20(月) 16:21:43ID:???
>>111

つ detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1346334528
0113nobodyさん2010/09/20(月) 16:22:52ID:???
>>111
コピペにやさしいんですねwww
0114nobodyさん2010/09/20(月) 16:23:27ID:???
>>109
色々ありすぎるんだよ。
どの程度のレベルのものを必要としているのかわからないけど、
要するにファイルなりデータベースなりに暗号化したパスワードを保存しておいて、入力してもらったパスワードが正しいか確かめるだけ。
簡単なものなら、少し勉強すればすぐ書けるけれど、この手のものはセキュリティ云々も当然あるだろうから、とてもじゃないが全部は説明しきれない。
それだけで本が書けてしまうよ。

ちなみにポップアップさせるのはPHPではなくてJavascript等の守備範囲。
0115nobodyさん2010/09/20(月) 16:23:47ID:???
>>111
お前さっきからどんだけ釣られてんだよ。。。
0116nobodyさん2010/09/20(月) 16:24:35ID:???
ああ、釣りなのね…バカス
0117nobodyさん2010/09/20(月) 16:25:03ID:???
>>114
コピペに偉そうにレスするなんて>>111より痛いぞ
0118nobodyさん2010/09/20(月) 16:26:50ID:???
>>114
ちょwwおまwwww

釣り師相手に長文とかw 必死すぎだろw
01191112010/09/20(月) 16:27:22ID:???
釣りだったのかスマン。

>>115
今日初めての書き込みだよ・・・
0120nobodyさん2010/09/20(月) 16:28:19ID:???
釣れすぎ。少しは餅つけ
0121nobodyさん2010/09/20(月) 16:31:38ID:???
何この釣堀スレ
0122nobodyさん2010/09/20(月) 16:31:56ID:???
お前らちょっと落ち着けって

釣りとかしてたら回答してくれる人がいなくなるぞ

それと回答者もテンプレ守らない質問はスルーしろ
0123nobodyさん2010/09/20(月) 16:32:16ID:???
こんなんばっかりだからスレが3桁近くまで続くのか
0124nobodyさん2010/09/20(月) 16:33:55ID:???
>>122
>それと回答者もテンプレ守らない質問はスルーしろ

>>92>>107も律儀にsageてるな
0125nobodyさん2010/09/20(月) 16:34:49ID:???
荒しはパーラー


Perlの勉強会後の懇親会でPHPスレ荒らしてると公言!
0126nobodyさん2010/09/20(月) 16:37:16ID:???
荒らされてるというよりは勝手に釣られてるだけなんだけどね
0127nobodyさん2010/09/20(月) 16:39:26ID:???
俺は荒しているつもりなんだけどな
PHPがどれだけ嫌われてるかはここにいる連中ならわかってるだろ?
0128nobodyさん2010/09/20(月) 16:39:29ID:???
釣り堀嵐コワス
0129nobodyさん2010/09/20(月) 16:43:33ID:???
まあ全部俺の自作自演ってやつなんだけどな。        ∧_∧
           ∧_∧                   (´<_` ;) ・・さ、流石だな、兄者
           ( ´_ゝ`)                  /   ⌒i
          /   \                 / ィ   | |
     / ̄ ̄ ̄ ̄// ̄ ̄ ̄ ̄// ̄ ̄ ̄ ̄// ̄ ̄ ̄ ̄// ̄ ̄ ̄ ̄/
__ _/  Prius  //  FMV  //  VAIO // Mebius // LaVie  /____
   \/_/ ̄ ̄ ̄ ̄// ̄ ̄ ̄ ̄// ̄ ̄ ̄ ̄// ̄ ̄ ̄ ̄// ̄ ̄ ̄ ̄/
   _ /ThinkPad //WinBook//DynaBook//Libretto // Presario/
   \/_/ ̄ ̄ ̄ ̄// ̄ ̄ ̄ ̄// ̄ ̄ ̄ ̄// ̄ ̄ ̄ ̄// ̄ ̄ ̄ ̄/
   _ / Inspiron //Endeavor//InterLink //  Evo  //Let'sNote/
   \/____//____//____//____//____/
0130nobodyさん2010/09/20(月) 16:48:12ID:???
正直釣られたとしても
それで何なのか聞きたい
全くもって悔しくないから困る

あ、これで悔しいんですねm9みたいなレスはいらんよ
0131nobodyさん2010/09/20(月) 16:55:21ID:???
だーかーらー
なんでID出さないスレを無くしたのか考えろよ
0132nobodyさん2010/09/20(月) 17:03:22ID:???
田所のソースをただここに張ったぐらいで釣りと言えるのか
0133nobodyさん2010/09/20(月) 17:14:14ID:???
無駄にレス消費するだけだからこれ以上やるなカス共
0134nobodyさん2010/09/20(月) 17:48:40ID:???
abc\ndef

↑この一行が書かれたテキストファイルをfgetsで文字列に読み込んだ場合、読み込んだ文字列はどうなっていますか?
0135nobodyさん2010/09/20(月) 17:53:13ID:???
それくらいやってみろよ
0136nobodyさん2010/09/20(月) 18:01:49ID:???
fgetsで$stringに読み込んでechoコマンドでブラウザに出力してみたところ

abc\ndef

と表示されました。そこでHTMLで改行されて表示されるよう

nl2br($string)

としてみました。これで\nが<br>\nに置換されるはずなんですがなぜかechoコマンドで
ブラウザに表示したところ

abc\ndef

のままだったんです。

fgetsでテキストファイルから読み込んだ際になにか特殊処理を施されちゃったのかなとおもって
その解除方法に思案しているところです(´・ω・`)
0137nobodyさん2010/09/20(月) 18:03:24ID:???
だって\nって改行じゃないし
0138nobodyさん2010/09/20(月) 18:15:44ID:???
さっそくテンプレ無視ですか
0139nobodyさん2010/09/20(月) 18:23:19ID:25juxIoU
ああ、すいません^^:)

> だって\nって改行じゃないし

preg_replaceを使って "\\n" を "<br>" に置換することを試みましたがダメでした。
どういう文字列として読み込まれているんでしょうか・・・
少なくとも

abc\ndef

の表記通りでは無い気がします
0140nobodyさん2010/09/20(月) 18:26:12ID:???
preg_replaceの部分も書いたらどうだい
0141nobodyさん2010/09/20(月) 18:33:22ID:???
単純な置換にpreg_replaceを使うな!!!!!!!!!!!!!
str_replaceを使え!!!!!!!!!!!!!!!!!!!!
0142nobodyさん2010/09/20(月) 19:05:30ID:25juxIoU
>>140
preg_replace("\\n", "\<br\>\\n", $string);
preg_replace("\n", "\<br\>\n", $string);

↑どちらもダメでした(´・ω・`)

>>141
(;^ω^)・・・
0143nobodyさん2010/09/20(月) 19:10:11ID:???
大体なぁ、

http://php.net/manual/ja/function.fgets.php
>ファイルポインタから 1 行取得します。

だぞ?
一回の呼び出しで abc\ndef が得られてるってのが変だと思わんか?
これを踏まえてもう一度137が言ってること考えてごらんよ。
0144nobodyさん2010/09/20(月) 19:13:39ID:???
>>142
http://php.net/manual/ja/function.preg-replace.php
ここの例をよーく見ろ
よーーーーーく見ろよ?
後、エラーメッセージを出さない設定にしてるのか?
俺の環境ではエラーになったぜ
0145nobodyさん2010/09/20(月) 19:18:41ID:25juxIoU
>>143
\nは改行ではないということですね・・・
だとしたら

preg_replace("/\n/", "\<br\>\n", $string);

で \n は <br>\n に置換されてもいいはずなんですが・・・

>>144
すいません、/を忘れてました^^;)
0146nobodyさん2010/09/20(月) 19:18:46ID:???
>>58じゃね?
0147nobodyさん2010/09/20(月) 19:19:16ID:???
>>142
(;^ω^)・・・じゃええよ素人の分際が!!!!!!!!!
\nを<br>にする程度の置換ならstr_replaceでいいだろ!!!!!!!!!!
0148nobodyさん2010/09/20(月) 19:21:44ID:???
>>142
お前は素人なんだから話を聞いたらどうなんだ素人さん
100回マニュアルを読んで書き直して来い
http://php.net/manual/ja/function.str-replace.php
0149nobodyさん2010/09/20(月) 19:21:57ID:???
まあ、\n『という文字列』が出てきたら、それを置換したいということだったら、

str_replace('\n', '<br>\n', $string);

じゃね? 試してないけど。
どーしてもpreg_replace 使いたいなら(この程度では馬鹿げてるけど)

preg_replace('/\\n/', '<br>\n', $string);

か? 試してないけど。
0150nobodyさん2010/09/20(月) 19:25:30ID:???
去年何でも正規表現で書く奴がいたな
久しぶりに見たわ
http://www.unkar.org/read/pc11.2ch.net/php/1233590976
0151nobodyさん2010/09/20(月) 19:26:24ID:???
>(;^ω^)・・・
これは流石にヒドいわ・・・人間として
0152nobodyさん2010/09/20(月) 19:28:34ID:???
>>142
正規表現クン乙
0153nobodyさん2010/09/20(月) 19:44:17ID:25juxIoU
ありがとうございます
ちょっと試してみます(;^ω^)
0154nobodyさん2010/09/20(月) 19:51:44ID:???
厨房お断りってテンプレに書いてね
0155nobodyさん2010/09/20(月) 20:24:42ID:???
結果が同じなのとれれば好きにすればいいじゃん
パフォーマンス考えるのは二の次
まずは動くもの作ればいい
0156nobodyさん2010/09/20(月) 20:40:12ID:???
2009-04-01 08:40:00
↑の時間の30分後を取得する方法。

↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓

$date= '2009-04-01 08:40:00';
preg_match("/(\d{4})\D(\d\d?)\D(\d\d?)\s+(\d\d?):(\d\d?):(\d\d?)/s", $date, $d);
$d= localtime(60*30+mktime($d[4], $d[5], $d[6], $d[2], $d[3], $d[1]));
printf("%d-%02d-%02d %02d:%02d:%02d", $d[5]+1900,$d[4]+1,$d[3],$d[2],$d[1],$d[0]);
0157nobodyさん2010/09/20(月) 20:44:03ID:???
わざわざ過去ログ引っ張って嵐にきたんですね?ご苦労様です。
0158nobodyさん2010/09/20(月) 20:55:16ID:???
なにその馬鹿な方法びっくりだわ
0159nobodyさん2010/09/20(月) 21:22:22ID:???
>>156
これいいんじゃないの?
0160nobodyさん2010/09/20(月) 21:27:29ID:25juxIoU
>>149
> str_replace('\n', '<br>\n', $string);
>
> じゃね? 試してないけど。

どうもです、その方法で\nを<br>\nに置換できました(^ω^)v

ただ未だに解せないんですがなぜnl2brが効果を発揮しなかったんでしょうか・・・
0161nobodyさん2010/09/20(月) 21:29:49ID:???
(;^ω^)・・・
0162nobodyさん2010/09/20(月) 21:32:08ID:???
>>159
何のためのdate()関数?
0163nobodyさん2010/09/20(月) 21:33:55ID:???
>>160
だからnl2brは改行コードを<br>に変える関数だから。
$stringの'\n'は改行コード\nじゃなくて文字列'\n'だったってこと。
0164nobodyさん2010/09/20(月) 21:42:45ID:???
>>160
(;^ω^)・・・
0165nobodyさん2010/09/20(月) 21:43:32ID:???
>(;^ω^)・・・
これは流石にヒドいわ・・・人間として
0166nobodyさん2010/09/20(月) 21:51:12ID:25juxIoU
>>163
> $stringの'\n'は改行コード\nじゃなくて文字列'\n'だったってこと。

φ(^ω^;) メモメモ

そうしますと文字列の'\n'を改行コードの\nに置換するにはどうしたらいいでしょうか?
0167nobodyさん2010/09/20(月) 21:59:09ID:???
"\n"
0168nobodyさん2010/09/20(月) 22:04:33ID:???
"\n"≠'\n'
0169nobodyさん2010/09/20(月) 22:05:17ID:25juxIoU
>>168
> "\n"≠'\n'

:(;゙゚'ω゚'):
0170nobodyさん2010/09/20(月) 22:31:39ID:???
>>166
そこまで理解できたならあとは自分で考えよう。
ヒント:>>167-169
0171nobodyさん2010/09/20(月) 22:34:13ID:???
顔文字野郎うぜえ
0172nobodyさん2010/09/20(月) 22:34:16ID:M5nqlNJA
>>88

@を禁止ワードとしてしたいのですが、
strpos($_POST['aho'],"@");
とすると、何故かフォームahoに全角スペースとか入っていると、
falseが返ってきません。

を質問したものです。

>>89
さん。

mb_strpos() でも同じ結果でした。

>>90

禁止ワードを入力したら規制という仕様です。
サイト管理者が@を禁止ワードとした場合、意図しない動作が起こる状態なのです。
ちなみにサイト管理者は私ではないのです。


何かいい方法ありますでしょうか。
正規表現使うしかないのかな。。



0173nobodyさん2010/09/20(月) 22:40:41ID:???
>>172
@ 40
全角スペース 8140
0174nobodyさん2010/09/20(月) 22:55:08ID:???
>>172
http://php.net/manual/ja/function.mb-strpos.php
引数 $encoding の説明を声に出して読もうか
0175nobodyさん2010/09/20(月) 22:59:27ID:???
@を入力しただけで規制されるサイト様
0176nobodyさん2010/09/20(月) 23:06:26ID:M5nqlNJA
>>173
>>174

どうもありがとう。
mb_strpos($_POST['aho'],"@",0,"SJIS")
でできた。

ほんと助かりました。

>175

まあ、そう堅い事言うな。


0177nobodyさん2010/09/20(月) 23:19:59ID:???
どうせ厨房サイトだろ
0178nobodyさん2010/09/20(月) 23:24:01ID:???
最近の若い人はサイト作ってムーブメントおこさねえのけ?
0179nobodyさん2010/09/20(月) 23:24:39ID:???
>どうもありがとう。
>mb_strpos($_POST['aho'],"@",0,"SJIS")
>でできた。


解決すると急に馴れ馴れしくなる質問者
0180nobodyさん2010/09/20(月) 23:59:22ID:???
昔出会い系のサイトであったな
アドレス系いれるとエラーとかポイント消費とか
0181nobodyさん2010/09/21(火) 00:32:09ID:???
ブロックワードのテストだろ
0182nobodyさん2010/09/21(火) 00:48:01ID:zwq2HiIO
どうも顔文字がいやだ。
0183nobodyさん2010/09/21(火) 00:57:33ID:???
(;^ω^)・・・
0184nobodyさん2010/09/21(火) 07:51:39ID:???
そういや、思うんだけど、
言うなら顔文字じゃなくて文字顔じゃないのか。
0185nobodyさん2010/09/21(火) 07:56:45ID:???
へのへのもへじを連想するな
0186nobodyさん2010/09/21(火) 08:11:40ID:???
顔様配字
0187nobodyさん2010/09/21(火) 10:15:46ID:???
(#@盆@)
0188nobodyさん2010/09/21(火) 15:25:46ID:???
>>184
顔文字
絵文字
空白文字
半角文字
全角文字
へたくそな文字
綺麗な文字
0189nobodyさん2010/09/21(火) 16:49:06ID:DYRmkvRa
お尋ねします。
index.php?test=aa
とすろと_GET['test']にaaが入ります。

これを
index.php/test/aa
としたとき
/test/aaの値をどうやってindex.phpから取得すればいいのでしょうか?

どうぞよろしくお願いします。
0190nobodyさん2010/09/21(火) 16:57:48ID:???
ファイル(index.php)のあとにディレクトリ(/)がくるってのは構造がまずおかしい
どこのOSにディレクトリの上位がファイルなんて非常識なことがあろうか
同様にindex.php?test=/test/aa
とやって$_GET['test']で/test/aaの値を取得すればいいと思うが
mod_rewrite使って強引にやるにしてもindex.php/test/aaはおかしいわ
0191nobodyさん2010/09/21(火) 17:01:55ID:DYRmkvRa
>>190
それがrestfulなフレームワークのサンプルを見るとその手法で実現しているのです(mod_rewrite未使用で)
なのでどうにかしてとれると思うのですがどなたかおわかりの方いらっしゃいませんか?
0192nobodyさん2010/09/21(火) 17:11:07ID:???
>>191
mod_rewrite使った方が楽だと思うが
$_SERVER["PATH_INFO"]から /test/aa を取ってこれる
0193nobodyさん2010/09/21(火) 17:16:56ID:DYRmkvRa
>>192
綺麗にとれました!
ありがとう!
0194nobodyさん2010/09/21(火) 17:46:23ID:???
>>189
pathinfoでggr
0195nobodyさん2010/09/21(火) 18:43:14ID:???
>>190は無知
0196nobodyさん2010/09/21(火) 18:51:13ID:???
>>190
おまえ2ちゃんのURL見たことある?
0197nobodyさん2010/09/21(火) 18:59:20ID:???
2chが標準と言いたいんですね
0198nobodyさん2010/09/21(火) 19:01:03ID:???
>>190=197
顔真っ赤になるなよ
0199nobodyさん2010/09/21(火) 19:02:27ID:???
本人乙認定きましたー
まぁ反論したら絶対そうなると思ったが荒らすなカス
0200nobodyさん2010/09/21(火) 19:13:16ID:???
>どこのOSにディレクトリの上位がファイルなんて非常識なことがあろうか

この一文でフレームワークを弄ったことない初心者
苛める価値もないからそのくらいにしといたれ
0201nobodyさん2010/09/21(火) 19:17:04ID:???
あの質問を見てPATH_INFOを思いつかないのは異常
0202nobodyさん2010/09/21(火) 19:21:36ID:???
無知が異常ならみんな異常だなw
0203nobodyさん2010/09/21(火) 19:23:00ID:???
ファイルシステムのディレクトリ構成と
HTTPリクエストは
全然別物じゃないかな〜
0204nobodyさん2010/09/21(火) 19:23:46ID:???
誰もファイルシステムの話はしてないからもちつけ
0205nobodyさん2010/09/21(火) 19:24:02ID:???
無知なやつを叩いて悦に浸ってるのは大抵ニートだろ
ストレス溜まってるんだろうがキモイよお前ら
0206nobodyさん2010/09/21(火) 19:26:14ID:???
※ここの連中はgithubとかcodepadって言葉も知らなさそうな初心者が偉そうに回答するスレです
※上級者の方は温かい目で見守りましょう
0207nobodyさん2010/09/21(火) 19:27:01ID:???
http://www.ietf.org/rfc/rfc1738.txt

The HTTP URL scheme is used to designate Internet resources
accessible using HTTP (HyperText Transfer Protocol).

The HTTP protocol is specified elsewhere. This specification only
describes the syntax of HTTP URLs.

An HTTP URL takes the form:

http://<;host>:<port>/<path>?<searchpart>

where <host> and <port> are as described in Section 3.1. If :<port>
is omitted, the port defaults to 80. No user name or password is
allowed. <path> is an HTTP selector, and <searchpart> is a query
string. The <path> is optional, as is the <searchpart> and its
preceding "?". If neither <path> nor <searchpart> is present, the "/"
may also be omitted.

Within the <path> and <searchpart> components, "/", ";", "?" are
reserved. The "/" character may be used within HTTP to designate a
hierarchical structure.

http://<;host>:<port>/<path>?<searchpart>
これ以外の形式はみとめません(キリッ
0208nobodyさん2010/09/21(火) 19:33:04ID:???
言葉を知らなかったら初心者とかすげえ決めつけだな
最近感情的なレスばっかで客観的に見れるやつが少ない
大規模規制が解除されたとたん幼稚園になってしまった
0209nobodyさん2010/09/21(火) 19:34:32ID:???
社会経験ないんだから触るんじゃねえよ
0210nobodyさん2010/09/21(火) 21:02:17ID:???
PATH_INFO知らなかったからって荒らすな
0211nobodyさん2010/09/21(火) 21:05:24ID:???
>>207
これまた背伸びするから的をはずしてるソースを持ち出してくるんだよな
rfcにpath_infoは定義されてるから100回読んで来い
ttp://www.rfc-editor.org/rfc/rfc3875.txt
■ このスレッドは過去ログ倉庫に格納されています