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

このエントリーをはてなブックマークに追加
1 忍法帖【Lv=40,xxxPT】
質問者はまず>>1を良く読むこと(必須!)
過去スレ、関連スレ、FAQなどは>>2-10辺り
次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。

◆前スレ
【PHP】下らねぇ質問はID出して書き込みやがれ 105
http://hibari.2ch.net/test/read.cgi/php/1304064660/
◆質問用テンプレ
【OS名】CentOS
【PHPのバージョン】5.3
【連携ソフトウェア】MySQL ImageMagick
【質問内容】

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

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

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

【その他諸注意】
・SQL・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
2nobodyさん:2011/06/05(日) 07:56:20.28 ID:???
関連リンク
■本家マニュアル   http://www.php.net/manual/ja/
■日本PHPユーザ会 http://www.php.gr.jp/
■PEARマニュアル  http://pear.php.net/manual/ja/
■メーリングリスト   http://ns1.php.gr.jp/mailman/listinfo/
■ZFマニュアル    http://framework.zend.com/manual/ja/
■Smartyマニュアル  http://www.smarty.net/manual/ja/

(以下英語)
■Zend本家      http://www.zend.com/
■Zend Framework  http://framework.zend.com/
■php | architect   http://www.phparch.com/
■Smarty       http://www.smarty.net
■Smartyマニュアル http://smarty.php.net/manual/en/
■PECL本家(英語) http://pecl.php.net/
3nobodyさん:2011/06/05(日) 07:56:31.19 ID:???
【簡易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プログラムとして実行された結果になる。
4nobodyさん:2011/06/05(日) 07:56:47.84 ID:???
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に保存?
 → 好きにしてください
5nobodyさん:2011/06/05(日) 15:27:09.03 ID:???
■過去ログ
【PHP】下らねぇ質問はID出して書き込みやがれ 105
http://hibari.2ch.net/test/read.cgi/php/1300302034/
【PHP】下らねぇ質問はID出して書き込みやがれ 104
http://hibari.2ch.net/test/read.cgi/php/1297669559/
【PHP】下らねぇ質問はID出して書き込みやがれ 103
http://hibari.2ch.net/test/read.cgi/php/1295956018/
【PHP】下らねぇ質問はID出して書き込みやがれ 102
http://hibari.2ch.net/test/read.cgi/php/1292670453/
【PHP】下らねぇ質問はID出して書き込みやがれ 101
http://hibari.2ch.net/test/read.cgi/php/1289793607/
【PHP】下らねぇ質問はID出して書き込みやがれ 100
http://hibari.2ch.net/test/read.cgi/php/1288168893/
【PHP】下らねぇ質問はID出して書き込みやがれ 99
http://hibari.2ch.net/test/read.cgi/php/1286938893/
【PHP】下らねぇ質問はID出して書き込みやがれ 98
http://hibari.2ch.net/test/read.cgi/php/1284805237/
【PHP】下らねぇ質問はID出して書き込みやがれ 97
http://hibari.2ch.net/test/read.cgi/php/1279833891/
【PHP】下らねぇ質問はID出して書き込みやがれ 96
http://pc11.2ch.net/test/read.cgi/php/1275032024/
【PHP】下らねぇ質問はID出して書き込みやがれ 95
http://pc11.2ch.net/test/read.cgi/php/1271636105/
6nobodyさん:2011/06/05(日) 15:27:54.48 ID:???
>>1
◆前スレ
【PHP】下らねぇ質問はID出して書き込みやがれ 106
http://hibari.2ch.net/test/read.cgi/php/1304064660/
7nobodyさん:2011/06/05(日) 15:28:58.32 ID:???
本スレ誘導
【PHP】下らねぇ質問はID出さずに書き込みやがれ 1
http://hibari.2ch.net/test/read.cgi/php/1289117484/
8nobodyさん:2011/06/05(日) 15:45:20.68 ID:???
>>1
9nobodyさん:2011/06/05(日) 15:58:23.63 ID:???
本スレ誘導
【PHP】下らねぇ質問はID出さずに書き込みやがれ 1
http://hibari.2ch.net/test/read.cgi/php/1289117484/
10nobodyさん:2011/06/05(日) 16:05:58.52 ID:zVaNXNf9
fsockopenを使って、httpクライアントを作成しているのですが、
サーバから送られてきたクッキーはどのように保存したらいいのでしょうか?
11nobodyさん:2011/06/05(日) 16:07:57.71 ID:???
12nobodyさん:2011/06/05(日) 21:23:41.48 ID:Er8j18ua
>>10
よく知らんが$http_response_headerあたりで拾えるんじゃないか?
13nobodyさん:2011/06/05(日) 23:12:02.79 ID:???
14nobodyさん:2011/06/05(日) 23:43:15.89 ID:???
お、こんな閑散としたスレも見ている人がいるもんですね

>>12
もしよければメアド晒しますのでメールで詳しく教えてもらえませんか?
1510:2011/06/05(日) 23:59:48.46 ID:zVaNXNf9
いいえ違います
なんとか解決しそうです
16nobodyさん:2011/06/06(月) 02:55:03.35 ID:???
>>15
もしよければメールで詳しく教えますのでメアド晒してもらえませんか?
17nobodyさん:2011/06/06(月) 11:18:27.85 ID:uG8m23n2
ファイルアップロードについてですが、
一度全てファイルをアップロードするまでファイルサイズ確認できませんでしたっけ?

500MB以上のファイルをアップした際にエラーを出すような処理を入れようと思うのですが・・・。
18nobodyさん:2011/06/06(月) 11:26:17.29 ID:???
違法うp厨乙
19nobodyさん:2011/06/06(月) 12:16:53.83 ID:uG8m23n2
どの辺が違法うpなのかわからん件・・・。
20nobodyさん:2011/06/06(月) 13:35:00.19 ID:???
>>17
> できませんでしたっけ?
がんばって思い出そう。
21nobodyさん:2011/06/06(月) 14:40:23.02 ID:???
PHPは . で文字列を結合しますが、

"aa"."bb"のようにスペースを入れない場合と、"aa" . "bb"の様に
スペースを入れた場合では挙動に違いはありますでしょうか?

シンタックス的にはどちらも大丈夫??
22nobodyさん:2011/06/06(月) 14:48:41.14 ID:???
問題ないけど
見た目的にはスペースあったほうがいいかもね
23nobodyさん:2011/06/06(月) 14:49:22.55 ID:???
>>17
http://www.php.net/manual/ja/features.file-upload.post-method.php
ちょっと読み進んでいったとこに書いてるで
24nobodyさん:2011/06/06(月) 17:21:07.91 ID:???
>>21
挙動に違いはないよ。
ただの2項演算子だから
25nobodyさん:2011/06/06(月) 18:43:55.91 ID:???
>>22>>24
レスどもです。

スペース付で書いていきたいと思います。
ありがとうございました。
26nobodyさん:2011/06/06(月) 22:52:59.94 ID:???
俺はスペース入れるの嫌い。どうでもいいけど
27nobodyさん:2011/06/06(月) 22:54:56.59 ID:???
俺はZendコーディング規約に則って書いてるから入れる
28nobodyさん:2011/06/06(月) 22:57:07.48 ID:???
"a".",b"."c"."d" //敷き詰めて
"a". "b". "c". "d" //引数風に
"a" . "b" . "c" . "d"

他言語で+を使う場合の見た目
"a"+"b"+"c"+"d"
"a"+ "b"+ "c"+ "d"
"a" + "b" + "c" + "d"

+のときは一番下が見やすいけどドットは見づらくて2番目が引数風で目なれしてるからいい
29nobodyさん:2011/06/06(月) 23:01:19.89 ID:???
変数の場合は?
30nobodyさん:2011/06/06(月) 23:11:04.40 ID:???
中身が文字列なら別に同じだろ?

$a . hoge() . "hoge" . $b[0] . $foo->var
31nobodyさん:2011/06/06(月) 23:26:58.57 ID:???
「Zendコーディング規約に則ってる」とか言ってて恥ずかしくない?
32nobodyさん:2011/06/06(月) 23:28:49.65 ID:???
なんで?
33nobodyさん:2011/06/07(火) 01:27:42.07 ID:XDqi+m/W
$hoge = (a,b,b,c);
$hoge = array_unique($hoge);
$hoge[0] = a;
$hoge[1] = b;
$hoge[2] = ;
$hoge[3] = c;

となりますが、何も入ってない$hoge[1]を消して
$hoge[0] = a;
$hoge[1] = b;
$hoge[2] = c;
とするにはどうしたらいいのでしょうか?
34nobodyさん:2011/06/07(火) 01:36:53.45 ID:XDqi+m/W
>>33
array_unique使ってれば普通に後者になるはず
たぶん多次元配列使ってるのが原因
注意: array_unique() は、 多次元配列での使用を想定したものではないことに注意しましょう。
35nobodyさん:2011/06/07(火) 01:40:03.01 ID:???
俺俺コードを書くなw
36nobodyさん:2011/06/07(火) 03:09:23.35 ID:???
気持ちはわかる
37nobodyさん:2011/06/07(火) 03:50:33.74 ID:???
僕僕コードw
38nobodyさん:2011/06/07(火) 04:02:49.90 ID:???
可愛い初心者来てくれないかなぁ
ドットで文字列の連結出来ること知らないで悩んでる奴とか萌える
39nobodyさん:2011/06/07(火) 11:29:34.63 ID:???
echo "a"."b"
って書くよりも
echo "a","b";って書くほうがPHPとしては早いんだよ
40nobodyさん:2011/06/07(火) 11:35:14.29 ID:???
配列が1から始まると思ってる奴は萌える
41nobodyさん:2011/06/07(火) 13:24:51.39 ID:???
前に " で括るか ' で括るかの話が出た時に " は中を解釈する必要があるから遅い って話があった
100万回程ループさせて何回か実行速度測ってみたら誤差で収まる範囲だった
最適化されて同じ中間コードになったと考えるのが間違いなさそうだが

まぁ、そんなシビアな実行速度を追及するなら最初からPHPを選ばないよなw
42nobodyさん:2011/06/07(火) 14:20:08.60 ID:???
へーその程度なんだ
理論上はシングル'のほうが早いってのは知ってたけど
コードを考えてループ回数を1000回から100回を2回にする程度しか考えてなかったなぁ
43nobodyさん:2011/06/07(火) 15:05:08.68 ID:???
かなり昔の違う言語での話なんだけど
数字の偶数を判断する一番効率の良い方法って話があって
最初は2で割ってあまりで判断するとか後の方ではインラインアセンブラで記述とかw
これはっと思える手法が出てきて
言語で持っている偶数を判断する関数と出力コードを比べてみたら

同じ出力コードになったとw

神様(言語開発者)の手のひらで踊らされたと感じた時だったなw
44nobodyさん:2011/06/07(火) 16:05:50.33 ID:???
コンパイラ製作者の手のひらというツッコミは野暮ですかね
45nobodyさん:2011/06/07(火) 16:09:27.39 ID:???
コード作ってるとたまに
「これは美しい!」ってコードが出来るけど
それ以外あんま気にしなくていいと思うよ
1000回ループ→100*2の200回ループどころか
1000回ループ→10*3の30回ループぐらいに出来ることもある

最初からそういうコードを思いつく人居るけど結構嫉妬心が芽生える
46nobodyさん:2011/06/07(火) 16:15:12.14 ID:???
試してないから条件式あってるかわからないけど

$ct = count($array);

$copy = array();
for ($i = 0, $j = ct - 1; $i < ceil($ct / 2); $i++, $j--) {
$copy[$i] = $array[$i];
$copy[$j] = $array[$j];
}

みたいな前から後ろからぶっこまれて快感2倍にならないだろうか
47nobodyさん:2011/06/07(火) 16:29:33.71 ID:???
>>46
やってみたらむしろ遅くなった
10万件でだいたいの平均が0.048
通常のやり方だと0.044
print_rした時のインデックスの順番もバラバラ
48nobodyさん:2011/06/07(火) 16:48:27.69 ID:???
しっかし最近のサーバーは速いよな
10万件で0.044とか

>>46
単純だと
foreach($array as $key => $data)
{
$copy[$key] = $data;
};

49nobodyさん:2011/06/07(火) 17:02:53.10 ID:???
>>46
お前面白いこと考えるな

昔はクライアント側で出来るのは全部クライアント側でやらせる、ってのが当たり前だったけど
今は変わってきてるのかな
50nobodyさん:2011/06/07(火) 19:13:11.17 ID:???
単一引用符にするのは、速度よりも中身を誤解釈しないようにじゃない
51nobodyさん:2011/06/07(火) 19:20:01.84 ID:???
なんかマジレスの流れなの?
$copy = $array; はだめなの?
ループアンロールしてみるとか?
$ct = count($array);
$copy = array();
if ($ct >= 2) {
for ($i = 0; $i < $ct - 1; $i+=2) {
$copy[$i] = $array[$i];
$copy[$i+1] = $array[$i+1];
}
}
if ($ct % 2) {
for ($i = $ct - 2; $i < $ct; $i++) {
$copy[$i] = $array[$i];
}
}
52nobodyさん:2011/06/08(水) 15:41:37.38 ID:HTJzrQPd
ファイルアップロードで何もエラーが出ません
ファイルをアップロードしても画面が切り替わって同じ画面のまま止まります

error_reportingはE_ALL
display_errorsはOnになっています

他に思い当たるところはないでしょうか
53nobodyさん:2011/06/08(水) 16:03:47.13 ID:???
アップロードできてるんじゃねえの?
54nobodyさん:2011/06/08(水) 16:35:03.59 ID:???
俺もそう思う
55nobodyさん:2011/06/08(水) 16:36:30.02 ID:???
思い当たることといえばコードを提出してないこと
56nobodyさん:2011/06/08(水) 16:53:01.98 ID:nregCZFe
$a = 0;
$b = 20;
$c = $a || $b;
echo $c;

$cは$aがtrueだったら$a falseだったら$b
というつもりでこう書いてみたのですが
20ではなく1と出てしまいます
期待通りの文を書くにはどうしたらいいのでしょうか?
57nobodyさん:2011/06/08(水) 17:06:47.20 ID:RiKFq158
memory_limitの設定って、セッションごとのメモリ最大という認識でOKですか?
58nobodyさん:2011/06/08(水) 17:11:34.00 ID:???
>>56
$a||$b←これは$aか$bが両方、またはどっちかがtrueだったらtrue
両方falseだったらfalseを返すだけだから
その場合$bがtrue、つまり$a||$bがtrueなのでtrue=1を返してるって事

if($a){
$c = $a;
}elseif($b){
$c=$b;
}
これでいいんじゃない?
他にも三項演算子とかの方がスッキリするかもしれないけど
5956:2011/06/08(水) 17:19:53.34 ID:???
>>58
ありがとうございます
JavaScriptとは勝手が違うのですね
三項演算子を使うことにします
60nobodyさん:2011/06/08(水) 17:27:09.11 ID:???
javascriptとphp両方使ってると変数宣言とかのミスがやたら増える
61。 ◆oDupeixhZv52 :2011/06/08(水) 18:13:39.15 ID:???
>>56
$c=$a ?: $b;
62nobodyさん:2011/06/08(水) 19:01:31.77 ID:???
三項演算子って省略してよかったのか
知らんかったわ
まぁ他の言語じゃエラー出そうだけど
63nobodyさん:2011/06/08(水) 19:47:21.63 ID:???
三項演算子の省略って割と最近のバージョンからじゃなかったっけ
64nobodyさん:2011/06/08(水) 19:59:18.43 ID:???
>>62
いや5.3からできるようになった
65nobodyさん:2011/06/08(水) 22:30:50.89 ID:???

ファイルをincludeするときにシフトJISの「構築」という単語があるとエラーになりますが
これはどのように回避したらいいんですか?
66nobodyさん:2011/06/08(水) 22:34:38.95 ID:3MuCM70m
このように書いてありますが。区切りの\と、文字の\が区別つかない場合はどうしたらいいですが?


直前にエスケープ文字の5C16を記述し、だめ文字を文字として正しく認識させる方法もある
http://ja.wikipedia.org/wiki/Shift_JIS
67nobodyさん:2011/06/08(水) 22:56:10.75 ID:???
再現できるコード出さないと
スレ的には>>3の1
68nobodyさん:2011/06/08(水) 23:57:40.79 ID:???
区別つかないわけないだろ
69nobodyさん:2011/06/09(木) 00:10:26.58 ID:???
>>66
バックスラッシュを表示できるフォントを使う
70nobodyさん:2011/06/09(木) 00:16:42.39 ID:???
ファイル操作の内部の処理で日本語(SJIS)なんぞ考慮されてねーから無理。
71nobodyさん:2011/06/09(木) 01:14:23.67 ID:???
てきとーなことぶっこいてんなよ。
Shift_JIS環境で
include 'dir\\構\\築.php';
はもちろん可能で、\の区別が付かないのは>>66がShift_JISを知らないだけ。
72nobodyさん:2011/06/09(木) 01:27:13.76 ID:???
ファイル名に2バイト文字使うとか論外だわ
73nobodyさん:2011/06/09(木) 01:33:43.54 ID:???
うむ、ファイル名に使うのは好ましくないな
後々バグばっか発生してその度に対処することになると思う
74nobodyさん:2011/06/09(木) 01:48:36.01 ID:???
>>71
構ってフォルダの築.phpはどうやるんだ?
windows環境で偶然うごいてるだけじゃねーか。
75nobodyさん:2011/06/09(木) 01:48:48.76 ID:???
まーたてきとーなことを
76nobodyさん:2011/06/09(木) 01:54:35.30 ID:???
まーたてきとーなことを
77nobodyさん:2011/06/09(木) 02:07:28.48 ID:???
無理でしたごめんなさい。
78nobodyさん:2011/06/09(木) 02:08:52.28 ID:???
'〜'
79nobodyさん:2011/06/09(木) 02:21:46.58 ID:RKfzSB8K
php.iniの設定で、エラー出力を標準出力にするかApacheのエラーログに出力するか
切り替えるオプションみたいなのってありませんでしたっけ?
80nobodyさん:2011/06/09(木) 02:25:55.46 ID:???
切り替えるのはないけど出すか出さないかはあったと思う
81nobodyさん:2011/06/09(木) 07:29:35.04 ID:???
82nobodyさん:2011/06/09(木) 15:24:03.59 ID:???
MPOファイルに対応した画像掲示板を作成しようとしているんですが、
アップロードされた画像ファイルのMIMEタイプを取得するにはどうすればよいですか?
getimagesizeではMPOに対応していないようで、JPEGと判別されてしまいます。
$_FILE['file']['type']もダメです。
何かよい方法はありませんか。

よろしくお願いします。
8382:2011/06/09(木) 15:30:07.76 ID:IAyqZkF/
すみません、ID出してませんでした。
84nobodyさん:2011/06/09(木) 15:50:26.93 ID:???
85nobodyさん:2011/06/09(木) 15:57:27.68 ID:???
MPOファイルとやらの現物みたことないけど、
ファイルヘッダーみてみなよ。
たぶんJPEGのヘッダーと同じなんだろう。
86。 ◆oDupeixhZv52 :2011/06/09(木) 16:57:12.01 ID:???
ちゃんと適合してるかってチェックはやってられないので、
preg_match( "/\\xFF\\xE2\\C\\CMPF\\x00/",$upfile)ぐらいでどうよ。
8782:2011/06/09(木) 16:57:35.73 ID:IAyqZkF/
ありがとうございます。

>>84
ぐぐって出てくるものは既にほとんど試してますがダメでした。

>>85
MPOファイルは最近のデジカメやnintendo3DSで扱われている立体視用の形式です。
中身はJPEGが2つくっついた構造です。
そのためJPEGと同じヘッダーなのかもしれません。

