【PHP】下らねぇ質問はここに書き込みやがれ 61 at PHP
[2ch|▼Menu]
[前50を表示]
500:nobodyさん
07/12/31 04:09:21
クッキーに保存して良いのはセッションIDのような、ワンタイムパスワードっぽいのだけ。

501:nobodyさん
07/12/31 04:44:33
まず読め→【PHP マニュアル】URLリンク(www.php.net)
PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り

◆前スレ
【PHP】下らねぇ質問はここに書き込みやがれ 60
スレリンク(php板)

◆質問する時の注意
・ 自分のIDを表示させること。(メール欄に何も記述しないこと。空白も入力しちゃダメ)
・ サーバーのOS(Linux、Windows他)、WebサーバーとPHPの種類やバージョン等を明記すること。
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。

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

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

【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで

502:nobodyさん
07/12/31 04:46:57
KY

503:nobodyさん
07/12/31 04:59:41
いっそのことテンプレをNGワードにしてしまおうか。

504:nobodyさん
07/12/31 05:18:46
普通に答えてやればいいのに

505:nobodyさん
07/12/31 10:13:13
自信満々な態度でテンプレを貼り付けてくるバカを見ると失笑を買う

506:nobodyさん
07/12/31 14:09:09 ExHZywTc
phpでMySQLからデータを引っ張ってきて、XMLに加工して出力してるんですが、
XMLの加工そのものは成功してて、IEなんかのブラウザで見てる分には問題ないんですが、
Ajaxで非同期受信すると、responce has no propertiesとなってしまいます。
(status=4を受信できないっぽい)

上記のエラーは、FirefoxのFirebagで見てます。
Firebag上は、ちゃんとXMLが取得できてるので、php側からstatusの4を送信できればいいんだと思うんだけど、やり方わかる人っていますか?

507:nobodyさん
07/12/31 14:09:53 ExHZywTc
もしくは、Ajax用にphpで動的にXMLの生成を経験した人っておりますか?

508:nobodyさん
07/12/31 14:21:09
どうせどっかでタイプミスしてんだろ

509:nobodyさん
07/12/31 14:21:27
質問する時は、せめて「どうすればいいですか?」って聞き方にした方がいいと思いますよ。
わかる人、経験した人ってのは案外多いもんです。

510:nobodyさん
07/12/31 14:29:56 ExHZywTc
phpでxmlを出力すると、ヘッダーが違うからっぽいですね。
何を出力すればいいんだろ?

>>508
してないです。

>>509
はぁ・・・


511:455
07/12/31 14:32:14
> php側からstatusの4を送信できればいいんだと思うんだけど

HTTPのことを全く理解せずにAjaxとかやってるやつって
色々大変なんだろうなー

512:nobodyさん
07/12/31 14:33:17
ヘッダなら、これで

header("Content-Type: application/xml; charset=utf-8");


513:nobodyさん
07/12/31 14:37:06 ExHZywTc
自己レスです。やっぱりヘッダでした。無事解決しました。

514:nobodyさん
07/12/31 14:39:10 ExHZywTc
>>511
Ajaxやったことない人からすると、羨ましいですか?

>>512
はい、それです。やっぱ実力のある人は回答をスパッと出しますね。
実力無い人って、なんでウザイんですかね?

515:nobodyさん
07/12/31 14:40:39
>>514
そうそうお前みたいに質問者の癖に無駄に解答者煽ったりとかな。
本当に勘弁して欲しいわ。早く巣に帰れ。

516:nobodyさん
07/12/31 14:43:42

「実力のある人は回答をスパッと出しますね」

実力のないやつがえらそうにこういうこと言うのって恥ずかしいなあ。

"responce has no properties"

"Firebag"

この手の注意力散漫なやつはくだらない打ち間違いで時間を無駄にするタイプ。(中学生か?)

ふつーにFirefox使ってりゃ、この手のバカが打ち間違えないように
赤い下線で打ち間違いを教えてくれるのに、それでも間違えるってのは真性だなあ

517:nobodyさん
07/12/31 14:45:09
恥知らずの中二病が冬休みのお勉強中か?

はやく「php側からstatusの4を送信」してみろよカスが

518:nobodyさん
07/12/31 15:11:38 ExHZywTc
>>515-517
そんなに悔しかったんですか?(w
久しぶりに必死な人を見ました。
今年の歳暮れも大変だと思いますが(w 頑張って下さいね。

519:nobodyさん
07/12/31 15:23:53

Firebag(笑)

> 上記のエラーは、FirefoxのFirebagで見てます。
> Firebag上は、ちゃんとXMLが取得できてるので、



520:nobodyさん
07/12/31 15:24:29
>>518

随分舐めた態度の奴だなあ

何様のつもりなんだろう

521:nobodyさん
07/12/31 15:28:11
おまえが何様だ

522:nobodyさん
07/12/31 15:28:26
          ____
       / \  /\  キリッ
.     / (ー)  (ー)\
    /   ⌒(__人__)⌒ \        上記のエラーは、FirefoxのFirebagで見てます。
    |      |r┬-|    |
     \     `ー'´   /
    ノ            \
  /´               ヽ
 |    l              \
 ヽ    -一''''''"~~``'ー--、   -一'''''''ー-、.
  ヽ ____(⌒)(⌒)⌒) )  (⌒_(⌒)⌒)⌒))

523:nobodyさん
07/12/31 15:30:50
>>521

「php側からstatusの4を送信」ってのはいつになったらできるの?

524:nobodyさん
07/12/31 16:17:17
>>521は質問者ではないぞ。
大して解決策も出してない輩が粋がっていて、なんだかなーと。

525:nobodyさん
07/12/31 16:18:07
          ____
       / \  /\  キリッ
.     / (ー)  (ー)\
    /   ⌒(__人__)⌒ \        php側からstatusの4を送信
    |      |r┬-|    |
     \     `ー'´   /
    ノ            \
  /´               ヽ
 |    l              \
 ヽ    -一''''''"~~``'ー--、   -一'''''''ー-、.
  ヽ ____(⌒)(⌒)⌒) )  (⌒_(⌒)⌒)⌒))


        /_ノ  ヽ、_\
 ミ ミ ミ  o゚((●)) ((●))゚o      ミ ミ ミ
