トップページ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等)・フレームワークは各該当スレへ
0082nobodyさん2010/09/20(月) 11:34:46ID:???
>> 80
マニュアルに書いてありますねぇ
file_get_contents()はファイルの内容を文字列に読み込む 方法として好ましいものです。もしOSがサポートしていれば パフォーマンス向上のためにメモリマッピング技術が使用されます。
0083nobodyさん2010/09/20(月) 12:14:06ID:???
>>81
そういうヘルパーを作ればいいんじゃね?
0084nobodyさん2010/09/20(月) 13:22:28ID:Z65z5cwS
>>52です

jcode.phpで文字コードを調べてみると ASCIIコードになっていたようです
0085nobodyさん2010/09/20(月) 13:25:07ID:???
だから文字コードをちゃんと変換できてないからだろバカ
0086nobodyさん2010/09/20(月) 13:28:19ID:???
73と52は同一人物なような気がしてきた
0087nobodyさん2010/09/20(月) 14:21:44ID:???
ちなみに85と86は同一人物
0088nobodyさん2010/09/20(月) 14:28:16ID:M5nqlNJA
すんません。

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

文字コードがshift-jisだからかなとは思うのですが、
何か対策ありますでしょうか。
ちなみに禁止ワードは@以外にも可能性があり、@だけ削ればいいわけではなく、
しっかり禁止ワードを検出して、入力したユーザーはアクセス規制をかけるという処理です。
0089nobodyさん2010/09/20(月) 14:35:47ID:???
>>88
つ mb_strpos()
0090nobodyさん2010/09/20(月) 14:39:08ID:???
@を入力しただけで規制とかシステムの怠惰
0091882010/09/20(月) 14:48:41ID:???
>>90
余計なお世話です。

無職のあなたほど怠惰ではありません。
0092nobodyさん2010/09/20(月) 14:54:36ID:???
postて連想配列じゃないの
0093882010/09/20(月) 15:01:12ID:???
>>92
無知は黙ってろ消えろ
0094nobodyさん2010/09/20(月) 15:05:27ID:???
postて連想配列だけどなにか?
0095882010/09/20(月) 15:06:41ID:???
>>94
無知乙
print_r($_POST['aho'])で試してみろ
0096nobodyさん2010/09/20(月) 15:07:43ID:???
フィーーーーーーーーーッシュ
0097nobodyさん2010/09/20(月) 15:10:46ID:???
>>95
説明

HTTP POST メソッドで現在のスクリプトに渡された変数の連想配列です。
0098882010/09/20(月) 15:14:07ID:???
>>92はpostは連想配列だからstrposの第一引数に指定できないって言いたかったんでしょ?
だからしっかり教えてあげただけです
0099nobodyさん2010/09/20(月) 15:28:42ID:???
>>98

>>92のレスを勝手に深読みして一人でさわぐのはやめましょうw
0100nobodyさん2010/09/20(月) 15:30:42ID:???
>>98
暇乙。誰も教えてくれと頼んでないのにご苦労様です
0101882010/09/20(月) 15:32:39ID:???
じゃあ>>92は何の為にレスしたのか説明よろしくたのんます
0102nobodyさん2010/09/20(月) 15:38:37ID:???
>>82
マッピングとガベージコレクションは別物やで
0103922010/09/20(月) 15:40:03ID:???
バカを釣るためです
0104nobodyさん2010/09/20(月) 15:42:50ID:???
>>103
www
0105nobodyさん2010/09/20(月) 15:43:28ID:???
>>103
なん・・・だと・・・
0106nobodyさん2010/09/20(月) 15:44:01ID:???
postて連想配列じゃないの

バカを釣るためです

さすが
0107nobodyさん2010/09/20(月) 15:58:27ID:???
PHP初心者ですがご質問致します。

PHPを使ったパスワード認証をお教えください。
HPにyahooのリンクがあったとします。
そのリンクをクリックした際に(ポップアップ等で)パスワード認証を
かける方法を探しております。
0108nobodyさん2010/09/20(月) 15:59:30ID:???
よくわからんが、パスワード認証を教えてくださいと言われても困ってしまうな
0109nobodyさん2010/09/20(月) 16:05:26ID:???
>>108
できれば教えてください
0110nobodyさん2010/09/20(月) 16:20:17ID:???
>>109
できないので教えません
0111nobodyさん2010/09/20(月) 16:21:01ID:???
>>107=109
スレタイと>>1を読んで、やりたい事をもっと具体的に書いて。

「yahooのリンク」のリンク先(yahoo)は自分のサイト(PHPを動作させているサーバ)なのかい?
それとも自分のサイトでPHPで認証させて、外部(yahoo)に飛ばすという意味なのかい?

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:???
ブロックワードのテストだろ
■ このスレッドは過去ログ倉庫に格納されています