MIMEタイプでは判別できないんでしょうか。
PHP内部で中身解析して、APPなどで判別しないといけないんでしょうかね。
MPOファイルが開発されたのが確か2009年なので、もういい方法があるのかと思ったのですが…
8882:2011/06/09(木) 17:07:41.84 ID:IAyqZkF/
>>86
すみません、急に外出しないといけなくなったので、ちゃんとは見れてないんですが、
書いていただいたコードで確認したらfalseになってしまいました。
帰ってきてからもう一度確認してみます。
ヘッダーが同じかもしれないので、無理かもしれません…
8982:2011/06/09(木) 17:14:45.92 ID:IAyqZkF/
続けてすみません。
ちなみに、今回MPOファイルに対応する経緯ですが、
nintendo3DSにブラウザが実装されたため、3DSからもアップ・ダウンができるようにするのですが、
3DSはMPOファイルをアップする時に拡張子をjpgにしてしまいます。
それをMPOとして保存したいと思っています。
そのための判別が必要です。
90nobodyさん:2011/06/09(木) 17:20:55.74 ID:???
http://d.hatena.ne.jp/Schima/20110306/1299402379
バイナリプログラミングの知識が必要だけどここが参考になる
91。 ◆oDupeixhZv52 :2011/06/09(木) 17:25:54.50 ID:???
falseになったってのが変だな。
0か1になるのだが。
9282:2011/06/09(木) 19:23:08.12 ID:IAyqZkF/
>>91
あ、間違えました。
0でした。
デバッグ用にいろいろ表示させるので、わかりやすいように関数作って
1/0を返すやつとtrue/falseを返すやつはそいつに食わしてます。
↓ちなみにこんなの↓
function showBoolean($isCheck){
if($isCheck){
$result = "true";
}else{
$result = "false";
}
echo($result ."<br />");
}
急いでたんでそのままfalseと書いてしまいました(^^;
ややこしくして申し訳ないです。
それで、preg_matchですが、第二引数はstringですよね。
$upfileは画像のデータではなくアップロードされた画像のテンポラリファイル名(フルパス)ですので、そのままでは0になったんだと思います。
いずれにしてもJPEGとMPOはヘッダーが同じようなので判別には使えそうにありませんね・・・
9382:2011/06/09(木) 19:24:16.32 ID:IAyqZkF/
>>90
やはりバイナリを解析して自分で判別しないといけないんですかね・・・
昔はCでよくいじってましたが、PHPも含めてWeb系でバイナリをいじったことありません。
他に方法がなさそうなので、なかなか大変そうですけど、教えていただいたとこを参考にして頑張ってみます。
もしもっといい方法がありましたらよろしくお願いします。
94nobodyさん:2011/06/09(木) 20:57:57.06 ID:???
んじゃあ、PHPでバイナリファイルを扱う話のとこでも貼っとく
http://pwiki.awm.jp/~yoya/?presen/PHP/binary
95nobodyさん:2011/06/09(木) 21:23:10.28 ID:5pJa1bUB
PHPで値を2桁にして、1桁の場合は先頭に0を入れたいのですが、うまく出来ません。
<?php
$id = 3;
echo $id."<br>";

$id = 3;
$id = printf('%02d',$id);
echo $id."<br>";

$id = 3;
echo str_pad($id,2,"0",STR_PAD_LEFT);
echo $id."<br>";
?>
≪実行結果≫
3
032
022

どうすれば直りますか?
96nobodyさん:2011/06/09(木) 21:45:39.95 ID:???
>>95
<?php
$id = 3;
printf('%02d',$id);
echo "<br>";

$id = 13;
printf('%02d',$id);
echo "<br>";
?>
97nobodyさん:2011/06/09(木) 21:59:32.36 ID:???
>>96
ありがとうございます!
普段echoで出力させていたので、printfは関数だと思い込んでいました・・・orz
9882:2011/06/09(木) 22:06:08.50 ID:IAyqZkF/
>>94
おお、これはありがたいです。
助かります。
なんとかできそうな気がします。
ありがとうございます。
9965:2011/06/09(木) 22:58:01.88 ID:okCOi1rV
0x5C問題は、PHPのバージョンや文字コード依存ですよね。
シフトジスを正しく認識出来るなら、\を追加するとディレクトリ区切りになってしまいロード失敗します。
\を見つけたら、前後に\を追加してみて読み込めるまで繰り返せばいいですか。
10086:2011/06/09(木) 23:08:51.62 ID:???
>>93
ファイル名じゃだめだよ。
アップロードしたファイルそのものじゃないと。 うちでは判別できたよ。
101nobodyさん:2011/06/09(木) 23:11:12.93 ID:???
>>99
文字列として表示するとかならともかく、ファイル読み込みではどうにもならない。
信じてはもらえないんでは回答してもしかたないのかもしれないけどさ。
10265:2011/06/09(木) 23:22:53.42 ID:okCOi1rV
>>101
読み込み不可の場合は、プログラム側でどう工夫して無理って事なんですか。
10382:2011/06/10(金) 00:30:50.65 ID:MLm8A7NX
>>100
すみません、書かれてた正規表現でいけました!
勘違いしてました。
>>92 は、preg_matchにはデータそのものを渡さないといけないところを >>88 ではファイル名を渡してしまったので0になってしまったという報告でした。
それはいいのですが、MP0とJPEGはヘッダーはまったく同じだと思ってて、マッチングじゃ無理だなぁと思ってしまっていました(^^;
違いがあって、それを正規表現で表してくれてたんですね。
申し訳ないです。
今、改めて試して、MP0の仕様書も見て、確認しました。
MPフォーマット識別コードはマーカセグメント長以外は固定なんですよね。
これでいけそうです。
本当にありがとうございました。
(せっかくなのでPHPでのバイナリ操作も勉強します)
104nobodyさん:2011/06/10(金) 00:47:05.63 ID:m/SyKBx8
>>65ですが。
ソースコードの文字コードを変更したんですが。
それでもPHPが勝手に読み込み時にシフトジス変換して読み込むようてすが。
0x5Cを回避する方法は全くないですか?
105nobodyさん:2011/06/10(金) 00:56:55.07 ID:m/SyKBx8
PHPの内部コードでユニコード(UTF8、UTF16)を使う方法はありますか。
106nobodyさん:2011/06/10(金) 01:04:16.55 ID:???
サーバの文字コードがshift JISなの?窓から捨てちまえよそれ。
107nobodyさん:2011/06/10(金) 01:21:37.43 ID:m/SyKBx8
解決しました。コードの変更できました。
108nobodyさん:2011/06/10(金) 01:47:02.26 ID:???
そこまで分かっていて、なぜマニュアルを読もうとしなかったのか。。
109nobodyさん:2011/06/10(金) 02:07:06.97 ID:3O4+giq4
>>80-81
それだ!thx
110nobodyさん:2011/06/10(金) 09:25:22.18 ID:ocuOiMvn
PHPのエラーログってNoticeとWarningで分けられないかな
111nobodyさん:2011/06/10(金) 10:23:52.52 ID:???
>>110
error_get_last() で拾ったものを
error typeで振り分けて
error_log()で好きなところに書き出せば?
112nobodyさん:2011/06/10(金) 10:26:55.76 ID:dKzQT5U5
warningエラーなら途中で止まらね?
あと、全ての関数に@つけなきゃならんのか
113nobodyさん:2011/06/10(金) 11:41:25.72 ID:ocuOiMvn
ini_setでupload_max_filesizeが設定できないです

var_dump(ini_set('upload_max_filesize', 1024 * 1024 * 500)); // bool(false)が出力される

Apache側かどこかで設定の許可など制限あるのでしょうか
114nobodyさん:2011/06/10(金) 11:44:03.07 ID:ocuOiMvn
すんません、上階層のhtaccessにて

php_value upload_max_filesize = 64M

という設定がされていました。

これって下層のプログラム内でini_setした場合に上書きされないのでしょうか。
115。 ◆oDupeixhZv52 :2011/06/10(金) 11:46:22.98 ID:???
116nobodyさん:2011/06/10(金) 12:00:10.86 ID:dKzQT5U5
ということは、下層にhtaccessを置く必要があるということですね。
親階層にhtaccessで128M
子階層でhtaccessで256M

上記で設定したのですが、128Mで効いております。

ここら辺はApacheの設定なのでしょうか
117nobodyさん:2011/06/10(金) 13:39:00.84 ID:???
【OS名】CentOS
【PHPのバージョン】5.1.6
【連携ソフトウェア】jphpmailer
【質問内容】
これまでmail()関数を使ってメールを送信していたのですが、サーバーを新しく切り替えた時に
mail()が使えない事が判明しました。
仕方が無いので、jphpmailerで用意されているsmtpサーバーを使って送信するようにすると、
ほとんどの携帯電話のアドレスから弾かれるようになりました。
mail()を使っているときは正常に送れていたのですが・・・。
mail()で送信するのとsmtpサーバーを使って送信するのと、どういった違いがあるのでしょうか?
使っているsmtpサーバーは内部のサーバーです。
118nobodyさん:2011/06/10(金) 13:40:52.77 ID:m/SyKBx8
サーバーのアドレスが原因かもしれんが。mailでもはじかれる可能性。
119nobodyさん:2011/06/10(金) 13:48:16.55 ID:???
サーバーを切り替える前はmail()を使ってて(同じシステムです)、その時はキチンと正常に配信されていました。
今回サーバーを切り替えて、smtp送信で配信しようとすると弾かれてしまうようです。
ちなみにサーバーのドメイン名は同じものです。
smtpサーバーはSMTP-Authにしてますが、それが原因でしょうか?もちろんsmtp配信のほうのプログラムも
SMTP-Authで設定しています。
120nobodyさん:2011/06/10(金) 15:01:05.86 ID:???
どうせエンベロープのアドレス書き換えてないとかでしょ
121nobodyさん:2011/06/10(金) 15:12:01.26 ID:mor73Xep
すみません、携帯で閲覧するWebページを作っていて、
Docomo機種にCSSを読み込ませるために
header("Content-type: application/xhtml+xml;charset=Shift_JIS");
の記述をいれています。

さらに、セッションを使うためにuse_trans_sidを1にしているんですが、
リンクのaタグ記述部分でエラーになってしまいます。
例)
http://example.com/test.php?mode=1

これにSIDがくっついてしまうため
http://example.com/test.php?mode=1&SID=xxxxxxxxxxxxxxxxxx

この「&」の部分でパースエラーになります。(firefoxで)
本来なら「&amp;」にしたいところですが自動でくっつくので
エラーになってしまいます。
携帯でみたら閲覧できるのでいいんですが、気持ち悪いので
解消する方法をご存知でしたらおしえてください!
122。 ◆oDupeixhZv52 :2011/06/10(金) 15:37:00.80 ID:???
arg_separator.output で  '&'  とか?
123。 ◆oDupeixhZv52 :2011/06/10(金) 15:37:58.63 ID:???
ごめん  ’&amp;’ ね
124nobodyさん:2011/06/10(金) 15:52:33.72 ID:mor73Xep
>>122-123
ありがとうございます!!
出来ました!!!
125nobodyさん:2011/06/10(金) 20:28:15.68 ID:ZyUjW/5Y
画像が実写が二次画像かを、ある程度判別したいのですが、どういった処理をしたらいいのか見当がつきません。
GDを使えば出来そうな気がするんですが・・・。
ご教授おねがいします。
126nobodyさん:2011/06/10(金) 21:05:23.11 ID:???
>>125
imagecolorat
判定アルゴリズムはスレ違い
127nobodyさん:2011/06/10(金) 21:34:04.23 ID:C8DfHeas
連続して通信をしてソースをとってきてそこからソースを切り抜きするみたいなことをしているのですが、
使わなくなった変数は使い回したほうがいいでしょうか?
一旦nullいれたりunsetしたほうがいいのかな?とは思うのですが冗長なのでそのまま入れています。

$src = file_get_contents('http://example.com/');
$dom = new DOMDocument();
@$dom->loadHTML($src);
〜略

$src = file_get_contents('http://next.example.com/');
$dom = new DOMDocument();

のような感じになってます。
ところどころ違う処理が入るのでループしてるわけではありません。

あと
$a = "hoge";
$a = strtoupper($a);
$a = str_replace("O","A");

みたいなことは普通にやってもいいですよね?
128nobodyさん:2011/06/10(金) 21:39:36.05 ID:???
>>127
上 そりゃメモリ開放すればメモリ使用量は少なくなる。
   memory_get_usage間に挟めば分かる。
   開放した方が良ければすればいい。
下 いいってどういうこと?
129nobodyさん:2011/06/10(金) 23:02:12.89 ID:???
130nobodyさん:2011/06/11(土) 01:42:15.51 ID:5vEWr0vM
同一ドメインのhttpの画面とhttpsの画面を行き来する際に
セッションの引継ぎってできますか?

もし、httpとhttpsで違うドメインの場合はセッションの引継ぎって
どうやればいいですか?
131nobodyさん:2011/06/11(土) 01:54:57.54 ID:???
session_id
132nobodyさん:2011/06/11(土) 10:56:18.60 ID:???
>>131
もうちょっと具体的なやり方を教えて欲しいのですが。
133nobodyさん:2011/06/11(土) 11:10:07.16 ID:???
>>132
http://php.net/manual/ja/function.session-id.php
ググるのも面倒みたいだから、
http://www.php.net/download-docs.php
ここからまるごとダウンロードして、一通り読んでみるといいよ
134nobodyさん:2011/06/11(土) 11:12:49.47 ID:???
別にweb上でいいんじゃw
135nobodyさん:2011/06/11(土) 11:27:33.73 ID:???
>>134
俺、プリントして持ち歩いて読んだw
何が出来るかだけ頭に入れて、
あとはその都度マニュアル検索。
136nobodyさん:2011/06/11(土) 11:44:02.77 ID:???
アナログ脳w
137 忍法帖【Lv=10,xxxPT】 :2011/06/11(土) 11:55:24.74 ID:???
>>136
お前の脳はデジタルかよ!
138nobodyさん:2011/06/11(土) 11:55:27.08 ID:???
>>136
老眼だから、電話機はもちろん、
ちっちゃいノートPCじゃ読めねーんだよw
139nobodyさん:2011/06/11(土) 11:57:20.45 ID:???
電話機なんて単語久しぶりに聞いたなw
140nobodyさん:2011/06/11(土) 17:13:55.92 ID:jUlIdcte
「hoge」があったら「hogehoge」に、「hogehoge」があったら「hoge」に置換するようにしたいのですが

$contents = str_replace("hoge", "hogehoge", $res[text]);
$contents = str_replace("hogehoge", "hoge", $res[text]);

こんな感じでならべると「hogehoge」に置換した後で再び「hoge」に置換し直してしまって元通りになってしまいます。
ifで分岐しようにも、こうした置換の単語候補が多くて無理なんですが、どうすればできるでしょうか?
141nobodyさん:2011/06/11(土) 17:16:00.01 ID:???
142nobodyさん:2011/06/11(土) 17:18:53.95 ID:NqBLzs77
2011/06/11 17:17:23

これの25日と18時間30分後を求め方お願いします
143nobodyさん:2011/06/11(土) 17:21:17.09 ID:???
144nobodyさん:2011/06/11(土) 17:30:34.50 ID:NqBLzs77
できれば
nannnitigo("2011/06/11 17:17:23","25日と18時間30分後");
で実行できる形が理想です
145nobodyさん:2011/06/11(土) 17:31:24.61 ID:???
146nobodyさん:2011/06/11(土) 17:37:12.19 ID:jUlIdcte
>>141
つまり…str_replaceでは無理ということでしょうか
ありがとうございます。
147nobodyさん:2011/06/11(土) 17:42:31.45 ID:???
あほすぐるw
148nobodyさん:2011/06/11(土) 17:49:49.08 ID:NqBLzs77
>>145
マニュアルの見方がわかりません。。。。
149nobodyさん:2011/06/11(土) 17:51:12.18 ID:???
>>148
見方が分からないってどういうこと?
150nobodyさん:2011/06/11(土) 17:53:36.43 ID:???
マニュアル見てわからない=自力で作れないんだから質問するのが間違いなんだよ
コード作成依頼スレじゃないんだから
151nobodyさん:2011/06/11(土) 17:54:30.99 ID:NqBLzs77
コード作成依頼ではなく求め方を知りたいのです
152nobodyさん:2011/06/11(土) 17:55:37.59 ID:???
153nobodyさん:2011/06/11(土) 17:56:55.55 ID:???
面白くなってきたな
154nobodyさん:2011/06/11(土) 17:58:09.68 ID:???
>>144みたいなこといっといて依頼じゃないとか言われてもな
そんな2バイト文字を引数にとるような都合のいい関数があると思ってるのか
155nobodyさん:2011/06/11(土) 18:07:27.15 ID:???
俺は釣られんぞ
156nobodyさん:2011/06/11(土) 18:09:39.47 ID:???
出来ないくせに態度がでかい回答者うぜえ
157nobodyさん:2011/06/11(土) 18:10:19.07 ID:???
>>152
マニュアルの見方がわからないので見ても分かりません
158nobodyさん:2011/06/11(土) 18:10:29.88 ID:???
>>140
ヒント
あえて全部hogehogeに置き換えてしまえばいい
そうすればhogeはhogehogeにhogehogeはhogehogehogehogeになる
159nobodyさん:2011/06/11(土) 18:17:41.19 ID:???
>>157
見方が分からないってどういうこと?
160nobodyさん:2011/06/11(土) 18:19:42.31 ID:???
自演荒らしとみせかけた愉快犯か?
スレ伸びるだけだからやめとけ
161nobodyさん:2011/06/11(土) 18:31:46.02 ID:PpBJ0G2Z
パラメータ

time
日付/時刻 文字列。有効な書式については 日付と時刻の書式 で説明しています。

now
返される値を計算するために使用されるタイムスタンプ。

って書いてあるところが分かりません
162nobodyさん:2011/06/11(土) 18:33:19.21 ID:???
説明してますって書いてるんだからそこの説明よんでこればいいだろ
163nobodyさん:2011/06/11(土) 18:33:51.15 ID:???
>>161
パラメータってのは、引数のこと
第一引数に出力したい日付形式の文字列を渡して、第二引数に計算したいUNIXタイムスタンプを渡せばいい
164nobodyさん:2011/06/11(土) 18:36:57.55 ID:ZHSY8D9B
レンタルサーバを変更しコンテンツを移動させたところ文字化けしてしまい

PHPについては
header("Content-type: text/html; charset=Shift-JIS");

と記述することにより、文字化けは解消されたのですが、
htmlページの場合には、どうすれば回避することが出来ますか?

※どうやらサーバ側はUTF-8で常にクライアントに戻す設定になっている様なのですが、
マルチドメインで運用をしているため、ルートディレクトリでhtaccess指定を行なうのは厳しいです。
165nobodyさん:2011/06/11(土) 18:37:26.10 ID:???
>>164
metaタグ
166nobodyさん:2011/06/11(土) 18:42:13.36 ID:ZHSY8D9B
もし、htaccess のみで設定が可能でしたら

/public_html/
[標準のコンテンツ郡] ← このディレクトリ直下についてはクライアントに返す文字コードを SHIFT-JIS にする とか出来るのでしょうか?
  site_A/index.php ← http://site_a.com
site_B/index.php ← http://site_b.com
site_C/index.php ← http://site_c.com
site_D/index.php ← http://site_d.com
167nobodyさん:2011/06/11(土) 18:45:55.89 ID:NKY1G1lT
htaccessを使わないでob_startで出力すればおk
htmlページはphpで作ってルーティング処理で拡張子htmlに見せればおk
168nobodyさん:2011/06/11(土) 18:49:11.94 ID:???
で、>>161は解決したのか?
169nobodyさん:2011/06/11(土) 19:13:06.12 ID:ZHSY8D9B
>>165
既にmeta タグで文字コードは指定しています。
170nobodyさん:2011/06/11(土) 19:35:40.22 ID:???
171nobodyさん:2011/06/11(土) 20:29:24.16 ID:???
>>169
「※どうやらサーバ側はUTF-8で常にクライアントに戻す設定になっている様なのですが」
まずこれが本当にそうなのか確認する
172nobodyさん:2011/06/11(土) 20:44:27.15 ID:???
>>167 >>170 >>171
ありがとうございます。
試してみます。

因みに

【特定のディレクトリ内のみ】

***.phpファイルを***.htmlに見せかけるにはどうすれば良いでしょうか?
.htaccess への記述例を教えていただけると幸いです。
173nobodyさん:2011/06/11(土) 20:47:54.66 ID:???
>>172
記述例っつーか答えになっちゃうから教えられん
174nobodyさん:2011/06/11(土) 20:50:27.20 ID:???
◆質問後の注意
・2回目以降は最初に質問した際のレス番号を入れて、偽者防止に必ずIDを表示させること。
175nobodyさん:2011/06/11(土) 20:58:47.94 ID:???
>>172
ヒント
(.+?)\.html \1.php
176nobodyさん:2011/06/11(土) 21:01:34.40 ID:???
AddTypeの話じゃないのかw
177nobodyさん:2011/06/12(日) 00:28:23.21 ID:S7YNbjnx
PHP5を使ってるんですが、重い処理をバックエンドで実行する処理を知って質問します
このページを見てるんですが、
http://www.phppro.jp/phptips/archives/vol47/2
<?php
if ($_POST['submit']) {
exec("/usr/local/bin/php /path/to/exec.php > /dev/null &");
echo "とりあえず finish!";
} else {
?>
<html>
重い処理が走るけれど、待たされないスクリプト
<form method="post" action="test2.php">
<input type="submit" name="submit" value="重い処理を実行">
</form>
<?php
}
?>

こういう処理で、バックエンドで実行された処理がもしエラーしたとき、
どうやってそれをキャッチしたら良いんでしょうか。というかそれは可能でしょうか?
特にバックエンドへの実行命令を出したページから、別のページに遷移してしまったとき、
返り値を渡すって出来ない気がするんですが…
何か方法あるんでしょうか?
178nobodyさん:2011/06/12(日) 00:30:49.73 ID:???
>>146
strtr
179nobodyさん:2011/06/12(日) 03:49:05.77 ID:???
>>177
エラーが出たときにどうしたい(何をしたい)かによると思う。
例えばバックグラウンドでエラーが出たらエラー内容をファイルに出力するとかして
そのエラーファイルが存在するかどうかをチェックするプログラムを用意しておく。
ブラウザで(Javascriptとかで)定期的にそのプログラムにアクセスすれば
エラーが出たかどうかを確認できる。
同様の方法でバックグラウンドの処理が終わったかどうかも確認できる。
180nobodyさん:2011/06/12(日) 11:10:12.56 ID:SmOttpAp
<?=echo 1?>
これをやると<?=echo 1?>って表示されます?
1って表示したいのですがどうやるのでしょうか?
181nobodyさん:2011/06/12(日) 13:03:35.44 ID:hreYP4HU
ダウンロードを行うスクリプトを作成中です。
$dl_name = preg_replace('/.*[\/]*\//', '', $real_filenames[$q]);
header('Content-Disposition: attachment; filename="'.$dl_name.'"');
header('Content-Type: application/octet-stream; name="'.$dl_name.'"');
header('Content-Transfer-Encoding: binary');
$fs = filesize("$directory/$real_filenames[$q]");
header('Content-Length: '.$fs);
$fsがNULL状態のようでIEだと0バイトの空ファイルとしてダウンロードされます。
なぜでしょうか?
OS: Linux 2.6.37.1-grsec
PHP Version: 5.3.3-7+squeeze1 with Suhosin-Patch
182nobodyさん:2011/06/12(日) 13:19:56.52 ID:???
>>181
> $directory/$real_filenames[$q]
をprint_rでもして、確認してみれば?
183nobodyさん:2011/06/12(日) 13:25:58.80 ID:???
>>180
マニュアルに書いてあるよ
184181:2011/06/12(日) 13:28:28.86 ID:hreYP4HU
>>182
$directory/$real_filenames[$q] には存在しているファイルがフルパスで渡ってます。
Chromeでは問題なくダウンロードできてます。IEで0バイトになります。
185nobodyさん:2011/06/12(日) 13:33:35.38 ID:???
Suhosin-Patchなんて当ててるからじゃない?
186nobodyさん:2011/06/12(日) 13:35:32.91 ID:???
>>184
じゃ、これ追加で。
header("Pragma: cache;");
187nobodyさん:2011/06/12(日) 13:51:52.04 ID:???
>>183
マニュアルに書いてあるならURL張れや
188nobodyさん:2011/06/12(日) 14:03:01.46 ID:???
>>187
http://www.php.net/manual/ja/
1も読めないのかい
189nobodyさん:2011/06/12(日) 14:18:41.04 ID:???
>>188
そこのどこにあるのかまで書けよ
それで済むなら質問スレッド自体が不要だろ
190nobodyさん:2011/06/12(日) 14:19:03.03 ID:???
なんでそんなに態度がでかいの?
191nobodyさん:2011/06/12(日) 14:22:10.36 ID:???
回答になってないからです
192nobodyさん:2011/06/12(日) 14:23:19.21 ID:???
自演乙
193nobodyさん:2011/06/12(日) 14:26:23.75 ID:???
194nobodyさん:2011/06/12(日) 14:27:43.26 ID:???
まぁ外野がごちゃごちゃ言っても聞く耳持ちません
195nobodyさん:2011/06/12(日) 14:27:49.30 ID:???
マニュアル嫁で回答になってると思ってるのかね
http://www.php.net/manual/ja/language.basic-syntax.phpmode.php を掲示するのがそんなに難しい?
196nobodyさん:2011/06/12(日) 14:40:26.71 ID:???
知恵風呂でやれ
197177:2011/06/12(日) 14:44:25.23 ID:???
>>179
ありがとうございます。やっぱりそういう方法しかないですか…
なんというか、それで大丈夫なのかなって気がしますね
会員登録の仮登録メールなんて、どうやってるんだろう
バックエンドに送信命令>画面には「メールを送りました」>実は送れてない なんてないのかな
自分の環境じゃメールの送信は体感で1,2秒かかってしまうんですが、
大抵のその手のサイトじゃバックで実行してるみたいだし…
不思議だなー
198nobodyさん:2011/06/12(日) 14:53:54.66 ID:???
>>197
ID
199177:2011/06/12(日) 15:07:15.80 ID:???
>>198
IDがなんですか?何のID?
200nobodyさん:2011/06/12(日) 15:08:38.96 ID:???
知障死ねよ
201nobodyさん:2011/06/12(日) 15:13:28.47 ID:???
◆質問する時の注意
・ スレを上げて自分のIDを表示させること。(メール欄に何も記述しない。専ブラのsageチェックを外す)
202177:2011/06/12(日) 15:14:25.25 ID:S7YNbjnx
なんなの?
ID出して質問スレだから?
問題解決した時のレスでID出さない人って今までもいくらでもいただろうに
それとも今揉めてる人と同一人物だと疑ってるの?
たった今質問させてもらった立場で言うのもなんだけど、
池沼/死ねだの言うほど腹立てるならこんなとこ見なきゃいいだろうよ、しょうもない
203nobodyさん:2011/06/12(日) 15:16:32.82 ID:???
むしろ揉めてる人は質問者じゃなくてマニュアル厨だから君が同一人物だとは誰も思ってないよ
204nobodyさん:2011/06/12(日) 15:19:27.21 ID:???
ルールも守れないくせにほざいてんじゃねぇよカス
205nobodyさん:2011/06/12(日) 15:55:23.77 ID:???
死ねだのカスだのいってる奴らは気にしなくていいから
ただルールを守っていなかったのは事実だから気をつけるようにね
206nobodyさん:2011/06/12(日) 15:59:33.94 ID:???
ここまで俺の自演
207nobodyさん:2011/06/12(日) 16:04:51.18 ID:???
>>202
ルール違反者乙
208nobodyさん:2011/06/12(日) 16:06:47.41 ID:???
>>1
(荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)
209181:2011/06/12(日) 16:31:59.45 ID:hreYP4HU
>>185
回答ありがとうございます。
Suhosin-Patch が影響しているのでしょうか?
一般ユーザーで借りている共有サーバーなのでいじれる設定は一部だけですが
ttp://ameblo.jp/phpwalker/entry-10444869607.html
このへんを参考にして
apache_setenv('no-gzip', '1');を追加してみましたがInternal Server Errorになるだけでした。
filesize関数がNULLを返すことの対処としてclearstatcacheもあげられていたのですが変わりませんでした。
210181:2011/06/12(日) 16:34:03.56 ID:hreYP4HU
>>186
回答ありがとうございます。
追加してみましたが、同じく0バイトのファイルとしてダウンロードされてしまいました。
211nobodyさん:2011/06/12(日) 17:20:40.61 ID:+q+sCwIP
群馬県高崎市に住む39歳AB型、製造業界で派遣プログラマーの仕事をしているhekenekoと申します。
新日本テクトスという会社を追われ、その後どうしてよいかわからなくなりました。
だけど私の大好きな尾崎豊の歌に励まされ、夢であるプロのクリエイターを目指すことにしました。
何度も挫けそうになりましたが、尾崎豊の歌を聞きながら自分を励ましています。
今も尾崎豊の歌のおかげで、夢を諦めずにCGアニメの製作を続けられています。

とりあえず、以下の動画を見てください。一生懸命作ったもので、自分では既にプロレベルの傑作だと思ってます。
できればみなさんのご意見、ご感想を聞きたいです。

復興支援アニメ.mp4
http://www.youtube.com/watch?v=yn4uTiN8vvM

湾岸鉄道キャンペーンCM(カラー).mp4
http://www.youtube.com/watch?v=g3PlX1OAhug&feature=channel_video_title


これは力作で、にしおかすみこさんにも是非見てもらいたかったため彼女のブログにコメントしたんですが無視されました。
http://blog.watanabepro.co.jp/nishiokasumiko/archives/2008/02/22_15_post_22.html
(下の方にあります。投稿者: hekeneko | 2008年03月24日 22:54)
やはり私の才能に気づいてくれる人は中々いないみたいですね(苦笑)。


題名”ラダニアムの翼”
A wing of radaniam_partU.mp4
http://www.youtube.com/watch?v=keSK70uqDJY
A wing of radaniamu part_V.mp4
http://www.youtube.com/watch?v=-LRZbXbirR0

題名”hekeneko honey”
http://www.youtube.com/watch?v=kATwf6fAkG8
私の世界観の全てを凝縮した力作です。hekenekoワールドをご堪能あれ。
212nobodyさん:2011/06/12(日) 18:19:41.80 ID:???
>>197
メール送信についてはバックグラウンドで直接スクリプトを起動するのではなく、
送信先等をDBなどに登録しておく。
で、CRONなどで定期的にメール送信スクリプトを起動し、DBに登録された
メール送信リストを順に処理させるようにする。
そうしないと多数のアクセスが重複したときにバックグラウンドのスクリプトが
多重起動されてしまう。
213181:2011/06/12(日) 22:49:54.75 ID:hreYP4HU
どうやら、ファイルのフルパスに\(バックスラッシュ)が混入されていたようで、
stripslashesでフルパスを置換したら、filesizeの値が無事に取得できました。
お騒がせしました。
214nobodyさん:2011/06/12(日) 23:16:54.90 ID:???
simplehtmldom で <div>の中身を取り出すとき
$div->innertext で取得してるのですが <pre>の改行が消えてしまいます。
改行を除外しない方法はありますでしょうか?
<img>と<pre>の位置が不定期なので個々に取り出せないです。。
<div>
<img>

<pre>
ああああ
いいいい
</pre>

<img>
</div>

215214:2011/06/12(日) 23:17:20.97 ID:vSXnK1wi
ID出し忘れました。すみません
216nobodyさん:2011/06/13(月) 02:04:46.44 ID:???
要素がpreかどうか取得できるコードを書け
話はそれからだ
217nobodyさん:2011/06/13(月) 02:41:39.07 ID:???
では役にたたねぇ>>216以外の方のご返答をお待ちしています。
218nobodyさん:2011/06/13(月) 02:53:32.44 ID:???
再現するコード出して
219nobodyさん:2011/06/13(月) 10:09:10.16 ID:???
>>214=>>215=>>217
コードも張らずに依頼ですね
220nobodyさん:2011/06/13(月) 13:52:40.84 ID:???
ここって質問者も質が悪いけど回答者の質も悪いから質問を躊躇ってしまう
質問によって知恵袋と使い分けないとPHPとは上手くやっていけないね
221nobodyさん:2011/06/13(月) 15:03:46.25 ID:s568ccJo
困りました助けてください。

$name1 = 配列[1]
$name2 = 配列[2]
$name3 = 配列[3]

のようにしたいので、まとめてループを使って、
for ($i =1; $i <10; $i++){

    $name . $i = 配列[$i]
}
と書いてみたのですが、
$name . $i
と書いても、$name1の意味になりません(文字列でないので)!!

ループを使って、変数にインデックスの変数をくっつけて、
$name1,$name2,$name3...
とするにはどうしたらいいんでしょうか?

よろしくお願いします!!
222nobodyさん:2011/06/13(月) 15:05:50.38 ID:???
お主に可変変数というものを与えよう
223nobodyさん:2011/06/13(月) 15:10:05.53 ID:s568ccJo
>>222
可変変数ですね!
あ、できそうな気がします。
ありがとうございました!!!!
224nobodyさん:2011/06/13(月) 15:47:07.11 ID:s568ccJo
>>222
可変変数を使ってループの中を以下のようにしたら
一発でできました!!

$output.= ${"name". $i};

ありがとうございます。
225nobodyさん:2011/06/13(月) 15:48:40.61 ID:NE3y7xrP
class Sub extends Main

というクラスの親クラスにあるメソッドを指定するとき、
parent::$this->test();

みたいな書き方をしますが、PHP4ではparent::を付けるとエラーになります。
出来るだけPHP4対応のコードにしたいのですが、
この場合は、parent::を付けずに、$this->test()とするしかないのでしょうか?
226nobodyさん:2011/06/13(月) 16:02:20.14 ID:NE3y7xrP
すみません。自己レスです。
parent::test();

って書けば良いんですね。
227nobodyさん:2011/06/13(月) 20:44:56.24 ID:???
PHP5.3.5 + Mysqlでwebアプリ作ってます。

PDOでMysqlにアクセスしてるんだけど、
DBへの接続〜切断をするタイミングで悩んでます。
クエリー発行の度に、接続→Query発行→結果取得→切断とするべきか、
最初に接続して、ログアウト処理で切断するべきか、どちらが適切でしょう?

ログアウトしないでブラウザ閉じちゃう場合も多いだろうし・・。
228nobodyさん:2011/06/13(月) 20:46:31.99 ID:???
1
229nobodyさん:2011/06/14(火) 00:05:04.01 ID:???
>>227
何を作るのか
どれくらいのアクセスを想定しているのか

この2つを書かないとアドバイスはできません
230nobodyさん:2011/06/14(火) 00:11:15.53 ID:???
ログイン機能を作成しようとしています。
formにユーザー名とパスワードを入力して、phpとmysqlを使って認証する予定ですが、formにパスワードを打ち込むと平文で通信されてしまいますよね。SSLは予算の都合上無理なのですがセキュリティをある程度確保するにはどの様な手段を用いるべきでしょうか
231nobodyさん:2011/06/14(火) 00:14:26.04 ID:???
1
232nobodyさん:2011/06/14(火) 00:45:57.33 ID:5UnmK9kF
>>230
PEARに入っているAUTHというものを使って、md5という暗号化を
使うのがPHP使いの王道らしいです。もちろんSSLがないと通信中は傍受
される可能性があります。
233nobodyさん:2011/06/14(火) 00:48:51.41 ID:???
なんでPEAR?
234nobodyさん:2011/06/14(火) 01:26:54.40 ID:???
それはPEARに聞かないと
235nobodyさん:2011/06/14(火) 03:17:31.12 ID:???
1
236nobodyさん:2011/06/14(火) 03:18:53.78 ID:???
>>232
PEARじゃなくてPEERな。
237nobodyさん:2011/06/14(火) 03:42:08.36 ID:???
そんなことよりメモリ書き換えて関数を乗っ取る()やり方教えろよ
238nobodyさん:2011/06/14(火) 04:44:56.60 ID:???
md5なんて、検索すりゃ英数字なら変換前の値が出てくるから、セキュリティとはほどとおいけどね。
239nobodyさん:2011/06/14(火) 04:50:15.10 ID:???
>>237
そんなのは簡単だから、
まずは、穴を探せw
240nobodyさん:2011/06/14(火) 04:53:15.36 ID:???
>>237
あと、穴を見つけたら報告すると喜ばれる。
他人の設備でいたずらすると捕まる。
自分の設備で遊ぶんだよ
241nobodyさん:2011/06/14(火) 08:09:04.92 ID:???
>>239
穴を探す簡単なやり方は?
242nobodyさん:2011/06/14(火) 08:50:54.24 ID:???
>>241
ソースコード公開されてるだろw
243nobodyさん:2011/06/14(火) 10:24:57.03 ID:???
>>230
OpenID
244nobodyさん:2011/06/14(火) 13:00:36.65 ID:???
>>242
どう考えても簡単じゃないだろ
245nobodyさん:2011/06/14(火) 13:40:13.64 ID:???
よくソースコードの難読化とかデータ送信の暗号化の話題が上がるけど、
SONYクラスならまだしも、お前らの会社のデータなんて誰も盗まないだろw

特に商品単価10万以下のシステムをわざわざ解析しないと思うんだが。
そんな事出来る奴は自分で作るだろうし。
246nobodyさん:2011/06/14(火) 13:41:54.50 ID:???
まず部屋から出て社会に出ろよ
247nobodyさん:2011/06/14(火) 13:45:38.83 ID:???
おそとまぶしい><
248nobodyさん:2011/06/14(火) 15:06:28.35 ID:???
商品価値10万以下のシステムでも、中身のデータは数百万円の価値があるかもしれないんだぜ
249nobodyさん:2011/06/14(火) 15:39:09.15 ID:???
そんな価値あるなら、こんなスレで質問せずに対策してるだろw
「これから始めよう」とする奴が、そこまで考える必要あるのかよ
250nobodyさん:2011/06/14(火) 16:01:05.21 ID:???
数百万程度の価値しかないところは結構ざるじゃないかなー
251nobodyさん:2011/06/14(火) 23:58:02.50 ID:???
いいからメモリ書き換えて関数乗っ取る方法教えろよ
ハックとかじゃなく echo printf の前に文字コード変換したいだけだよww
252nobodyさん:2011/06/15(水) 00:01:09.01 ID:???
関数乗っ取るよりも出力関数を自分で作って、出力は全部そこ通すようにすればいいかと
253nobodyさん:2011/06/15(水) 00:04:01.45 ID:???
>>251
ob_start
254nobodyさん:2011/06/15(水) 00:19:00.26 ID:???
すみません、私ソニーなんですが。
255nobodyさん:2011/06/15(水) 01:53:28.45 ID:???
私って?
256nobodyさん:2011/06/15(水) 02:20:19.33 ID:???
>>254
別にソニーは脆弱性公開されたから訴えたわけじゃないよ
保護されてるプロテクト破るキーを配布したから訴えただけ
257nobodyさん:2011/06/15(水) 03:12:45.43 ID:???
わざわざソニーさんに説明をするなんてマイクロソフトさんは優しいなぁ
258nobodyさん:2011/06/15(水) 14:01:24.31 ID:Mm9ai45C
Windowsでcronと同じようなこと出来るライブラリを教えてください
259nobodyさん:2011/06/15(水) 14:08:23.80 ID:???
ライブラリとか使うんじゃなくて、タスクで出来るよ。
260nobodyさん:2011/06/15(水) 14:26:46.20 ID:???
cronの記述と互換性を持ちたいです
261nobodyさん:2011/06/15(水) 14:44:42.40 ID:???
それは無理です。理由はOSが違うからです。
262nobodyさん:2011/06/15(水) 14:51:12.54 ID:???
レベル低い回答者w
263nobodyさん:2011/06/15(水) 15:05:50.72 ID:???
レベル高い回答者どうぞ↓
264。 ◆oDupeixhZv52 :2011/06/15(水) 15:38:57.02 ID:???
pycron
265nobodyさん:2011/06/15(水) 16:25:05.44 ID:h+zI4DZU
Array ( [96] => こんにちわ [90] => こんにちわんこ [83] => おこんにちわ )
というのがあります。
sortして数の高い順になていますが、[96]や[90]の数字の部分は毎回かわるため一定ではありません。
しかし、一番数字の高いものを指定したい場合どのようにしていすればいいのでしょうか?
266nobodyさん:2011/06/15(水) 16:38:28.62 ID:???
>>265
current()
267nobodyさん:2011/06/15(水) 16:58:00.55 ID:???
内部イテレータの状態に左右されるぞ
reset()が相応しい
268265:2011/06/15(水) 17:49:03.08 ID:h+zI4DZU
>>266-267
ありがとうです。
その関数自体知りませんでした。
これでイケそうなので使ってみます。
ありがとうございました。
269nobodyさん:2011/06/15(水) 22:57:20.19 ID:???
内部イテレータじゃなくて
内部イレテータな。
270nobodyさん:2011/06/15(水) 23:10:43.84 ID:???
>>269
そこはネタなのかマジなのかハッキリして欲しいところ。
271nobodyさん:2011/06/15(水) 23:49:58.25 ID:???
書いた本人は面白いと思ってるから書いたんだろうけど
小学生が思いつくようなレベル実際は面白くない件
272nobodyさん:2011/06/16(木) 00:37:55.17 ID:???
誰も釣られなくて残念だったね>>270
273nobodyさん:2011/06/16(木) 04:36:27.58 ID:???
イタレータだろ
274nobodyさん:2011/06/16(木) 12:06:45.31 ID:???
イタリアーノだろ
275nobodyさん:2011/06/16(木) 12:22:52.81 ID:???
ボルケーノだろ
276nobodyさん:2011/06/16(木) 12:31:37.05 ID:???
マルメターノ?
277nobodyさん:2011/06/16(木) 12:40:50.53 ID:nqAlo4Zy
>>245
Submit押された瞬間に
JavaScriptか何かでMD5ハッシュとかで通信させてやればいいんじゃないかな?
まぁ、根本的な解決にはならないだろうけど
278nobodyさん:2011/06/16(木) 14:34:57.31 ID:???
お前アスペか?245は「そんな事する意味無いだろ?」
って書いてるんだぞw
279nobodyさん:2011/06/16(木) 14:36:34.43 ID:???
>>278==>>245
280。 ◆oDupeixhZv52 :2011/06/16(木) 14:36:44.77 ID:???
230からの件だろ。
http://assl.sullof.com/assl/ でも使え。
281nobodyさん:2011/06/16(木) 16:30:01.61 ID:???
マルコポーロ?
282nobodyさん:2011/06/16(木) 21:18:28.37 ID:P33p70Cz
某スレで質問したのですが分かる方がいなかったのでこちらに
転載させてください。

素朴な疑問なのですが
例えば、レンタルサーバで専用サーバを借りたとします。

そして、同一サーバ上で2つのサイトを運用して
(2つのドメインを持っていたとして)
そのうちドメイン(A)のみ公開していたとします。

ドメイン(A) : 公開 ⇒ 他サイトにリンク有り
domain-a.com

ドメイン(B) : 非公開 ⇒ 他サイトからのリンク無し
domain-b.com

この場合に ドメイン(A)から
「ドメイン(A)及びドメイン(B)が同一人物の管理である」
といった事が分かる方法はありますか?
283nobodyさん:2011/06/16(木) 21:19:09.13 ID:???
マルチ乙
284nobodyさん:2011/06/16(木) 21:20:01.54 ID:???
>>277
MD5をどう使う?
285nobodyさん:2011/06/16(木) 21:37:10.32 ID:???
>>282
10秒で分かります
286nobodyさん:2011/06/16(木) 21:38:55.31 ID:???
なんでいつもこういう奴は例えの話にしたがるんだろう
287nobodyさん:2011/06/16(木) 21:48:20.16 ID:???
>>285
どうすれば分かるのでしょうか?
教えて下さい。
288nobodyさん:2011/06/16(木) 21:51:58.09 ID:???
>>1
289nobodyさん:2011/06/16(木) 21:57:36.55 ID:???
>>286=>>287だったら教えないけど
290nobodyさん:2011/06/16(木) 22:17:51.37 ID:???
>>289
100%違います。

不思議でしょうがないのでどうしても知りたいです。
何卒宜しくお願い致します。
291nobodyさん:2011/06/16(木) 22:20:13.74 ID:???
>>286=>>282だったら教えないけど
292nobodyさん:2011/06/16(木) 22:25:27.16 ID:???
マジレスすると、ドメインのwhois見れば解る。
もっと言うならIPアドレスが同じだからわかる。
293nobodyさん:2011/06/16(木) 22:45:12.31 ID:???
>>292
ありがとうございます。

ただ、疑問なのは >>282の例で言うと

ドメイン(A)については
ドメイン名が domain-a.com である事が分かりそのドメインで検索をする事が出来ますが

ドメイン(B)については、
一般の人間が知る方法があるものなのでしょうか?
294nobodyさん:2011/06/16(木) 22:49:01.37 ID:???
ID出せよ
295nobodyさん:2011/06/16(木) 22:55:26.73 ID:???
>>293
whoisでググってないでしょ
296nobodyさん:2011/06/16(木) 23:11:51.32 ID:Sfg9Eqe3
PHPのファイルを呼び出すとプログラムのままで表示されるのは何が原因ですか?
297nobodyさん:2011/06/16(木) 23:13:29.64 ID:???
>>293
whoisで10秒で取得で増す
298nobodyさん:2011/06/16(木) 23:14:16.65 ID:???
>>296
apacheの設定
299nobodyさん:2011/06/17(金) 00:29:30.59 ID:VfWFsqJl
ライブドアブログを
metaWeblog.newPostで更新したいのですが、できません。

blogidはライブドアでとった7桁のIDで
usernameとpasswordはライブドアのユーザー名とPASSですよね。
HOSTはどこに送ればいいですか?
livedoor.blogcms.jpかblog.livedoor.comのどちらでしょうか。
EUCだけとあったのでEUCで送ったのですがダメみたいです。

よろしくお願いします。
300nobodyさん:2011/06/17(金) 00:30:53.96 ID:???
CMSの質問は該当のCMSスレへ
301nobodyさん:2011/06/17(金) 00:36:43.88 ID:???
>>295 >>297
whois で検索して出てくるサイトに
ドメイン名を入力し検索しても

専用サーバに載せているもう一つのドメインは出てきません。
2つ目の公開していないドメインがどうしてばれたの不思議と同時に気持ち悪いです。。。
302nobodyさん:2011/06/17(金) 00:40:09.69 ID:???
ID出せ
303nobodyさん:2011/06/17(金) 00:46:06.87 ID:???
頑なにID出さなくてワロタwww
304nobodyさん:2011/06/17(金) 01:05:30.01 ID:???
whoisなら10秒どころか1秒もかからない
305nobodyさん:2011/06/17(金) 03:57:01.10 ID:???
test
306nobodyさん:2011/06/17(金) 05:06:24.20 ID:???
whoisはこの流れでは間違いだとおもうんだけどなぁ
307nobodyさん:2011/06/17(金) 07:26:36.91 ID:VfWFsqJl
>>300
CMSで検索してもそれらしいスレがわかりませんでした。
誘導してくれるとありがたいです。
308nobodyさん:2011/06/17(金) 07:36:47.63 ID:Qvzk0Ibe
substrみたいなので
文字列が半角だろうが、全角だろうが0文字目から5文字を
あいuえおaa→あいuえお
あいうえおaa→あいうえお
aiueoaaa→aiueo
と判別して取り出せる方法ないでしょうか?
309nobodyさん:2011/06/17(金) 07:38:05.90 ID:Qvzk0Ibe
ついでに文字コードはShift_JISです
310nobodyさん:2011/06/17(金) 07:48:26.90 ID:???
>>301
IPアドレスが同じだからでしょ
nslookup が妥当な気もするけど
311nobodyさん:2011/06/17(金) 07:51:09.24 ID:???
>>308
mb_
312nobodyさん:2011/06/17(金) 08:10:44.67 ID:???
>>311
ありがとうございます!一発解決でした
313nobodyさん:2011/06/17(金) 11:03:29.92 ID:xe3B7tTR
PHPのFTP関数で、サーバーと接続まではできるのですが、ファイルをアップロードしようとすると

Warning: ftp_put() [function.ftp-put]: PORT command successful

というエラーが出てアップロードできません。
これは何がいけないのですしょうか?
314nobodyさん:2011/06/17(金) 11:39:51.04 ID:???
パッシブモードをオンにしてみたらどうかね
315nobodyさん:2011/06/17(金) 12:19:45.55 ID:xe3B7tTR
>>314
できました!
ありがとうございます。
316nobodyさん:2011/06/17(金) 16:16:02.71 ID:nzqljx60
gethostbyaddr()を速くする方法ってありますか?
ggって出てきたmax_execution_timeをいじるやり方を試してみたのですが劇的な改善は見込めませんでした
回数は最大で200回程度です。

php5.3.1、xamppを使ってのローカルアプリです。よろしくお願いします。
317nobodyさん:2011/06/17(金) 16:24:47.89 ID:???
100ミリ秒で200回程度なのか1秒で200回程度なのか1時間で200回程度なのか1年で200回程度なのかはっきりしろよ!

と書いた途中xampp使ってる奴か
気にするようなレベルじゃないんだからいいよ
318nobodyさん:2011/06/17(金) 16:25:26.08 ID:???
ウイルス作成罪が想像以上に馬鹿だった
319nobodyさん:2011/06/17(金) 18:32:20.66 ID:???
>282
いいから、
http://www.aguse.jp/
上のサイトで、その公開しているドメインを入力してみろよ。
一発で出るから。
320nobodyさん:2011/06/17(金) 18:40:13.48 ID:???
なんて言うか、みんなが「出来るよ」って言ってるのに
頑なに「出来ません!出来ないはずです!」って言われてもな・・・

まるで「出来ないよ」って言われて安心したいから
質問してるみたいで変な感じ。
321nobodyさん:2011/06/17(金) 18:52:40.25 ID:0mUESFUm
【OS名】Windows7 pro
【PHPのバージョン】5.3
【連携ソフトウェア】Xampp
【質問内容】

文字列からyoutubeの動画のURLを見つけて
埋め込みURLに置換するスクリプトを書いています
具体的にはこうです
http://www.youtube.com/watch?v=RMgwWlu5MtA
又は
http://youtu.be/RMgwWlu5MtA
というURLがあったら
<iframe width="425" height="349" src="http://www.youtube.com/embed/RMgwWlu5MtA" frameborder="0" allowfullscreen></iframe>
に置換する
これをやりたいと思ってこう書きました
$str=ereg_replace("(https?://)(www.youtube.com/|youtu.be/)(*watch\?v=)?([\w\d\-\.,@?^=%&:/~\+#]*)","<iframe width=\"425\" height=\"349\" src=\"http://www.youtube.com/embed/\\4\" frameborder=\"0\" allowfullscreen></iframe>",$str);
その結果はこうです
<iframe src="http://www.youtube.com/embed/" allowfullscreen="" width="425" frameborder="0" height="349"></iframe>RMgwWlu5MtA
単純にこうすると
$str=ereg_replace("(https?://)(www.youtube.com/|youtu.be/)(*watch\?v=)?([\w\d\-\.,@?^=%&:/~\+#]*)","\\4",$str);
こうなります
RMgwWlu5MtA

本当はこうなってほしいのですが
<iframe width="425" height="349" src="http://www.youtube.com/embed/RMgwWlu5MtA" frameborder="0" allowfullscreen></iframe>
なりません
寝て目が覚めたら何か解決策が思いつくかと思ったけど何も思いつきませんでした
何方か解決策をご存知でしたら教えてください
よろしくおねがいします
322。 ◆oDupeixhZv52 :2011/06/17(金) 19:18:31.04 ID:???
(watch\?v=)([A-Za-z0-9\-\.,@?^\=%&:/~\+#]+)
ereg_replaceだと、\wや\dは使えませんよー
323nobodyさん:2011/06/17(金) 20:16:52.54 ID:???
初心者はXAMPP使うな
324nobodyさん:2011/06/17(金) 20:34:57.30 ID:0mUESFUm
>>322
ありがとうございます
やったー!!
できるようになりました
修正後のコードはこうです

$str=ereg_replace("(https?://)(www.youtube.com/|youtu.be/)(*watch\?v=)?([[:alnum:]\+\$\;\?\.%,!#~*/:@&=_-]+)","<iframe width=\"425\" height=\"349\" src=\"http://www.youtube.com/embed/\\4\" frameborder=\"0\" allowfullscreen></iframe>",$str);

325nobodyさん:2011/06/17(金) 20:54:15.98 ID:???
ereg系を使うクズがまだいたのかっ!
326nobodyさん:2011/06/17(金) 21:25:26.03 ID:???
pregでうまくいかないこともあるのでeregも場合によっては使うよ
327nobodyさん:2011/06/17(金) 21:25:46.04 ID:???
pregでうまくいかない場合ってどういう場合?
328nobodyさん:2011/06/17(金) 22:08:45.43 ID:???
>>319
ありがとう!!まさか、こうもあっさり調べられるとは予想もしてなかったよw!!!
ありがとう!


何かこんな便利なサイトを作ってくれた人がいるんなんて。
俺もこれだけ便利なサイトを作って世の人に貢献したいな。
329nobodyさん:2011/06/17(金) 22:09:45.74 ID:???
ID出せ
330nobodyさん:2011/06/17(金) 22:17:09.66 ID:???
>>325
単純な条件だとeregの方が速いって記事どっかでみたけどどうなんだろ?
自分で試してないからなんともいえないけどw
331nobodyさん:2011/06/17(金) 22:21:32.75 ID:8p615TQf
winXP+php+smartyの環境です。
require_once 'c:/xampp/php/includes/Smarty/libs/Smarty.class.php';
だと、通るのですが、
require_once 'Smarty/libs/Smarty.class.php';
だと、エラーになります。
どうすればいいでしょうか?
設定ファイルみたいのに何か書けばいいような気がするのですが、
どのファイルに何を書いていいのかわかりません。
どなたか教えてください。
332nobodyさん:2011/06/17(金) 23:15:25.10 ID:???
333nobodyさん:2011/06/17(金) 23:43:49.03 ID:???
XAMPPを使う奴に限ってeregを使う
eregを使う奴に限ってマニュアルをよく読まない
マニュアルをよく読まないからバージョンの違いで壁にぶち当たる日が来る
334nobodyさん:2011/06/18(土) 00:14:29.53 ID:???
過去ログ見てたけどOCNって誰?
335nobodyさん:2011/06/18(土) 00:54:10.15 ID:???
>>331
相対パスは、requireされたときの場所によって意味が変わっから、どこかにdefine(ROOT_DIR, dirname(__FILE__))みたいなの入れて、そこを基準にパス記述するよーにすればいいんじゃね?

っつか、smartyの場合ってsmartyのディレクトリを示す定数があったよーな。
336nobodyさん:2011/06/18(土) 01:03:41.27 ID:???
ID出せ
337nobodyさん:2011/06/18(土) 03:30:12.37 ID:???
>>331
inclide_path通ってないだけだろ
338nobodyさん:2011/06/18(土) 09:50:15.01 ID:???
またXAMPPか
339nobodyさん:2011/06/18(土) 10:38:27.34 ID:5amRruzF
$st = $db->prepare('insert into posts(content) values(?)');
これの「->」の意味を教えていただけたら嬉しいです。
340330:2011/06/18(土) 11:08:27.23 ID:???
>>332
読んだ
そういう問題じゃなかったな
341nobodyさん:2011/06/18(土) 12:18:37.47 ID:???
>>339
テンプレ
342nobodyさん:2011/06/18(土) 12:43:51.51 ID:5amRruzF
>>339
ありがとうございました。そしてすみませんでした。
343nobodyさん:2011/06/18(土) 14:19:31.46 ID:???
今のプロジェクトが

匿名メソッドをガンガン使ってるんですが(__call)
この機能にいったいどんなメリットがあるのでしょうか?
344nobodyさん:2011/06/18(土) 14:47:24.51 ID:???
ありませんよ
345nobodyさん:2011/06/18(土) 14:48:05.29 ID:???
デメリットしかないよ!だから使う価値はないよ!!
346nobodyさん:2011/06/18(土) 14:54:41.57 ID:???
ID出せ
347343:2011/06/18(土) 15:08:19.79 ID:???
前任者がマジックメソッドなる負の遺産をだらけの
オナニーコードを残して退社しやがった。

まつうら ***
348nobodyさん:2011/06/18(土) 15:10:28.55 ID:???
技術力低いエンジニアしか残ってなさそうだけどお前の会社の将来が心配だw
349nobodyさん:2011/06/18(土) 15:28:43.90 ID:???
>>347
お前が馬鹿だろ
マジックメソッドを積極的に活用すれば自由度の高いアプリを組めるのに
350nobodyさん:2011/06/18(土) 15:34:16.23 ID:???
自由すぎてめちゃくちゃになるわw
351nobodyさん:2011/06/18(土) 15:45:34.63 ID:???
つZF
352nobodyさん:2011/06/18(土) 16:06:17.89 ID:???
めちゃくちゃになるかどうかはプログラマーの能力次第
353nobodyさん:2011/06/18(土) 16:09:15.61 ID:???
eregのような非推奨な機能ならともかく、
マジックメソッドはPHPが公式にサポートしている正当な機能。
お前らには使いこなせないかも知れんけどな。
354nobodyさん:2011/06/18(土) 16:11:33.25 ID:???
マジックメソッドなんて可読性が悪くなるだけ。

最初に使いまくった奴は馬鹿


因みにそいつ無駄にPHPなのに7重継承とかしやがって。あほらしい。
355331:2011/06/18(土) 16:12:36.27 ID:aDPJsk7d
>>335>>337
有り難うございました。 php.iniファイルの書き換えをすませていませんでした。
356nobodyさん:2011/06/18(土) 16:32:36.51 ID:77Lco+b7
>>354
そして、万世一系を目指すのです。 近親相姦人間犬猫ブリーディングは美しい日本の文化です。
357nobodyさん:2011/06/18(土) 16:35:35.71 ID:???
>>353
Only in PHP(笑)
358nobodyさん:2011/06/18(土) 20:15:11.35 ID:???
PHPという独立した言語なんだから他の言語に無い機能があって当然
359nobodyさん:2011/06/18(土) 20:35:58.03 ID:???
サポートしてる正当な機能だから何?
いらんものなのは反応を見ても明らかだろ
使いこなせないじゃなくて使うべきじゃない
goto文や多重継承なんかが同じようなこと言われてんだろ
360nobodyさん:2011/06/18(土) 20:38:11.76 ID:???
いらないと思うなら自分が使わなければいいだけでは?
361nobodyさん:2011/06/18(土) 20:41:47.32 ID:???
議論の余地なし(キリッ
362nobodyさん:2011/06/18(土) 21:22:07.14 ID:???
マジックメソッドは糞

それを使う奴はド糞
363nobodyさん:2011/06/18(土) 21:31:24.92 ID:GJJqHIXM
質問です。

403(直リンク禁止)の画像は、リファラを弄ってreadfileで読みこめばphpで表示できたんですが、
下記のURLのように302で遷移されてしまっていると、なぜか遷移先のページが表示されてしまいます。
http://image.itmedia.co.jp/promobile/articles/1106/17/l_ys_s01.jpg

普通に元の画像を表示したいんですが、readfileじゃ無理なんでしょうか?
364nobodyさん:2011/06/18(土) 21:48:45.61 ID:???
>readfileじゃ無理なんでしょうか?
無理だから飛ばされたのでは?
itmediaの鯖管じゃないしそんなこと聞かれても困っちゃう

ブラウザで正常に読み込める状態を再現すればいい
365nobodyさん:2011/06/18(土) 22:38:53.62 ID:???
迷惑だから規制されてるのにバカなことやってんじゃねえよ
366nobodyさん:2011/06/18(土) 22:57:42.14 ID:???
>>364-365
役に立たないレスなら書き込まなくて結構です。
不愉快です。
他の方の建設的な返信をお待ちしております。
367nobodyさん:2011/06/18(土) 22:58:37.97 ID:???
>>366
0点
368nobodyさん:2011/06/18(土) 23:00:06.01 ID:???
>>364の意味が分からないなら諦めたほうがいいんじゃね
369nobodyさん:2011/06/18(土) 23:01:17.18 ID:8aFGyEAx
Pearの使いたいライブラリがレンタルサーバーにインストールされていません。
シェルの使えないレン鯖なのですが、この場合はgo-pearを使用して新たにレン鯖にPearをインストールした方がいいですか?
370nobodyさん:2011/06/18(土) 23:08:54.43 ID:???
371nobodyさん:2011/06/18(土) 23:13:03.97 ID:???
なんでインストールの章すら読まないんだろうね
372nobodyさん:2011/06/18(土) 23:13:06.44 ID:8aFGyEAx
>>370
おお。ありがとうございます。
373nobodyさん:2011/06/19(日) 00:08:01.62 ID:???
xampp
terapad
ffftp
これらはphpの三種の神器と言われている
374nobodyさん:2011/06/19(日) 00:37:09.52 ID:???
いきなりどうした
375nobodyさん:2011/06/19(日) 00:56:55.49 ID:???
そんなエサに(ry
とりあえず釣りでもFFFTPを薦めるのはやめろな
376nobodyさん:2011/06/19(日) 02:05:35.39 ID:???
FFTP可哀そう・・・
377nobodyさん:2011/06/19(日) 02:18:02.28 ID:???
過去の遺産だしな
FileZillaでFTPS通信してください
378nobodyさん:2011/06/19(日) 02:26:48.53 ID:z+f6n4KR
質問です
a.phpとb.phpがあって、b.phpの中にa.phpの内容を丸ごと取り込んで
b.phpを実行した時にa.phpと同じ処理をするって不可能でしょうか。
bをaのエイリアス的なものにしたいということなんですが、
そういう関数探したものの見つからずで…
もしやり方があったら教えてください、お願いします
379nobodyさん:2011/06/19(日) 02:59:17.73 ID:???
コード出さないとわからんで
380nobodyさん:2011/06/19(日) 03:08:05.18 ID:???
>>378
reauire
381nobodyさん:2011/06/19(日) 03:08:31.92 ID:???
requireな
382378:2011/06/19(日) 03:51:17.41 ID:???
そっか!requireってそうですね!試してみます、ありがとうございました!
383nobodyさん:2011/06/19(日) 07:19:41.06 ID:???
まじでか
384nobodyさん:2011/06/19(日) 13:06:26.65 ID:EIwIy+Sr
結局、>>363の質問が理解できる奴は皆無なんだね。
さすが2chだわ。低レベルのクズの集まり。
385nobodyさん:2011/06/19(日) 13:10:07.51 ID:???
まじでか
386nobodyさん:2011/06/19(日) 13:17:44.01 ID:???
穴を潜り抜けて画像を取得したい人のお手伝いはしません
迷惑行為のクズはしにましょう
387nobodyさん:2011/06/19(日) 13:21:56.29 ID:???
>>384
itmediaに問い合せするといいよ。
設定ファイルの中身を教えてくださいって
388nobodyさん:2011/06/19(日) 13:26:09.01 ID:???
>>386-387
役に立たないレスなら書き込まなくて結構です。
不愉快です。
他の方の建設的な返信をお待ちしております。
389nobodyさん:2011/06/19(日) 13:26:25.49 ID:???
まじでか
390nobodyさん:2011/06/19(日) 13:29:41.09 ID:???
>>363
俺出来るよ
専ブラに組み込んでる
よければコード教えようか?
出来ればメアド書いてくれ
391nobodyさん:2011/06/19(日) 13:32:29.43 ID:EIwIy+Sr
>>390
ありがたいです!是非教えてください。
[email protected]
※本アドです。悪用は勘弁して下さい。
392nobodyさん:2011/06/19(日) 13:43:42.55 ID:???
まじでか
393nobodyさん:2011/06/19(日) 13:46:44.94 ID:???
まじでか?
394nobodyさん:2011/06/19(日) 14:13:08.87 ID:???
送る前に確認したいんだけど
>>366
>>384
>>388
は君が書き込んだわけじゃないよね?
395nobodyさん:2011/06/19(日) 14:18:35.64 ID:???
志村、IDID〜〜〜!!!
396nobodyさん:2011/06/19(日) 14:24:56.64 ID:EIwIy+Sr
>>394
>>384を書き込んだのは自分です。
それ以外の書き込みは第三者だと思います。

あえて煽り口調にすることで、回答してくれる方が現れるかなと。
もちろん実際にそう思っているわけではありません。
397nobodyさん:2011/06/19(日) 14:25:43.40 ID:???
荒らすなよ
迷惑行為に加担するなアホ回答者が
HTTPクライアント作る気もない教えて君に答える必要はない
398nobodyさん:2011/06/19(日) 14:34:12.15 ID:wZP2QiR6
>>390
送ってもらえると助かります。
是非よろしくお願いします。
出来ればここに書いてもらえると助かります。


>>396
偽者は死ねボケ。
てめえなめてんじゃねーぞクソガキのくせに。
俺に迷惑かけんなクソガキ市ね氏ね死ね。
しねしねしねしね。
399nobodyさん:2011/06/19(日) 14:40:15.49 ID:???
偽者は死ねhoge
400nobodyさん:2011/06/19(日) 14:47:48.52 ID:???
んじゃ1000円を下記口座に振りこんでください
401nobodyさん:2011/06/19(日) 15:23:11.05 ID:???
まじでか
402nobodyさん:2011/06/19(日) 15:24:42.00 ID:???
>>398
「しね」が3回書き込まれましたので脅迫もしくは殺害予告とみなし
関係機関に通報いたします。
403nobodyさん:2011/06/19(日) 17:17:11.00 ID:???
めでたしめでたし
404nobodyさん:2011/06/19(日) 17:49:50.70 ID:???
>>398 ←こういう奴ってプログラマとしてはもちろん人間として恥ずかしいよな
405nobodyさん:2011/06/19(日) 17:52:33.78 ID:???
もしかして → マジレス
406nobodyさん:2011/06/19(日) 18:26:00.03 ID:???
>>398を読んでまともに回答しようとする奴はいないだろう
前半で丁寧に書いても後半であんなこと書いたら誰も冗談とは思わないぞ
407nobodyさん:2011/06/19(日) 18:29:53.62 ID:???
>>316お願いします
408nobodyさん:2011/06/19(日) 18:37:31.69 ID:???
マルチスレッド
409nobodyさん:2011/06/19(日) 19:41:01.50 ID:???
2ch先人の石碑 「ここから上にレスするな」
この石碑にはここまで糞レスが来たと言う事実を今に言い伝えている。

 ゙"  "''"  "゙"  ゙"/::ヽ____ ヾ"
 ゙" ゙"  "  ゙"'' ゙" |ヽ/::   レ こ  ヾ''"
゙"  ゙'"  "゙"   ゙" .|:: |:::   ス こ   | ゙ "
  ゙" ゙  ゙"  ゙"''  |:: l:   す か  |
 ゙"  ゙"   "゙" ゙"|: :|:   る ら  |  ''゙"
゙"  ゙"  ゙""'"Wv,_|:: l    な 上   |、wW"゙"
゙" ゙"''"  ".wWWlヽ::'ヽ|:::::_::__に___:.|::\W/ ゙"゙''"
"'' ゙"''"゙"  V/Wヽ`―――――――――lV/W  "'
゙""'  ゙"''"  "゙"WW''―――――――wwww'  ゙"゙''
410nobodyさん:2011/06/19(日) 20:10:26.95 ID:???
下だろ?
411nobodyさん:2011/06/19(日) 20:45:16.61 ID:???
412nobodyさん:2011/06/19(日) 21:19:55.80 ID:???
         .,          .,,
        / ~-,,        i ~~,i'
       ,/  /        i' ,/      ,,
       /  .,/  ,.     /   ̄ ̄ ̄ ̄ \
    ,、/  /  / ~''フ  ./  .+;―――+  /~
   ./   く   ,/  /   /    'i,   ./  ./
    \,   \/ /  /  ,/'i,   'i,  /  ./
      .\    ./ ,., '-, /  'i,  V   ,i'
       .>  ./ .く \ ''    ',*   く
   _,,,,/ ∠--'''''   'i,    /  .,,  .\,
   i'        __,,,-,  _,|  /  / .\   ~'-.,,_
   .'i_,--―''''i  |   .レ ,,-''~  /    \,   .~,;'
        |  | _,,-, i, ._,-'~ /'''--...,,_  ~'''-,,,,/
    .|~~'';*..|  | 'i.  'i, ''~   '-,,,_   ~''-,,
    i  |. 、|  | 'i,  'i,       ~''-..,_ ./
    ,i .  |  |  |  'i,  'i,   .,,__      ~''
   ,/  | 、|  |  i _,,-'  ./  ~~'''''--..,,_
    ''-,,_ i.. ..|  |  .~   .''--...,__    .~''-..,_
     ~  .、|  |           ~''''-...,,_  ./
        |  |              ~''-,/
        ~~~~
413 忍法帖【Lv=8,xxxP】 :2011/06/19(日) 21:38:46.28 ID:???
-------------------------再開--------------------------
414nobodyさん:2011/06/20(月) 00:36:23.03 ID:???
-------------------------欲求--------------------------
415nobodyさん:2011/06/20(月) 02:06:54.89 ID:xe74n3DT
すみません。
PHPとSQliteを使って全文検索する手順を知りたいのですが。
どうすればできますか。
416nobodyさん:2011/06/20(月) 02:22:31.05 ID:???
>>415
PHPからSQliteにアクセスしてSQLで検索すればできます。
417nobodyさん:2011/06/20(月) 02:29:18.44 ID:/nEsLqtQ
$tes = 'adfs<p></p>aidos';

if (preg_match('@<p></p>@', $test, $matchs)) {
$matchs = $matchs;strpos($content, '<p></p>');
}
これがなぜかひっかからないんですが、これのどこがまずいんですかね?
418nobodyさん:2011/06/20(月) 02:40:24.49 ID:???
>>417
$tes
419415:2011/06/20(月) 03:05:47.17 ID:xe74n3DT
>>416
分かち書きなどデータを格納させる部分がわからないです。
420nobodyさん:2011/06/20(月) 03:45:23.98 ID:???
>>419
分かち書きして格納しなくても全文検索できると思うけど
421nobodyさん:2011/06/20(月) 10:23:42.66 ID:BNitWR33
質問です。
こちらのスクリプトを設置したのですが
ttp://www.netmania.jp/cgi/108.php
投票結果ページのテーブルを左に寄せたいのですが
※票数とかグラフのところ
どうすればいいのか教えてください。
422nobodyさん:2011/06/20(月) 10:25:02.05 ID:???
>>421
これ仕事の質問?
423nobodyさん:2011/06/20(月) 10:41:47.35 ID:???
>>421
ここはそういうスレじゃありません
自分で作る人のためのスレなので
全くPHPが分からない人は改造依頼スレにでも行ってください
424nobodyさん:2011/06/20(月) 10:43:38.47 ID:???
よもまつだな
425nobodyさん:2011/06/20(月) 11:00:03.56 ID:???
しかもスクリプトがPHPと関係ないしPerlだし
しかも質問内容的にはHTMLとCSSの範囲だし
このスレと関係ないし
426nobodyさん:2011/06/20(月) 11:15:25.08 ID:???
>>423
いいえ質問ですよ?
何様ですか?
どうしたらいいのかを聞いているだけです。
分からないならROMることを推奨します。
427nobodyさん:2011/06/20(月) 11:22:07.32 ID:vXcQRUtr
ID出して煽れ
428nobodyさん:2011/06/20(月) 11:49:57.11 ID:t9yzgRwY
>>421
ここで質問しても無駄だよ
いちいち難癖つけては答えないスレだからね
429nobodyさん:2011/06/20(月) 11:57:37.93 ID:???
>>428
うぜえ
430nobodyさん:2011/06/20(月) 12:14:22.37 ID:???
最近答えを引き出せないと逆ギレするのが流行ってるのか?
431nobodyさん:2011/06/20(月) 12:21:39.33 ID:???
何をいまさら
432nobodyさん:2011/06/20(月) 12:23:30.16 ID:???
433nobodyさん:2011/06/20(月) 12:27:46.90 ID:???
作る気もなきゃ理解する気もない、
頭がサポートするに値しないほど足りないやつは金払うしか無いと思う。
434nobodyさん:2011/06/20(月) 13:30:34.44 ID:???
428が真理なんだからどうしようもない
435nobodyさん:2011/06/20(月) 16:27:58.37 ID:???
無料で聞いてやってるんだから無料で答えて欲しい
436nobodyさん:2011/06/20(月) 16:58:07.44 ID:BDImTBKJ
PHPで扱える書庫で、展開なしにランダムアクセス可能な物はありますか?
たとえばzip書庫からファイル名や格納データを取り出すことは出来ますか。
437nobodyさん:2011/06/20(月) 17:00:30.87 ID:???
展開なしにランダムアクセスをもっと具体的に説明せい
438436:2011/06/20(月) 17:01:00.23 ID:BDImTBKJ
導入にビルドが必要なのはよくないです。
439nobodyさん:2011/06/20(月) 17:04:22.88 ID:???
440nobodyさん:2011/06/20(月) 17:04:33.58 ID:BDImTBKJ
>>437
ファイル名リストが取り出せて、ファイル名を指定したらそのデータをメモリに格納できるといいです。
441nobodyさん:2011/06/20(月) 17:08:39.40 ID:BDImTBKJ
サンクス
442nobodyさん:2011/06/20(月) 23:07:38.53 ID:???
443nobodyさん:2011/06/20(月) 23:11:35.85 ID:???
初心者はXAMPP使うな
444nobodyさん:2011/06/20(月) 23:13:38.98 ID:???
かつて初心者のために身を粉にしてXAMPP,FFFTP,Terapadの使用をやめるよう説得してた人を最近見ないね
445nobodyさん:2011/06/21(火) 00:17:05.45 ID:???
それ私です。
以前は初心者がXAMPPを使うのに反対でしたが最近は考えが変わって
積極的に初心者に勧めるようにしています。
なぜなら初心者が成長してしまうといつか自分が追い越されるかも知れないからです。
446nobodyさん:2011/06/21(火) 00:43:49.52 ID:LEFbBZTK
httpとhttpsが同じドメインのサイトで
ログイン処理を実装してるんですが、

・ログイン画面 → HTTPSで表示
・ログイン処理 → HTTPSで処理、セッションIDの変更、次の画面へリダイレクト

というようなことをやっているんですが、
HTTPSで作成したセッションIDの場合
HTTPの画面に繊維した場合セッションIDを引き継げず
ユーザー情報などが消えてしまい非常に困っています。

どのように解決すればよろしいでしょうか?
447nobodyさん:2011/06/21(火) 00:54:47.47 ID:???
>>446
session_name($old_session_name);
448nobodyさん:2011/06/21(火) 01:11:14.42 ID:???
ユーザー情報が消えたら恐ぇな
449nobodyさん:2011/06/21(火) 01:14:04.62 ID:???
そうだね
450nobodyさん:2011/06/21(火) 01:27:18.63 ID:???
そうだねで済まさないでください!
真剣に困っているんです。
急いでいますので早く回答してください
451nobodyさん:2011/06/21(火) 01:30:50.40 ID:???
1つのサーバでどれ位のログイン制御を行う事が出来るのかな?
452nobodyさん:2011/06/21(火) 01:33:11.32 ID:???
3つくらいじゃない?
453nobodyさん:2011/06/21(火) 01:42:40.59 ID:???
PHPの仕様上、最大5つまでですが、
Apacheの制約によって3つが最大となります。(バージョンによっては2つまで)
454nobodyさん:2011/06/21(火) 02:42:23.38 ID:B4Ac5btr
http://localhost/kisop/chap6/kisop_blog/
をブラウザに打ち込むと、
kisop_blogフォルダの中にある、index.phpを実行する
で、いいのでしょうか?
ちなみに、
kisop_blogフォルダには、
index.php、.htaccess、kisop_blog.css
の3つのファイルが入っています。
455nobodyさん:2011/06/21(火) 02:43:10.23 ID:???
>>454
Webサーバの設定による
456nobodyさん:2011/06/21(火) 02:45:11.22 ID:B4Ac5btr
>>455
自鯖に、XAMPPをインストールしたのですが、その設定はどこのファイルにされているのでしょうか?
457nobodyさん:2011/06/21(火) 02:47:07.99 ID:???
458nobodyさん:2011/06/21(火) 02:51:14.09 ID:B4Ac5btr
つーか、PHPの挙動として、
http://localhost/kisop/chap6/kisop_blog/
をブラウザに打ち込むと、
.htaccessファイルやkisop_blog.cssファイルを実行する
ってことは考えられるのでしょうか?
459nobodyさん:2011/06/21(火) 02:56:33.35 ID:???
つーかって何?
460nobodyさん:2011/06/21(火) 03:02:33.57 ID:B4Ac5btr
しかし、アパッチ、データベース、PHPを別個にインストールすると、どういうメリットがあるんでしょうね?
461nobodyさん:2011/06/21(火) 03:43:20.06 ID:???
>>458
考えられますよ。
普通はそんな設定しないけれど。
462461:2011/06/21(火) 03:48:42.81 ID:???
>>460
「PHPの挙動として○○にアクセスすると△△や□□を実行する」
なんてトンチンカンなことを言わなくなるというメリットがあるよ。
463nobodyさん:2011/06/21(火) 03:54:08.40 ID:???
>>460
お前みたいのが出なくなることだろw
464nobodyさん:2011/06/21(火) 04:12:44.63 ID:B4Ac5btr
アパッチ、データベース、PHPの関連づけを自分でするか、XAMPPに任せるか、だけの違いだと思うんだけど。
465nobodyさん:2011/06/21(火) 04:22:54.21 ID:???
任せた結果がお前だろw
466nobodyさん:2011/06/21(火) 04:26:10.06 ID:B4Ac5btr
>>465
では、
・関連付けするにはかなりの知識が必要
ということになるのでしょうか?
ということは、
・関連付けをどうするか説明した本
とかあるのでしょうか?
467nobodyさん:2011/06/21(火) 04:27:26.41 ID:???
>>464
要するに初心者がXAMPPで入れるとWEBサーバーとPHPの役割分担すら理解できず
>>454>>456>>458のようなとんちんかんな質問をする羽目になるってこと。
これらを理解してXAMPPを使ってるなら上のような質問は出ないってこと。
468nobodyさん:2011/06/21(火) 04:28:16.03 ID:???
>>466
関連付けがどうこうじゃなくて、それぞれの役割ぐらい理解したら?
で、何らかの設定を変えたい時に、どの設定ファイルを変更すればいいのかぐらいわかるようになればいいんでないの。
いま.htaccessはPHPの設定だと思ってるんでしょ?
469468:2011/06/21(火) 04:28:53.39 ID:???
わお。もろかぶり。
470nobodyさん:2011/06/21(火) 04:30:17.16 ID:???
>>466
「関連付け」って何だよw
それぞれ独立したアプリなんだけどな。
もっともapacheにはPHPに関する設定は存在するがそういうレベルじゃないんだろ?
471nobodyさん:2011/06/21(火) 04:30:45.98 ID:???
>>466
かなりの知識は必要ない。
基本的ないくつかの知識さえ習得すればXAMPPに任せて(って言い回しもどうなのか)いいと思うよ
472nobodyさん:2011/06/21(火) 04:35:40.16 ID:???
このスレでXAMPPが嫌われるのは、こういったPHP以外の要因の質問が出るからなんだろうな。
本来Apacheの範疇ならApacheスレへ行け、で済む話なんだが。
473nobodyさん:2011/06/21(火) 06:05:00.27 ID:???
設定いじらなければ初心者でもxampp推奨
PHPの勉強をしていってやりたいことができなくなってから
始めて設定に関する知識を身につければいい
環境構築を1から始めると挫折するやつが多いが
ある程度PHP理解してからなら挫折もしないからな
474nobodyさん:2011/06/21(火) 06:13:09.06 ID:???
XAMPPのおかげでPHPは入門できたが、
JSPは環境構築が難しくて入門できませんでした><
475nobodyさん:2011/06/21(火) 07:20:11.12 ID:???
初心者はXAMPP使うな
476nobodyさん:2011/06/21(火) 10:01:34.21 ID:???
毎度のことながら使うなという理由が言えないなら黙ってなよ。
477nobodyさん:2011/06/21(火) 10:04:19.90 ID:???
>>444
ちんぴらとOCNか
478nobodyさん:2011/06/21(火) 10:07:53.81 ID:???
>>460
知識量から見るにwindowsで使ってると思うが
xamppはphp5.3.6に対応していない
ちなみにapache公式サイトで配布されているバイナリもphp5.3.6には対応していない
479nobodyさん:2011/06/21(火) 10:09:48.18 ID:???
>>476
理由出てるじゃん外人さん
480nobodyさん:2011/06/21(火) 10:13:45.56 ID:???
初心者はXAMPP使うな

これのどこが理由だよ?
他人の意見を理由にして毎度煽ってるんじゃねえよ雑魚が
この一文は見飽きた
481nobodyさん:2011/06/21(火) 10:28:42.36 ID:???
大好きなXAMPPをけなされて悔しいのか
482nobodyさん:2011/06/21(火) 10:28:43.72 ID:???
>xamppはphp5.3.6に対応していない
5.3.6が入ってるパッケージが作成されてないというなら分かるけど、
対応してないとかはない。
インストール後に個別にアップデートすればいいだけの話。
483nobodyさん:2011/06/21(火) 10:31:47.32 ID:Joa3pOsa
どうやってアップデートするんですか?
詳しく教えてください
484nobodyさん:2011/06/21(火) 10:33:27.86 ID:???
インストールディレクトにバイナリを上書き
485nobodyさん:2011/06/21(火) 10:37:25.39 ID:???
それで動くわけないだろ
xampp使いはバカだな
486nobodyさん:2011/06/21(火) 10:38:58.48 ID:???
動きます
後方互換性って言葉もしらんのか
487nobodyさん:2011/06/21(火) 10:40:01.75 ID:???
xamppに入ってるapacheがvc6なのに何で動くんでしょうかね
php5.3.6はvc9しかないのにね
不思議だね
488nobodyさん:2011/06/21(火) 10:43:08.49 ID:???
apacheアップデートすればいいじゃん
489nobodyさん:2011/06/21(火) 10:44:49.64 ID:???
動きます
後方互換性って言葉もしらんのか
490nobodyさん:2011/06/21(火) 10:45:00.31 ID:???
じゃあやってみて^^お願いね^^
その結果を画像つきでブログでも載せてね^^
491nobodyさん:2011/06/21(火) 10:45:37.56 ID:???
vc6とかvc9とか知らないと思って知ったかぶりしてんじゃねーよw
492nobodyさん:2011/06/21(火) 10:48:10.48 ID:???
いやいや、だから上書きしたらできるんでしょ?やってみて
そういうレスはいらないから出来る証拠を提示してね
493nobodyさん:2011/06/21(火) 10:49:56.80 ID:???
インストール後に個別にアップデートすればいいだけの話
494nobodyさん:2011/06/21(火) 10:52:26.94 ID:???
上書きして設定したら出来ますよ
495nobodyさん:2011/06/21(火) 10:58:35.27 ID:???
5.3.6ってVC6用意されてないんだね。
496nobodyさん:2011/06/21(火) 11:03:21.31 ID:???
独立してるからアプリケーションを個々にアップデートしても依存関係を解消すれば動くのは当たり前。
動かなくなる可能性があるのはxamppのコントロール関係だけだろ。
497nobodyさん:2011/06/21(火) 11:05:47.29 ID:???
xamppのコントロール関係w
498nobodyさん:2011/06/21(火) 11:08:02.85 ID:???
最初から個別にいれればいいじゃんw
499nobodyさん:2011/06/21(火) 11:13:59.67 ID:???
XAMPPERってVC6とVC9の事も知らない人多そうだな
500nobodyさん:2011/06/21(火) 11:17:31.06 ID:???
XAMPP使いじゃなくても知らない人多いんじゃね?

どうせその辺のサイトの言うとおりやったら出来ました的なやつが大半だろ?
肝心のconfもまるまるコピペ。
一応自分で設定したつもりだろうが、言われた通りやりましたじゃXAMPP使いと大差ないわ。
501nobodyさん:2011/06/21(火) 11:17:47.27 ID:???
xamppでコントロール出来なかったらどうやってApache起動するんだろう・・・
502nobodyさん:2011/06/21(火) 11:18:47.20 ID:???
ブログまだー?
503nobodyさん:2011/06/21(火) 11:18:48.84 ID:???
httpd start
504nobodyさん:2011/06/21(火) 11:21:17.04 ID:???
>>501
Apache起動したままアップデートすればいい。
505nobodyさん:2011/06/21(火) 11:23:23.52 ID:???
Windowsはサービスに登録すればいいらしいな。
昔はコマンドから起動できたらしいが。
Linuxでやってるからその辺はよく知らん。
506nobodyさん:2011/06/21(火) 11:24:58.19 ID:???
Linuxでxampp使ってるとか釣り?
507nobodyさん:2011/06/21(火) 11:26:53.12 ID:???
Linuxでxamppとか一言も言ってませんが。
508nobodyさん:2011/06/21(火) 11:29:02.78 ID:???
ここまでの出来事で分かったこと

XAMPPをけなされると必死で噛み付いてくる
509nobodyさん:2011/06/21(火) 11:29:47.74 ID:???
ここまでの出来事で分かったこと

XAMPPを脊椎反射的に否定するやつがいる
510nobodyさん:2011/06/21(火) 11:43:13.78 ID:???
45秒で返すとか粘着しすぎだろwwwwwwwwwwwwwwwww
511nobodyさん:2011/06/21(火) 11:59:42.51 ID:???
ヒント:自作自演
512nobodyさん:2011/06/21(火) 12:01:37.56 ID:???
Linuxでxampp使っていけませんか
513nobodyさん:2011/06/21(火) 12:05:07.77 ID:eSkOaCrh
初学者でつ
10日で覚えるPHP5という教本をひと通りやり終わったんですが、次おすすめの本があったら教えてください
mySQLやPEARについてもう少し知りたいです
514nobodyさん:2011/06/21(火) 12:06:12.86 ID:???
>>513
初心者はXAMPPの解説書を読むといいよ。
515nobodyさん:2011/06/21(火) 12:10:20.29 ID:???
PEARはスルーで構いません
516nobodyさん:2011/06/21(火) 12:11:47.49 ID:???
>>475=>>514はAjax使えって言ってる奴と同じだろ?
517nobodyさん:2011/06/21(火) 12:13:31.97 ID:eSkOaCrh
>>514
このスレでも馬鹿にされてるみたいだけど
XAMPPは使うのやめたほうがいいのですか?
http://torhamzedd.blogspot.com/2010/02/xamppwebvmplayer.html

>>515
すいませぬスレチな質問でしたか?
518nobodyさん:2011/06/21(火) 12:17:20.30 ID:???
xamppもどうかと思うけどVMはそれ以上にありえない
本番環境にならないのに開発のためだけにそこまでやるとただのアホだわ
それよりもどの環境でも使える標準関数を意識的に使えばいい
519nobodyさん:2011/06/21(火) 12:21:04.64 ID:???
VMのインストールもできないボンクラw
520nobodyさん:2011/06/21(火) 12:21:12.45 ID:???
>>517
読んで見たけど、その人はスルーしたほうがいい。
恥ずかしげもなく、

>手軽だが、正直言って業務で使い物になったことは今の所一度も無い。
とか、

>XAMPPでWebサーバ運用してる奴なんかいるのか?
>だ。
>そもそも大抵のWebサーバはLinuxだ。
こんな事言っちゃってる人はあてにしちゃいけない。

>XAMPPで動たとしても、そのままLinuxで動くなんてことは保障されない。
>俺達はLinux向けのWebアプリを開発するためにLinuxベースの開発環境を整えるべきだ。
もっともらしいこと言ってるけど、世間一般ではスキルが足りない人と見られるだけ。
521nobodyさん:2011/06/21(火) 12:23:02.63 ID:???
以後XAMPP推進派のと反推進派のレスをお楽しみ下さい
522nobodyさん:2011/06/21(火) 12:26:20.26 ID:???
経験ではLinuxで動いてWindowsで動かないとかその逆とか、
今までで作ってきたものの中でそういった事態は起きたことがないな。
OSに依存する処理がsystem関数でコマンドを叩く以外に特に思い浮かばないな。
なんかあったっけ?
523nobodyさん:2011/06/21(火) 12:28:14.27 ID:???
xampp使ってる奴は設定関係の質問は禁止名
524nobodyさん:2011/06/21(火) 13:06:11.47 ID:???
設定関係でなくてもどうせ答えないんだから
525nobodyさん:2011/06/21(火) 13:08:31.06 ID:eSkOaCrh
>>518,520
ありがとうございます、未だよくわからんのでXAMPPを使いつづけることにしまつ('A`)

初心者から一歩進んだレベルになるにはどの書籍がオススメか教えてください
逆引き系の本を買って必要になったら引くとかでいいのでしょうか?
526nobodyさん:2011/06/21(火) 13:09:35.45 ID:???
xamppの書籍を出してる作者は大罪
527nobodyさん:2011/06/21(火) 13:10:39.33 ID:???
開発環境にxamppと書くとxamppの問題と関係なしに脊椎反射レス付ける知障がいるから毎回荒れるんだよな
528nobodyさん:2011/06/21(火) 13:15:00.49 ID:???
>>525
このスレじゃマニュアルを見ろとしか返ってこないと思う。
あんまマイナーなもの出すと宣伝乙って言われるし、
答えが返ってくるとしてもオライリー一択。
(読んではないけどとりあえずオライリーと言っとけばOKみたいなノリで)
書籍の質問するなら2ch以外でした方がいいと思うわ。
529nobodyさん:2011/06/21(火) 13:27:15.34 ID:eSkOaCrh
>>528
そうですか…ありがとうございますた('A`)
530nobodyさん:2011/06/21(火) 13:37:00.16 ID:???
xampp大好き野郎は自分の能力を隠すために毎回知障とか汚い言葉を好む傾向にある
だから荒れるんだよな
531nobodyさん:2011/06/21(火) 13:51:37.38 ID:eSkOaCrh
XAMPPのアンチってなんの目的があるの?
アニメとかゲハだったら売上とかに関わるしアンチが沸く理由もわかるんだけど
532nobodyさん:2011/06/21(火) 13:57:15.84 ID:???
A. xampp=悪という洗脳教育を受けてよく分からないがとりあえず悪いと言うやつ。
B. 楽してるのが気に入らない。そんなやつが俺と同じフィールドに立つんじゃねえというよくわからないプライド。

初心者はXAMPP使うなって毎回言ってる奴は典型的なAタイプ。
多くはBの安いプライドを振りかざすタイプ。
533nobodyさん:2011/06/21(火) 13:57:28.92 ID:???
>>518
> 開発のためだけにそこまでやる
仮想マシン使うのは楽だよ。
仮想マシンにOSをインストールするのに10分弱、その後の設定も含めて30分ぐらい。
これで擬似本番環境が手に入るのはメリットだよ。

標準関数の件は同意だけど、なんかそれは話がずれてると思う。
534nobodyさん:2011/06/21(火) 14:00:35.95 ID:???
535nobodyさん:2011/06/21(火) 14:01:46.33 ID:???
536nobodyさん:2011/06/21(火) 14:02:49.42 ID:???
>>531
これまでの流れ見てればわかると思うけど、
XAMPPと表記して質問する奴って、PHPじゃなくてwebサーバーの設定の問題だったりするから。
本人がPHPと無関係だと認識していればまだマシだが、そのレベルにすら達していないので
相手にするのがうんざりする。
XAMPPスレがあれば楽なんだが。
537nobodyさん:2011/06/21(火) 14:05:10.02 ID:???
一応あるから次回の質問から誘導しようか

xamppってどうよ?
http://hibari.2ch.net/test/read.cgi/mysv/1128262593/
538nobodyさん:2011/06/21(火) 14:08:13.11 ID:eSkOaCrh
なるほどそういう事なのね
539nobodyさん:2011/06/21(火) 14:10:41.29 ID:???
>>533
言葉足らずだったがインストールの楽さだけじゃないんだよね
VMがアプリケーションとしては重い部類だとかシステム周りが汚くなるとか
開発専用マシンならそれでもいいけど多くは兼用だろうし
不必要なサービスを避けて最低限の開発環境を整えたほうがいいだろうということ
標準関数云々は環境整備に気を取られるよりどの環境でも動くようにコーディングしろの意
540nobodyさん:2011/06/21(火) 14:12:03.53 ID:???
もしかしてレジストリを毛嫌いする人?
541nobodyさん:2011/06/21(火) 14:28:55.53 ID:???
Ajaxの話はもう飽きた
542nobodyさん:2011/06/21(火) 14:48:38.78 ID:???
>>539を読んだが…
なんかすっきりしないな
543nobodyさん:2011/06/21(火) 15:34:40.19 ID:???
>>539
> 開発専用マシンならそれでもいいけど多くは兼用
開発専用マシンだったとしても、各アプリケーションのバージョン違いで平行開発とかあるわけで、
VMの方がすっきりするんだけどなぁ。。。
考えの違いといえばそうなんだけども。
544nobodyさん:2011/06/21(火) 15:40:51.40 ID:???
>>539
> 標準関数云々は環境整備に気を取られるよりどの環境でも動くようにコーディングしろの意
だから、その話は分かるが、違うような気がする。
ここPHPスレだよ。どの環境でもって、どのあたりを指してる?PHP3はさすがに含まれない?
545nobodyさん:2011/06/21(火) 16:00:56.59 ID:???
そんくらい常識的にかんがえろよ・・・
546nobodyさん:2011/06/21(火) 16:11:22.66 ID:???
PHP5以上、本番環境以下だろ。
サポート外のPHP4考慮とかもうあり得ないし。それより下の3とかはもっとアリエナーイ。
547nobodyさん:2011/06/21(火) 16:24:43.82 ID:???
一回作っとけば後でバージョンアップも楽なのにXAMPPを使う利点って
548nobodyさん:2011/06/21(火) 16:30:01.91 ID:???
バージョンアップする必要もないけどな
549nobodyさん:2011/06/21(火) 16:39:52.01 ID:???
IP出せ
550nobodyさん:2011/06/21(火) 16:42:43.44 ID:???
チンピラスレに帰れよ
551nobodyさん:2011/06/21(火) 17:30:16.56 ID:NgMS4Wpe
mb_convert_encodingでUTF-8をShift_JISに変換するときは
SJISで良いんでしょうか?
552nobodyさん:2011/06/21(火) 17:33:49.05 ID:???
   ∩___∩         |
   | ノ\     ヽ        |
  /  ●゛  ● |        |
  | ∪  ( _●_) ミ       j
 彡、   |∪|   |        J
/     ∩ノ ⊃  ヽ
(  \ / _ノ |  |
.\ “  /__|  |
  \ /___ /
553nobodyさん:2011/06/21(火) 17:41:54.81 ID:???
SJIS-winかな
554nobodyさん:2011/06/21(火) 17:43:34.81 ID:NgMS4Wpe
あざっす
Shift_JISとSJISとかの違いがよくわからなかったもんで
555nobodyさん:2011/06/21(火) 18:09:41.54 ID:???
【わからない5大理由】
1. 読まない ・・・説明書・テンプレなどを読まない。読む気などさらさらない。
2. 調べない ・・・過去スレ、ググるなど最低限の内容も自分で調べようとしない。
3. 試さない ・・・めんどくさいなどの理由で実行しない。する気もない。
4. 理解力が足りない ・・・理解力以前の問題で理解しようとしない。
5. 人を利用することしか頭にない ・・・甘え根性でその場を乗り切ろうとする
556nobodyさん:2011/06/21(火) 20:41:12.13 ID:???
初心者はXAMPP使うな
557nobodyさん:2011/06/21(火) 21:26:50.88 ID:???
じゃあSMAPから始めてみるわ
558nobodyさん:2011/06/21(火) 21:31:22.22 ID:???
Solaris+MariaDB+Apache+Pythonですね
そらええ構成ですわ
559nobodyさん:2011/06/21(火) 23:37:46.04 ID:???
>>546
5以上本番環境以下なんだ。じゃあ、5.3の新機能とかは使えないのね。
560nobodyさん:2011/06/21(火) 23:47:32.98 ID:???
mb_detect_encodingって誤検出ある?
現状困ってるってわけではないんだがどうもおかしい
561nobodyさん:2011/06/21(火) 23:51:58.67 ID:???
autoにしてるからじゃないのか
あと>>1
562nobodyさん:2011/06/22(水) 03:19:50.74 ID:???
Ajaxの話はもう飽きた
563nobodyさん:2011/06/22(水) 03:43:55.23 ID:683X68XN
ネットワークでmemcacheサーバーにアクセスするのって、ローカルのハードディスクにアクセスするより速いすか?
ベンチとるようなスクリプトありますか?
564nobodyさん:2011/06/22(水) 03:59:22.75 ID:???
双方のスクリプト書いてabでも流せば?
565nobodyさん:2011/06/22(水) 04:00:50.08 ID:???
答えは環境によるとしか

ところでそんなの知ってどうするんだ?
知ったところでやることは変わらないだろうに
566nobodyさん:2011/06/22(水) 04:25:11.94 ID:???
やることは変わらないってどういうこと?
567nobodyさん:2011/06/22(水) 04:29:06.83 ID:???
質問はID出せ
568nobodyさん:2011/06/22(水) 04:54:28.24 ID:???
ローカルのアクセスが早けりゃローカルで運用するのか?ってことだろ
569nobodyさん:2011/06/22(水) 10:59:46.42 ID:???
Ajaxつこうた
570nobodyさん:2011/06/22(水) 11:19:52.88 ID:LIm3iQT5
質問です。
現在やってること
1.htmlspecialcharsでタグ禁止
2.preg_replaceでimgタグを許可
これを実行してhtmlに表示しています。
さらに3.preg_replaceでhttpから始まる文字をリンクに置換したいと思っています。

つまりやりたいことは
「こんにちは。<img src="http://a.com/a.jpg"><B>はじめまして</B>http://a.com

「こんにちは。<img src="http://a.com/a.jpg"><B>はじめまして<B><a href="http://a.com">http://a.com</a>」
に置換したいのです。よろしくお願いいたします。
571nobodyさん:2011/06/22(水) 11:21:06.07 ID:???
つまり作成依頼
572nobodyさん:2011/06/22(水) 11:22:26.43 ID:LIm3iQT5
訂正

つまりやりたいことは
「こんにちは。<img src="http://a.com/a.jpg"><B>はじめまして</B>http://a.com

「こんにちは。<img src="http://a.com/a.jpg">&lt;B&gt;はじめまして&lt;B&gt;<a href="http://a.com">http://a.com</a>」
に置換したいのです。よろしくお願いいたします。
573nobodyさん:2011/06/22(水) 11:25:19.03 ID:???
正規表現かDOMあたり使えばよろしい
574nobodyさん:2011/06/22(水) 11:31:56.82 ID:???
>>570 >>572
よろしくお願いしますじゃねえよ自分でコードも書かないで人に頼むな
http://php.net/manual/ja/function.htmlspecialchars.php
http://php.net/manual/ja/function.preg-replace.php
575570 ◆u6/hhq1V9. :2011/06/22(水) 11:34:25.43 ID:???
>>573
はい、ありがとうございます。
でもhttpから始まる文字をリンクに置換すると
imgタグのhttpから始まる文字も置換されてしまうので困っています。
576nobodyさん:2011/06/22(水) 11:35:45.33 ID:???
じゃあそのコード張れば?
577570 ◆u6/hhq1V9. :2011/06/22(水) 11:46:24.85 ID:???
>>574>>576
はい、ごめんなさい。申し訳ありませんでした。

現在やってること
1.htmlspecialcharsでタグ禁止
2.preg_replaceでimgタグを許可
さらに3.preg_replaceでhttpから始まる文字をリンクに置換したい

1.$message = htmlspecialchars($message,ENT_QUOTES,'utf-8');
2.$message = preg_replace("/<img src="(.*)">/","<img src=\"$1\">",$message);
3.$message = preg_replace('/(https?|ftp)(:\/\/[-_.!~*\'()a-zA-Z0-9;\/?:\@&=+\$,%#]+)/', '<A href="\\1\\2">\\1\\2</A>',$message);
578nobodyさん:2011/06/22(水) 11:51:49.08 ID:???
579nobodyさん:2011/06/22(水) 12:02:49.42 ID:???
>>578
どゆこと?
580nobodyさん:2011/06/22(水) 12:05:21.42 ID:???
[-_.!~*\'()a-zA-Z0-9;\/?:\@&=+\$,%#]+をみて意味がわからないなら提示されたページを100回よめ
581nobodyさん:2011/06/22(水) 12:08:43.15 ID:???
<a href="http://ex/">http://ex/</a>が
<a href="http://ex/"><a href="http://ex/">http://ex/</a></a>
<img src="http://ex/">が
<img src="<a href="http://ex/">http://ex/</a>">
にならないようにすればいいんでしょ?
582nobodyさん:2011/06/22(水) 12:26:40.85 ID:???
答えまだ?
583nobodyさん:2011/06/22(水) 12:27:32.87 ID:???
つID
584nobodyさん:2011/06/22(水) 12:48:23.22 ID:???
1、http://〜の置き換えルールにならないように
まずは<a href="">および<img src="">の中のhttpを全て他の文字列に置き換え

2、http://〜を<a href="http://〜">http://〜</a>に置き換え

3、1で置き換えた文字列をhttpに戻す

585584:2011/06/22(水) 12:49:33.81 ID:???
1の工程でaが対象の場合firstChild.textContentも置き換えしないとだめだな
586nobodyさん:2011/06/22(水) 13:20:26.36 ID:???
>>568
そうだろ。
ネットワークが速ければネットワーク越しのmemcached使うだろうし。
やること変わるじゃんね。
587nobodyさん:2011/06/22(水) 13:20:32.84 ID:???
>>584
textareaとかpreとか考慮されてないね
DOMの方が確実
588nobodyさん:2011/06/22(水) 13:23:17.11 ID:???
普通に字句解析でいいんじゃね
589。 ◆oDupeixhZv52 :2011/06/22(水) 13:24:36.57 ID:???
これだと
"の変換後の &quot; に囲まれた部分を戻すのを
&quot;((?!&quot;).)+&quot; にしなきゃ、ちゃんと戻らないとか、
'もあるとか、ほかにもいろいろある。
正規表現の文字置換だけでやるのおすすめしない。
590nobodyさん:2011/06/22(水) 14:05:44.01 ID:???
何だ結局誰もできないのかクズ杉
591nobodyさん:2011/06/22(水) 14:08:05.57 ID:???
ID出すか金出せ
592。 ◆oDupeixhZv52 :2011/06/22(水) 14:18:48.67 ID:???
$message = "こんにちは。<img src=\"http://example.com/a.jpg\"><B>はじめまして</B>http://example.com";
$message = htmlspecialchars($message,ENT_QUOTES,'utf-8');
$message = preg_replace("/<img src="((?!").+)">/","<img src=\"$1\">",$message);
$message = preg_replace('/(?<!src=")(https?|ftp)(:\/\/[-_.!~*\'()a-zA-Z0-9;\/?:\@&=+\$,%#]+)/', '<A href="$1$2">$1$2</A>',$message);
あとは自分で考えてね。
593570 ◆u6/hhq1V9. :2011/06/22(水) 14:53:40.42 ID:???
>>592
できました。ありがとう!
なんかimgのhttpをunkoに置換して最終的にunkoをhttpに置換するような馬鹿なことやってました(笑)
594。 ◆oDupeixhZv52 :2011/06/22(水) 14:58:22.73 ID:???
投稿でいろいろ置き換わっちゃうんで読みにくい
595nobodyさん:2011/06/22(水) 15:05:36.41 ID:???
>>592
正規表現パターンの書き方を知らないのか
596。 ◆oDupeixhZv52 :2011/06/22(水) 15:07:29.80 ID:???
>>595
バカが書いてるからな。直してやれよ。
597nobodyさん:2011/06/22(水) 15:08:38.51 ID:???
unkoとかtinkoとか下品な言葉を使うのは止めてください。
598nobodyさん:2011/06/22(水) 20:52:16.44 ID:???
下品な言葉遣いなのはその人が下品だから
599nobodyさん:2011/06/22(水) 21:16:56.35 ID:???
PHPってDOM貧弱だよね
600nobodyさん:2011/06/22(水) 21:23:40.36 ID:???
そんなことないぞ
pullparserの方が貧弱、というより見かけない。
601nobodyさん:2011/06/22(水) 21:26:14.42 ID:b+5qyvgA
アンテナサイトってどうやって作るんですか?
602nobodyさん:2011/06/22(水) 21:39:03.74 ID:???
>>601
サーバーを用意する
603nobodyさん:2011/06/22(水) 21:56:15.81 ID:b+5qyvgA
その先の事をお願いします
604nobodyさん:2011/06/22(水) 22:11:37.52 ID:???
>>601
アンテナサイトの定義は?

定期的に巡回する?
更新があったら更新されたページを通知する?
605nobodyさん:2011/06/22(水) 22:28:36.20 ID:b+5qyvgA
こういうのです
http://matomech.com/
アクセスするたびに取得して表示するのでしたら簡単にできるとおもうのですが
web上に公開されているほとんど全てのアンテナサイトではそうはしてないのかなとおもってます
どうやってデータを取得してるのか気になったもので
606nobodyさん:2011/06/22(水) 22:59:56.12 ID:???
>>605
リンク先見てないけど今はRSSっていう便利なものがあふれてるじゃない
607nobodyさん:2011/06/22(水) 23:00:44.94 ID:???
cronのこと?
608nobodyさん:2011/06/22(水) 23:10:50.52 ID:???
>>606
rssやxmlなどを取得してまとめたサイトをアンテナサイトというらしいです

>>607
cronで工夫するしかないですね
どうもありがとうございました
609nobodyさん:2011/06/23(木) 02:04:12.97 ID:???
結局PHPは一切関係ない質問だったな
610nobodyさん:2011/06/23(木) 09:57:14.95 ID:???
だれもそういうレスは求めてないみたいですよ
611nobodyさん:2011/06/23(木) 10:36:32.44 ID:hvjJOcDd
皆さんはソースコードをどのように読んでいるのでしょうか?
WordPressとか関数が多いのとMVC構造とってないとかクセがあって読むのに苦労します
XoopsCubeはCoreは分かったのですが、Legacyは関数だらけでeclipse使っても追いきれませんでした
自分はPHPを使うので最初index.phpから読んでいるのですが、その後はどのように追えばいいのでしょうか?
.phpファイルだけを追うと何をやってるのか分からないのでhtmlを読もうとするのですが、MVCになると逆にViewがめんどくさくなって読みきれません
CMS他、新しいプロジェクトに入った時に皆さんがどのようにソースを読んで把握しているのか教えてください
612nobodyさん:2011/06/23(木) 10:48:27.57 ID:???
ソースコードは読むものじゃねえ
感じろよ
613nobodyさん:2011/06/23(木) 12:07:36.23 ID:???
感じろだって〜
いやらしい〜〜
614nobodyさん:2011/06/23(木) 12:13:58.11 ID:???
ここか?ん?ほーらほら
615nobodyさん:2011/06/23(木) 14:13:59.31 ID:H3vaNC/i
PHP Version 5.3.5です。
下記サイトを参考にphp.iniの内容をUTF-8用に設定しました。
http://www.adminweb.jp/xampp/php/index2.html
この状態で、下記のコードを実行したところ、文字化けしてしまいました。
http://www.adminweb.jp/xampp/php/index4.html
疑わしいポイントがあれば教えて欲しいです。
ふざけるな、と言いたくなる質問であるということは自覚しております。すいません。
616nobodyさん:2011/06/23(木) 14:15:42.95 ID:???
617nobodyさん:2011/06/23(木) 14:16:16.00 ID:???
すいません。行ってきます。
618nobodyさん:2011/06/23(木) 14:19:13.94 ID:CEVbGHYc
phpでutf-16を表示する方法を教えてください
619nobodyさん:2011/06/23(木) 15:21:03.78 ID:???
>>618
<?php
print "utf-16";
?>
620nobodyさん:2011/06/23(木) 15:28:12.12 ID:???
>>619
UTF-16って知らないのに回答してんのか(苦笑
http://ja.wikipedia.org/wiki/UTF-16
621nobodyさん:2011/06/23(木) 15:32:20.74 ID:???
ネタニマジレス(・∀・)カコイイ!!
622nobodyさん:2011/06/23(木) 15:35:40.64 ID:???
623nobodyさん:2011/06/23(木) 15:43:24.10 ID:???
>>620
<?php
echo "UTF-16";
624nobodyさん:2011/06/23(木) 15:56:57.65 ID:9OJhjoVQ
UTF16の文字コードの取り扱いって事だろ
625nobodyさん:2011/06/23(木) 16:04:21.76 ID:???
>>624
<?php
echo "UTF16の文字コードの取り扱い";
626nobodyさん:2011/06/23(木) 16:12:15.86 ID:???
?>
627nobodyさん:2011/06/23(木) 16:15:59.97 ID:???
phpでutf-64を表示する方法を教えてください
628nobodyさん:2011/06/23(木) 17:41:35.97 ID:???
たぶん>>615が荒らしてるっぽいな
629nobodyさん:2011/06/23(木) 18:00:32.17 ID:???
>>605
Yahoo PipesでまとめサイトのRSSを統合して出力すれば良くね?
630nobodyさん:2011/06/23(木) 18:15:26.20 ID:???
ネタニマジレス(・∀・)カコイイ!!
631nobodyさん:2011/06/23(木) 19:00:07.59 ID:???
−−−−−−−−−− ここまでマジレス −−−−−−−−−−−
632nobodyさん:2011/06/23(木) 19:00:55.27 ID:9OJhjoVQ
PHPのSqliteで、検索したデータの取り出す順序を指定できませんか。
登録の新しい順にしたいのですが。
633nobodyさん:2011/06/23(木) 19:04:08.85 ID:9OJhjoVQ
自己解決しました
634nobodyさん:2011/06/23(木) 19:12:30.56 ID:vrm1K6Yf
>>629
RSSの統合ってYahoo Pipes以外にもできませんか?
Googleやはてなやライブドアなんかで
635nobodyさん:2011/06/23(木) 19:17:12.49 ID:???
>>634
何でもいいけどPHP関係無いからよそ行っていいよ
636nobodyさん:2011/06/23(木) 19:33:16.88 ID:???
どっかの無職なアフィリスレのやつだろ?
637nobodyさん:2011/06/23(木) 19:52:27.66 ID:???
見えない敵と戦う人がいますね
638nobodyさん:2011/06/23(木) 20:17:31.69 ID:???

引き篭もりが人生を賭けてアフィリするスレ Part57
http://hibari.2ch.net/test/read.cgi/affiliate/1308234711/
639nobodyさん:2011/06/23(木) 20:24:25.49 ID:???
完全にそこのスレのやつだな
しかもPHPでやるってことぐらいしか見当ついてないのによくもまぁ質問するもんだ

コードを出せ話はそれからだ
640nobodyさん:2011/06/24(金) 01:02:17.63 ID:???
>>626
閉じんな馬鹿
641nobodyさん:2011/06/24(金) 01:09:46.41 ID:???
<?再開
642nobodyさん:2011/06/24(金) 01:25:01.32 ID:op2r2+/q
exit;
643nobodyさん:2011/06/24(金) 01:25:45.99 ID:???
>>558
pythonだけはどうしても好きになれぬ。
文法がめちゃめちゃ
644nobodyさん:2011/06/24(金) 01:31:34.38 ID:???
>>638-639
そこはこそでコードも出たし質問者のレスからここの人とは別人だと思われる
645nobodyさん:2011/06/24(金) 03:05:05.63 ID:???
>>644
そこはこそで?
646nobodyさん:2011/06/24(金) 13:14:45.28 ID:???
どんな文字コード変換(エンコード&デコード?)
されてるかわかりますでしょうか?


あいうえお

b7a4780abedf7520fff57e189544e4ee

 となります ペコリ(o_ _)o))
647nobodyさん:2011/06/24(金) 13:16:05.49 ID:???
わかる
648nobodyさん:2011/06/24(金) 13:26:23.35 ID:???
>>643
pythonってちらっと学生の頃にやったけど忘れちゃったな
phpで事足りた
649nobodyさん:2011/06/24(金) 13:34:06.70 ID:???
そりゃ君がWebしかやらないからだよ
650646:2011/06/24(金) 13:49:33.00 ID:???
>>647 どの関数デ?
651nobodyさん:2011/06/24(金) 13:51:08.60 ID:???
ID出せ
652nobodyさん:2011/06/24(金) 13:59:26.46 ID:???
>>650
MD5
653646:2011/06/24(金) 14:02:12.47 ID:???
>>652
ちげーし(笑)
もうそんなのは試しました
654nobodyさん:2011/06/24(金) 14:08:36.97 ID:???
MD5は32文字固定なのに違うというのかね?
ちなみにこれはMD5の前にいくつか処理してると思うが
655646:2011/06/24(金) 14:10:54.77 ID:???
低レベル回答者には黙っててもらいたいですね
128bitの暗号化なんてmd5だけじゃないんですよ('A`)
656nobodyさん:2011/06/24(金) 14:13:30.15 ID:???
だがお前の態度が気に入らない
657646:2011/06/24(金) 14:23:16.84 ID:KjcjiZmU
>>655 は、私ではないです。
MD5を試しましたが、同じになりませんでした。
どうやって作ってるのか、わかりますか?
658。 ◆oDupeixhZv52 :2011/06/24(金) 14:34:34.85 ID:???
http://www.php.net/manual/ja/function.hash.phpにあるやつを
文字コード変えてかけてもダメだった。
md5の前になんかやってるだけじゃねーの? 文字足すとか。
659646:2011/06/24(金) 14:46:19.20 ID:???
あいうえお → b7a4780abedf7520fff57e189544e4ee
かきくえこ → a6f95c3ac87173271d5ec2b991cae1b6
12345 → 341a16619a730eb0979a24e987a006e2

困った...
660nobodyさん:2011/06/24(金) 14:47:21.03 ID:???
つうかソースコードあんのか?
ないならわかるわけないだろ
661nobodyさん:2011/06/24(金) 14:47:42.26 ID:???
>>655==>>675
氏ね
662。 ◆oDupeixhZv52 :2011/06/24(金) 14:51:37.55 ID:???
>>659
空文字だと?
663nobodyさん:2011/06/24(金) 14:52:18.90 ID:???
>>661
低レベル乙
664646:2011/06/24(金) 17:53:17.37 ID:???
判りました。
あいうえお に対応する b7a4780abedf7520fff57e189544e4ee は、
キャッシュのIDで、内部で作られてました。
なんとか理解でき、動作させることができました。

ご返信頂きました方、ありがとうございます。ペコリ(o_ _)o))
665nobodyさん:2011/06/24(金) 17:57:37.63 ID:JVdOuJdi
function f() {
$x = 100;
$a1 = function() use($x) {return "$x\n";};
$a2 = function() use(&$x) {return "$x\n";};
$a1();$a2();$x++;$a1();$a2();
}

これは何をやってるコードですか?
666。 ◆oDupeixhZv52 :2011/06/24(金) 18:17:19.58 ID:???
>>665
無名関数へ変数を渡したあとに、変数の値だけ変えても渡される値は変わらないけど
リファレンスで渡せば変わるよっていうようなサンプルを実行するだけの関数の定義。
667nobodyさん:2011/06/24(金) 20:02:52.50 ID:???
引数の値渡しと参照渡しの違い
668nobodyさん:2011/06/24(金) 20:03:29.74 ID:???
useって何に使うんですか?
何故function()の次に{ではなくてuseがくるんですか?
669nobodyさん:2011/06/24(金) 20:13:30.26 ID:???
IDは?
670nobodyさん:2011/06/24(金) 21:04:34.64 ID:???
671nobodyさん:2011/06/24(金) 21:05:19.66 ID:???
>>670
例3に書いてあるよ
672nobodyさん:2011/06/24(金) 21:10:58.27 ID:???
>>669
IDが何?
673nobodyさん:2011/06/24(金) 21:11:43.81 ID:???
674nobodyさん:2011/06/24(金) 21:17:27.50 ID:???
それは違うw
675nobodyさん:2011/06/24(金) 21:29:28.24 ID:lKGv9iAB
useって何に使うんですか?
何故function()の次に{ではなくてuseがくるんですか?
>>669様に回答を依頼します
676nobodyさん:2011/06/24(金) 21:31:39.09 ID:???
677nobodyさん:2011/06/24(金) 23:01:14.59 ID:???
phpのオープンソースで学習に良さそうなモノってないでしょうか?
Tipsや言語解説などは調べれば色々ありますが、
クラス設計やディレクトリ構成、セキュリティ対策など全体を見通せるようなモノがないか探しております。
WordPressでも見てみようかとも思いましたが、Eclipseが落ちまくるし、
見通すのに規模が大きくて断念しました。
ご指導いただけますと幸いです。
678nobodyさん:2011/06/24(金) 23:01:51.91 ID:???
指導を仰ぐ前に>>1を読むように
679nobodyさん:2011/06/24(金) 23:17:48.23 ID:h6uX09tZ
>>678
すみません。IDを出せということでしょうか。
680nobodyさん:2011/06/24(金) 23:26:41.63 ID:???
>>677
横着せず基礎からちゃんと学ぶべし
681nobodyさん:2011/06/24(金) 23:38:07.90 ID:???
>>680
質問に答えるでもなく生産性皆無なそのレスの意図は?
>>677じゃないけどむかつくわ。
682nobodyさん:2011/06/24(金) 23:52:12.68 ID:???
自演乙
683nobodyさん:2011/06/24(金) 23:53:06.27 ID:???
基礎から勉強しろが無駄な意見だと思うお前は絶対プログラム向いてないからやめとけ
684nobodyさん:2011/06/24(金) 23:57:09.12 ID:???
そもそもphpと関係ないしな
685nobodyさん:2011/06/25(土) 00:42:51.76 ID:/hR6JGqF
>>680
学習するにあたって「他人のソースを読むこと」という意見をよく目にするのですが、
そういう環境になく独学をするしかないような状況です。
書籍に学ぶにしても、「言語解説だから」「あくまで入門だから」というような理由で
セキュリティ的に穴のあるコードを紹介していたり、マジックナンバーをハードコーディングしていたり、
実際にはやらないようなファイル構成や設計で紹介しているものが多い気がしています。
それで、学習に良さそうなオープンソースを見てみたいと思い質問させていただいたのですが、
なかなか無いものなのでしょうか。
自分で適当に選んでも良いのですが、選んだソースがたまたまセキュリティ的に穴があったり、
おかしな設計だった場合、それを模範にしてしまうのは危険だと思うので、
推奨されるオープンソースがあるのであればご紹介いただきたいと思った次第です。
686nobodyさん:2011/06/25(土) 00:43:56.70 ID:/hR6JGqF
ID変わりましたが>>677です。
687nobodyさん:2011/06/25(土) 01:16:06.14 ID:???
>>685
多分、今の君のレベルで大規模システムのソース読んでも意味がないと思う
688nobodyさん:2011/06/25(土) 02:15:27.69 ID:vr6UcJnj
公式だしZendとかでいいんじゃない
とりあえずsymfonyやphpMyadminやMantisやECCubeはやめとけ
689nobodyさん:2011/06/25(土) 08:24:35.81 ID:???
とりあえず、マニュアルを1ページ目から流し読み→ソースなどがあったら、自環境で試してみて理解を深める
という流れがいいんでないかな

それをふっとばして「オープンソース」なんて読んで見ても無駄だと思うよ。

# いくつかのフレームワークのソースを読んでみたんだが、深い部分での共通点はあっても、個々で見るとかな〜り癖があるから、基本が固まらんと変なクセがついてしまうと思う。
690nobodyさん:2011/06/25(土) 08:44:26.27 ID:???
>>689
その段階は過ぎてソースを読もうとしてるんじゃないかな
691nobodyさん:2011/06/25(土) 08:47:35.48 ID:???
いや質問の文章からしてそこまで達してない
692nobodyさん:2011/06/25(土) 09:41:22.11 ID:cXozfBs7
<?php
require_once 'HTML/QuickForm.php';
$form = new HTML_QuickForm('example');
$select1[0] = 'Pop';
$select1[1] = 'Classical';
$select1[2] = 'Funeral doom';
$select2[0][0] = '--- Artist ---';
$select2[0][1] = 'Red Hot Chil Peppers';
$select2[0][2] = 'The Pixies';
$select2[1][0] = '--- Artist ---';
$select2[1][1] = 'Wagner';
$select2[1][2] = 'Strauss';
$select2[2][0] = '--- Artist ---';
$select2[2][1] = 'Pantheist';
$select2[2][2] = 'Skepticism';
693nobodyさん:2011/06/25(土) 09:44:46.47 ID:cXozfBs7
$select3[0][0][0] = '--- Choose the artist ---';
$select3[0][1][0] = '15.00$';
$select3[0][2][1] = '17.00$';
$select3[1][0][0] = '--- Choose the artist ---';
$select3[1][1][0] = '15.00$';
$select3[1][2][1] = '17.00$';
$select3[2][0][0] = '--- Choose the artist ---';
$select3[2][1][0] = '15.00$';
$select3[2][2][1] = '17.00$';
$sel =& $form->addElement('hierselect', 'cds', 'Choose CD:');
$sel->setOptions(array($select1, $select2, $select3));
$form->display();
?>
最後の結果の部分(15.00$,17.00$)をプルダウンではなく
通常出力として表示させたいのですが方法はあるでしょうか?

よろしくお願いします。
694nobodyさん:2011/06/25(土) 09:54:44.38 ID:???
echo $select3[2][1][0];
echo $select3[2][2][1];
695nobodyさん:2011/06/25(土) 09:55:26.63 ID:???
quickformって、ずいぶん昔にいじっただけだが、freezeってメソッドなかったかなぁ
通常のテキストボックスって事なら、値をテキストボックスに代入してやるくらいしか無いかと。
696nobodyさん:2011/06/25(土) 10:07:57.75 ID:cXozfBs7
>>694
わかりにくくてすみません。
連動プルダウンで選択されたものを素に結果を出力したいです。

>>695
freezeも使ってみたのですが使い方が間違っているせいか
なにも表示されないです。
697nobodyさん:2011/06/25(土) 10:13:54.78 ID:???
>>696
Javascriptで制御してるんでしょ?
該当メソッドの中のコード書き換えるしかないかと
698nobodyさん:2011/06/25(土) 11:08:06.22 ID:cXozfBs7
>>697
QuickFormはJavascriptで制御しているんですか?
更に難しそうですね・・・
699nobodyさん:2011/06/25(土) 13:47:50.84 ID:???
質問ですが、ここで正しいか定かではないので、より適切なスレがあれば誘導お願いします。
最近phpを勉強し始めて、mysqlと組み合わせたりして遊んでるんですが、
phpで計算させると読込に時間がかかりますよね。
普段見るwebサイト、例えばwww.lifehacker.jpとかはすごいコンテンツが充実してるのに読込も速い
ああいうのはどういう技術を使っているんですか?
読み込みつつ表示させていったりとかもよくわかりません(全部計算終わってからバッて表示される)←特にこれが知りたい
どういったキーワードで検索すればいいのかわからないので質問しました、よろしくお願いします。
700699:2011/06/25(土) 13:49:40.76 ID:ALxmGxKI
間違ってsageてました、スミマセン
701nobodyさん:2011/06/25(土) 13:51:06.64 ID:???
>>699
<?php
echo 1,"\n";
sleep(1);
echo 2,"\n";
sleep(1);
echo 3,"\n";
sleep(1);
echo 4,"\n";
sleep(1);
echo 5,"\n";
702nobodyさん:2011/06/25(土) 14:03:33.40 ID:???
いろいろなテクニックがあるから何を答えていいのかよーわからん

キャッシュ使うとか、ブラウザが早く解釈できるような構成にするとか、Ajaxを使って主なHTMLが読み込まれた後から読み込むような構成にして見掛け早くするとか
703nobodyさん:2011/06/25(土) 14:09:50.91 ID:???
>>699
ob_start
704nobodyさん:2011/06/25(土) 14:11:49.46 ID:???
>>699

<?php
ob_start();
echo 1,"\n";
sleep(1);
echo 2,"\n";
sleep(1);
echo 3,"\n";
sleep(1);
echo 4,"\n";
sleep(1);
echo 5,"\n";
ob_end_flush();
705nobodyさん:2011/06/25(土) 14:20:12.41 ID:???
HTML化してるだけでは?
706nobodyさん:2011/06/25(土) 14:53:46.20 ID:VLU0kyJz
回答ありがとうございます
>読み込みつつ表示させていったりとかもよくわかりません(全部計算終わってからバッて表示される)
についてですが
ob_startとかob_flushとか使ってみましたがやっぱり一度に表示されてしましますね。。
Ajaxを使うとできるようになるんですか、jQueryなどの勉強から入るのが近いですか?
・・意外と難しいんですね・・・phpだけではできないことだったとは。
考えてみればphpは動的にHTMLを生成するだけで、生成されたものはただ
のHTMLだし生成した以降はダウンロードするだけだから表示と読込を並行させるのはphpでは難しそうでした
707699:2011/06/25(土) 14:56:26.92 ID:ALxmGxKI
ID変わってますね・・・
699=706です
708nobodyさん:2011/06/25(土) 16:13:49.04 ID:???
処理が速いということはスパコン使ってるに違いない
709nobodyさん:2011/06/25(土) 16:22:19.56 ID:???
pearにAjax、Javascriptと連携するのがあった
710nobodyさん:2011/06/25(土) 16:25:49.36 ID:???
>>707
こういうふうにかっこよく読み込むのがいいのけ
ttp://m-clinic.net/
711nobodyさん:2011/06/25(土) 16:45:15.08 ID:???

<a href="http://journal.mycom.co.jp/articles/2006/09/28/phpjavascript/001.html">【ハウツー】PHP PEARでちょい楽Ajax! (2) 処理の進捗状況をグラフィカルに表示 - HTML_Progress2 | エンタープライズ | マイコミジャーナル</a>

<a href="http://www.google.com/search?q=PEAR::HTML_AJAX%E3%80%81&num=60&hl=ja&newwindow=1&safe=off&prmd=ivns&source=lnt&tbs=lr:lang_1ja&lr=lang_ja&sa=X&ei=wpEFToHUHersmAXsrOnbDQ&ved=0CAcQpwUoAQ">PEAR::HTML_AJAX、 - Google 検索</a>
712nobodyさん:2011/06/25(土) 16:46:57.40 ID:Y32aucUY
質問です
SELECT で表示する件数を指定したいのですが、
昇順の状態で後ろから10件を表示するにはどうすればいいのでしょうか?
全数がわかれば、 LIMIT を使うこともできますが、
何件あるかわからない状態で、後ろから10件を表示する方法を探しています。
例えば、掲示板の最新50のようなイメージです。
713nobodyさん:2011/06/25(土) 16:48:13.01 ID:???
ODER BYとかだろ
714nobodyさん:2011/06/25(土) 16:49:02.22 ID:???
降順縛ってるの?
715nobodyさん:2011/06/25(土) 16:50:14.12 ID:???
Sqliteのケースでは、これとLIMIT追加。
ORDER BY ROWID DESC
716nobodyさん:2011/06/25(土) 16:54:11.87 ID:Y32aucUY
>>714
2chのように表示を昇順に
そして表示件数を指定した際に最新50が表示できるようにしたい
わかりづらいかもしれませんが
717nobodyさん:2011/06/25(土) 17:13:32.69 ID:???
理解した
これより前のレスを省略しましたみたいなやつか
配列使いまわすならcountで配列数取得してarray_sliceで削るとか?
パフォーマンス的にどっちがいいかわからんが
718nobodyさん:2011/06/25(土) 17:19:56.34 ID:???
curl_multi_initを使って複数のリクエストを同時に投げる事は出来ますが
投げる前に全てのURLを決めて、全てのURLが返って来るまでスクリプトは停止してしまいますよね

投げた全てのリクエストが帰って来るまでに、新しいURLをリクエストする
例えば、URL1、URL2でリクエストを投げて、URL1が帰ってきたら(URL2が返って来るのを待たずに)URL3のリクエストを投げる。
URL3を含む全URL1〜3が返ってきたらコードが進む。
つまり並列ダウンローダーの様な動作をさせるにはどうしたらよいのでしょうか
719nobodyさん:2011/06/25(土) 17:42:01.26 ID:???
むり
720nobodyさん:2011/06/25(土) 17:43:36.99 ID:???
phpはマルチスレッドプログラム非対応
721nobodyさん:2011/06/25(土) 17:45:16.68 ID:???
curl_multi_execでできるよ
722nobodyさん:2011/06/25(土) 17:47:24.15 ID:???
クラスの中のメソッドに直接アクセスしようと、ClassName::hogefunction();とアクセスしようとしたら
// 注意: E_STRICT が有効な場合、次の行で警告が発生します
と警告されてしまいました。正式な方法でクラスの中のメソッドに直接アクセスするにはどうすれば良いのでしょうか
723nobodyさん:2011/06/25(土) 17:48:46.30 ID:???
IDは?
724nobodyさん:2011/06/25(土) 17:51:16.16 ID:ALxmGxKI
>>710
うーん、かっこいいけど一瞬で表示されてるのでわからないです
lifhackerとかアクセスするとまず左上のロゴの辺りが表示されて、それからどんどん他のコンテンツも表示されて、
みたいな、スクロールバーがどんどん小さくなるあの感じ。。。
僕のページは何も工夫が無いからか少し真っ白の画面で待ってから全てがバッて表示されるの。
説明下手すぎて泣いた

>>711
PHP PEARというライブラリ使うとできるんですか?ちょっと試してみます・・・・
725nobodyさん:2011/06/25(土) 17:52:14.76 ID:qLdraW+2
>>723
失礼しました・・。
726nobodyさん:2011/06/25(土) 18:14:09.74 ID:???
>>722
コード出さないとなんともいえないけど
違うとこで警告でてるんじゃね?
static修飾子つけてクラスメソッドにしてるなら
その呼び方は普通にできる
インスタンスメソッドでもメンバ変数を使っていないなら
その呼び方が可能
727nobodyさん:2011/06/25(土) 18:29:24.36 ID:qLdraW+2
>>726
それでした。低レベルな質問ごめんなさい・・・
728nobodyさん:2011/06/25(土) 20:24:58.32 ID:P4/ddFrn
PHPでWebサイトを作りたいのですが、最近の流行が分からないので教えてください。
規模としては、ごくシンプルなブログといった感じです。
CakePHPを使って構えて開発するような規模のサイトではなく、
レスポンスのスピードも優先させたいので重いフレームワークは使いたくありません。
しかし今時フレームワーク無しの開発というのも不安があります。

こういった場合、どのような開発方法が良いでしょうか。
最近あまり聞かないですが、シンプルなSmartyを使うというのも選択肢としてアリですか?

アドバイスを頂けると嬉しいです。よろしくおねがいします。
729nobodyさん:2011/06/25(土) 20:28:03.64 ID:???
フレームワークいらねえ。ソフト開発が目的でないならワードプレスでいいし。
オープンソースだし改造も出来る。
730nobodyさん:2011/06/25(土) 20:41:54.73 ID:???
流行で選ぼうとしてる時点で終わっトル
731nobodyさん:2011/06/25(土) 20:53:02.02 ID:???
>>728
書き込むときはテキストに書き込み
ページを開いたらテキストのまま表示
732nobodyさん:2011/06/25(土) 21:03:25.58 ID:???
>>712
降順トップ10件の昇順
733nobodyさん:2011/06/25(土) 22:34:50.10 ID:???
>>728
個人的なものなら無理にフレームワーク使う必要ないんじゃ?
俺はSmarty嫌いじゃない。嫌う人多いけどね。
シンプルなブログならSQLとAjaxでそれなりに高速だよ
もちろんサーバーによるけどね
734677:2011/06/26(日) 03:20:03.64 ID:???
>>688
遅くなりましたが、レスありがとうございます。
いきなりフレームワークは敷居が高そうではありますが、
サイトを拝見したところ解説なども充実してそうだったので検討させていただきます。
また、非推奨のアプリケーションも教えていただいてありがとうございます。

海外の掲示板でも同じような質問をしている人がおり、そこではphpBBやoscommerceはやめておけという意見などがありましたが、
学習用の手頃な規模のアプリケーションというのは見つかりませんでした。もうしばらく情報収集してみたいと思います。
735677:2011/06/26(日) 03:21:26.94 ID:???
・・・続き (規制で長いって言われますorz)

基礎学習を疎かにして良いなどとはもちろん思わないのですが、
マニュアルに書かれている内容やサイトで紹介されているTipsなどがアプリケーション全体において
どのように反映されるのかを知りたいという需要は無いものなのでしょうか。

身近に熟練した人がいて正しいコーディングスタイルを学べる環境にある人は良いと思うのですが、
自分の教育者が正しいスタイルを持っていなかったり、独学で学んでいる人にとっては
何かしら模範となる学習用のアプリケーションがあっても良いのになと思った次第です。
(「まずはこれを見ろ」というモノがあれば、基本的なセキュリティホールを作ってしまったり、
スパゲティコードを書いてしまったりということは減るのではないかと思うのですが・・・)

他にもご意見くださった方ありがとうございました。
736nobodyさん:2011/06/26(日) 03:27:28.29 ID:???
自分で掲示版作ってみるくらいのことをやってみてから、有名なアプリケーションの
「美しく機能的なコード」を読んだら?
もちろんスパゲッティコードになるかも知れないけど、
自前のコーディングの不安さや物足りなさを経験したあとの方が
効率的で安全なコーディングの良さを深いところまで理解できるんじゃないかとおもうが
737nobodyさん:2011/06/26(日) 03:34:02.74 ID:???
有名なオープンソースのアプリのソースを読むというのは
基礎的な知識を完全に身に付け、自分である程度のシステムを開発したことがある人が
いわば総仕上げ的な意味合いで行う勉強方法であって、
初心者がソース見て勉強しても身にならない所か悪影響を及ぼすぞ。

ましてや、がむしゃらに吸収する人ならまだしも、手を動かす前に口を動かしてしまう人にはまず向かない。
738nobodyさん:2011/06/26(日) 03:50:56.46 ID:???
>>648
C++ / VB.net / C# / PHP / Perl / Cshell...etc
色々やったがどうしても Python の変な記述文法が好きになれない。
739nobodyさん:2011/06/26(日) 07:12:19.24 ID:???
ありえんわ
変な記法ならVBのほうが上でしょうに
740nobodyさん:2011/06/26(日) 07:15:30.66 ID:???
PHPってCのラッパー言語なんでしょ?
741nobodyさん:2011/06/26(日) 07:32:21.77 ID:???
まあ実際WebプログラミングにおいてPythonはちと微妙な感じはする(VBも微妙だが)
どうせWeb特化でない言語で書くなら、高速なCか
Perlみたいな文字列処理が楽に書ける言語で書きたいな
シェルでCGIってのはPerl/CGIが流行るより昔には実際に行なわれてたらしいな…
742nobodyさん:2011/06/26(日) 09:38:47.69 ID:/pJHPvpJ
質問です。フォームの入力値検証で、半角英数字と日本語のみを許可
…というより、半角記号とスペースを禁止にしたいんですが、どう書いたら良いでしょうか?

ttp://ref.layer8.sh/ja/entry/show/id/1121
調べていてこのページを見たら、
 半角記号を削除して表示する
 echo preg_relace('/[\@-\/]/i', '', 対象文字列);
と書いてありますが、これだと<とか>とか?のチェックが出来てるのかなと
疑問なのですが…
743nobodyさん:2011/06/26(日) 10:08:39.20 ID:???
744nobodyさん:2011/06/26(日) 10:26:03.47 ID:???
>>742
質に不満を感じるならASCIIコード表から必要な文字を抽出すればいいんじゃないかな
http://www.ascii-code.com/
745nobodyさん:2011/06/26(日) 10:41:46.19 ID:???
>>677
キミは、数学を学ぶ前から、数学が社会で何の役に立つの?って文句言うクチかい?

>マニュアルに書かれている内容やサイトで紹介されているTipsなどがアプリケーション全体において
>どのように反映されるのかを知りたいという需要は無いものなのでしょうか。
これはまぁ、そうかもしれん。

数学の喩えを引くと例えば「積分に関しては○○先生の××って書籍が分かりやすい」とかいうのはあるとおもうが、PHPに関してもそういうのがあってもいいと思う。
だが、そういうものが刊行されたりするには、数学に比べてずいぶんと歴史が浅いと思わんかね?
数学にしたって、数千年の歴史があるにもかかわらず、万人がコレだ!って薦めてる本って無いだろ?
746nobodyさん:2011/06/26(日) 11:07:58.20 ID:???
>>745は少し的外れな気がするな
数学とプログラミングでは畑違いだろう
747nobodyさん:2011/06/26(日) 11:11:27.88 ID:???
そもそもIDだしてないのに答えるなカス
748nobodyさん:2011/06/26(日) 12:19:29.34 ID:???
>>743-744
ありがとうございました
記号ってこんなにあるんですか…
チャレンジしてみます
749nobodyさん:2011/06/26(日) 12:39:09.90 ID:???
Pythonの文法の方がむちゃくちゃ
750nobodyさん:2011/06/26(日) 12:46:42.35 ID:???
PHPだけやっときゃええがな
751nobodyさん:2011/06/26(日) 12:47:27.15 ID:???
PHPも中途半端なのに同じ分野の言語覚えても仕方ないのにねぇ
やるならJavaとかCと似てない奴やれよ
752nobodyさん:2011/06/26(日) 14:13:29.05 ID:Yv8I1zOT
プロセスのタイムアウトの時間はどこで設定するのでしょうか

while(1){
print2(file_put_contents("test.txt",date("H:i:s.u")."<br>\n",FILE_APPEND | LOCK_EX));
sleep(1);
}
としたら1分以上も動きつづけています。30秒で終わるのかと思ってた
753nobodyさん:2011/06/26(日) 14:48:22.51 ID:???
$i=0;
while($i < 60){
$i++;
sleep(1);
}
754nobodyさん:2011/06/26(日) 14:50:02.09 ID:???
max_execution_time
755nobodyさん:2011/06/26(日) 14:50:13.21 ID:Yv8I1zOT
ああごめんなさい、コードはぶっちゃけ関係ないです
php自体の、タイムアウト秒数はどのように設定するのでしょうか
756nobodyさん:2011/06/26(日) 14:53:20.83 ID:???
757nobodyさん:2011/06/26(日) 15:42:22.22 ID:W+AeykF5
「はい」か「いいえ」のラジオボタンで10問くらいのアンケートを作って
「はい」と答えた個数の合計を表示
それに応じたコメントを表示させたいのですが
まず、合計を表示させるところで生き詰まってます

<input type="radio" name="Q1" value="1">はい
<input type="radio" name="Q1" value="0">いいえ
<input type="radio" name="Q2" value="1">はい
<input type="radio" name="Q2" value="0">いいえ
これをpostでphpに送って結果を表示させたいのですが・・
色々やっても駄目でした
親切な方教えてください
758nobodyさん:2011/06/26(日) 16:08:51.77 ID:???
何をどうやってダメだったのかコードを書かないと作成依頼になりますよ
759nobodyさん:2011/06/26(日) 16:21:32.88 ID:???
>>757
ダメって何をやってどうダメだったの?
あと「親切な方」とかやめるように。
760nobodyさん:2011/06/26(日) 16:37:12.43 ID:???
>>757
親切な俺が教えてやるよ

<input type="radio" name="Q1" value="1">はい
<input type="radio" name="Q1" value="0">いいえ
<input type="radio" name="Q2" value="1">はい
<input type="radio" name="Q2" value="0">いいえ
<input type="text" name="count" value="">「はい」と答えた個数の合計を入力してください
761nobodyさん:2011/06/26(日) 16:40:30.19 ID:W+AeykF5
>>758
駄目なソースは消してしまったので・・
if($_POST["Q1"])
{
if($_POST["1"]) {$1=1}
if($_POST["0"]) {$1=0}
}
と一問づつ設定して
最後にprint $1+$2+$3+・・・・
で合計を出すとこんな感じだったと思います
762nobodyさん:2011/06/26(日) 16:43:56.92 ID:W+AeykF5
>>760
助かりました親切な方

できればphp側で合計を出せるようにしたいんです
763nobodyさん:2011/06/26(日) 16:45:30.60 ID:???
>>762
ダメじゃなくて計算出来てるんじゃん?
ダメって言ってたのは何?
あと変数名に1は使えないと思う
あとダメなソースを消しちゃ勉強にならないと思う
764nobodyさん:2011/06/26(日) 16:57:22.42 ID:???
phpの基礎を勉強していませんね
http://www.php.net/manual/ja/language.variables.external.php
見て勉強してください
ここみて勉強したら分かるほどの低レベルすぎる質問で寸
765nobodyさん:2011/06/26(日) 17:02:44.30 ID:W+AeykF5
>>763
それが、できてないんですよ
if文がうまく書けていないのか
エラーで表示されません
わかりました次はダメなソースは消しません

>>764
す、すいません
勉強してきま寸
766nobodyさん:2011/06/26(日) 17:10:55.10 ID:???
>>765
エラーを読めよ・・・
767nobodyさん:2011/06/26(日) 18:25:18.90 ID:npr5oXlM
>>739
ObjectiveCが断トツに使いにくかった
768nobodyさん:2011/06/26(日) 18:43:30.57 ID:???
>>767
それはたぶん、先に他の「オブジェクト指向」の言語習った為、じゃないかと思う。
ObjectC自体は面白い言語だよ。
769nobodyさん:2011/06/26(日) 18:56:09.57 ID:???
prototypeのJavaScriptが変に感じるのと同じだな
770 忍法帖【Lv=14,xxxPT】 【東電 72.7 %】 :2011/06/26(日) 20:10:02.66 ID:vOsyilAC
任意のhttpヘッダを送って、そのレスポンスを取得する関数かクラスってないですか?

例えば、ボクが

GET /foobar.htm HTTP/1.1
Host: example.com
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8

を送りたいとして、その返事(HTMLデータ等)を取得したい。という感じです。
ないとしたら、やっぱりsocketにwriteするの自分で作るしかないのかな。
771nobodyさん:2011/06/26(日) 20:13:05.40 ID:3TwWQZaU
【OS名】XP
【PHPのバージョン】5.3
【連携ソフトウェア】MySQL
【質問内容】opendirでfilesフォルダの中を開くと、filesフォルダの中身は数万個あるにも関わらず、70個程度しか開けていません。
どういった原因が考えられますか?
772nobodyさん:2011/06/26(日) 20:22:48.04 ID:???
>>770
curl
まぁ内部でやってることはソケット通信だよ
773nobodyさん:2011/06/26(日) 20:25:42.40 ID:???
curl or fsockopen+fwrite+feof+fread
774nobodyさん:2011/06/26(日) 20:28:52.45 ID:1bpDkxSm
http://localhost/a.phpにアクセスするとクッキーを発行します
http://localhost/b.phpに発行したクッキーを送ります
これをソケット通信で行っているサンプルが載っているサイトってありませんか?
775nobodyさん:2011/06/26(日) 20:34:20.78 ID:???
googleに「ソケット通信 クッキー」
776nobodyさん:2011/06/26(日) 20:35:39.06 ID:???
甘えるな
悪いことしたいなら自分で勉強しろ
777nobodyさん:2011/06/26(日) 20:48:06.47 ID:???
何故ソケット通信が悪いことなのか超疑問
778nobodyさん:2011/06/26(日) 20:52:15.32 ID:???
ソケット通信が悪いことと読み取ってしまうあなたの頭が超疑問
779nobodyさん:2011/06/26(日) 21:03:17.95 ID:???
>>778>>776宛てね
780770:2011/06/26(日) 21:13:50.58 ID:vOsyilAC
>>772
>>773 あざーーーーーーーーーーす
781nobodyさん:2011/06/26(日) 21:24:32.52 ID:???
>>778>>777宛てだよ
782nobodyさん:2011/06/26(日) 22:25:14.04 ID:yPaZokgH
class A{
function addp($lst){//←ここ2
$lst->add(new A("その2"));
}
}
class B{
var $lst=array();
function add($newClass){
$this->lst[]=$newClass;
}
function Fire(){
$this->lst[0]->addp(&$this);//←ここ1
print_r($this->ls);
}
}

$c=new B()
$c->add(new A("その1"))
$c->Fire();

上記のようなコードで、$c->Fire();時に$Cのthis->lstにその1とその2を入れたいと思っています
矢印ここ1の箇所の"&$this"でクラスBの$lstを参照渡しして、クラスAで$lstに追加をしているのですが
"&$this"を記述しないで、ここ2の関数内でparent->lst->addみたく参照出来ないでしょうか
ここ1の箇所は何度も書く予定で、"$this->lst[0]->addp(&$this);"を出来れば"$this->lst[0]->addp();"こう、スマートに書きたいなと思いまして。
783nobodyさん:2011/06/26(日) 22:28:14.58 ID:???
>>782
>矢印ここ1の箇所の"&$this"でクラスBの$lstを参照渡しして
$thisはBのインスタンスでBの$lstじゃないと思うけど
784nobodyさん:2011/06/26(日) 22:28:42.84 ID:???
>>779>>777宛てね
785nobodyさん:2011/06/26(日) 22:30:13.87 ID:???
>>778>>776宛てだよ
786nobodyさん:2011/06/26(日) 22:32:06.63 ID:???
いや>>779>>776宛てだろ
787nobodyさん:2011/06/26(日) 22:50:05.81 ID:???
へー
788nobodyさん:2011/06/26(日) 22:51:05.15 ID:???
779のようなことを書き込んじゃう777が可愛いw
789nobodyさん:2011/06/26(日) 22:58:56.39 ID:???
776 名前:nobodyさん[sage] 投稿日:2011/06/26(日) 20:35:39.06 ID:???
甘えるな
悪いことしたいなら自分で勉強しろ



778 名前:nobodyさん[sage] 投稿日:2011/06/26(日) 20:52:15.32 ID:???
ソケット通信が悪いことと読み取ってしまうあなたの頭が超疑問
790nobodyさん:2011/06/26(日) 23:00:19.35 ID:???
>>789
ソケット通信が悪いことと読み取ってしまうあなたの頭が超疑問
791nobodyさん:2011/06/26(日) 23:06:24.30 ID:yPaZokgH
>>783
あっごめんなさい、クラスBの$lstを渡すとすれば
$this->lst[0]->addp(&$this->lst);//←ここ1
と、なりますね

となるとますます長くなるので
$this->lst[0]->addp();で済ます方法というのがあれば教えて欲しいです
792nobodyさん:2011/06/26(日) 23:08:07.51 ID:???
ところで>>776は何で悪いことしたいと思ってるんだろう
793nobodyさん:2011/06/27(月) 00:34:08.52 ID:???
俺以外全員氏ね
794nobodyさん:2011/06/27(月) 00:49:24.56 ID:???
vipと同じにおいがするんだが
795nobodyさん:2011/06/27(月) 00:55:33.51 ID:???
>>793
while(true){
die();
}
796nobodyさん:2011/06/27(月) 01:09:05.01 ID:???
>>791
$thisが付いてるとスマートじゃなくて$thisが付いてないとスマートじゃないというのが良く分からん
別に自身のインスタンス変数を引数で渡すというのは必要がある場合なら別におかしなことじゃないと思うが。
今回のはクラス間関係がないのでただ関数に渡してるのと同じ。
797nobodyさん:2011/06/27(月) 01:09:34.85 ID:???
間違った後半のは「スマートじゃない」ではなく「スマート」
798nobodyさん:2011/06/27(月) 02:11:14.83 ID:???
自動ログインプログラムなんて大抵ろくなもんじゃない
799nobodyさん:2011/06/27(月) 04:22:17.34 ID:???
>>770
http://php.net/manual/ja/function.file-get-contents.php#example-1930

>>782
http://php.net/manual/ja/function.debug-backtrace.php
で出来る事は出来る
が、誤ったアプローチなので設計から見直した方がいい
コードから何をしたいのか汲み取れないので目的を書くべきだなー
800nobodyさん:2011/06/27(月) 04:33:58.97 ID:pkVc30mh
phpで、例えばカウンターで数値を数バイトだけ保存しておきたい時でも
fopenやファイル名の衝突回避、どこでserializeするのかどこでunserializeするのか、ファイルロックは適切か・・・
と悩むところが多いですが、phpの組み込み機能で手軽に設定を保存出来る機能はありませんでしょうか
$_SESSIONの全ユーザー共通版のような感じです
801699:2011/06/27(月) 06:27:59.66 ID:???
解決?したら報告するのが礼儀かと思うので
http://www.php.net/manual/ja/function.sleep.php#95164
このコードを試してみたらそれっぽいことができました。
どうやらflushするときにバッファに充分な文字数が無いとダメみたいです
$buffer=str_repeat(".",1024);に変えるだけでうまく動かないので。。
802nobodyさん:2011/06/27(月) 16:58:07.84 ID:???
>>757 のを書いてみて、いちおう動くものはできたのですが
間違っているところやもっとスマートな書き方があれば教えて頂きたいです。
<form action="goukei.php" method="post">
<?php
for($i=1;$i<6;$i++) {
print <<< EOF
<input type="radio" name="q{$i}" value="1">はい
<input type="radio" name="q{$i}" value="0">いいえ<br>\n
EOF;}
?>
<input type="submit" name="submit" value="登録">
</form>
<?php
if(isset($_POST["submit"])) {
$errors = array();
for($i=1; $i<6; $i++) {
if(!isset($_POST["q{$i}"])) {
$errors[$i] = $i . "番が選択されていません。" . PHP_EOL;
}
}
if(!count($errors)) {
$sum = 0;
for($i=1; $i<6; $i++) {
$sum += $_POST["q$i"];
}
echo '合計:' . $sum;
}
foreach ($errors as $error) {
echo $error . "<br>";
}
}
?>
803nobodyさん:2011/06/27(月) 17:01:54.73 ID:???
>>802
あなたは既にこのスレの住人のレベルを超えました。
このスレで教わるものはこれ以上何もないでしょう。
804802:2011/06/27(月) 17:05:41.17 ID:xqyiNAlq
>>802 ID出し忘れました。すみません。
<form action="goukei.php" method="post">
<?php
for($i=1;$i<6;$i++) {
print <<< EOF
<input type="radio" name="q{$i}" value="1">はい
<input type="radio" name="q{$i}" value="0">いいえ<br>\n
EOF;}
?>
<input type="submit" name="submit" value="登録">
</form>
<?php
if(isset($_POST["submit"])) {
$errors = array();
for($i=1; $i<6; $i++) {
if(!isset($_POST["q{$i}"])) {
$errors[$i] = $i . "番目が選択されていません。" . PHP_EOL;
}
}
if(!count($errors)) {
$sum = 0;
for($i=1; $i<6; $i++) {
$sum += $_POST["q$i"];
}
echo '合計:' . $sum;
}
foreach ($errors as $error) {
echo $error . "<br>";
}
}
?>
805nobodyさん:2011/06/27(月) 17:31:42.80 ID:lGcvt27/
function bbb() {
return "bbbb";
}
$hoge = 'aaabbbccc';
$hoge = preg_replace('/aaa(.*)ccc/', $a='\\1',$a(), $hoge);

これを実行すると\1なんていう関数はないと言われますが、
bbbを呼び出して、bbbbという結果が返ってくるようにするには
どうしたらいいでしょうか?
806805:2011/06/27(月) 17:38:00.48 ID:???
callback使って自己解決しました。
807。 ◆oDupeixhZv52 :2011/06/27(月) 17:56:11.20 ID:???
>>805
$hoge = preg_replace('/aaa(.*)ccc/e', "$1()" , $hoge);
808nobodyさん:2011/06/27(月) 18:39:32.84 ID:???
>>802をみて同じ様なコードを書きたくなったw 住人だと同じ案件にどんなコードを書くんだろう
#1
<?php
$TOI = Array(1=>"問題1",2=>"問題2",3=>"問題3");
if($_POST['CMD'] == "送信")
{
A_disp();
}
else
{
Q_disp();
};

function Q_disp()
{
global $TOI;
$HTML = "<form method='POST'>\n<table border='1'>\n";
foreach($TOI as $KEY => $RECORD)
{
$TR = <<< DATA
<tr>
<td>{$RECORD}</td>
<td>はい<input type="radio" name="Q[{$KEY}]" value="1"></td>
<td>いいえ<input type="radio" name="Q[{$KEY}]" value="0"></td>
</tr>
DATA;
$HTML .= $TR;
};
$HTML .= "\n</table>\n<input type='submit' name='CMD' value='送信'>\n</form>";
echo $HTML;
}
809nobodyさん:2011/06/27(月) 18:42:24.84 ID:???
#2

function A_disp()
{
global $TOI;
$REQ = $_POST["Q"];
$ANS = 0;
$ERR = "";
foreach($TOI as $KEY => $Q)
{
if(isset($REQ[$KEY]) == true)
{
$ANS += $REQ[$KEY];
}
else
{
$ERR .= "{$KEY} 番目が選択されていません<br>\n";
};
};
echo "合計:{$ANS}<br>\n";
if(strlen($ERR) > 0)
{
echo $ERR;
};
};
?>

自分だとこんな感じか
810nobodyさん:2011/06/27(月) 18:52:10.74 ID:xqyiNAlq
>>808-809
関数使うのが上級者ぽい感じですね。
自分はまだまだ初心者なので関数使おうという発想にいたりません。
勉強させていただきます。
811nobodyさん:2011/06/27(月) 19:36:36.20 ID:???
Mozilla関連のスレがもっとも活発な板ってどこでしょうか
812nobodyさん:2011/06/27(月) 19:41:00.97 ID:???
げ、誤爆かな....

おなじ質問スレでもこっちの方が良かったか???
△▲ WebProg 初心者の質問 Part23 ▼▽
813nobodyさん:2011/06/27(月) 19:51:01.28 ID:???
>>811
そんな曖昧な質問ではわからん
ないんじゃない?
814nobodyさん:2011/06/27(月) 19:58:58.27 ID:???
EOF;}


わろすwwwwwwwwwwwwww
815nobodyさん:2011/06/27(月) 20:03:49.19 ID:???
>>813
サンクス
ソフトウェアにします
816nobodyさん:2011/06/27(月) 20:11:19.45 ID:xqyiNAlq
>>814
2ちゃんの行数制限で仕方なく……
817nobodyさん:2011/06/27(月) 20:39:54.12 ID:3qkhECzw
ログインしてるかどうかを確かめるのは
session_start();
if ($_POST['id'] == "aaa" && $_POST['pass'] = "bbb") {
$_SESSION['login_flag'] = 1;
}
こんな感じにするのでしょうか?

それで他のページで
session_start();
if (!$_SESSION['login_flag']) {
exit("ログインしてください");
}
みたいな感じに
818nobodyさん:2011/06/27(月) 20:46:01.09 ID:???
>>810
関数使えば上級者というわけじゃないよ
こういうのが暇をもてあますと俺俺ライブラリ作っちゃうんだよね
819nobodyさん:2011/06/27(月) 20:46:37.26 ID:???
>>817
DB使え
820nobodyさん:2011/06/27(月) 20:50:59.13 ID:3qkhECzw
>>819
どういうことでしょうか?
もう少し詳しくお願いします。
821nobodyさん:2011/06/27(月) 20:52:54.37 ID:???
>>820
Database使え
822nobodyさん:2011/06/27(月) 20:54:50.65 ID:3qkhECzw
>>821
どのロジックでどうDBを使うんですか?
823nobodyさん:2011/06/27(月) 20:55:59.22 ID:???
>>822
ログインロジック
824nobodyさん:2011/06/27(月) 20:58:11.55 ID:3qkhECzw
$_SESSION['login_flag'] = 1;
これをセッションじゃなくてDBで持てってことですか?
825nobodyさん:2011/06/27(月) 21:01:20.75 ID:???
>>821は無視していいよ
826nobodyさん:2011/06/27(月) 21:22:12.36 ID:???
>>824
お前向いてないからやめたほういいよ
827nobodyさん:2011/06/27(月) 21:23:03.84 ID:???
flagでon/offより、ログインを通ったら、チケットを発行するようなイメージでログインIDを発行するような方が強固になると思うよ。
そいうログインIDをデータベースに放り込むような形でログイン中のIDを管理しているCMSとか見かけるね。
まぁ、慣れてきたら色々試してみるといいかと。

>>821の意図はわからんが。
828nobodyさん:2011/06/27(月) 21:24:12.63 ID:???
>>824
Zend_Auth使え
829nobodyさん:2011/06/27(月) 21:41:51.27 ID:???
ログインパスワードがDBから引っ張ってきた物じゃないから
DB使えとかいったただのバカ回答者だろ
簡略化して書くのは当たり前
830nobodyさん:2011/06/27(月) 21:43:33.75 ID:???
>flagでon/offより、
>ログインを通ったら、チケットを発行する

ごめん俺には両者の違いがわからん
831nobodyさん:2011/06/27(月) 21:49:11.10 ID:2KhSNdB/
フラグだとユーザ管理が出来ないってことでしょう
832nobodyさん:2011/06/27(月) 21:53:43.14 ID:???
>>824-831
Ajax使え
833nobodyさん:2011/06/27(月) 22:48:23.74 ID:???
834nobodyさん:2011/06/28(火) 02:50:11.80 ID:???
PHPのセッションの仕組み利用してる時点でランダムなセッションID発行してるだろ。
さらにログインID発行とか意味分からん。
835nobodyさん:2011/06/28(火) 03:00:15.45 ID:???
誰にレスしてんだよ
836nobodyさん:2011/06/28(火) 03:45:24.91 ID:???
>>834
不正ログイン防止の為じゃね?
837nobodyさん:2011/06/28(火) 07:56:14.14 ID:XSZKxvps
include/require __autoload以外に他のPHPから関数を使用する方法はありますか?
どちらもしていないのに使ってるスクリプトをよく見かけるのですが
あれは一体どういう仕組なんでしょう?
838nobodyさん:2011/06/28(火) 08:02:19.98 ID:???
>>837
どのスクリプト?
839nobodyさん:2011/06/28(火) 09:18:04.50 ID:nyZ/thnD
PDOのprepareメソッドでデータベースsakanaのテーブルfishから
・yomiフィールド昇順
・noフィールドが123456789のレコード
を全て取り出すSQL命令を発行したいのですが

try {
 $db = new PDO('mysql:host=lochalhost; dbname=sakana', 'kun', 'san');
 $db->exec('SET NAMES utf8');
}catch(PDOException $e) {
 die('エラーメッセージ:'.$e->getMessage());
}
$stt = $db->prepare('SELECT * FROM fish ORDER BY yomi ASC WHERE no='123456789'');
$stt->execute();

while($row = $stt->fetch(PDO::FETCH_ASSOC)) {
 echo $row['no'];
 echo $row['yomi'];
 中略
}

では動作しませんでした

$stt = $db->prepare('SELECT * FROM fish ORDER BY yomi ASC');
この状態では取り出せたので
「WHERE no='123456789'」この部分がおかしいと思うおですが、どのように記述すれば良いのでしょうか?
「WHERE no="123456789"」
「WHERE no IN ('123456789')」も試しましたが動作しませんでした。
840nobodyさん:2011/06/28(火) 09:31:56.39 ID:nyZ/thnD
>>839
エラーは当該行でParse error: syntax error, unexpected T_LNUMBERが出ます
841nobodyさん:2011/06/28(火) 09:34:08.42 ID:???
SQLの記述じゃね?

SELECT * FROM fish WHERE no='123456789 ORDER BY yomi ASC
842nobodyさん:2011/06/28(火) 09:35:51.15 ID:???
と間違った

× SELECT * FROM fish WHERE no='123456789 ORDER BY yomi ASC

○ SELECT * FROM fish WHERE no='123456789' ORDER BY yomi ASC
843nobodyさん:2011/06/28(火) 10:00:35.66 ID:nyZ/thnD
>>842
出来ました!ありがとうございます。
記述の順序があるんですね…
844nobodyさん:2011/06/28(火) 10:19:46.23 ID:bZupiZ9q
$oya = new Oya();
$ko = new Ko();
$oya->ko = $ko;

上のようなことをした場合、koからoyaのメソッドにアクセスする方法はありますか?

$oya->hoge(); を $oya->ko から使う方法です。
845nobodyさん:2011/06/28(火) 11:20:58.12 ID:???
>>836
不正ログインするためには他人のセッションIDを取得する必要があるが、
そんなことが出来るならログインIDを別に発行しても同じこと。
846nobodyさん:2011/06/28(火) 11:36:55.26 ID:???
>>844
>>799>>782へのレス

class Oya {
  public function setKo(Ko $ko) {
    $ko->parent = $this;
    $this->ko = $ko;
  }
}
847nobodyさん:2011/06/28(火) 12:31:59.81 ID:???
>>845
自セッションのみだとアカとパスが有れば2重ログインは通るんじゃね?
二重ログイン等をチェックするのにログインIDを発行してDBとかに格納すると思うけどね

DBに格納するユニーク値にセッションIDが有るのにログインIDを
態々発行する必要は無いってならそれは個々の理由だと思うけどね
848nobodyさん:2011/06/28(火) 12:42:28.86 ID:???
oyaとかkoとか下品な言葉を使うのは止めてください。
849nobodyさん:2011/06/28(火) 13:14:47.30 ID:bZupiZ9q
>>846
なるほど!早速試してみます!
850nobodyさん:2011/06/28(火) 13:17:00.90 ID:bZupiZ9q
>>848
すいません、こんどからmanとchinにします。
851nobodyさん:2011/06/28(火) 18:13:01.83 ID:???
>>845
セッション固定攻撃対策
セッションID自体はPHP自体からきてしまうので対策のしようがない。

発行したセッションID自体を管理できていればいいんだがな
852nobodyさん:2011/06/28(火) 18:41:57.43 ID:A7Pn6kne
【OS名】windowsXP
【PHPのバージョン】5.2.8
【質問内容】
文字列を何文字かずらすのはどうやったら良いのでしょうか。
例えば各1文字づらして(減らして?)IBMという文字列をHALにしたいのです。
こんな感じとは思ったのですが・・・。
$src="IBM"; $dist=""; $length=strlen($src);
for ($i=0;$i<$length;$i++) {
$c=substr($src, $i, 1);
$dist .= ;//$cを、ここでなんかすると思うのですが・・・
}
どなたか教えてください。よろしくお願いします。
853nobodyさん:2011/06/28(火) 19:00:46.25 ID:???
>>852
ordとascだったかな。手元にマヌアルが無いんだ。スマソ。
あと、packだとか使ってもできたはず。
854nobodyさん:2011/06/28(火) 19:45:49.53 ID:B0fn7u1X
セッション管理について便乗質問お願いします。
セッションはむやみやたらスタートさせないほうがいいのでしょうか?
a.phpからb.phpへの一方向の遷移を考える場合、
a.phpではb.php?hoge=ランダム値へロケーションヘッダを辿り、クッキーにも同じランダム値を保存しておき、
b.phpではif ($_GET['hoge'] == $_COOKIE['hoge'])が真の時のみにセッションスタートをして、
間違っていたり直接b.phpにアクセスした場合はセッションをスタートしないような感じにしたほうがいいのでしょうか?
それともこんな面倒な処理は必要ないですか?
855nobodyさん:2011/06/28(火) 19:48:15.66 ID:???
なんでそんなコトしようと思ったの
856。 ◆oDupeixhZv52 :2011/06/28(火) 19:49:59.98 ID:???
>>852
$src="IBM"; $dist=""; $length=strlen($src);
for ($i=0;$i<$length;$i++) {
$dist .= chr(ord($src[$i])-1);
}
857nobodyさん:2011/06/28(火) 19:52:23.47 ID:???
>>855
まず1つめはsession_start時にセッションファイルが作成されるので、
安易に作成しないほうがいいのかな?というのと、(サーバ負荷的に)
正規のルート以外からのアクセスでセッションを始めるのはなんかまずそうな気がして・・・(よくわかっていない)
858854:2011/06/28(火) 19:53:04.52 ID:B0fn7u1X
すみません。番号入れるの忘れました。
859nobodyさん:2011/06/28(火) 21:09:06.87 ID:???
headerを送信するだけでは404 not foundのページにならなかったのですが
どうしたらいいでしょう?
<?php
header("HTTP/1.0 404 Not Found");
header("Status: 404 Not Found");
860むこうの878:2011/06/28(火) 21:20:15.44 ID:???
>>859
そういう下らないことやめてくれませんかね?
ID出してないスレで質問したのになんでわざわざ煽られなきゃならんのだ
>>859はマルチ装った偽物ですスルーしてください
861nobodyさん:2011/06/28(火) 21:55:22.86 ID:???
┐(´д`)┌
862nobodyさん:2011/06/28(火) 21:58:25.91 ID:???
むこうに誘導する為の釣りだな
863nobodyさん:2011/06/28(火) 21:59:29.98 ID:nyZ/thnD
フレームワークを勉強しようと思います
ZendかCakeにしようと思ったのですが初学者にはどちらがおすすめですか?
また、おすすめの教本があれば教えてください
864nobodyさん:2011/06/28(火) 22:03:29.03 ID:???
>>863
入門にCodeIgniterからやっとけ
その後にZend
この二つを適当に覚えたらsynfonyにも手を出してみるのも良い
CodeIgniterとZendは似た感じなのでどちらかが分かればすんなり使えるのでおすすめ
CakePHPは汚いのでと2.0になるまでは勉強しなくておk(1.x系は害悪。信者が沸くと思うけどスルーでおk)
865nobodyさん:2011/06/28(火) 22:04:26.31 ID:???
>>863
Zend一択
866 ◆qZ/VDjzu96 :2011/06/28(火) 22:08:42.03 ID:???
むこうてどこ?
867 【東電 77.6 %】 :2011/06/28(火) 23:16:29.39 ID:???
電気
868nobodyさん:2011/06/28(火) 23:58:06.73 ID:???
初心者はsmartyから勉強するべきだろ
869 忍法帖【Lv=17,xxxPT】 :2011/06/28(火) 23:59:58.78 ID:???
Smarty地味に便利だよな
俺は使わないけど
870nobodyさん:2011/06/29(水) 00:08:02.17 ID:???
たしかにSmartyはいいな

俺は使わないけど
871nobodyさん:2011/06/29(水) 04:41:46.96 ID:???
【OS名】vista
【PHPのバージョン】 5.3.6
【質問内容】
http://localhost/hoge/index.php ( C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\hoge\index.php )に
print_r(getcwd());//A
register_shutdown_function(function(){print_r(getcwd());});//B
と書いて実行すると
AはC:\Program Files\Apache Software Foundation\Apache2.2\htdocs\hoge
BはC:\Program Files\Apache Software Foundation\Apache2.2
と表示されます。何故Bがこのパスになるのかが分かりません
http://php.net/manual/ja/function.register-shutdown-function.php
を読みましたが、register_shutdown_functionでカレントディレクトリが変わるとは書いてありませんし
「Apache などいくつかの Web サーバでは、スクリプトの実行時ディレクトリを シャットダウン関数内で変更可能です。」とはありますが、変更可能≠強制変更ではないと思います
872nobodyさん:2011/06/29(水) 06:46:14.05 ID:???
>>871
下らねぇ質問は“ID出して”書き込みやがれ
873852:2011/06/29(水) 10:04:04.54 ID:eHwOMlbc
>>853
chrとordですね。ありがとうございました。
>>856
文字列って配列だったんですね。
ありがとうございました。
874nobodyさん:2011/06/29(水) 11:09:11.90 ID:???
>>866
ID出さないスレ
875nobodyさん:2011/06/29(水) 13:09:44.49 ID:DGRFcgEJ
ゲームの情報サイトをPHPで作りたいと思います
モンスタードロップとかどのように設計すればいいですか?
876nobodyさん:2011/06/29(水) 13:18:42.83 ID:???
情報が少なすぎて回答に困る
877nobodyさん:2011/06/29(水) 13:46:43.85 ID:???
>>875
あえて釣られてやると、おまえさんには10年早い
878nobodyさん:2011/06/29(水) 13:51:46.80 ID:bf3Qo/ad
ログイン成功したあとの処理って次のページにLocationヘッダで飛ばすのでしょうか?
header("Location: next.php");
Locationヘッダだと302 Foundで次のページへ移動して200 OKという風になりますが、
どうもその辺のメジャーなサイトのログイン機能を見ると、
ログイン後ページが移動しているのにLocationヘッダで渡してないのか200 OKを返してるようです。
Refreshヘッダにすると200になりますが、
Refreshヘッダで飛ばすのが普通なのでしょうか?
header("Refresh: 0; url=next.php");
それともなんか別の仕掛けがあるのでしょうか?
879。 ◆oDupeixhZv52 :2011/06/29(水) 14:56:29.63 ID:???
headerなんて使わなくても出来るから。
880nobodyさん:2011/06/29(水) 15:31:33.81 ID:???
ログインで302のページはよく見る
881nobodyさん:2011/06/29(水) 16:21:59.12 ID:???
Ajaxでも実現できるよ
882878:2011/06/29(水) 17:20:55.03 ID:bf3Qo/ad
>>879
具体的にどうやればよいのかヒントでも教えていただけませんか?
クリックする方式か、ログインとその次の画面を融合させる方法しか思いつきません。

>>880
そうですね。
調査数が少なかったようです。
883878:2011/06/29(水) 17:22:25.10 ID:bf3Qo/ad
>>881
JavaScriptとの連携はちょっと難しそうなので申し訳ないです。
Googleなんかはよくやってる感じがしますけどね。
884。 ◆oDupeixhZv52 :2011/06/29(水) 19:27:01.14 ID:???
>>882
ログインフォームの飛先変えればheaderなしで次のページに行くよねってだけ。
当たり前なんだけどさ。
885nobodyさん:2011/06/29(水) 19:44:12.14 ID:OCKz1ee8
$file = file_get_contents("a.php");
header("Content-Type: text/html; charset=utf-8");
echo $file;

外からのアクセスなら実行されたものが表示されると思いますが、
当然内側から読み込んでる場合は実行されません。
実行したものを表示したい場合はどうしたらいいでしょうか?
886nobodyさん:2011/06/29(水) 20:26:30.48 ID:???
887885:2011/06/29(水) 20:33:16.83 ID:OCKz1ee8
>>886
ありがとうございます。あとで見てみます。
いましがた、ひょっとしてrequireでいける?
と思いついたのでちょっと試してみます。
888885:2011/06/29(水) 20:37:45.22 ID:OCKz1ee8
アッーやっぱできました。
889nobodyさん:2011/06/29(水) 21:41:13.85 ID:???
ズコー
890nobodyさん:2011/06/29(水) 22:14:03.95 ID:???
PHPを馬鹿にする奴らを見返す方法は無いでしょうか?
PHPを主に使っているだけで最下層プログラマと言われて哀れみの目で見られます。
確かにPHPはどんな馬鹿にでも扱える言語と言われていますが、
PHPプログラマの自分としてはこの現実がとても悲しいです。
馬鹿でも素人でも扱える言語というのは利点でもあるはずです。
891nobodyさん:2011/06/29(水) 22:15:09.89 ID:???
NG指定すればいいとおもうよ
892nobodyさん:2011/06/29(水) 23:09:34.02 ID:???
>>890
そんなの気にするこたぁねえだろw
っつか>>891デイイダロ

JavaだろうがPerlだろうが、スキル無い奴はあほらしい質問してくるもんだ。
Catalystのメーリングリストにもミョーな奴沸いてる事あるし・・・
要は、そんなの気にかからないくらいになればいいんだ
893nobodyさん:2011/06/29(水) 23:10:02.00 ID:???
>>890
まず君は勘違いしている
PHPをバカにしているのではなくて、>>1を読まないようなプログラマーだから君がバカにされている
894nobodyさん:2011/06/30(木) 00:10:11.21 ID:Zpbvub7s
for ($i = 'A'; $i <= 'Z'; $i++) {
echo $i;
}
Zで止まるにはどうしたらいいですか?
Yまでだとちゃんと出てくれるんですが
A-ZだとA-YYのあとにZがくるらしく
思い通りにいきません
895nobodyさん:2011/06/30(木) 00:21:37.30 ID:???
var_dump ( 'AA' <= 'Z' )  が trueだからな。
for ($i = 'A'; $i != 'AA'; $i++) {
echo $i;
}
とか?
896nobodyさん:2011/06/30(木) 00:23:09.44 ID:???
変数は極力宣言しない方がメモリを消費ぜずに
良いのかな?

897894:2011/06/30(木) 00:27:41.45 ID:Zpbvub7s
>>895
ありがとうございます
これはバグではないんだろうか・・・
アルファベット入れれること自体なんかおかしいですけどねw
898nobodyさん:2011/06/30(木) 00:33:36.67 ID:???
比較は辞書順なので
899894:2011/06/30(木) 00:37:01.98 ID:Zpbvub7s
>>898
なんか都合よくそういうのが設定できる関数とかありませんか?
mb_detect_order的な関数があるといいですが
さすがにないですかねえ
900nobodyさん:2011/06/30(木) 00:39:06.52 ID:???
>>896
組み込みじゃなければそんな気にするこたぁ、ねえと思うぜ。
1000とか使ってる訳じゃないんだろ?

変数とは違うが、正規表現でどのくらいまで普通に処理できるのかを、DURONで2Gのメモリ積んだLinuxで試してみた事があった。
3万行くらいで30秒だったかな。
条件によって違うとは思うがまぁ、一昔前のPCでもかなり処理できるってーこった。
901nobodyさん:2011/06/30(木) 00:45:15.88 ID:???
>>900
線キュー
902nobodyさん:2011/06/30(木) 01:36:26.21 ID:l/7mI36x
urlencodeとbase64_encodeとhtmlspecialcharsとかってどう使い分けすればいいですか?
受け取った入力値をhtmlに出力→htmlspecialchars
受け取った入力値をセッションやクッキーやhiddenやurlに出力→urlencodeまたはbase64_encode
って感じですか?
一番迷うのはhiddenはhtmlだからhtmlspecialcharsのほうがいいんだろうか?とか思っちゃいますが
具体的にどう使い分ければいいか目安ありますか?
903nobodyさん:2011/06/30(木) 02:43:42.72 ID:???
ま、それでいいんじゃね?
セッション変数の中身は外から見えないからencode必要ないけどな。
904863:2011/06/30(木) 08:58:08.50 ID:???
>>864-865
遅くなりましたがありがとうございます
905902:2011/06/30(木) 09:14:27.73 ID:l/7mI36x
>>903
レス遅くなりました
参考になります
ありがとうございます
906nobodyさん:2011/06/30(木) 09:23:27.36 ID:???
>>902
何となく使い分けるもんじゃない。
必要な場所で必要なものを「使わなければいけない」ってだけ。
変に兼用しても意味不明なコードになる。
読ませたくないならちゃんと暗号化する。
907nobodyさん:2011/06/30(木) 09:41:08.87 ID:???
サーバ側で完全にコントロールしてる変数でさえ(ユーザから入力されものでない)
エスケープしてから出力しろとかどっかに書いてたな
どう考えても無駄だから俺はやってないけど
908nobodyさん:2011/06/30(木) 09:43:46.75 ID:qcWaMuTT
preg_replaceの複数行置換について教えて下さい

【a.html】xxxxxxxxxxxxxxxxxxxxx
<html>
<body>
<div class="a">a</div>
</div>
</body>
</html>
xxxxxxxxxxxxxxxxxxxxxxxxx

というファイルを
a</div>
</div>
</body>
</html>
という風に出力したいと思い、下記のように書いたのですがうまくいきません
a.htmlに改行が含まれているせいだと思ったのですが
公式マニュアルのpreg_replaceの項には
"デフォルトで、PCRE は、検索対象文字列を(実際には複数行からなる 場合でも)単一の行からなるとして処理します。 "
とあり、よくわからなくなりました。
909nobodyさん:2011/06/30(木) 09:44:29.74 ID:qcWaMuTT
>>908
function replace(){
  $str = file_get_contents("./a.html");
  $rep = preg_replace('/.*<div class=\"a\">/',"",$str);
  echo $rep;
}

↑これだと
<html>
<body>

</div>
</body>
</html>
とechoされます
910nobodyさん:2011/06/30(木) 10:07:40.12 ID:???
>>900
メモリ積みまくってるPCで実験しても意味ねえだろ
911。 ◆oDupeixhZv52 :2011/06/30(木) 10:18:10.07 ID:???
>>909
'/.*<div class=\"a\">/s'
912nobodyさん:2011/06/30(木) 10:35:18.03 ID:???
>>910
phpの設定でメモリ割り当て量が重要だと思うが…
913nobodyさん:2011/06/30(木) 11:14:21.45 ID:???
>>912
いじってなければ標準の128MBだと思うけど
共有サーバだとその割り当てられたメモリを共有するからメモリミットを極限まで長寝て実験しないと意味ないんだよね
914nobodyさん:2011/06/30(木) 11:19:56.33 ID:qcWaMuTT
>>911
ありがとうございます
preg_replaceですが、容量の大きなhtmlファイル(491KB)では動作しなかったのですが

replace.php
function replace(){
 }






これはPHPのメモリ割り当て量の設定が必要ということですか?
915nobodyさん:2011/06/30(木) 11:25:05.55 ID:qcWaMuTT
>>914
すみません、途中で書きこんでしまいました

b.html ←491KBを、replace.phpで処理

【replace.php】xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
<?php
  function replace(){
    $str = file_get_contents("./b.html");
    $rep = preg_replace('/.*<div class=\"a\">/s',"",$str);
    echo $rep;
  }
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html lang="ja">
<head>
<title>replace</title>
</head>
<body>
<?php replace(); ?>
</body>
</html>
xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
916nobodyさん:2011/06/30(木) 11:25:54.68 ID:???
function replace(){
 }

関数に何も定義されてないじゃん・・・・
917nobodyさん:2011/06/30(木) 11:26:42.55 ID:???
デミリタに / は使うなッ!!!!!!!!!!!!!!!!!!!
918nobodyさん:2011/06/30(木) 11:28:33.73 ID:qcWaMuTT
>>915の出力ソースが下記のようになります。なんのエラーも出ずにスルーされるのはメモリが足りていないという事ですか?

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html lang="ja">
<head>
<title>replace</title>
</head>
<body>
</body>
</html>
919nobodyさん:2011/06/30(木) 11:31:24.89 ID:???
>>915
どこにdiv要素が出てくんの?張ってすぐためせるものを晒してね
920nobodyさん:2011/06/30(木) 11:46:23.32 ID:qcWaMuTT
>>917
何を使うのがおすすめか教えてくださると助かります

>>919
【a.html】xxxxxxxxxxxxxxxxxxxxx
<html>
<body>
<div class="a">a</div>
</body>
</html>
xxxxxxxxxxxxxxxxxxxxxxxxx

↑のhtmlなら>>915のreplace.phpでちゃんとechoされるのですが、

【b.html】xxxxxxxxxxxxxxxxxxxxx
<html>
<body>
<div class="a">a</div>
中略
</body>
</html>
xxxxxxxxxxxxxxxxxxxxxxxxx

↑このhtmlではechoされません(このb.htmlは個人情報の含まれるファイルなので晒せません;すみません)
容量が491Kbもあるからメモリの問題なのかなと思ったのです
メモリの問題でエラーになった場合何もメッセージは出力されないのでしょうか?
921nobodyさん:2011/06/30(木) 11:48:35.24 ID:???
すまんこ
ob_get_contentsしてもソースが取得できないんだ

<?php
ob_start();
include('./test.html');
$bufferHTML = ob_get_contents();
ob_end_clean();
var_dump($bufferHTML);
?>


色々試した結果わかったことは、
「test.html」に以下のようなxml宣言があると

<?xml version="1.0" encoding="Shift_JIS"?>

だめで、これを消すと正常に取得できる。
ちなみに「test.html」をUTF-8に変換して、
宣言の箇所をUTF-8にしてもだめだた
やはり宣言があるとだめみたいだ。
なんぞこれ?
922nobodyさん:2011/06/30(木) 11:51:08.02 ID:???
>>1
923nobodyさん:2011/06/30(木) 12:00:00.82 ID:???
失礼いたしました

【OS名】CentOS 5.3
【PHPのバージョン】5.16
【連携ソフトウェア】-
【質問内容】>>921
924nobodyさん:2011/06/30(木) 12:02:58.99 ID:???
荒らしかな無視でいいや
925nobodyさん:2011/06/30(木) 14:20:36.94 ID:???
質問内容も超FAQレベルだし
926nobodyさん:2011/06/30(木) 17:58:12.43 ID:OdRUAQ84
コード中一度しか使わないクラスだからとインスタンス化せず「::」でのアクセスをメインにしようと思っています
class hoge{
private static $db;
public static function init($str){
 $this->db=$str;
 pirnt($this->db);
}
}
hoge::init("テスト");
以上のコードを実行しても、$thisがねーよとエラーが返ってきてしまいます
「::」を使ってアクセスする場合、最初にアクセスした時orコンパイル時に初期化関数が実行、プロパティを定義させるにはどうしたらよいのでしょうか

$hoge=new hoge();
とすればスマートなのですが、一度しか使わないhogeクラスのインスタンスをわざわざ定義するのもスマートではないと思って気が引けています
927。 ◆oDupeixhZv52 :2011/06/30(木) 18:23:41.88 ID:???
self::$db
928nobodyさん:2011/06/30(木) 18:37:41.74 ID:OdRUAQ84
ありがとうございます
929nobodyさん:2011/06/30(木) 20:19:42.15 ID:???
>>907
それサニタイズ言うなキャンペーン云々の話じゃないの
930nobodyさん:2011/06/30(木) 21:41:58.58 ID:???
>>926
スマートであるかスマートでないかの基準って何?
931nobodyさん:2011/06/30(木) 23:19:24.77 ID:???
$hoge=new hoge();をみて何がスマートなのか説明してくれ
932nobodyさん:2011/07/01(金) 00:52:39.22 ID:???
>>930-931
わからないから質問しているんです
質問を質問で返すのはマナー違反ではないでしょうか
それと質問ならIDを出してください
933nobodyさん:2011/07/01(金) 00:54:21.42 ID:???
Ajax厨の中の人も忙しいな
934nobodyさん:2011/07/01(金) 03:46:57.51 ID:???
基準を示してくれないとアドバイスのしようがない
935nobodyさん:2011/07/01(金) 04:17:23.29 ID:???
だからその基準を教えろっていってんの
腹立つな
936nobodyさん:2011/07/01(金) 04:37:03.65 ID:???
926は質問中で定義してるだろ
それを聞いてるの
937nobodyさん:2011/07/01(金) 06:37:44.97 ID:???
質問ならIDを出してください
938nobodyさん:2011/07/01(金) 07:31:49.27 ID:???
回答だ
939nobodyさん:2011/07/01(金) 09:13:54.77 ID:???
>>932=質問者君
素人が$hoge=new hoge();をスマートと思い込んでる理由を説明してもらわないと回答に困るから
940nobodyさん:2011/07/01(金) 11:26:45.35 ID:???
>>932 != 質問者 && >>932- == Ajax厨
echo "ぼくをかまって"
941nobodyさん:2011/07/01(金) 11:47:02.75 ID:???
もうスルーでいいよ。
次の方どうぞ
942nobodyさん:2011/07/01(金) 18:31:21.43 ID:???
ユニコードを
& #876;みたいな形に変換する方法ってありますか?
943nobodyさん:2011/07/01(金) 18:31:34.87 ID:LN8vUPfI
すみません、ID出し忘れました・・・。
944nobodyさん:2011/07/01(金) 18:45:36.01 ID:f1cCs/uI
header('Expires: 過去の時間');
header('Cache-Control: no-cache');
header('Pragma: no-cache');

キャッシュを無効っていまいちどういうことかわからないのですが、
上記のヘッダーを入れたページにアクセス(ローカルのApacheサーバ)
ブラウザを閉じる(Apacheサーバを停止する)
ブラウザを開いて再度アクセスする(サーバが見つからないのでページ読み込みエラー)

とここまではいいのですが、
このエラーページのソースを表示すると、
最初のページのソースが出ます。(使用ブラウザはFirefoxです)

Firefoxの問題なのかもしれませんが、キャッシュを無効って、
こういうソースをクライアントにとっておかないための処理ではないのでしょうか?
945nobodyさん:2011/07/01(金) 21:33:31.89 ID:???
>>944
結局キャッシュするかどうかはクライアントの勝手だから。
PHPスレで議論しても無駄です。
946nobodyさん:2011/07/01(金) 23:06:33.91 ID:???
>>944
その認識で正しいからMozilla にバグ報告しませう
947nobodyさん:2011/07/01(金) 23:11:13.79 ID:???
どうせabout:configで設定できるっておちじゃねーの
948nobodyさん:2011/07/02(土) 02:43:30.08 ID:???
再度接続するときにキャッシュを画面に表示しないってだけで
サーバーが落ちてる時にエラーでてソース表示でキャッシュがでるのは仕様
949nobodyさん:2011/07/02(土) 03:35:54.12 ID:U9fkTnQu

この場合やはり毎回count関数が実行されて多少遅くなりますか?
for ($i = 0; $i < count($x); $i++)


$n = count($x);
for ($i = 0; $i < $n; $i++)

950nobodyさん:2011/07/02(土) 03:52:33.56 ID:???
>>949
繰り返して試せ
951nobodyさん:2011/07/02(土) 04:42:20.39 ID:???
>>949
散々既出だが・・・

http://php.net/manual/ja/function.count.php#46542

> When running loops with count conditions, the code runs faster
> if you first assign the count() value to a variable and use that
> (instead of using count() directly in a loop condition.

> As you can see, the second method (which doesnt use count() directly
> in the loop) is faster than the first method (which uses count() directly
> in the loop).

つーことで結論は出てるよ。

PHPのコンパイラがどの程度最適化してくれるのか知らんけど
後者の方が早いのは想像に難くない。
952nobodyさん:2011/07/02(土) 04:58:26.18 ID:U9fkTnQu
>>950
計測方法がわからなかったのですが
今後は試してみたいと思います。

>>951
大変助かりました。ありがとうこざいますm(__)m
953nobodyさん:2011/07/02(土) 12:49:14.67 ID:???
forでcountは使うな
XAMPPは使うな
Terapadは使うな
FFFTPは使うな
printは使うな
eregは使うな
954nobodyさん:2011/07/02(土) 12:49:35.06 ID:???
追記

dateは使うな
955nobodyさん:2011/07/02(土) 13:11:22.28 ID:???
>>953
3行目kwsk
956nobodyさん:2011/07/02(土) 13:32:22.37 ID:???
検索と置換機能が弱すぎるから
957955:2011/07/02(土) 13:35:47.20 ID:???
>>956
なるほど、サンクスコ
958nobodyさん:2011/07/02(土) 13:48:27.46 ID:DPlLivZ1
printfとかのフォーマット形式と任意の文字列を引数にとって
それらを比較してフォーマットに合致しているかどうか調べたいのですが
そんな関数ないでしょうか?
959nobodyさん:2011/07/02(土) 14:39:20.52 ID:???
合致って、フォーマットとして書いてるのかリテラルとして書いているのか判断付かないのでは?
960nobodyさん:2011/07/02(土) 15:11:12.85 ID:???
error_reporting(E_ALL)にして
$_POSTで次の画面に進んでチェックを行う場合
issetを使わないとNOTICEが出る時がありますよね?
issetを使えばNOTICEが出ないからそれはそれでいいんですが
ラジオボックスを未チェックで進んできた場合
input name="hoge"のように指定しているにも関わらず送られてこないようで
hoge自体が送られてこないようで
issetをしてもNotice: Undefined indexというエラーが出てしまいます
何か回避策はありますか?
961960:2011/07/02(土) 15:11:48.10 ID:r89l/c1b
すみませんage忘れ
962nobodyさん:2011/07/02(土) 15:16:47.65 ID:???
>>960
issetで出ないはず
もう一度確認して質問を簡潔にまとめてくれ
963nobodyさん:2011/07/02(土) 15:20:07.10 ID:JEVGTjoI
セキュリティの質問です。
暗号化してないパスワードをa.phpからPOSTでb.phpに渡す時も暗号化したり何らかの処理をした方がいいのでしょうか?
964nobodyさん:2011/07/02(土) 15:23:50.22 ID:???
>>963
SSL使え
965960:2011/07/02(土) 15:28:11.57 ID:r89l/c1b
>>962
ありがとうございます
原因がわかりました

a.html
<form method="post" action="a.php">
<input type="radio" name="hoge" value="a">a
<input type="radio" name="hoge" value="b">b<br>
<input type="submit">
</form>

a.php
<?php
error_reporting(E_ALL);
function piyo($post) {
if (isset($post)) {
return $post;
} else {
return null;
}
}
echo piyo($_POST['hoge']);

このように関数を通すとだめなようです
でも関数を通したいんですけどどうしたらいいでしょうか?
966nobodyさん:2011/07/02(土) 15:33:04.83 ID:???
>>965
piyo('hoge');
967nobodyさん:2011/07/02(土) 15:36:23.80 ID:JEVGTjoI
>>964
はい
SSLってyahooとかでっかい所が使ってるイメージがあるのですが
皆さんも必要があれば使ったりするものなんですか?
968960:2011/07/02(土) 15:36:53.69 ID:???
>>966
その発想はありませんでした
ありがとうございます
969nobodyさん:2011/07/02(土) 15:38:49.24 ID:???
>>967
ちっさいなら使わなくてよし
970960:2011/07/02(土) 16:01:54.55 ID:r89l/c1b
もう1つ質問お願いします
入力の次に入力チェックすると思いますが
入力に問題があって前画面に戻すとき
URLに前画面の入力内容を入れて戻すんでしょうか?
hiddenフィールドに入れてPOSTで戻すとかは
クリックしてもらわないとできないですよね?
971nobodyさん:2011/07/02(土) 16:39:48.99 ID:???
>>969
重要なデータあるんだったら小規模でも万が一の為に使うだろ
972nobodyさん:2011/07/02(土) 16:42:44.42 ID:zLDecbT7
1)他のサーバにある画像のURLを取得
2)自サーバーに保存
3)保存した画像を整形(縮小)

という処理をしたいと思っています。
他のサーバというのは全く別のサーバ(twitter)で、何の権限もありません。
どうやったら良いでしょうか?
1はクリアできていて、3はgdだからわかるんですが2がわかりません

というかこれは不正アクセスになってしまうんですかね…
973nobodyさん:2011/07/02(土) 16:56:48.57 ID:???
>>972
データ自体を持ってくる事ができてるんなら、file_put_contents()だかでできるよ。
とりあえずやってみることだ。。。ときどき、なんらかのフィルターが入ってたりして画像として認識されなかったりする事もあるが、その時はそのとき。

っつか、不正アクセスとか言う前に、勝手に画像を加工するのは著作権法の方からひっかかる気がする。
974nobodyさん:2011/07/02(土) 17:24:42.47 ID:???
公開してるデータにアクセスしてるのにどうして不正アクセスになるんだよw
自サーバーに保存するのも画像を加工するのも問題ない。

ただし、その画像を再公開したら当然問題になる可能性はある。
そこら辺は公開元のポリシー次第。
975nobodyさん:2011/07/02(土) 17:44:38.09 ID:???
>>958
sscanfを組み合わせればできそうだよ
976nobodyさん:2011/07/02(土) 17:47:18.89 ID:???
>>963
POSTするときにMD5でもやっとけ
オンゲはたいていPOSTするときに暗号化して渡してるぞ
977nobodyさん:2011/07/02(土) 17:50:42.91 ID:???
>>963
a.phpからb.phpへPOSTって、同じサーバー内?だったらSSLは不要だろ。
ネット上にパスワード送信されないのに暗号化に何の意味があるんだ。
978nobodyさん:2011/07/02(土) 17:51:26.13 ID:???
えっ
979nobodyさん:2011/07/02(土) 17:53:45.13 ID:???
>>970
「URLに前画面の入力内容を入れて戻す」だってクリックしてもらわなきゃ無理だろ。
普通はhiddenで「戻る」ボタンで送る。またはセッション変数で送る。
980nobodyさん:2011/07/02(土) 17:53:57.12 ID:???
ええっ
981nobodyさん:2011/07/02(土) 17:55:28.65 ID:???
>>978
あぁ、勘違い。ユーザーが表示してるa.phpからパスワードを送信するって意味か。
ユーザーがa.phpにアクセスすると自動でb.phpにPOSTされんのかと思ったが
そんな質問するわけないよなw
982nobodyさん:2011/07/02(土) 17:55:49.24 ID:???
えええっ
983nobodyさん:2011/07/02(土) 17:58:14.38 ID:???
ひょえっ?
984nobodyさん:2011/07/02(土) 17:59:47.22 ID:???
次スレよろ>>980
985nobodyさん:2011/07/02(土) 18:03:11.64 ID:???
>>990までに立たなかったら俺がテンプレ変えて立ててくんでよろしく!
986nobodyさん:2011/07/02(土) 18:05:00.48 ID:???
>>985
好きに変更していいよ
ついでにスレタイも「【PHP】下らねぇ質問はここに書き込みやがれ nnn」
形式に戻していいよ
987nobodyさん:2011/07/02(土) 18:13:06.23 ID:???
DBに登録しないでもPOSTで受け渡しする時点でサーバー経由するわけだから
MD5ぐらいは、ねぇ
988nobodyさん:2011/07/02(土) 18:14:45.71 ID:???
a.php→b.php→サーバーのDBだったら
   ↑
  ココでハッシュ化する意味は無いかと
989nobodyさん:2011/07/02(土) 18:16:02.69 ID:???
あるよ
990980:2011/07/02(土) 18:40:18.73 ID:???
おおすまねぇ踏んだの気づかなかった
テンプレはそのままでいいのかしらん?
http://hibari.2ch.net/test/read.cgi/php/1309599473/
991nobodyさん:2011/07/02(土) 18:43:33.68 ID:???
テンプレはやくしろ
992nobodyさん:2011/07/02(土) 18:44:22.57 ID:???
a.php→d.php→c.php→b.php→サーバーのDBだったら
   ↑
  ココでハッシュ化する意味は無いかと
993nobodyさん:2011/07/02(土) 18:53:49.60 ID:???
ええええっ
994nobodyさん:2011/07/02(土) 19:00:35.56 ID:???
えええええっ
995nobodyさん:2011/07/02(土) 19:05:53.49 ID:JEVGTjoI
すみません・・・、なんだか自分の質問のせいで変になってしまって
a.php→b.php→サーバーのDBだったら
   ↑
  ココでハッシュ化する意味は無いかと

とありますが、a.phpでテキストエリアにパスワード入れてPOSTする感じに考えてたんですが
その場合このタイミングではMD5でハッシュ化できなくないですか?
b.phpで受け取ったパスワードをハッシュ化するぐらいしか思いつかないのですが
996nobodyさん:2011/07/02(土) 19:08:39.11 ID:???
>>995
要するにクライアントが送信するパスワードを盗聴防止のために暗号化したいんだろ?
だったら普通にSSL使えばいい
997nobodyさん:2011/07/02(土) 19:25:16.00 ID:???
a.php→a.php→サーバーのDBなら
        ↑
     ココでハッシュ化すれば十分かと
998nobodyさん:2011/07/02(土) 19:32:01.93 ID:???
あのさ、POSTしたら同じファイルだろうが何だろうが
必ずクライアントからサーバーを経由しちゃうものなんですけど
SSL以外の暗号化じゃサーバーに送られてから暗号化されるわけであってSSLみたいな抜き取り防止としてはあんま役に立たないわけでだな
999nobodyさん:2011/07/02(土) 19:54:47.49 ID:???
もういい、俺がこの無駄な論争に終止符を打つ(論争にすらなってないけど)

教えて!Watch 解決済みの質問
PHPについての質問です。
http://oshiete1.watch.impress.co.jp/qa4517024.html?order=DESC&by=datetime

元凶はえっ と ええっ とか言ってる奴
1000nobodyさん:2011/07/02(土) 20:00:02.77 ID:???
ええっ1000ゲット
10011001
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。