/⌒)⌒)⌒. ::::::⌒(__人__)⌒:::\   /⌒)⌒)⌒)
| / / /     |r┬-|    | (⌒)/ / / //
| :::::::::::(⌒)    | |  |   /  ゝ  :::::::::::/    だっておwwwwwwwww
|     ノ     | |  |   \  /  )  /
ヽ    /     `ー'´      ヽ /    /
 |    |   l||l 从人 l||l      l||l 从人 l||l  バンバン
 ヽ    -一''''''"~~``'ー--、   -一'''''''ー-、
  ヽ ____(⌒)(⌒)⌒) )  (⌒_(⌒)⌒)⌒))

526:nobodyさん
07/12/31 18:23:23 ExHZywTc
今、家の用事から帰ってきました。
まぁリアルで高校生なんですけど、高校生より劣っていることが
そんなに悔しかったんですか?(w

527:nobodyさん
07/12/31 18:26:45 ExHZywTc
まぁ高校生でもプログラム歴5年くらいあるからなぁ。
PHPは1年だけど(w
おっさん、めげるな!

528:nobodyさん
07/12/31 18:29:44
NG推奨 ID:ExHZywTc

いい加減しつこい。

529:nobodyさん
07/12/31 18:36:41
しつこさは同意だが、おまえも同じくしつこい野郎だな

530:nobodyさん
07/12/31 18:38:52
5年もやってて>>506か。頭の病気かも分からんね。

531:nobodyさん
07/12/31 18:41:07
いちいち反応するなよ。はい次の質問者どうぞ。

532:nobodyさん
07/12/31 18:41:25
極論厨死ね、リアルで死ね

533:nobodyさん
07/12/31 18:44:12 3CT6jxWV
投稿フォームでURLリンク(yahoo.co.jp)のようなアドレスを自動リンクさせるには
正規表現で<a href=""></a>を加えて置換する以外に何か方法ありますか?

534:nobodyさん
07/12/31 18:46:14
>>533
URLかどうかを判断する方法は正規表現以外でもできるが、結局は置き換えになる。

535:nobodyさん
07/12/31 18:52:11
URL入力欄を設ける

536:nobodyさん
07/12/31 18:58:49
>>535
おまいは何を言ってるんだ

537:nobodyさん
07/12/31 19:01:45
>>536
頭の固い馬鹿だな

538:533
07/12/31 19:02:09 3CT6jxWV
>>534-535
ありがとうございました。
都合のいい正規表現を考えるか、探した方が良さそうですね。

539:nobodyさん
07/12/31 19:36:21
>>537
ちょww質問の意味を汲み取れてない馬鹿はお前だろww
投稿フォームでアドレスの入力があった場合のオートリンクの話をしてるのに
なんでURL入力欄を設けるとかイミフなこといっちゃってるわけ?wwww

540:nobodyさん
07/12/31 19:43:39
必死な釣り人がいるが
低学歴は数年後にちゃんとみじめな人生送ることになってるから
放置しておいてやろう
家が金銭的に小康状態を保っているから
他にやることが無いから書き込みをしているんだ
今の彼は最高に輝いている

541:nobodyさん
07/12/31 19:47:16
煽らんでいいからおとなしく自分の非を認めて黙って引っ込んどけよ。

1. URL入力欄
URLリンク(www.example.com) (自サイトのURL)

2. 投稿フォーム
こんにちは。よかったらサイトに遊びに来てください。
最近 URLリンク(www.2ch.net) にもたまに出没しています。


1と2で張られたリンクには関連性はないだろ。

542:nobodyさん
07/12/31 20:41:37
>>538
正規表現関連、英語で良ければ
URLリンク(regexlib.com)
が便利。

543:nobodyさん
07/12/31 22:34:43 zQ+yU81P
たとえば
<name>ひろゆき</name>
って文字列があるとして、ここから「ひろゆき」だけを抜き出すには、どんな方法がスマートなの?
substrとstrposでゴチャゴチャ処理するのが嫌なんだけど。

544:nobodyさん
07/12/31 22:36:38
>>543
>>542

545:nobodyさん
07/12/31 22:36:53
>>543
DOM
SimpleXML

546:nobodyさん
07/12/31 22:46:18 zQ+yU81P
>>545
xmlって言ってないのに気を遣ってくれてありがとう。
simplexml使ってみます


547:nobodyさん
07/12/31 23:01:32 fLI7N5P/
インクルードさせて使うファイルが直接ブラウザで開かれたときに
エラーを返す方法ってありますか?

そもそもそんなこと気にしないで良いんでしょうか?

548:nobodyさん
07/12/31 23:04:14
.htaccessとかでインクルードさせる鯖アドレスだけを許可すればいんじゃね。
order deny,allow
deny from all
allow from localhost

みたいな

549:nobodyさん
07/12/31 23:07:17
ドキュメントルートの上に置けよと

550:nobodyさん
07/12/31 23:07:40
includeする時は別にHTTPでアクセスする訳じゃないから
localhost許可する必要すらないよ。

普通に全て拒否すればおk

551:nobodyさん
07/12/31 23:12:28
おいらはクラスや関数にして、直接呼び出しても出力や処理が実行されない形で書くから、
そういうのは気にして無いな。

その他には、他の人と重複するけど、
・Webサーバから直接アクセスできない場所に置く
・htaccessを使うなどして、アクセスを制限する
・設定ファイルなどで定数を設定して、インクルードファイル内でそれを確認
ってところかな。

552:nobodyさん
07/12/31 23:22:44
Webサーバからアクセスできない場所に置いたらincludeできねーだろw

553:nobodyさん
07/12/31 23:26:57
まぁ所有者と権限の設定をきちっとしろよという事だな


554:nobodyさん
08/01/01 00:01:03
あけおめ

555:nobodyさん
08/01/01 00:03:26 QS3lzF/U
くわしい解説ありがとう
勉強になりました

あけましておめでとうございます!

556: 【中吉】 【1298円】
08/01/01 00:42:52
<?php echo "A Happy New Year !!\n"; ?>

557:nobodyさん
08/01/01 01:54:00 mia1J22w
PHP5の正規表現について質問です。
PHP5.2.5 (cli) を使用しています。

1. PHPスクリプトのエンコードはUTF-8
mb_regex_encoding('UTF-8');
mb_internal_encoding('UTF-8');
2. URLリンク(2ch.net) を fsock で取得(これは問題なし)
3. mb_convert_encoding で UTF-8 に変換(これも問題なし)
4. その文字列を正規表現で処理…(ここで問題発生)

//if (mb_eregi('<div[^>]*>(?:(?!</div>)(?:.|\s))*?利用者各位', $body, $matches)) // 動かない(エラーも吐かずに停止状態になる)
if (mb_eregi('<div[^>]*>(?:(?!</div>)(?:.|\s))*?利用者各位', $body, $matches)) // 動く
print_r($matches);
else echo 'NO MATCH';

正規表現的に問題は無いと思うのですが…
「(?!</div>)」を消したり、「(?:.|\s)」を「(?:.|s)」や「.」にすると動きます。
「.」が改行にマッチするので、「.」に置換すればいいのですが、何故この様な事になるのか解りません。
何か無限ループ的なことになっているような気も…

558:nobodyさん
08/01/01 02:58:34 mia1J22w
確認用ソースです。[\r\n] でも発生する事があるようです。
URLリンク(abc.s65.xrea.com)

559:nobodyさん
08/01/01 03:19:28 mia1J22w
PHP4.4.7だと正常に動作しました。
MLog: [PHP-users 29514] Re:UTF-8、正規表現で全角スペースがヒットしないことがある?
URLリンク(mlog.euqset.org)
見たいなのも有るようなので、仕様(納得行かないのでバグのような気がしますが)でしょうか・・・?

560:nobodyさん
08/01/01 03:21:45
>>559のURLは関係無かったようです

561:nobodyさん
08/01/01 04:44:18
まず読め→【PHP マニュアル】URLリンク(www.php.net)
PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り

◆前スレ
【PHP】下らねぇ質問はここに書き込みやがれ 60
スレリンク(php板)

◆質問する時の注意
・ 自分のIDを表示させること。(メール欄に何も記述しないこと。空白も入力しちゃダメ)
・ サーバーのOS(Linux、Windows他)、WebサーバーとPHPの種類やバージョン等を明記すること。
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。

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

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

【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで

562:nobodyさん
08/01/01 04:48:03
>>561
そろそろいい加減にしないとアク禁されんぞ

563:nobodyさん
08/01/01 06:09:31
PHPで、既存のクラスにメソッドを追加することはできませんか?
RubyやPythonやJavaScriptでは、既存のクラスに対してあとからインスタンスメソッドやクラスメソッドを追加できるんですが、同じことをPHPでしようとして、やり方が分からず困ってます。
なおこの質問はPHP批判ではなく純粋に質問なので、「Ruby使えやボケ」とかはなしでお願いします。

564:nobodyさん
08/01/01 06:13:35
>>557
その現象が発生する $body はどんなの?
なるべく短いのを書いてみて。

565:nobodyさん
08/01/01 06:18:22
>>563
PHPをハックすればできるんじゃない?
ていうか既存のクラスいじるとかトリッキーなことしないで、
継承してからいじればいいと思う。
クラスの再利用ってそういうものでしょ。

566:nobodyさん
08/01/01 06:45:56
>>565
継承すると別のクラスになります。
使おうとしいてるライブラリがクラス名を固定しているため、他のクラスは使えません。
factory methodとかDIコンテナを使っていればいいのですが、そうではないので、継承では解決できません。


567:nobodyさん
08/01/01 06:52:45
単純な興味なんだけど
何のクラスにどういうメソッドを追加しようとしてんの?

568:nobodyさん
08/01/01 06:59:41
>>557
止まってるんじゃなくて、マッチングに時間がかかってるだけみたい。
対象文字列を短くしたら、数秒で終わるようになった。
たぶんeregi()のマッチングアルゴリズムがまずいんだろう。

UTF-8でいいなら、mb_eregi()のかわりにpreg_match()を使って、パターンに u オプション使えばいい。

それから、質問するときは現象が発生する最小限のコードにしてほしい。
getPage()とかいらんから、対象文字列を短くしてコードに貼付けるべし。

569:nobodyさん
08/01/01 07:02:35
つかあえてeregi使う利点ってあんの?

570:nobodyさん
08/01/01 07:03:40
>>567
privateやprotecedになっているインスタンス変数に対して、publicなアクセッサを定義したいというだけです。
他人が作ったまずい設計のクラスを、なんとかして使わなければいけないときに、RubyやPythonだとなんとかできてしまうので、同じことがPHPでもできたらいいなと思って。

571:nobodyさん
08/01/01 07:19:12
ふーん、ま無理だから自力で何とかするのがいいかと

572:nobodyさん
08/01/01 07:37:33 9i91PKAG
皆さんあけおめです

php_qrってのを使おうと思ったんですが、インスコまではやったんだけど
php_output_from_zvalがみつかんねぇってこと言われました
php_output_from_zvalってなんのパッケージ入れればいいんですか?


573:nobodyさん
08/01/01 07:46:35
PHPのバージョンが合ってないんじゃね

574:nobodyさん
08/01/01 07:54:18 9i91PKAG
>>573
php4なんですが、php_qr-0.1.0.tgzとphp_qr-0.1.3.tgzを試したんですが出来ませんでした。
php4ではどのバージョンを使えばいいんでしょうかね?

とりあえずエラーメッセージ載せておきます

Warning: dl(): Unable to load dynamic library '/usr/lib/php4/qr.so' - /usr/lib/php4/qr.so: undefined symbol: php_output_from_zval in /var/www/html/index.php on line 3


575:nobodyさん
08/01/01 09:04:48
>>564,568
有難うございます。色々試してみた所、仰るとおり、
PHP5だと何故か異常に時間が掛かるだけで(PHP4だと一瞬)、固まっている訳ではなかったようです。
どういう表現&対象文字列だと遅くなるのかがよく解らなくて困りますが…

一応、テストに使用したスクリプト、対象のソース、結果を纏めた物を用意してみました。
URLリンク(abc.s65.xrea.com)

後、異常に遅い表現は、preg_match + i,s,uオプション ではマッチしないようです(PHP4.4.7のmb_eregiだとマッチする)。
もう訳が解りません…

576:nobodyさん
08/01/01 09:27:18
>>574
そりゃドキュメントなりリファレンスなりreadmeなり見れば書いてあるんじゃないの
あとは作者に聞け

577:574
08/01/01 09:54:04
しょうがないからコード書き換えた
php_qr.cの594行目のチェックをはずしたらうまく行ったっぽい


578:nobodyさん
08/01/01 10:08:13
>>575
//if (preg_match('{<div[^>]*>(?:(?!</div>)(?:.|[\r\n]))*?管轄裁判所)}isu', $body, $matches)) // NO MATCH(何故一致しないのかわからない…)

i,s,uはパターン修飾子だから、 /正規表現/isu の書式じゃないの?
URLリンク(jp.php.net)



579: 【大凶】 【1876円】
08/01/01 10:15:38
自分で正規表現考えながら書くのは結構好きなんだが、
他人が書いてるものを見るとわけがわからなくて嫌いになりそうになるよな。

580: 【大凶】 【1905円】
08/01/01 10:24:01
そこでコメントですよ

581: 【末吉】 【1693円】
08/01/01 10:35:04
大凶 2連チャンとかw

582:nobodyさん
08/01/01 10:56:15
>>578 は関係ないっぽい。忘れて。

583: 【吉】 【1505円】
08/01/01 13:54:05
この板の連中は運悪いなw
今年もくだらねぇ質問して、時には回答にまわって勉強させてもらうぜ。
ヨロシクな

584:nobodyさん
08/01/01 14:43:07
コーディングが冗長になると、スクリプトの動作速度も鈍くなったりする?

585:nobodyさん
08/01/01 15:02:55
とんでもない冗長なら遅くなるね

586:nobodyさん
08/01/01 15:06:59
理論的には単純にコードが長くなれば誤差程度だが当然影響は出る
ただ100行のコードが1万行になるわけではないだろ?
せいぜい数行〜数十行増えるだけのはずだ
そうなると体感動作速度は一緒だし実測しても変わらない
気にする必要はないからわかりやすく書くよろし
間違っても条件文で読みにくい三項演算子なんて使うなよ

587:nobodyさん
08/01/01 15:31:35
行数で判断できるもんじゃないよ

588: 【豚】 【542円】
08/01/01 15:33:09
2chの書き込みは行数で判断できるから3行以上の長文はスルーだな

589:nobodyさん
08/01/01 15:35:00
>>588にスパムフィルタとか作らせたら凄いことになりそw

590:nobodyさん
08/01/01 15:35:06
気になるならプロファイラ使って調べれば良いんじゃね。
あとで使い勝手とか教えてくれたら嬉しい。

591:584
08/01/01 15:56:16
>>585-590
レス、thx.
ちょっと安心したわ。
プロファイラってのも使ってみようと思う。
ありがとう。

592:nobodyさん
08/01/01 16:14:59
>>588
豚ってwwwwwwww

593:nobodyさん
08/01/01 17:29:15 F2c2JMdr
setcookieのドメインの所に、
クッキーを与えるドメインとは別のドメインを書いても
別のドメインでそのクッキーを使えるようにはならないのでしょうか?
やってみたけど上手くいかないので、やり方が悪いのか根本的に出来ないのかを知りたいです。

594:nobodyさん
08/01/01 17:31:31
$sql = "SELECT id,pass FROM login WHERE id = '".$id."' AND pass = '".$password."'";
$result = mysql_query($sql, $link) or die("クエリの送信に失敗しました。<br />SQL:".$sql);

この記述でクエリの送信に失敗しました と出るのですが
記述が間違っているんでしょうか?

595:nobodyさん
08/01/01 17:43:33
>>593
多分だけど、それが可能だとしたら他のドメインのcookieを書き換える事が可能ということに
なるので、ブラウザ側が許可しない気がする。

596:nobodyさん
08/01/01 17:49:21
>>594
mysql は使ってないから、詳しくは知らないけど、これで調べれば少しは判るかも。
URLリンク(jp.php.net)

597:nobodyさん
08/01/01 18:02:26
>>596
その関数を使ってみたところ
単純にデータベース接続が完了してなかったみたいでしたorz

くだらない質問にありがとうございました。

598:nobodyさん
08/01/01 19:52:12 gtyeLFx+
少人数利用のBBSで
setcookie("pass", $pass,time()+60*60*24*30);
$pass = $_COOKIE["pass"];
if($pass == abc){BBSを表示}
を使って、簡単なログイン制限を掛けてるのですが、
この処理のあるbbs.phpを直接表示した場合、IE7.0でもFireFoxでも全く問題なく処理されるのですが、
bbs.phpをIE7.0でインラインフレームを使い入れ子にした場合、
フォームの処理を行うとクッキーがクリアされて、またpassの入力画面に戻ってしまいます。
FireFoxでは問題ないようなのですが、インラインフレームの利用で何か特別な問題が起こることはあるのでしょうか?

599:nobodyさん
08/01/01 21:46:01
IEとFirefoxではcookieが共有されるセッション管理の単位が違うせいかな。

同じPCから複数のユーザとしてログインする必要がないなら、 setcookieで path とか domain も指定すれば
cookieが共有される気がする。

600:nobodyさん
08/01/01 22:55:23
javaでいう static intializer はPHPではどう書きますか。

class Foo {
 static Map table = new HashMap();
 static { // static initializer
  table.put("<", "lt");
  table.put(">", "gt");
  table.put("&", "amp");
  table.put("¥"", "quot");
 }
}

601: 【大吉】 【314円】
08/01/01 23:02:33
>>1

602:598
08/01/01 23:04:36 gtyeLFx+
>>599
ここでも仕様が違うんですね。
他の方法を試してみます、どもでした。

603:nobodyさん
08/01/01 23:30:56
Parse errorでunexpected T_PAAMAYIM_NEKUDOTAYIMとか出てきた
ハァ?何これフザケテンノ?
URLリンク(php.liukang.com)

ぐぐってみたら同じこと思った人がいたようで
URLリンク(p0t.jp)

604:nobodyさん
08/01/01 23:43:58
ユダヤの陰毛でつね

605:nobodyさん
08/01/02 03:58:58 xlZOpAZW
画像レスできる板とできない板のある掲示板の画像レスできない板で
投稿フォーム改造して画像レスを送ってみたら
アップロードされちゃったんですが見ることができません。
これをHTMLやヘッダに手を加えて画像レスが見れる状態のHTMLを送って
もらうことはできますでしょうか?
PHPを使ってる掲示板なのでここで質問してみました
よろしくお願いします

606:nobodyさん
08/01/02 04:25:51 zb153+EZ
12345678790
みたいな可変する文字列のn番目に文字列"\n"を挿入する場合、
substrで切り出してシコシコ成形する以外にスマートな方法ありませんか?

607:nobodyさん
08/01/02 04:44:42
まず読め→【PHP マニュアル】URLリンク(www.php.net)
PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り

◆前スレ
【PHP】下らねぇ質問はここに書き込みやがれ 60
スレリンク(php板)

◆質問する時の注意
・ 自分のIDを表示させること。(メール欄に何も記述しないこと。空白も入力しちゃダメ)
・ サーバーのOS(Linux、Windows他)、WebサーバーとPHPの種類やバージョン等を明記すること。
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。

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

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

【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで

608:nobodyさん
08/01/02 06:24:31 XSzMXv90
sqlへのselectの結果(オブジェクト化したもの、$obj)に対して、
$obj->NAMAE で名前カラムのデータが求められるとします(カラム名は必ず大文字)
で、上記の呼び出しを関数化したとき
function yobidashi($name){
 $name=strtoupper($name);
 return $obj->name;
}
としても上手くいきません
$obj->の後に続くのはカラム名でなければいけないからなんですが、
どういう書き方にしたらいいのかわかりません
どなたかアドバイスお願いします

609:nobodyさん
08/01/02 06:46:53
>>608
$obj->$name

610:nobodyさん
08/01/02 07:34:16
4:44 のテンプレ貼り ktkr

611:nobodyさん
08/01/02 07:51:34
手動スクリプト乙w

612:nobodyさん
08/01/02 08:26:14
>>608
いまいち状況がワカラン中でレスをするが・・・・
return $obj->$name;

これでどう?
関数呼び出す時は呼び出し方の例も記載すると
レスし易いと思う



613:nobodyさん
08/01/02 08:56:01
>>608

return $obj->__get($name);

ではどうですか?

614:nobodyさん
08/01/02 08:59:39
>>608
そのオブジェクトを返してる部分にメソッドを追加する

615:nobodyさん
08/01/02 09:49:13
>>608
global $obj;

616:nobodyさん
08/01/02 10:06:19
>>608
evalを使うしか思いつかない。
URLリンク(jp.php.net)

return eval('return $obj->'.$name.';');
ってかんじかな。


617:nobodyさん
08/01/02 10:12:07
ありがとうございます
単純に$obj->$nameでOKでした すみません、クダ質で…
evalとかglobalとか調べてついでに覚えます
ほんとにありがとう

618:616
08/01/02 10:17:01
>>617
そんな書式があったのか...。
逆に勉強になった。ありがと。

619:nobodyさん
08/01/02 12:44:05
Active Perlをインストールしないと 「.pl」は動かないの?

620:nobodyさん
08/01/02 12:52:33
答えてるやつも大分初心者だな

621:nobodyさん
08/01/02 14:12:54
そんな下らない事を書かずにはいられない620は人生初心者だな

622:nobodyさん
08/01/02 16:30:00
>>617
一番覚えるべきなのは「可変変数」かと

623:nobodyさん
08/01/02 19:05:49
>>619
Windowsでの話ならその通り。あくまで中身がPerlだったらの話だけど。
別にActive Perlじゃなくてもいいけど、定番だし普通これかな。
Linuxがどうかは知らない。

んでPHPと関係ないんで、次からはスレちゃんと選んでね。

624:nobodyさん
08/01/02 19:27:01
そういえば長いこと*.plのうんこアイコン見てないな

625:nobodyさん
08/01/02 20:42:30 lW+cmhhe
>>623 ありがとうございます 
PHPとPerlを同じものと勘違いしていました すみません 

626:nobodyさん
08/01/02 21:55:46 XSzMXv90
jpgファイルが存在するかどうか確認する関数ってないですか?

627:nobodyさん
08/01/02 22:08:15
file_exists

628:nobodyさん
08/01/02 22:08:22
どういう使い方を想定してるのかよく分からんので、適当に推測して答えると、

想定用途 : 得ろサイトの直リンクのURLを文字列として持っていて、
       それがまだ取得可能かどうか調べたい

答え : getimagesize() で充分。
    getimagesize(そのURL)、あるいはファイルを取得してから、getimagesize()

629:nobodyさん
08/01/02 22:14:46
クラスを使って、プログラムしてる人どれくらいいる?

掲示板を作ってみようと思うんだけど、クラス……というかオブジェクト指向がいまいち理解出来ない。
やっぱし、これくらい使いこなせないと掲示板自作するのは早いかな。

630:626
08/01/02 22:19:01 XSzMXv90
>>627
ありがとう
if(file_exists("URLリンク(jp2.php.net)")){
echo "ファイルあったよ";
}else{
echo "ファイルなかった";
}
というのを試したんだけど、「なかった」と言われます
マシン内の画像で試してもそういわれます。絶対存在してるのに、、
何が原因でしょうか?
php5 apache2 winXPでやっています

631:nobodyさん
08/01/02 22:37:06
>>629
(゚Д゚)ノ ァィ

632:nobodyさん
08/01/02 22:37:22
志村〜

633:nobodyさん
08/01/02 22:38:43
>>629
bbsなんてそんなの理解せんでもできるよ
ただ後のメンテを考えるなら覚えた方が良いかも

あとから直すのなんてめんどくさくてやってられねーとなる

634:nobodyさん
08/01/02 22:39:17
クラスは使うけどオブジェクト指向の概念なんかわざわざ理解しようと思ったことはない

635:nobodyさん
08/01/02 22:47:04
>>629
覚えれば便利。

同じような処理を書くのにウンザリしてきたら、嫌でも辿り着くから心配ないよ。

636:nobodyさん
08/01/02 22:51:42
>>629
関係ない。
単なる概念、プログラムする対象の捉え方の違い。

637:629
08/01/02 22:54:29
レスありがとう。

荷がだいぶ軽くなったよ。
いろいろ、PHPの参考書とかネット上のOOP関連の文献を読み漁ってみたけど、やっぱりモヤッとしてた。

何にせよ、ありがとう。

638:nobodyさん
08/01/02 23:10:10
functionで関数作ってるんですけど
クラスとオブジェクト指向っていうのはそれとはまた違ったものなの?

639:nobodyさん
08/01/02 23:12:39
OOPっていうのは読んでいるだけじゃ身に付かない。
実際に自分でコードを書いてみて体で体験して初めて感覚がつかめる。
その感覚こそが大事。つまりオナニーだけしていてはダメで、
実際に女に入れてみなければ真理はつかめないということ。
そして真理をつかんだなら、ぜひオウム真理教の再興を祈念し、入信することを勧めたい。

640:nobodyさん
08/01/02 23:16:11
オウムなんか再興しないでいいだろ
>>639がセックス教団作ってよ

641:nobodyさん
08/01/02 23:18:30
>>638
関数でハンドルを取る奴があるとするだろ?
例としてファイルハンドルとしようか

fread(file,num)

↑をOOPではハンドルを主体にして呼ぶ↓という感じ

file->fread(num)

メソッドに操作対象を渡すか、操作対象からメソッドを呼ぶかという違い

642:nobodyさん
08/01/02 23:19:38
>>638
class と function はまったく別物。
URLリンク(www.php.net)

643:nobodyさん
08/01/02 23:25:06 EFH6C9iG
大規模なもん書く予定なんで
クラスについておぼえときます・・・

644:nobodyさん
08/01/03 01:26:52 PuYJW96T
$array = array("aaa","bbb","ccc")

をechoした時

"aaa","bbb","ccc"

と表示させたいのですが、forを使う以外の方法はありませんでしょうか?

645:nobodyさん
08/01/03 01:31:37
>>644
echo '"'. implode('","', $array) .'"';

646:644
08/01/03 01:35:00
>>645
出来ました!こんなやり方があったんですね。
勉強になりました。ありがとうございました。

647:nobodyさん
08/01/03 01:35:13
>>645
俺が投稿しようとしてた内容と1文字も違わなくてワロタ

648:nobodyさん
08/01/03 02:08:57
何に使うんだろうな

649:nobodyさん
08/01/03 04:45:11
まず読め→【PHP マニュアル】URLリンク(www.php.net)
PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り

◆前スレ
【PHP】下らねぇ質問はここに書き込みやがれ 60
スレリンク(php板)

◆質問する時の注意
・ 自分のIDを表示させること。(メール欄に何も記述しないこと。空白も入力しちゃダメ)
・ サーバーのOS(Linux、Windows他)、WebサーバーとPHPの種類やバージョン等を明記すること。
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。

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

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

【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで

650:nobodyさん
08/01/03 08:23:14 9iX7ULgu
URLリンク(phpspot.org)

ここにある?filename=**で**をincludeするのが危険なのはわかったんだけど、こういうのも危なかったりする?
$text = htmlspecialchars($_GET['text']);
$textfile= './txt/'.$text.'.txt';

readfile($textfile);

651:nobodyさん
08/01/03 09:11:37
>>650
text=../../hogehoge みたいなアクセスも出来てしまう気がする。
ディレクトリ指定が不要なら basenameを使うべき。
URLリンク(jp2.php.net)

あとファイル名に対して htmlspecialchars を使うのに、意味があるのかちょっと疑問。


652:nobodyさん
08/01/03 09:15:33
>>651
ためしにtext=../../hogehoge

htmlspecialchartは元ソースに$textがなかったときに{$text}がみつかりませんでした。って表示してるからだ。ごめん消し忘れた。

653:650
08/01/03 09:21:41 9iX7ULgu
ああ、途中で書いちまった。
ためしにこのphpファイルと同じディレクトリにaaa.txtを置いて?text=../aaa ってやってもWarning: readfile(./txt/../aaa.txt) [function.readfile]: failed to open stream: No such file or directory in C:\www\aaa.php on line *。になる。


654:650
08/01/03 09:25:59 9iX7ULgu
あ、ごめん、aaaよみyこめた。basenameつかってみるー

655:650
08/01/03 09:47:57 9iX7ULgu
うーん、、困った。
できればディレクトリ指定でファイルを読み込みたいんだけど、どうにかならないものですかね・・・

656:650
08/01/03 09:56:17 9iX7ULgu
eregで$textに.が入ってたら不正扱いにするとかでおkかな?
ごめん俺書き込みすぎだ。

657:nobodyさん
08/01/03 10:16:03
一般論として、不正な文字列かチェックするのではなく、正当な文字列かチェックするようにしたほうが良い。

658:nobodyさん
08/01/03 10:27:05
if(eregi("^[a-z0-9_]+$",$text)){
$textfile = './txt/'.$page.'.txt';
}else{
$textfile= './txt/error.txt';
}

こんなかんじになりました。大丈夫かな・・・
>>651>>657ありがとう。

659:626
08/01/03 10:33:10 uA4WBKbO
すみません、>>630の問題ですが、何が原因に考えられるでしょうか?
お手隙の方、意見いただけると嬉しいです お願いします

660:nobodyさん
08/01/03 10:40:55
>>659
>>628 >>632 が不憫すぎる。

原因は
URLリンク(jp.php.net)
URLリンク(jp.php.net)


661:nobodyさん
08/01/03 14:38:25 sD9SHXAa
セッションにユーザーのログイン情報を書き込み、ページ間のやり取りで使用してるんですが
これだと、セッションを破棄・ブラウザを閉じるかしない限り、
下記のように、他のページへ一旦移動してまた戻ってくることができますよね

ログイン画面→ID・PASS認証・セッション発行→専用ページ→他の見知らぬサイト→専用ページ

見知らぬサイト へ行ったら
専用ページへ直接入れないようにしてしまいたいんですがどういう手があるんでしょうか。
ちなみにセッション管理でやりたいんですが。。

662:nobodyさん
08/01/03 15:45:13
Cache-Control no-cache

663:nobodyさん
08/01/03 16:03:13
no-cache してもsession はサーバ・クライアント共に残ってる気がする。

664:nobodyさん
08/01/03 16:16:18
>>663
「気がする」じゃ、何の説得力もない。
学生ならバカ学生で済むが、社会人でそんな安い了見で仕事しているなら死んだ方がいい。
お前は人間の屑。

665:nobodyさん
08/01/03 16:20:29
>>664
まあまあ私のオッパイでも揉んで元気だしてよ

666:>>661
08/01/03 16:21:10
no-cacheはセッションに関係ないみたいですね。

667:nobodyさん
08/01/03 16:25:54
読解力がない人は人生楽しそうな気がする。なりたくはないが、うらやましい。

668:nobodyさん
08/01/03 16:26:17
専用ページを表示した時にsession破棄するんじゃだめなの?

669:nobodyさん
08/01/03 16:28:33 EPFlyde6
掲示板の書き込み終了後、リロードによる二重投稿防止を行いたいのですが、
ユーザーがフォームよりデータをサーバに送信後、サーバ側での処理についてご質問させていただきます。

1.ユーザーから送られてきたデータと、ログファイルの最終行のデータを比べる
2.1のデータがお互い違うデータであれば書き込み


このような処理を思いつきました。しかし、これだと2回ログファイルを開くことになるのですが、どなたか
もっとこうしたほうがいいっていうのがありましたらご指摘アドバイスお願いいたします。

670:>>661
08/01/03 16:29:57
>>668
一番重要なこと忘れてました;
専用ページは複数あって、その橋渡しにセッションを使っているんです。
セキュリティ面でセッションがいいかと思って。。

671:!omikuji !dama
08/01/03 16:31:50
>>661
・セッションデータに時間情報を入れて、専用ページではその時間情報ではじく。
 3秒ルールみたいなものだから厳密には要求通りじゃないが、
 セッションハンドラを使えば簡単に実装できる。
・専用ページ内での遷移は全てAjaxで行い、ブラウザの履歴・キャッシュを無意味なものにする
 めんどくさい
・そもそも外のページに行ってもいいじゃないか。
 重要なデータが漏れるのなら、サイト自体の作りに問題がある

672:nobodyさん
08/01/03 16:35:44
>>669
URLリンク(www.phppro.jp)
ここが参考になると思います

673:nobodyさん
08/01/03 16:47:34
>>671
うーん
やっぱり難しいんですかね・・・

674:nobodyさん
08/01/03 16:54:28 +JPyHTOV
soap関数を使ったアマゾンの検索サービスを作ろうと思っているのですが、
本に付いてきたサンプルを実行させた所、

-------------------------------------------
Fatal error: Uncaught SoapFault exception: [SOAP-ENV:Client]
We encountered an error at our end while processing your request.
Please try again in C:\Program Files\Apache Group\Apache2\htdocs\php\day06-2\
amazon.php:22 Stack trace: #0 [internal function]:
SoapClient->__call('KeywordSearchRe...', Array) #1
C:\Program Files\Apache Group\Apache2\htdocs\php\day06-2\amazon.php(22):
SoapClient->KeywordSearchRequest(Array)
#2 {main} thrown in C:\Program Files\Apache Group\Apache2\htdocs\php\day06-2\amazon.php on line 22
-------------------------------------------

この様なエラーが出てしまい実行できませんでした。
自分でエラーの出てる箇所を追ってはみたのですが、どうしても分からず困っています。
どうかよろしくお願いします。

ソースはこれです
URLリンク(ranobe.com)

675:nobodyさん
08/01/03 16:55:06
sessionのキーをcookieに保持しないようにすれば?
リンクのみでキーの受け渡しを行えば多分いけるはず
あとついでだからsession_regenerate_idで
毎回sessionid変えてやればいいんでない?



676:nobodyさん
08/01/03 17:09:46
>>674
21行目でエラー返ってるのに
22行目で変換しようとしてexception発生してるんじゃないかな
URLリンク(jp.php.net)


677:>>661
08/01/03 17:16:44 sD9SHXAa
>>675
ユーザ側が下手しなければセキュリティ的にも一番理想的かもしれない
ちょっと試してみます

678:nobodyさん
08/01/03 17:16:53
よく分からんがアマゾンからIDとかもらった?

679:nobodyさん
08/01/03 17:17:02
>>674

ぐぐると色々出てくる、なんなんだろうね。
URLリンク(www.google.co.jp)

680:674
08/01/03 17:52:55 +JPyHTOV
>>676>>679
色々とありがとうございます。参考になります。
もうちょい調べて頑張ってみます。

>>678
確か無くても実行できるはずなので、プログラム側の問題かと思います・・

681:626
08/01/03 18:21:01
>>660 >>628 >>632
気づかずすみませんでした
いまさらですが、getimagesizeを使わせてもらいました。
が、上手くいきません
とりあえずもうしばらく自分でがんばってみます ありがとうございました

682:nobodyさん
08/01/03 18:23:33
>>675
それだとさ
セッションIDの含まれたURLを保存しといただけで
直接専用ページに入れるんじゃ?
セキュリティ敵にもよくないんでは

683:nobodyさん
08/01/03 18:34:04
>>681
自分でやろうとしているところを邪魔して悪いが、うまくいくっぽい。XP/PHP5 実行はコマンドライン。

<?php
checkValidImageUrl('URLリンク(jp.php.net)');
checkValidImageUrl('URLリンク(jp.php.net)');

function checkValidImageUrl($url) {
if (@getimagesize($url)) {
echo "$url is valid.\n";
} else {
echo "$url is unvalid.\n";
}
}
?>

684:nobodyさん
08/01/03 18:35:43
unvalid はないな、invalidだ。恥ずかしい。うぇ。

685:nobodyさん
08/01/03 18:39:27
file_existsもコケてたから、URLのwrapperをoffにしてるんだろうね。

686:nobodyさん
08/01/03 18:45:42
>>685
file_exists は stat ファミリで、http/httpsはstatをサポートしてないから、onにしても動かないはず。

687:>>661
08/01/03 19:02:25 sD9SHXAa
>>682
そうなんですか
もうなんかどーにもorz

688:nobodyさん
08/01/03 19:05:42
>>682
過去のセッションを適切に破棄してやればそれは無い
破棄しなくても可能な時間はセッションの有効期限内のみだし

php5.1以降であれば
session_regenerate_id(true);
とすることで自動的に破棄される
あとはリロード時のURLチェック等入れればいける


689:nobodyさん
08/01/03 19:07:22
つーか専用ページに戻った時にセッション張られてると困ることって何があるの?

690:>>661
08/01/03 19:22:21 sD9SHXAa
えーとすいません。
phpゲームを開発してて、戻るボタンでNPCにまた話しかけたりとか無くしたいんです。
(でもこれってSESSION使えば二重処理とか発生することはないなそういえば・・・。)

とりあえず戻るボタン押したり、他のサイト行ったら
ページが表示されないようにできればこちらは万々歳ですから
>>675使ってみます。

691:nobodyさん
08/01/03 19:24:01
>>690
phpに詳しい奴ちょっと来い
スレリンク(news4vip板)l50


次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

4073日前に更新/264 KB
担当:undef