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

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

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

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

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

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

【その他諸注意】
・SQL・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
2nobodyさん:2010/11/15(月) 13:00:47 ID:???
■過去ログ
【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/
【PHP】下らねぇ質問はID出して書き込みやがれ 94
http://pc11.2ch.net/test/read.cgi/php/1268835461/
【PHP】下らねぇ質問はID出して書き込みやがれ 93
http://pc11.2ch.net/test/read.cgi/php/1266229386/
【PHP】下らねぇ質問はID出して書き込みやがれ 92
http://pc11.2ch.net/test/read.cgi/php/1263035502/
【PHP】下らねぇ質問はID出して書き込みやがれ 91
http://pc11.2ch.net/test/read.cgi/php/1260247989/
【PHP】下らねぇ質問はID出して書き込みやがれ 90
http://pc11.2ch.net/test/read.cgi/php/1258187482/
【PHP】下らねぇ質問はID出して書き込みやがれ 89
http://pc11.2ch.net/test/read.cgi/php/1255263534/
3nobodyさん:2010/11/15(月) 13:01:29 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/
4nobodyさん:2010/11/15(月) 13:02:09 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プログラムとして実行された結果になる。
5nobodyさん:2010/11/15(月) 13:02:50 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に保存?
 → 好きにしてください
6nobodyさん:2010/11/15(月) 15:15:02 ID:???
自分で立てると言い張っておいて他人が立てないのが不満とか、
よっぽど「ID出して」に拘っているらしいのw
7nobodyさん:2010/11/15(月) 15:24:08 ID:???
流行らないからって荒らしてないで巣に帰れよ
わざわざ立ててやったのにこっちにくるな
8nobodyさん:2010/11/15(月) 16:14:47 ID:???
別に立ててくれとお願いした記録は無い
9nobodyさん:2010/11/15(月) 16:47:23 ID:???
別に立てないでくれとお願いされた記録は無い
10nobodyさん:2010/11/15(月) 17:05:57 ID:???
あんまいじるとまた精神病がどうのってわめきだすぞきっと
11nobodyさん:2010/11/15(月) 17:37:00 ID:3z5XhT6c
セッションの管理方法はDB使うとしたら
ttp://www.res-system.com/weblog/item/619
でOK?

読み書きの時とかロックとかした方がいいの?
12nobodyさん:2010/11/15(月) 17:40:20 ID:???
セッションは1vs1だからロックは必要ない
13nobodyさん:2010/11/15(月) 17:41:04 ID:???
vsってなんか変だな
1:Nじゃなくて1:1の関係だからってことね
14nobodyさん:2010/11/15(月) 17:48:33 ID:???
session_startでopenが呼ばれその後にreadかな
で、$_SESSIONに色々いれてってsession_write_closeのタイミングでwriteされる
普通なら全部の処理が終わった後かな
それまでDBに値は保存されない
まぁ非効率な書き方だけどそこに書いてあるのは使えると思う
1511:2010/11/15(月) 18:02:14 ID:???
>>12-14
なるほど。
ありがとうございます。
ここを参考にいろいろいじってみます。
16nobodyさん:2010/11/16(火) 11:26:05 ID:+AQcrCT7
配列の中身が空だったら削除するPHPの関数はないものでしょうか?

$array = array(0 => 'green', 1 => "", 2 => null, 3 => 'red');

上記の時、 $newArray = karaSakujyo($array);
みたいに一発で出来る関数がありそうなものなのですが見つからず。。

このブログに書いてあるやり方しかないのかな。。
http://ameblo.jp/hitomix-blg/entry-10359303759.html
17nobodyさん:2010/11/16(火) 11:31:38 ID:???
>>16
http://www.php.net/manual/ja/function.array-filter.php
これの例2
そもそも空って何?って感じだけどな
18nobodyさん:2010/11/16(火) 11:40:27 ID:+AQcrCT7
>>17

ありがとうございます!! 簡単にできました!!
19nobodyさん:2010/11/16(火) 11:52:34 ID:+AQcrCT7
連続で申し訳ありません。

PHPのswitch文はあまり使わないほうがよいのでしょうか?

「PHP の switch 文は怖くて使えない」
http://www.revulo.com/blog/20081002.html

この記事を読んで以来、ifばっかり使ってきたのですが、
最近elseifを多様するコードを書く機会がありまして。
20nobodyさん:2010/11/16(火) 12:07:54 ID:???
そのへんの記事を鵜呑みにするのはやめなよ
ケースバイケースであるのは言うまでもなく
本質がちゃんとわかってればそんな記事は書かない
緩やかな比較が問題にならないのであれば使えばいいじゃない
21nobodyさん:2010/11/16(火) 12:25:13 ID:???
>>19
そもそもその例は引数がString型にかも関わらずint型をいれてるのがおかしい
JavaではIllegalArgumentExceptionが投げられるケース
ようするに最初に引数のチェックをすればいい

if (!is_string($value)) {
return '';
}
22nobodyさん:2010/11/16(火) 12:43:39 ID:???
PHPは変数型の違いでしばしば違う挙動をするので、switchだけに限った話ではないし
心配するな。
2319:2010/11/16(火) 13:47:36 ID:ppACHWY2
みなさん、ありがとうございます。
とても参考になりました。
24nobodyさん:2010/11/16(火) 13:49:04 ID:???
switchが原因なんじゃなくて
「緩やかな比較」が原因でしょ?

原因理解していないとifでもswitchでも関係ないとおもふ
25nobodyさん:2010/11/16(火) 14:00:56 ID:???
明示的に型を指定して変数宣言できるようにならんものかね >PHP
26nobodyさん:2010/11/16(火) 14:09:26 ID:???
明示的に宣言したって ゆるゆる比較されたら同じだろ。
27nobodyさん:2010/11/16(火) 14:17:04 ID:???
いいえ
宣言外の型が入ってたらエラーなり例外出すに決まってるだろjk
28nobodyさん:2010/11/16(火) 14:31:32 ID:???
自分で作ってしまうとか
29nobodyさん:2010/11/16(火) 14:37:39 ID:???
>>27
違う型同士の比較殺すならそうだけど。
30nobodyさん:2010/11/16(火) 15:03:35 ID:???
型同士の比較以前に違う型をいれただけで問題になるってこと
31nobodyさん:2010/11/16(火) 15:19:23 ID:???
昔のPHPなんてpostで送られるとそのまま$name変数に入ってたんだぜw
それから見ればかわいいもんさ
32nobodyさん:2010/11/16(火) 15:24:37 ID:???
よくわかってないやつがいるな
静的型付けを経験してないと理解には苦しいのかもな
33nobodyさん:2010/11/17(水) 00:16:46 ID:???
スレストしたやつがいるな
34nobodyさん:2010/11/17(水) 01:34:13 ID:???
昔のPHPなんて拡張子.php3 とかだったんだぜw
それから見ればかわいいもんさ
35nobodyさん:2010/11/17(水) 02:50:55 ID:???
<?
if ($hello);
echo("こんにちは"+"こんにちは");
endif;
>
36nobodyさん:2010/11/17(水) 03:43:00 ID:???
懐かしいね。if文の後ろがコロンに変わったのはPHP3からだっけ?
37nobodyさん:2010/11/17(水) 08:23:36 ID:glr8FxGN
変数とインスタンス変数の使い分けで相談させてください。

$email (変数)
$this->email (インスタンス変数)

下のような例みたいに、引数で値を渡しても、インスタンス変数で
渡してもどちらでもできる場合が多いのです。

シンプルに引数で渡せる場合は常に引数で処理したほうがよいでしょうか?
引数が多くなって配列で渡さないといけなかったり、処理をまたがる
時のみインスタンス変数を使うのでしょうか?


function send_email () {

$this->email = '[email protected]';

$this->emailText ();
}

function emailText() {

$text = 'あなたのメアドは' . $this->email . 'です';

echo $text;

}

38nobodyさん:2010/11/17(水) 08:29:03 ID:???
何の話か良く見えないが
オブジェクト指向プログラミングって知ってるかね
39nobodyさん:2010/11/17(水) 09:52:54 ID:???
んー ご質問の内容がわかりません。

引数で渡した場合の例とインスタンス変数で渡した場合の例を書いたら
分かる人がいるかも知れません。
40nobodyさん:2010/11/17(水) 10:05:38 ID:???
決まりがないから好みの問題としか言いようがない
より柔軟に対応したいならソースは膨らむけどどれにも対応できるように書けばいい
4137:2010/11/17(水) 13:07:43 ID:IiWTl4Z8
みなさん、ありがとうございます。

引数で処理したほうがシンプルな場合は、出来る限り引数で
処理していこうと思います。

処理をまたがる時などは今まで通りインスタンス変数で。
42nobodyさん:2010/11/17(水) 13:09:21 ID:???
エスパーか
43nobodyさん:2010/11/17(水) 13:44:02 ID:???
インスタンス変数の意味がわかってるのだろうか・・・
44nobodyさん:2010/11/17(水) 13:53:16 ID:???
>>37 みたいになってるのに、
$this->emailText ($this->email);
ってやりかねない。
45nobodyさん:2010/11/17(水) 13:59:29 ID:???
Head Firstオブジェクト指向分析設計とか読むと良い
46nobodyさん:2010/11/17(水) 16:48:19 ID:WSlo4hEX
今現在の最新のPHPのバージョンっていくつですか?
5.3?6?
47nobodyさん:2010/11/17(水) 17:28:08 ID:???
48nobodyさん:2010/11/17(水) 17:28:22 ID:???
49nobodyさん:2010/11/17(水) 17:29:38 ID:WSlo4hEX
ありがとうごじゃいます
50nobodyさん:2010/11/17(水) 17:43:27 ID:???
目の前にある醤油を人にとってもらうな
51nobodyさん:2010/11/17(水) 22:41:40 ID:???
>>37
カプセル化について調べるといいですぉ
52nobodyさん:2010/11/17(水) 23:30:00 ID:1zVuoSwh
PHPのプログラムから、
C++で作成したプログラムを起動し、結果を得る方法はありますか?
53nobodyさん:2010/11/17(水) 23:31:59 ID:???
あるお
5452:2010/11/17(水) 23:37:35 ID:1zVuoSwh
>>53
どのようにして行うのでしょうか?
動作のイメージは、

(1) Webブラウザ上で、「実行」ボタンを押す。
  このとき、ユーザが入力した情報をPHPに送る
(2) PHPは、ユーザの入力情報をC++の引数にしてC++プログラムを実行する
(3) PHPは、C++の実行結果を受け取り、加工し、ユーザに表示する

という流れです。
55nobodyさん:2010/11/17(水) 23:39:17 ID:???
それでおk
56nobodyさん:2010/11/18(木) 00:38:25 ID:???
性格が悪いのがいるな
http://jp.php.net/manual/ja/ref.exec.php
このへんの関数使えって答えが欲しいんだろ
57nobodyさん:2010/11/18(木) 00:46:31 ID:???
質問が悪い
58nobodyさん:2010/11/18(木) 00:49:01 ID:???
>C++で作成したプログラムを起動し、結果を得る方法はありますか?
これで意味通じるしそう思ってるのは1人だけ
59nobodyさん:2010/11/18(木) 00:49:45 ID:???
わざわざ見当違いの答え書くのはいじわるだね
60nobodyさん:2010/11/18(木) 00:54:52 ID:???
見当違いじゃない答えを書けよ
6159:2010/11/18(木) 00:57:08 ID:???
>>60
だれ?ちなみに自分の言ったのは「あるお」って答えのことね。
62nobodyさん:2010/11/18(木) 01:00:58 ID:???
>>59>>56に対してのレスでしょ?
性格悪いに対して意地悪といったんだろ?
なんにしても中途半端で抽象的すぎる
黙ってたほうがいいわ
63nobodyさん:2010/11/18(木) 01:03:54 ID:???
ありますか?→あるよ
どのようにして行うのですか?こういうイメージです→それでおk
アフォすぎるwwwwwww
6459:2010/11/18(木) 01:06:30 ID:???
>>62
ちがうちがう。53、55、57に対して。
解決法を求めてるのに「ありますか?」に「ある」は見当違いで意地悪だ、と。
まあ黙るよ
65nobodyさん:2010/11/18(木) 01:08:22 ID:???
まさかの自虐かよ
66nobodyさん:2010/11/18(木) 01:10:36 ID:???
クソフイタwwwwwww
67nobodyさん:2010/11/18(木) 01:38:44 ID:???
ありますか? あるよ
これツマラン
68nobodyさん:2010/11/18(木) 02:20:11 ID:???
どうでもいいけど>>54に誰か答えてあげんのか?
俺はよく知らんから答えられんけど。
69nobodyさん:2010/11/18(木) 02:25:17 ID:???
systemとかexec使うんでしょ
ググればでてくると思う
70nobodyさん:2010/11/18(木) 03:16:36 ID:AjT8/33v
paypalのAPIって携帯電話に対応出来ないのでしょうか?
71nobodyさん:2010/11/18(木) 03:19:21 ID:???
PayPalのAPIが携帯に対応できるかどうかはPHPの問題なのかな。
72nobodyさん:2010/11/18(木) 03:22:35 ID:???
>>71
どこで聞いたらいいのか分からなかったので、
PHPの質問なら誰かやったことがある人がいるかなと思いまして。
73nobodyさん:2010/11/18(木) 03:37:13 ID:???
久々に来たけど、sageで質問したらわざわざ騙るのとかまだ流行ってんの?

>>54
$output = shell_exec("command " . escapeshellarg($input));
とか。``でも一緒。
標準エラーに何か出すようなものなら 2>&1 でリダイレクト。

>>70
こんなスレあった。
海外ネット決済 総合Part14 【PayPal その他】
http://hibari.2ch.net/test/read.cgi/yahoo/1283357863/
74nobodyさん:2010/11/18(木) 03:40:58 ID:???
>>73
誘導どうもです
75nobodyさん:2010/11/18(木) 12:27:09 ID:Kr+Dzwb6
例1のように、 0, 3, 4 となってしまったarrayを 例2のように
0, 1, 2 と整列されるにはどうすればよいでしょうか?

例1
array { 
 [0]=>array { ["area"]=>"東京"}
[3]=> array { ["area"]=>"埼玉" }
[4]=> array { ["area"]=> "千葉" }
}

例2
array { 
 [0]=>array { ["area"]=>"東京"}
[1]=> array { ["area"]=>"埼玉" }
[2]=> array { ["area"]=> "千葉" }
}
76nobodyさん:2010/11/18(木) 12:45:48 ID:???
$array = array_merge( $array );
7775:2010/11/18(木) 12:53:52 ID:Kr+Dzwb6
>>76

うおーーーー!! うまくいきました!!! 神すぎる。。

この問題でさっきからずっといろいろ考えていまして、
arrayのマニュアル見てもなかなかそういう動きをするのが見つからなかったのです。

本当にありがとうございます!!
78nobodyさん:2010/11/18(木) 20:10:04 ID:???
>>77
前スレでも同じ質問があったね。
array_values でもいける。
79nobodyさん:2010/11/19(金) 01:47:42 ID:???
simplexmlでxmlにデータを追記したいんですが
ファイルロックはできないんでしょうか?
80nobodyさん:2010/11/19(金) 05:32:49 ID:???
>>1
81nobodyさん:2010/11/19(金) 07:13:42 ID:???
$count = 13;
$random1 = rand(1,$count);
$random2 = rand(1,$count);
$random3 = rand(1,$count);
while($randam2 == $random1){
$random2 = rand(1,$count);
}
while($randam3 == $random1 or $randam3 == $random2){
$random3 = rand(1,$count);
}
これで3つ全部が違う数字になると思ったんですが、同じ数字が出たりします
どこをどう直せばよいでしょうか?
82nobodyさん:2010/11/19(金) 07:14:23 ID:dkGBucVh
すみません、sageチェック外したつもりでいました

$count = 13;
$random1 = rand(1,$count);
$random2 = rand(1,$count);
$random3 = rand(1,$count);
while($randam2 == $random1){
$random2 = rand(1,$count);
}
while($randam3 == $random1 or $randam3 == $random2){
$random3 = rand(1,$count);
}
これで3つ全部が違う数字になると思ったんですが、同じ数字が出たりします
どこをどう直せばよいでしょうか?
83nobodyさん:2010/11/19(金) 07:35:25 ID:???
srand
84nobodyさん:2010/11/19(金) 07:37:15 ID:???
ごめんそんな話じゃなかった

>randam
85nobodyさん:2010/11/19(金) 07:52:29 ID:dkGBucVh
1〜$countまでのランダムで、重複しない3つの数値をだすだけなのでやり方自体変えたらできました
さっきのがなぜできないのかはわからないままですけど・・・

$count = 13;
while($count > 0){
$random[] = $count;
$count--;
}
shuffle($random);
print_r($random);
echo $random[0].' '.$random[1].' '.$random[2];
86nobodyさん:2010/11/19(金) 09:41:21 ID:???
$randam2 == $random1 ってのが
$random2 == $random1 だったらいけたのかもね。

1〜$countまでのランダムで、重複しない3つの数値 だったら
$rand = range(1,$count)
shuffle($rand);
$r1 = $rand[0];
$r1 = $rand[1];
$r2 = $rand[2];
87nobodyさん:2010/11/19(金) 10:02:35 ID:???
ミスった・・・ま、間違いさがしなんだからね ///
88nobodyさん:2010/11/19(金) 10:10:05 ID:dkGBucVh
>>86
スペルミスには気づかなかったですありがとうございました

rangeで入れれるんですね
前にそういう入れ方しようとして思った挙動しなかったからずっと封印してました
89nobodyさん:2010/11/19(金) 10:14:05 ID:???
rangeは指定した範囲の連続した数値の配列を作る関数
>>82のは計算量も悪いし>>85はうまく出来てる
9089:2010/11/19(金) 10:14:46 ID:???
ミス
>>85は→>>86
91nobodyさん:2010/11/19(金) 10:51:20 ID:dkGBucVh
natsortで01とかせずに数字順に並べたんですが、これを逆順にする方法を教えてください
natsort($foo);
krsort($foo);
だとnatsortの自然順が無効になってしまいまいした
92nobodyさん:2010/11/19(金) 10:52:54 ID:???
array_reverse ってこと?
93nobodyさん:2010/11/19(金) 11:11:26 ID:???
php://memoryはスクリプト内なら何処でもアクセスできるわけではなくてファイルポインタがないとだめなのか、
期待はずれ。
94nobodyさん:2010/11/19(金) 12:00:42 ID:???
最近スレ間違える人が多いな
95nobodyさん:2010/11/19(金) 12:05:35 ID:???
>>93-94
こういう無駄スレをしてみたりな
96nobodyさん:2010/11/19(金) 12:20:02 ID:???
>>95-96
とかな
97nobodyさん:2010/11/19(金) 13:17:45 ID:???
おちんちんびろーん
98nobodyさん:2010/11/19(金) 15:20:34 ID:???
2ちゃんでID:???にしなければならない理由がさっぱりわからない
IDは全表示仕様で何の問題もないはずだけど

困る奴がいるとしたら自分で振って自分で答えている奴だけだろ
99nobodyさん:2010/11/19(金) 15:28:06 ID:???
お前この板の住人じゃないだろ
とってもこの板の住人とは思えない発言だな
100nobodyさん:2010/11/19(金) 15:44:30 ID:???
>>90
>>86は$countが小さい時限定かな。
$count=13くらいなら可読性重視でOKだけど。
101nobodyさん:2010/11/19(金) 15:56:56 ID:???
よいツッコミだ
10279:2010/11/19(金) 18:27:10 ID:Xg+w3hRV
sageはずしてませんでしたすいません
【OS名】centos
【PHPのバージョン】5.3.3
【質問内容】

<?xml version="1.0" encoding="UTF-8"?>
<data>
<name>test</name>
</data>

のxmlに追記して

<?xml version="1.0" encoding="UTF-8"?>
<data>
<name>test</name>
<document>
<date>2010/11/19 18:14:40</date>
<text>テキスト情報</text>
</document>
</data>

の様にdocumentを増やしていきたいです.
以下で追記できたんですがファイルをロックして同時書き込みおきないようにできますか?

$xml = simplexml_load_file($xmlpath);
$data = $xml->addChild("document");
$data->addChild("text","テキスト情報");
$xml->asXML($xmlpath);
103nobodyさん:2010/11/19(金) 18:31:53 ID:???
104nobodyさん:2010/11/19(金) 19:44:03 ID:???
マルチというか前から何度もやってたろ
105nobodyさん:2010/11/19(金) 19:48:21 ID:YGq1Nnb/
phpでcadaverのコマンドを実行してwebdavにフォルダやファイルを作成するという処理を書いているのですが、うまくいかずに困っています
具体的にはproc_openを使ってcadaverを実行、fwriteでユーザ名、パスワード入力を行ったあと
さらにfwriteでmkcolコマンドを入力してフォルダを作成しようとしたのですが、
認証が終わった後のmkcolコマンドが実行されず、コネクションが切られてしまいます
以下が書いたコードです(長いので出力部などは削りました)

$despec = array(
0 => array("pipe","r"), //標準入力
1 => array("pipe","w"), //標準出力
2 => array("pipe","w") //エラー
);

/*$URLはwebdavのアドレス*/
$cmd = "cadaver ".$URL;

$cadaver = proc_open($cmd,$despec,$pipes);

fwrite($pipes[0],"ユーザ名"."\n");
fwrite($pipes[0],"パスワード"."\n");
fwrite($pipes[0],"mkcol test"."\n");

fclose($pipes[0]);
fclose($pipes[1]);
fclose($pipes[2]);

proc_close($cadaver);

また、悪あがきで各fwriteの前後にsleepを入れて処理を少し止めてみてもうまくいきませんでした…
原因のわかる方どうかご教授お願いします
106nobodyさん:2010/11/19(金) 22:04:25 ID:???
>>105
認証までは確実に完了していますか。
stream_get_contentsで出力を取得して確認してから次のコマンドを送信していますか。
直接関係ないですが$URLはescapeshellargしたほうが安全ですね。
107105:2010/11/19(金) 23:28:02 ID:YGq1Nnb/
>>106
レスありがとうございます。
認証までは標準出力の結果から成功していることが確認できたので、
stream_get_contentsをパスワード入力のコマンドの後に挟んであげたところ、
mkcolコマンドが実行され、webdavにフォルダを作成することができました。

一度出力をとってあげる必要があったのですね…。
全部入力が終わった後に出力を取ろうとしていたのが悪かったようです。
本当に助かりました。ありがとうございます!
108nobodyさん:2010/11/20(土) 01:16:41 ID:???
>>107
それで解決したとなると標準出力のバッファの問題か、
タイミングの問題かのいずれだったようですね。
109nobodyさん:2010/11/20(土) 03:50:59 ID:QJj9HgSp
phpMyAdminでレコード数の数字の前に付く半角の~は、どういう時に付くの?
110nobodyさん:2010/11/20(土) 06:56:15 ID:ZtcK2EKT
>>92
ありがとうございます逆順にできました

>>100
多い場合の重複のないランダムの数字いくつか、ってどうするのがよいですか?
後学のためにご教授いただければ幸いです。お願いします。
111nobodyさん:2010/11/20(土) 09:40:45 ID:???
>>110
ん?>>86でだめなの?
112nobodyさん:2010/11/20(土) 09:55:13 ID:???
>>111
> ん?>>86でだめなの?
なんでそれを>>110にきくの?
>>100が「$countが小さい時限定」って言ってるから「じゃあ大きいときはどーすんの」って聞いてんだろ
113nobodyさん:2010/11/20(土) 09:58:56 ID:???
小さい時限定なのは>>85の間違いだと思うぞ
114nobodyさん:2010/11/20(土) 10:00:57 ID:???
> 小さい時限定なのは>>85の間違いだと思うぞ
なんでそれを>>112にいうの?
115nobodyさん:2010/11/20(土) 10:02:16 ID:???
はあ・・・ごめん
116nobodyさん:2010/11/20(土) 10:02:20 ID:???
>>113>>112にいってなくね?
117110:2010/11/20(土) 10:04:44 ID:ZtcK2EKT
なんか荒れる原因作ってしまったみたいで申し訳ない
>>113が答えだと思って受け止めておきます
ありがとうございます
118nobodyさん:2010/11/20(土) 10:07:11 ID:???
荒れてないよ
119nobodyさん:2010/11/20(土) 10:16:01 ID:???
>>110
可読性とか言ってるから代入文が3行あることを言ってるのかもね

$data = array(11,22,33,44,55,66,77,88,99);
$n = 3; // 取りたい数

// スライスで先頭3件する場合
shuffle($data);
$ret = array_slice($data, 0, $n);

// array_randを使う場合
$ret = array();
$keys = array_rand($data, $n);
foreach ($keys as $key) {
 $ret[] = $data[ $key ];
}

shuffleでいいと思うけど、不必要な分までシャッフルしてるのが気になるなら後者で
ちなみにarray_randは第2引数が1だった時、違う動きするのでそれだけ注意
120nobodyさん:2010/11/20(土) 10:22:23 ID:???
それは可読性じゃなくて保守性・拡張性じゃないか?
121119:2010/11/20(土) 10:34:24 ID:???
あぁ、分かった。
>119の後ろから2行目の事言ってたのかw
122nobodyさん:2010/11/20(土) 11:28:45 ID:???
>>119
$ret = array(); って要るの?
123nobodyさん:2010/11/20(土) 11:38:10 ID:???
>>119
> 不必要な分までシャッフルしてるのが気になるなら
array_randも内部的には同じようなことをしているような気がする。
124nobodyさん:2010/11/20(土) 14:13:21 ID:92vo/MT6
質問です
125nobodyさん:2010/11/20(土) 14:15:17 ID:???
>>124
エスパーしてみる。

彼女が作れないから、phpで解決できませんか?だろ。
126nobodyさん:2010/11/20(土) 17:23:28 ID:???
答えてこそのエスパー
127nobodyさん:2010/11/20(土) 22:47:15 ID:U0bykvKx
WinXPで、xamppを用いてPHPの学習をしています。
『メール送信』が出来ないので、教えてください。
参考書通り、入力(html)→確認画面(php)→送信(php)を行っているのですが
確認画面から送信ボタンを押しても、何分もかかった末にエラーになります。

送信を行うphpファイル(send_inqury.php)はhttp://219.94.194.39/up2/src/fu27630.jpg
エラーメッセージはhttp://219.94.194.39/up2/src/fu27631.jpg

結構な時間をかけてググッたりして、smtpサーバなどが問題であることはわかりました。
php.iniを修正する必要があるようで、http://ccfa.info/cgi-bin/up/src/ccfa39654.jpg
のように書き換えましたがダメでした。sendmail.iniも修正する必要があるというページも見つけたのですが
http://okwave.jp/qa/q6063083.html など)
私のsendmail.iniはhttp://ccfa.info/cgi-bin/up/src/ccfa39655.jpgしかなく、どこを修正すればよいかわかりません。

なお、php.iniのport番号を25でなく465にしているのは、jcomの設定がそうなっているからです。
xamppのコントロールパネルの「Port-Check」のいう箇所をクリックしたときに表示されるのが
http://ccfa.info/cgi-bin/up/src/ccfa39656.jpg となっていて、
「Mercury(SMTP)」という箇所が25なのですが、これは無関係で465にしておいて良いのかもわかっていません。

どこをどう修正すればメール送信が出来るようになるでしょうか。ご助言おねがいします。
128nobodyさん:2010/11/20(土) 23:21:36 ID:???
初心者がxampp使うな
129nobodyさん:2010/11/20(土) 23:41:48 ID:???
メールサーバはちゃんと起動してるの?
130127:2010/11/20(土) 23:54:48 ID:U0bykvKx
>>129ご返答ありがとうございます。
申し訳ありません。起動してるかどうかだけでなく、質問の意味さえよくわかりません。
Outlook Expressから直接メールすることは出来ますが・・・そういうことではないですよね!?
131nobodyさん:2010/11/21(日) 00:11:03 ID:???
ね、xampp使ってるとこうなる
132nobodyさん:2010/11/21(日) 00:11:05 ID:???
その程度も分からんのか
133nobodyさん:2010/11/21(日) 00:13:57 ID:???
なんでもかんでもxamppのせいにしたがるやついるな
あれはサーバパッケージであってLAMPを個別にインストールする必要がないってだけのシロモノ
個々にとってきたところで用語もしらないのに高望みすればどっちみち同じとこでハマル
134nobodyさん:2010/11/21(日) 00:20:24 ID:???
まぁ他人に迷惑かかるから最初からメール処理は手出さないほうがいい
ローカルで完結する処理を勉強しなよ
135nobodyさん:2010/11/21(日) 00:30:07 ID:???
>>127
xamppにはsendmailみたいなものはないのかな?
Windowsのことはよくわからないけど、sendmaneとかいう代替ツールがあった記憶が…。
136nobodyさん:2010/11/21(日) 00:39:13 ID:???
xamppならC:\xampp\sendmailの中にあるさ
137nobodyさん:2010/11/21(日) 00:51:27 ID:???
marcuryってサービス起動すればいい
138127:2010/11/21(日) 00:55:30 ID:ywZ4z07q
>>135返答ありがとうございます。
>>136の言うとおり、あります。>>127の下から6行目(空白を除く)が中身です。
http://ccfa.info/cgi-bin/up/src/ccfa39655.jpg(再掲)

>他の厳しいご意見をくださっている方々へ。
力不足過ぎることは自覚しております。
ローカルで完結する処理を勉強というのも最もだとは思います。
ただ、例えば画像アップロードの練習なりユーザー認証の練習なり、
様々な箇所で、つまずくことが増えるかと思うのです。
以前、軽く学ぼうとしたときもそこらへんでつまずきました。
本来は先に学ぶべきこともあるのかもしれませんが、
私の勝手な事情ですが、多少、急ぎ足で学ぶ必要もあったりで。

一応、質問スレなので、どなたかでもお答えくださっているうちは
図々しくも、居座らせていただきます。ご理解ください。
139nobodyさん:2010/11/21(日) 00:59:23 ID:???
xampp使うなっていうやつは、この単語が出るたびに書き込まないと気がすまない
変わったやつだからほっとけばいいよ。 で、それだけ書いて説明しないのな、奴。
あんな初心者向けで説明側が楽なもんも無いのに。
140nobodyさん:2010/11/21(日) 01:02:40 ID:???
初心者向けじゃないよ
経験者向けだよ
141nobodyさん:2010/11/21(日) 01:06:13 ID:???
>>137
久川綾
142127:2010/11/21(日) 01:07:12 ID:ywZ4z07q
127に書いたように、私もsendmail.iniの修正を行えば良いのかな?という思いはあります。
参考ページ
 http://pgse.seesaa.net/index-2.html
 http://oshiete.goo.ne.jp/qa/6063083.html (こちらは再掲)

ただ、私のsendmail.iniは127や138に貼ったとおりで、どう修正すれば良いかわかりません。
>>137のmarcuryという記述も、sendmail.iniにあるのですが、具体的にどうすればよいかわかりません。
143nobodyさん:2010/11/21(日) 01:07:55 ID:???
sendmailのスレで聞けよ
144nobodyさん:2010/11/21(日) 01:10:03 ID:???
具体的にどうすればいいって
おめーさんはxamppコントロールパネルをいじったことはないのか
145nobodyさん:2010/11/21(日) 01:10:21 ID:???
いじわるしないで教えてやれよ
わからんなら答えるなよ邪魔だから
146nobodyさん:2010/11/21(日) 01:11:26 ID:???
お前が言うな知障
147nobodyさん:2010/11/21(日) 01:12:24 ID:???
>>142=>>145ですね分かります
148nobodyさん:2010/11/21(日) 01:13:39 ID:???
これだけ分かりやすい自演も珍しいw
149nobodyさん:2010/11/21(日) 01:14:53 ID:???
知障って言ったな。じゃぁもういいよ知障で。
150nobodyさん:2010/11/21(日) 01:15:42 ID:???
>>1に書き足しておくか。
xamppはNGワードって。
151nobodyさん:2010/11/21(日) 01:18:04 ID:???
>>146=>>149ですね分かります
152nobodyさん:2010/11/21(日) 01:19:57 ID:???
荒らしてるやつは隔離スレいけ
こっちこなくていいから
153nobodyさん:2010/11/21(日) 01:20:50 ID:???
誘導してやる感謝しる
【PHP】下らねぇ質問はID出して書き込みやがれ 101
http://hibari.2ch.net/test/read.cgi/php/1289793607/
154nobodyさん:2010/11/21(日) 01:20:55 ID:???
>>152=…
もういいか
155nobodyさん:2010/11/21(日) 01:22:31 ID:???
荒らしてる香具師は >>142 >>143 >>144 >>145 のうちの誰ですか。
156nobodyさん:2010/11/21(日) 01:28:24 ID:???
>>142が出てこなくなったし自演確定
157127:2010/11/21(日) 01:29:10 ID:ywZ4z07q
>>137>>144すいません。
過去に少し学んだときは、上二つ(ApacheとMySpl)のみ触っていたので
Mercuryの存在に気づきませんでした。

Mercuryを起動させ、フォーム画面(html)を開いて、テスト送信しようとしたら
確認画面にすら行かず、確認画面を作ったphpファイルを開くか保存するかの画面が出てきたのですが・・。
また、Mercuryというのを使う場合、127の下5行に書いたポート番号の違いは関係ないのでしょうか?

sendmail.iniの修正方法も引き続き、よろしくお願いします。
158nobodyさん:2010/11/21(日) 01:31:18 ID:???
いい加減にスレ違いやめてくれない?
sendmailの設定のどこがPHPと関係してるの?
159nobodyさん:2010/11/21(日) 01:38:41 ID:???
>>157
xamppの構成要素の一つとしてPHPがあるだけで
メールサーバの動かし方とか設定の仕方をPHPスレで聞くのは全くもってスレ違い

まずPHPを経由せずにメールを送れるようになってから質問することをお勧めする
160nobodyさん:2010/11/21(日) 01:41:23 ID:???
いじわるしないで教えてやれよ
わからんなら答えるなよ邪魔だから
>>158は>スレタイを100万回読め
161nobodyさん:2010/11/21(日) 02:28:29 ID:???
>>142の知恵袋に回答かいてあるし
お前のISPってhome.ne.jpじゃないの?
162nobodyさん:2010/11/21(日) 03:17:58 ID:???
>>127さん
話は変わりますが、
Shift-JISは何かと問題があるので
UTF-8を使ったほうがいいですよ。
163nobodyさん:2010/11/21(日) 03:23:19 ID:???
仮想マシンにUbuntu入れて環境構築したほうが楽だし実用的だと思うけどなあ
xamp(というよりwindows自体)は設定とか訳が分からなくてやる気が失せた
windowsはサーバー用途に向いてないね。
164nobodyさん:2010/11/21(日) 03:27:31 ID:???
IIS
165nobodyさん:2010/11/21(日) 03:37:00 ID:???
PHP5.3.4RC1出てる
166nobodyさん:2010/11/21(日) 05:41:53 ID:9VXuUNTg
郵便番号から住所を返してくれるようなサービスで
どこが信用できそうですかね。
何箇所かあるのですが、利用規約で当社の都合で止めることがあるって
所が多いもんで。

それと、JavaScriptでローカルからリクエストするのと
Ajaxでサーバからリクエストするのとどっちがいいんでしょう。
167nobodyさん:2010/11/21(日) 07:02:59 ID:???
>>166
http://www.kawa.net/works/ajax/ajaxzip2/ajaxzip2.html
これならフリーで自前で完結する。データは自分で要更新。(宣伝じゃないよ)

> それと、JavaScriptでローカルからリクエストするのと
> Ajaxでサーバからリクエストするのとどっちがいいんでしょう。
あのぉ・・・ AjaxってJavascriptを利用した技術?なんですが・・・
Ajaxもクライアントがサーバーにリクエストする基本は同じ。
168nobodyさん:2010/11/21(日) 07:09:19 ID:???
>>166
大抵のサービスは日本郵政でDLできるKEN_ALL.CSV使ってるだけだから自分で作ったら?
フォーマットちょっとクセがあるからしょぼいサービスだと060-0000とか604-0971とかで検索すると結果が変になる。
月1回、差し替えする作業をしたくないという意味だったら
日本郵政からzipをDLして設置するスクリプトを動かすとか。

後半は「外部API叩く時、Javascriptから直接か、ProxyにPHPを挟むか」ってことだね?
IPアドレス単位でリクエスト数制限掛かってる場合はできるだけ直接で実装、
APIの返却結果が信用ならないとか、クロスドメイン関係で何か問題出る時は
仕方ないのでProxy挟むか…という感じ。

ここまで書いたからもう投稿するけど、どこにPHPの要素がw
169nobodyさん:2010/11/21(日) 09:23:47 ID:???
>>168
>>167のサイトで試したが060-0000や604-0971でも別に変にならない
170nobodyさん:2010/11/21(日) 09:25:00 ID:???
>しょぼいサービス
つまりしょぼくないって事さ!
171nobodyさん:2010/11/21(日) 11:30:23 ID:???
PHPなんて時代遅れですよ♪
172nobodyさん:2010/11/21(日) 11:33:09 ID:???
PHP 1995年
Ruby 1995年
Perl 1987年
173nobodyさん:2010/11/21(日) 11:34:43 ID:???
pythonも1990年なんだな
むしろ最近新しいスクリプト言語出てないんだな
174nobodyさん:2010/11/21(日) 11:51:05 ID:???
色々出てるじゃん
Groovyとか2003年だよ
まぁJAVAって言っちゃえばあれだけどさ
175nobodyさん:2010/11/21(日) 11:54:52 ID:???
curl・・・
176nobodyさん:2010/11/21(日) 12:08:06 ID:???
そんなマイナーなの知らないw
PHPは3が出た98年くらいにはかなり一般層まで流行ってたじゃん
177nobodyさん:2010/11/21(日) 12:57:10 ID:x8KxVX64
質問よろしいでしょうか?
データベース絡みですが、SQL 構文自体ではなく php 側の設定の問題だと思うのでここでお願いします。
PDO を通して SQLite3 を使っています。

初期設定をし、以下の方法で SQLite3 のデータベースを表示できました。

$dbh = new PDO('sqlite:test.sqlite3');

$sql = 'SELECT * FROM test;';
$res = $dbh->query($sql);
$row = $res->fetch(PDO::FETCH_ASSOC);
...


ところが、以下の方法だとエラーが出てしまいます。

$dbh = new PDO('sqlite:test.sqlite3');

$sql = 'SELECT * FROM test;';
$sth = $dbh->prepare($sql);
$res = $sth->execute();
$row = $res->fetch(PDO::FETCH_ASSOC);
...


Fatal error: Call to a member function fetch() on a non-object in 〜.php on line 58

(つづく)
178177:2010/11/21(日) 12:57:35 ID:x8KxVX64
続きです。

このエラー自体は検索すると多くでてきたのですが、大概は SQL 構文が間違ってると言われます。
ただ、query が上手く通ってるので、SQL 構文に間違いはないと思います。

execute の結果を var_dump してみたところ、bool(true) と出ます。
確かにオブジェクトではないのでエラーが出るのは分かるのですが、
マニュアルによると execute は、SQLite3Result オブジェクトもしくは FALSE を返すとあるので、
true が返ってきている原因が分かりません…。


環境は以下の通りです。

Windows XP
Apache 2.2 (httpd-2.2.17-win32-x86-no_ssl.msi)
PHP 5.2.14 (php-5.2.14-win32-installer.msi)
PupSqlite (pupsqlite_ver_1991.zip)

長くなってしまいましたがよろしくお願いします。
179nobodyさん:2010/11/21(日) 13:12:59 ID:???
180nobodyさん:2010/11/21(日) 13:14:33 ID:???
本当に調べたんかいな
http://www.revulo.com/blog/20060522.html
181177:2010/11/21(日) 13:26:08 ID:???
うわ・・・恥ずかしい限りです。

http://www.php.net/manual/ja/sqlite3stmt.execute.php
間違えて↑を見ていたようです。>>179 さんのリンクで全て解決しました。
>>180 さんと合わせて、本当にありがとうございました!
182nobodyさん:2010/11/21(日) 13:56:31 ID:???
Sqlite使う奴多いな
183nobodyさん:2010/11/21(日) 14:08:20 ID:???
このスレだとなぜか多いな
184nobodyさん:2010/11/21(日) 16:03:58 ID:???
掲示板とかログ管理とかぐらいの規模だとちょうどいいからな
185nobodyさん:2010/11/21(日) 16:08:53 ID:???
MySQLだとなんでだめなん?
186nobodyさん:2010/11/21(日) 16:12:48 ID:???
ダメというわけではないが
SQLiteの方が移植性高くて楽
PHP5以降だとPHPあれば動くしな
どこかに移すのもSQLiteのファイルをもってくだけ
これほど楽なものはない
187nobodyさん:2010/11/21(日) 16:14:05 ID:???
別にdumpして持って行って突っ込めばよくね?
188nobodyさん:2010/11/21(日) 16:20:08 ID:???
移行先にもmysql鯖を構築する必要が出てくるだろ
権限周りの設定云々も必要になってくる
文字コードの設定もね

本や配布スクリプトの場合
そういった環境依存になる部分がSQLiteの方が少なくなる
だからSQLiteの方が多くなるのは必然と言える
189nobodyさん:2010/11/21(日) 16:23:13 ID:???
190nobodyさん:2010/11/21(日) 16:26:13 ID:???
トレンドで判断するとか馬鹿すぎるな
191nobodyさん:2010/11/21(日) 16:28:01 ID:???
じゃ何で判断するんだよw
192nobodyさん:2010/11/21(日) 16:30:44 ID:???
trends使いたかっただけとエスパー
193nobodyさん:2010/11/21(日) 16:33:08 ID:???
>>192
そうだよ悪いかw
194nobodyさん:2010/11/21(日) 16:34:35 ID:???
で、SQLiteの方が多いという根拠はどこに?
195nobodyさん:2010/11/21(日) 16:35:29 ID:xEOrsG3N
YahooがGoogleの検索エンジン使ってるって事は、今更YahooにPing送っても無駄って事ですか?
196nobodyさん:2010/11/21(日) 16:36:39 ID:???
>>195
スレ違い
197nobodyさん:2010/11/21(日) 16:53:03 ID:???
>>190
答えられないんじゃねぇかw

ともかく別にMySQL好きなわけでもないけどそれでもSQLiteが多いはねーわ。
シェアも機能も、やっぱりオマケ程度のDBだよ。
198nobodyさん:2010/11/21(日) 16:54:27 ID:???
どーでもいい議論は別スレで
199nobodyさん:2010/11/21(日) 16:57:31 ID:???
おれの勘なんだが

このスレでは今後も不毛なレスが続く
200nobodyさん:2010/11/21(日) 16:59:23 ID:???
多くなると書いてるんだが・・・
そして前提として本や配布スクリプトとも書いてる
そこにMySQLとSQLiteの比較をするのは馬鹿としか言いようがない

シェアとしては利用できる規模等も考慮すれば
MySQLの方が多いのは当たり前

因みにchromeやfirefoxでもsqliteが使われてるわけだが
これらをシェアとして考えれば多いとも言えるな

利用ケースを考えろよ
201nobodyさん:2010/11/21(日) 17:07:52 ID:???
188に189のレスする時点で文盲。スルーで。
202nobodyさん:2010/11/21(日) 17:12:52 ID:???
wつけてるやつは隔離いけ
こっちこなくていいから
203nobodyさん:2010/11/21(日) 17:45:17 ID:???
>>200
>多くなると書いてるんだが・・・
だからその根拠は(ry

>そして前提として本や配布スクリプトとも書いてる
MySQLのインストールCDが付属している本もあるし
MySQLが必要なフリー配布スクリプトだってあるけど?
だから、それらの前提でSQLiteが多いって主張したいならそれでもいいけど、その根拠を示さないとまったくもって無価値な主張じゃないか。

>因みにchromeやfirefoxでもsqliteが使われてるわけだが
>これらをシェアとして考えれば多いとも言えるな
ほうほう、で、数字は?
204nobodyさん:2010/11/21(日) 17:47:24 ID:???
不毛
205nobodyさん:2010/11/21(日) 17:48:19 ID:???
そう、不毛だから早く根拠出して
206nobodyさん:2010/11/21(日) 17:53:37 ID:???
具体的提案。

ヲチスレとか作ってそこでやるのはどうだろうか。
この板に作るなら「PHPerに突っ込みを入れるスレ」とか多少範囲を広く取らざるを得ないだろうけど。
ネットwatchなら「PHP関連スレのヲチスレ」とか。

スレに関する苦情はこちらみたいな感じに>>6あたりに入れといてくれたら誘導もしやすい。

>>202の言う隔離ってのがこれの事ならURL出した上で誘導して欲しい。
207nobodyさん:2010/11/21(日) 17:55:47 ID:xL1nv8No

クライアントに結果を返した後に、処理を続行することってできますか?

本来は全ての処理が完了するまではクライアントに待ってもらう必要があると思います。
クライアントに関係の無い処理がある場合に、途中で結果を返したいのです。

アドバイスよろしくお願いいたします。
208nobodyさん:2010/11/21(日) 18:08:36 ID:???
>>207
output_bufferingが有効になってると、出力が貯められ
実行完了時に一気に出力されます

ob_flashを実行すれば貯められたバッファを送信できます
マニュアルの出力制御のあたりを見て下さい

PHP: ob_flush - Manual
http://jp.php.net/manual/ja/function.ob-flush.php
209nobodyさん:2010/11/21(日) 18:09:04 ID:???
IDもなければアンカーもないし
醜いわ!
210nobodyさん:2010/11/21(日) 18:09:36 ID:???
>>206
取り敢えずヲチ板がどんな所か見て来たら?
211nobodyさん:2010/11/21(日) 18:22:24 ID:???
>>207
ignore_user_abort()してそのまま続ける方法もあるけど、
別プロセスをバックグラウンド実行させるのが楽だと思う
`/usr/local/bin/php backgroundprocess.php > /dev/null 2>&1 &`;

CGI版ならclose(STDOUT)でできるかもしれない。未確認。
212207:2010/11/21(日) 18:54:02 ID:xL1nv8No
>>208
ありがとうございます。説明不足でした。
「途中」ではなくて、その段階でクライアントとの接続を終了したいのです。

--------------------

echo "welcome";
// この段階で、クライアントとの接続を終了したい
// => クライアント側では、この段階で表示が完了する

...あとはサーバ側の処理のみ...

--------------------

>>211
ありがとうございます。
connection_abortみたいな関数があれば助かるんですけどね。。

この手の処理は簡単には実現できないのでしょうか。
他に簡単な方法があれば教えていただきたいです。
213nobodyさん:2010/11/21(日) 19:58:46 ID:???
>>166,167

どうもありがとう。
自分で作るのはメンテが面倒。
APIはサ−ビス終了すると困る。
というあたりが悩みどころでした。

サーバー側はPHPで書いているんで、このスレでもいいんじゃないかと。

それこそすれ違いだけど、日本郵政がサービスしてくれるのが
いちばんいいんですけどね。
こういうのこそSaaSで実現すべきですよ。
214nobodyさん:2010/11/21(日) 20:24:17 ID:???
何故そこでSaaSが出て来る
215nobodyさん:2010/11/21(日) 20:53:05 ID:???
> サーバー側はPHPで書いているんで、このスレでもいいんじゃないかと。

なんだそれ。
216nobodyさん:2010/11/22(月) 00:50:22 ID:???
>>213は質問者の>>166では無いんだよね。
何が言いたいのかわからん。
217nobodyさん:2010/11/22(月) 02:35:44 ID:???
ただのアンカミスだろ
218nobodyさん:2010/11/22(月) 08:19:44 ID:???
ミスなら非を認めて謝罪するべきでしょう。
開き直るとは許しがたい。
219nobodyさん:2010/11/22(月) 08:48:51 ID:???
このスレがなぜ荒れるか分かったよ
暇なPHPerが他に書き込むスレも無くこのスレにたむろして
何か書けることは無いかとレスを捻り出した結果だな
220nobodyさん:2010/11/22(月) 08:56:43 ID:???
それがこのスレの存在意義だろうがボケ
221nobodyさん:2010/11/22(月) 14:24:34 ID:???
PHP
ぴー ひゃら ぺーぺー
222PHP忍者 ◆vx6KgJyjvE :2010/11/22(月) 17:32:07 ID:???
(@)3
223nobodyさん:2010/11/22(月) 18:22:17 ID:???
馬鹿なチョンはここにも出没www
224nobodyさん:2010/11/22(月) 18:59:46 ID:???
馬鹿な小日本人に言われたくない
225nobodyさん:2010/11/22(月) 19:03:28 ID:???
あらチョンだったの?ww
適当に言っただけなのにww
226nobodyさん:2010/11/22(月) 20:34:36 ID:???
あらチャンじゃないです
チャイナです
227nobodyさん:2010/11/22(月) 21:30:53 ID:???
あぁだからあんな荒らし方してたのか
228PHP忍者 ◆vx6KgJyjvE :2010/11/22(月) 22:52:33 ID:???
PHPって簡単だよね
229nobodyさん:2010/11/22(月) 23:56:33 ID:???
PHP忍者キモい。ウザい。氏ねハゲ
3回回ってワンと言え
230PHP忍者 ◆vx6KgJyjvE :2010/11/23(火) 00:00:00 ID:???
| ゴロゴロ
|r'⌒X⌒X⌒ヽ ∩゙⌒゙、⊃
|ヽ__乂__乂__ノ (。Д。)⊃ ワン
231nobodyさん:2010/11/23(火) 00:03:15 ID:???
ここまで自演

質問お待ちしておりまーす
232nobodyさん:2010/11/23(火) 00:13:06 ID:???
quoteSmartを使おうとすると
Call to a member function quoteSmart() on a non-object
と出て使えません。
233nobodyさん:2010/11/23(火) 00:14:38 ID:???
>>1
234nobodyさん:2010/11/23(火) 00:31:39 ID:???
分からない人は答えなくていいです
235232:2010/11/23(火) 00:32:52 ID:???
すいません。>>3のphpマニュアルみたら解決しました。
236nobodyさん:2010/11/23(火) 09:38:34 ID:???
>>1
237nobodyさん:2010/11/23(火) 19:23:33 ID:NoNXE+F/
指定バイト分だけファイルから読み込みを行うにはどうしたらいいんでしょう?
238nobodyさん:2010/11/23(火) 19:30:48 ID:???
>>237
PHP: file_get_contents - Manual
http://php.net/manual/ja/function.file-get-contents.php

第5引数でバイト数指定できる
239nobodyさん:2010/11/23(火) 20:47:22 ID:ZNYYZV27
WindowsXP で PHP5.2.14 を使用しています。
print_r(glob('*表示*'));
とすると、0x5Cに引っかかるのか、ファイルが存在しても何も表示されません。
mb_internal_encoding などを変えてみたり、mb_convert_encoding もしてみましたが、解決できていません。
何とかならないでしょうか。よろしくお願いします。
240nobodyさん:2010/11/23(火) 20:52:40 ID:???
globの引数がおかしいんじゃないの?
241nobodyさん:2010/11/23(火) 21:13:13 ID:???
ファイル名に2バイト文字を含めること自体異常
242nobodyさん:2010/11/23(火) 21:19:51 ID:???
ああ*表示*ってそのままそれを入れてたんか サンプルかと思った
243nobodyさん:2010/11/23(火) 21:49:42 ID:???
GLOB_NOESCAPE
244nobodyさん:2010/11/23(火) 22:06:37 ID:???
>>243
それも駄目でした。
php4.4.9でも同じになるようです。
もちろん、'*示*' だと正常に結果を返してくれます。
245nobodyさん:2010/11/24(水) 04:36:40 ID:???
>>239
mb_internal_encodingやmb_convert_encodingをどう変えてみたのか具体的に。
環境変数$LANGに合わせてエンコードを変えていますか。
246239:2010/11/24(水) 07:53:39 ID:???
書き忘れていましたが、cli版を使用しています。

>>245 ありがとうございます。
環境変数$LANGとは何のことでしょうか?
試したコードは以下のようになります。
以下を一行にしたものをコマンドプロンプトから実行します。

php -r "mb_language('Japanese');
mb_internal_encoding('SJIS-win');
mb_regex_encoding('SJIS-win');
print_r(glob(mb_convert_encoding('*表示*','SJIS-win')));"
247nobodyさん:2010/11/24(水) 09:19:11 ID:???
--enable-zend-multibyte オプションつけてPHPコンパイルするか
http://www.geocities.jp/rui_hirokawa/php/win/
248nobodyさん:2010/11/24(水) 10:02:09 ID:???
無理無理

0x5CはWindowsではディレクトリの区切りを表す文字コード
つまり'*表示*'とした場合、「表」の先頭コード0x95で終わるディレクトリ以下にある「示」で始まるものを探索してるということ
249nobodyさん:2010/11/24(水) 10:38:27 ID:???
なるほどな、 歯フォルダの示ってファイルで出るな。
250nobodyさん:2010/11/25(木) 01:51:53 ID:???
SJIS以外にすることはできないのか。
globがUTFを返せばいいんだろ?
環境が無いので試せないが、php.iniの設定で変更できんのか?
251nobodyさん:2010/11/25(木) 05:58:30 ID:???
日本語扱うのにSJISはないよ。
プログラムはUTFで書いて、データはSJISが普通。
読み上げと書き込みの時に変換する。
252nobodyさん:2010/11/25(木) 06:04:08 ID:???
読み上げ?
253nobodyさん:2010/11/25(木) 07:31:23 ID:???
>>251
そうじゃなくてglobに渡す&返す文字列がSJISじゃなければ
>>248-249のようなことにならなくて済むと思うんだが
254nobodyさん:2010/11/25(木) 09:26:23 ID:???
できるかできないかで言えば、できない。
理由はwin32/glob.c、win32/readdir.cあたりを見れば分かる。
globみたいのは元々ネイティブAPI丸投げだし、Windows環境のエミュも結構てきとう。

回避策1: glob('*')とかreaddirで全部読んで、PHPスクリプト内でフィルタリングする。
回避策2: win32/readdir.cを改造してUTF-8とかに変換する。
win32/glob.cをstreamWrapper系に改造すればもっと汎用的になるのかな?
よく知らないけど。
255nobodyさん:2010/11/25(木) 10:32:38 ID:???
win32/readdir.cを見たがSJISで戻ってくるのかどうかよくわからなかった。
Windowsってファイル名は内部ではUnicodeで管理してるんじゃなかったっけ。
256nobodyさん:2010/11/25(木) 11:22:17 ID:???
Windowsのほとんど全てのAPIはUTF-16で動いてる。
NTFS上にもUTF-16で保存されてる。
Win32APIのAとWとUNICODEマクロの話は省略。
win32/readdir.cではFindFirstFileA/FindNextFileAでSJISに変換済みのchar*を読んでる。
257nobodyさん:2010/11/26(金) 07:38:25 ID:8z1vMVxd
クーポンサイトの情報を取得して、 独自に 「飲食」、「美容」、「旅行」 などと
自動的にプログラミングで判別してカテゴリに分けたいです。

検索する文字列はクーポンのタイトルとクーポンの紹介文のみを使います。


※「飲食」のカテゴリに分けたい時

mb_strpos を使い、「カレー」、「焼肉」、「ピザ」 などの文字が紹介文に入ってて、
「エステ」、「マッサージ」、「脱毛」 などの文字列が入ってない。

上記のようなプログラムで判別しようと思っているのですが、
このやり方の問題点、もしくは最適な関数、もっとよいやり方などがあれば
教えてもらえないでしょうか?m(_ _)m
258nobodyさん:2010/11/26(金) 08:06:31 ID:???
>>257
いいんじゃない?
259nobodyさん:2010/11/26(金) 08:22:08 ID:???
ピザ野郎をエステでスリムにしますみたいな紹介文がなければ判別できそう
260nobodyさん:2010/11/26(金) 08:42:25 ID:6Tea9Sr/
>>258

mb_strposで問題なさそうなのですね。ありがとうございます。

>>259
朝から吹き出してしまったw


飲食カテゴリ

・下記のどれか1つでも含む
「焼肉」 「カレー」 「食べ放題」 「レストラン」 (ここのワードは慎重に選ぶ)

・以下のワードをいずれも含まない

「エステ」、「マッサージ」、「脱毛」、、、、、、、(ここのワードは多くしてもよし) 

こんな感じで考えております。
261nobodyさん:2010/11/26(金) 09:21:34 ID:???
>>256
なるほど。
262nobodyさん:2010/11/26(金) 13:57:25 ID:hU0kBnUa
vistaとApache/2.2.17 (Win32) PHP/5.3.3です。
コマンドプロンプトから「tasklist /v」をした時の結果を取得したくて
exec('tasklist /v',$ret);と書きました。
イメージ名とかPIDは正常に取得できるのですが
ウインドウタイトルの大半がN/Aになってしまい、取得出来ません。


コマンドプロンプトから「tasklist /v」をした時の結果と同じ値を取得するにはどうしたらよいのでしょうか
263nobodyさん:2010/11/26(金) 17:34:24 ID:???
>>262
マニュアル嫁

とりあえず、execにはこう書いてあるな。

返り値
コマンド結果の最後の行を返します。コマンドを実行し、 一切干渉を受けずに直接コマンドから全てのデータを受けとる必要が あるならば、PassThru() 関数を使ってください。
実行されたコマンドの出力を取得するには、必ず output パラメータを設定・使用してください。
264nobodyさん:2010/11/26(金) 17:54:59 ID:???
ウインドウタイトルが N/Aであってるって話じゃないのか?
うちでは問題なし。そうでないのも取れる。
N/Aってなってるの、なんちゃらSERVICEじゃねーの?
265nobodyさん:2010/11/26(金) 19:03:09 ID:???
具体的に言うと、取得したいタイトルはaviutlのウインドウタイトルで
このphpと同じPCの同じユーザーで同時に動いています。

exec、passthru、shell_exec、systemで
$cmd='tasklist /v /fi "imagename eq aviutl.exe"';
を実行させたのですが、全てウインドウタイトルが「N/A」となってしまいます。

コマンドプロンプトから
tasklist /v /fi "imagename eq aviutl.exe"
と実行するとウインドウタイトルも「出力中 50%」と取得出来るのですが。
266nobodyさん:2010/11/26(金) 19:04:59 ID:???
>>265
後出しイクナイです
267nobodyさん:2010/11/26(金) 19:20:15 ID:???
>>266
>>262で十分理解できるだろ?>>263も明らかに見当違いの回答だし。
まぁうちには環境がないので何のアドバイスもできんが。
268nobodyさん:2010/11/26(金) 19:25:08 ID:???
aviutl ダウンロードして その通りやったが、 タイトル取れるぞ。
269nobodyさん:2010/11/26(金) 19:44:57 ID:???
分かち書き
270nobodyさん:2010/11/26(金) 20:40:39 ID:???
ID変わって失礼します。

$cmd='tasklist /v';
exec($cmd,$ret1,$ret2);
print_r($ret1);
の結果が
http://sakuraweb.homeip.net/uploader/src/up139167.png
このようになり、aviutlだけでなく、メモ帳や専ブラ等々、全てのプログラムでウインドウタイトルがN/Aとなっていて取得できません。

phpの設定はこのような感じです。
http://sakuraweb.homeip.net/uploader/src/up139168.png

httpdの実行権限の問題かなと思ったのですが、ウインドウタイトルが取得できている方、
httpd.exeのユーザー名は何になっていますか?
http://sakuraweb.homeip.net/uploader/src/up139167.png
自分は97行目の通り、"NT AUTHORITY\SYSTEM"となっています。
271nobodyさん:2010/11/26(金) 22:19:29 ID:???
> ID変わって失礼します。
> ID変わって失礼します。
> ID変わって失礼します。
272nobodyさん:2010/11/26(金) 22:25:08 ID:I8yzn2Dg
age
273nobodyさん:2010/11/26(金) 22:36:35 ID:???
274nobodyさん:2010/11/26(金) 23:42:37 ID:???
>>273
ありがとうございます。
ですが、このトピックの方はApacheでは実行できてIISでは実行できない
という現象みたいで、自分はApacheで実行できない状態なんです。
>>どうやら、Apacheではcmd.exeの指定は要らないが
とありますので、これじゃない と思います。
275239:2010/11/27(土) 00:05:56 ID:???
コンパイルは自分には難しそうなので、とりあえず以下のようにdirコマンドを使うことで解決しました。

if (strpos($filename, '\\') === false)
$files = glob($dir.$filename.'.*');
else if (preg_match('/^Windows/i', $_SERVER['OS']))
exec('dir /B "'.$dir.$filename.'.*"', $files);

ただ、dirコマンドを何度も呼ぶとヒープメモリ?を食いつぶすのか、新しいプロセスを立ち上げることができなくなります。
この状態になると、Windowsを再起動しないと何もできなくなります。
タスクマネージャを見た限りでは特にメモリは消費していないのですが…
phpを再起動させても効果はないようです。
最終的にはreaddirで何とかしようと思いますが、
ヒープメモリ?を解放する方法などがあればご教示ください。よろしくお願いします。
276nobodyさん:2010/11/27(土) 03:33:36 ID:???
>>274
またサヨクがニワカで保守気取りか
277nobodyさん:2010/11/27(土) 08:32:01 ID:HnSqylEA
クーポンの概要を説明した日本語の文字列の中から、
「鍋」 「焼肉」 などの文字列を検索するロジックを書いています。

mb_strpos を使っていますが、 特定の文字列が発見された時にtrueを返す
ereg関数のほうがよいでしょうか?
278nobodyさん:2010/11/27(土) 09:24:29 ID:???
男は黙ってstrpos
279nobodyさん:2010/11/27(土) 11:26:16 ID:???
>>276
またウヨクがニカワで捕手気取りか
280nobodyさん:2010/11/27(土) 11:27:12 ID:???
>>275
終了させないとだめなんでないの?
281nobodyさん:2010/11/27(土) 15:37:06 ID:???
>>275
前後のコードを見ないと何とも言えないが、
「dirコマンドを何度も呼ぶ」というのはどういう状態?
同じプログラムの中で exec('dir 〜 を何度も実行してるってこと?
$filesは毎回初期化してるの?
282nobodyさん:2010/11/27(土) 16:20:26 ID:JYCUoFVz
YouTubeの動画IDのように、短くユニークなIDを生成したいのですが、どうしたらいいでしょうか?
uniqid()では同じマイクロ秒で生成されると駄目なようで、uniqid(mt_rand())では長すぎるので困っています。
283nobodyさん:2010/11/27(土) 16:33:37 ID:???
IDが被らないようにループさせる
284nobodyさん:2010/11/27(土) 16:42:10 ID:JYCUoFVz
言葉足らずですみません。
DBやファイルを使い生成した文字列がユニークかどうかを走査するのではなく、もっとスマートな処理方法はないでしょうか?
285nobodyさん:2010/11/27(土) 16:45:23 ID:???
それを使ってるかどうかなんて何で判断するんだ
286nobodyさん:2010/11/27(土) 16:46:52 ID:???
>>284
単純に連番にすりゃいいじゃねぇか
287nobodyさん:2010/11/27(土) 16:48:25 ID:???
いずれにしても番号はDBかファイルに記録しなきゃ使えないじゃん
288282:2010/11/27(土) 17:04:34 ID:JYCUoFVz
もちろん生成したデータはDBにUNIQUEとして保存します。
ただ、保存する度に問い合わせて衝突するなら新しく生成してまた問い合わせる・・・を繰り返えすのが普通なのでしょうか?
uniqid(mt_rand(), true)を使えば膨大な量のデータがあっても衝突無しに一発で保存できます。けど文字数が多すぎます。
なので、TouTube(あるいはTinyURL)のように英字の大文字小文字を使用してより短い文字列に出来ないかと考えています。

>>286
連番では駄目です。
289282:2010/11/27(土) 17:09:10 ID:JYCUoFVz
>なので、TouTube
すみませんタイプミスです。正しくはYouTubeです。

書いていて気づいたのですが、要はuniqid(mt_rand(), true)で生成される文字列が大文字小文字を交えた半角英字と数字と一部の記号なら短くなりそうなので、
そういった類のスクリプト等があれば教えてください。
290nobodyさん:2010/11/27(土) 17:09:41 ID:???
a-zA-Z0-9の重複順列5個取り出しで9億ぐらい作れるからあとは考えろ
291nobodyさん:2010/11/27(土) 17:10:27 ID:???
ユニークかどうか走査したくないのなら
あらかじめDBにユニークIDを鬼のように入れておいて、割り当てられてないレコードを引っ張り出して処理するしかないと思うが
292282:2010/11/27(土) 17:15:04 ID:JYCUoFVz
>>291
それをやるなら空でInsertしたDBのauto_incrementなPRIMARYを使って再度そのレコードをUpdateした方がよくはないでしょうか?
293nobodyさん:2010/11/27(土) 17:15:15 ID:???
ファイルは溜まるが
tempnam
でいけるんちゃう?
294282:2010/11/27(土) 17:26:12 ID:JYCUoFVz
>>293
試してみましたが、ファイル名が連番で保存されていました。

今、一つ閃いた事があるので試しきます。
上手くいけば報告します。
みなさんありがとうございました。
295nobodyさん:2010/11/27(土) 17:31:22 ID:???
>>294
Windowsか
296nobodyさん:2010/11/27(土) 17:57:47 ID:???
俺だったらmicrotime・2次元配列・strtoupper・strtolowerとファイル1本で処理するかなー
297nobodyさん:2010/11/27(土) 18:34:35 ID:???
>>294
youtubeだって結局連番っぽいのよ。
ttp://pc.casey.jp/archives/1901
298nobodyさん:2010/11/27(土) 19:36:36 ID:???
32進数とかにして、適当に大きいとこからはじめれば、連番に見えないだろ。
連番駄目なのは、どうせ見た目だけだろ、上司がそういったとか。
299282:2010/11/27(土) 20:15:21 ID:JYCUoFVz
仰るとおりで。
閃いた事=>>297でして、無事解決しました。
本当にありがとうございます。
300nobodyさん:2010/11/27(土) 23:39:27 ID:???
昔sha1ハッシュをURLにしてたなあ…
301nobodyさん:2010/11/28(日) 00:20:55 ID:???
昔sha1を62進数にしたらだいぶ短くなると思って試行錯誤したが
sha1の結果を10進数にすることが不可能だった
桁あふれ?桁おち?用語よくわかんないけど全部は出きらない感じ
あれって解決方法あったのかなぁ
302nobodyさん:2010/11/28(日) 01:29:17 ID:???
16bit分ずつ切ってintに直すだけだよなー・・・こんなのでいいのかな
http://ideone.com/pKvtM
303nobodyさん:2010/11/28(日) 02:56:22 ID:???
いいんじゃね。個人的には文字リストのテーブルを用意するのは好みじゃないが。
304275:2010/11/28(日) 04:10:26 ID:???
>>281
ありがとうございます。
関数で頻繁に呼び出しています。
メモリリークですが、どうもAviraAntiVir5が原因だったようです。
お騒がせしました。
305nobodyさん:2010/11/28(日) 04:12:42 ID:???
32bit->22bitかー
7bitぐらいにするミラクルな方法はないものか
306304:2010/11/28(日) 04:13:27 ID:???
307nobodyさん:2010/11/28(日) 04:19:36 ID:???
AUTO_INCREMENTのスタートを100000000とかにしてそれを62進数変換でよくね
308nobodyさん:2010/11/28(日) 10:37:38 ID:???
AUTO_INCREMENTだと結局連番になっちゃうんじゃない?
まぁアルファベットを含めた連番?だけど。
309nobodyさん:2010/11/28(日) 11:18:44 ID:???
数字連番にダミー文字でも追加してやれば重複しないだろうけど数字を取りに行っている時点で
ユニーク生成しているのと大差ないからな
310nobodyさん:2010/11/28(日) 14:37:02 ID:???
YouTubeが連番と聞いてURLをアルファベット一個ずつズラしていったが
3-4つくらい同じ動画になって、以降は動画が存在しないな
311nobodyさん:2010/11/28(日) 14:42:38 ID:???
youtubeは-_を加えた64進数だな
312nobodyさん:2010/11/28(日) 15:15:14 ID:???
それでも次の動画が見れないな
連番じゃ無いのではないか?
313nobodyさん:2010/11/28(日) 15:20:14 ID:???
youtubeは最後の1bitが謎いね
314nobodyさん:2010/11/28(日) 15:20:39 ID:???
最後の1bitといったらそりゃあもう
315nobodyさん:2010/11/28(日) 15:24:55 ID:???
エラー検出符号か
316nobodyさん:2010/11/28(日) 15:40:17 ID:???
でも1個ずつずらしても3-4個同じ動画が見れるのなら
エラーチェックの意味無いな。
317nobodyさん:2010/11/28(日) 15:41:23 ID:???
つ誤り訂正
318nobodyさん:2010/11/28(日) 16:06:18 ID:???
欠番は単に削除された動画では?
319nobodyさん:2010/11/28(日) 16:17:36 ID:???
最後の桁の64進数(6bit)で表現できるうち、
意味を持つ有効なデータが上位4bit分しかなくて下位2bitが余っただけでしょ
よくあること
320nobodyさん:2010/11/28(日) 17:53:00 ID:???
下位2bitは何で埋めるの?
321nobodyさん:2010/11/28(日) 18:12:56 ID:oUHpYIlN
ログイン画面の 「次回から自動的にログイン」 のチェックボックスを作りました。

初期値で選択ずみにしようと思っているのですが、
セキュリティ的にはまずいのでしょうか?

もしNGなら、なぜダメかを教えていただければ。
322nobodyさん:2010/11/28(日) 18:14:54 ID:???
>>321
別にセキュリティ的にはまずくないよ
323nobodyさん:2010/11/28(日) 18:17:54 ID:oUHpYIlN
>>322

ありがとうございます。

では、特に問題はないのですね。
結構、初期値がチェックしてないサイトをよく見てたので、
ダメなのかなと思ってました。
324nobodyさん:2010/11/28(日) 18:19:27 ID:???
そりゃユーザの意思で選択させるべきものに最初からチェックつけてるのはUI上おかしいからだな
325nobodyさん:2010/11/28(日) 18:20:25 ID:oUHpYIlN
>>324

なるほど。では、やはりチェック外しておこうかと思います。
ありがとうございました。
326nobodyさん:2010/11/28(日) 18:42:40 ID:???
>>325
便利な機能をわざわざOFFにして誰が得するんだ?
327nobodyさん:2010/11/28(日) 18:43:04 ID:???
共用PCでうっかり
328nobodyさん:2010/11/28(日) 18:44:08 ID:???
使ってもらうためにつけたんだろ!
Onにしないでどうする
共用PC使う人がチェク外せばいいだろ
329nobodyさん:2010/11/28(日) 18:46:49 ID:???
せやな
330nobodyさん:2010/11/28(日) 18:50:33 ID:???
全員が自宅のmyPCからアクセスしているとは限らない
331nobodyさん:2010/11/28(日) 18:54:50 ID:???
何当たり前のこと言ってんだ
332nobodyさん:2010/11/28(日) 18:56:28 ID:???
そこは、このスレじゃなくてサイトのポリシーで決めればいい
333nobodyさん:2010/11/28(日) 19:03:16 ID:???
今時ブラウザ終了時にクッキーやら履歴やら消す設定にしてない人なんているのか
334nobodyさん:2010/11/28(日) 19:05:01 ID:???
毎回ログイン画面が表示されるの嫌だからしてない
335nobodyさん:2010/11/28(日) 19:54:53 ID:???
似たような例でいうと、Adobe Readerのダウンロードサイトに行くと、
McAfeeのダウンロードがデフォルトでチェックされているので
うっかりしていると勝手にインストールされそうになることがあるので止めて欲しい。

「次回から自動的にログイン」も同様で、チェックしたい人が意識して
チェックさせるようにすべき。
無意識ではなく、確実に本人の意思でチェックしていることが重要だと思う。
336nobodyさん:2010/11/28(日) 19:57:52 ID:???
>McAfeeのダウンロードがデフォルトでチェックされているので
>うっかりしていると勝手にインストールされそうになることがあるので止めて欲しい。

わざわざAdobeが一緒に入れようとしてくる理由を考えろ
337nobodyさん:2010/11/28(日) 20:04:56 ID:???
>>335
サービスの何たるかをまるで理解していない奴にそういう発言をしても無駄w
338nobodyさん:2010/11/28(日) 22:01:09 ID:???
>>336
その理由を今ここで考察したって手遅れだと理解できないの?
そういう「余計なお世話」の例えだろ
339nobodyさん:2010/11/29(月) 09:32:53 ID:???
>>336
お願いします。理由を教えてください。
340nobodyさん:2010/11/29(月) 17:05:50 ID:???
>>336
ふーん。で、理由は?
341nobodyさん:2010/11/29(月) 19:47:56 ID:8Uo/Jl2+
特定の遷移中だけクラス定義のファイルをIncludeすると何もエラー吐かずに落ちるんですが、
ob_startで設定したコールバックで$php_errormsgを見ても何もありません。
こういう場合どうやってエラーの内容確認すればいいんでしょう?
342nobodyさん:2010/11/29(月) 23:36:51 ID:???
>>341
$php_errormsgはtrack_errorsが有効じゃないと何も吐かない。
なぜob_start()使うのかわからんが、使うんだったら

ob_start();
require_once 'そのクラスファイル.php'; // includeじゃなくrequire
$errmsg = ob_get_contents();
ob_end_clean();
343342:2010/11/29(月) 23:40:05 ID:???
ごめん、いろいろ足りてない。

error_reporting(0x7FFFFFFF); // エラー全部吐くようにする
ini_set('display_errors', 1);

が最初に必要。
344nobodyさん:2010/11/30(火) 02:43:25 ID:???
error_reporting(0x7FFFFFFF);
何のための定数だよ、意味が分からなくなるだろ
error_reporting(E_ALL | E_STRICT);
こう書きなよ。

こういう「結果は同じなんだから結果だけ書いとけ」みたいな感じで書かれると
定数の意味がないし、メンテナンスが面倒だから自分が書くものだけにしてほしい
345nobodyさん:2010/11/30(火) 05:59:01 ID:???
>>344
それもそうだな。とにかくエラー全部と思って
バージョン関係なくエラー全部用のコピペだったんだけど、
今回はE_ALLだけで十分だな
346nobodyさん:2010/11/30(火) 07:20:07 ID:H2kkF3xU
simplexml_load_file()でブログのデータを取得してるんですけど、
サーバーメンテの際はなにも取得できません
代入したデータが空であれば、取得できませんでした、と表示させてるんですけど、
メンテで取得できない場合、simplexml_load_file()自体が
failed to open stream: HTTP request failed!
ってなってしまいます
どうすればいいでしょうか?
347nobodyさん:2010/11/30(火) 07:28:24 ID:2WrqxWb3
数値について質問です。
ユーザーから受け取った数値の、百の位以下を0にしたい。

56102

56000

こんな場合どうしたらいいですか?
348nobodyさん:2010/11/30(火) 07:33:26 ID:???
>>347
http://www.php.net/manual/ja/function.round.php
>>346
is_file, is_readable, file_exists等
349nobodyさん:2010/11/30(火) 07:33:40 ID:???
下三桁を0に置き換えればいい
350nobodyさん:2010/11/30(火) 07:41:53 ID:???
>>347初心者の俺が答えてみる。

まず、文字列に変換して、
終わりから3つを0に置換して
(必要なら)再度、数値に変換する。
http://www.sasaraan.net/program/php/tips.php?id=settype(型の変換)
http://www.php-ref.com/bapi/02_substr_replace.html(置換)

もしくは、1000で割って、その余りを元の数から引けばいいんじゃないか?
351350:2010/11/30(火) 07:44:00 ID:???
>>348
まんまの関数があるのね。勉強になりました。
352nobodyさん:2010/11/30(火) 08:15:31 ID:???
>>343
やってみます。ありがとう。
353nobodyさん:2010/11/30(火) 08:25:56 ID:2WrqxWb3
>>388
>>389
>>390
ありがとうございます!
やってみます。
354nobodyさん:2010/11/30(火) 08:42:31 ID:rNn1SdBy
mb_get_info('illegal_chars')
で変換に失敗したかどうか判りますが、変換に失敗した部分を抜き出す良い方法はないでしょうか?
355nobodyさん:2010/11/30(火) 08:52:40 ID:???
mb_substitute_character("long") とか?
356nobodyさん:2010/11/30(火) 12:43:26 ID:???
ありがとうございます。
それでも「?」に変換される文字があったりしてちょっと区別しにくいですが、
もうちょっと試行錯誤してみます。
357nobodyさん:2010/11/30(火) 13:01:55 ID:???
一つの複雑なクエリーでMySQLからデータとってくるのと、シンプルなクエリーでそれぞれデータとってきてPHP側で処理させるのと、どっちが早い?
詳細の状況によると思うが、一般的にはどうかな?
358nobodyさん:2010/11/30(火) 13:54:22 ID:???
>>357
一般的な話で言えばクエリーで出来る事はクエリーでやる方が圧倒的に早い
359nobodyさん:2010/11/30(火) 14:54:43 ID:???
キャッシュもあるしな
360nobodyさん:2010/11/30(火) 15:57:26 ID:vry2lrbm
361nobodyさん:2010/11/30(火) 17:51:46 ID:???
<?php
$kuji = array("凶","小吉","小吉","中吉","中吉","中吉","吉","吉","大吉");
$result = array();
for ($i = 0; $i < 10; $i++) {
$result[] = array_rand($kuji);
}
?>
<table>
<?php
foreach ($result as $key => $value) {
$key++;
echo "<tr><td>{$key}回目</td><td>{$kuji[$value]}</td></tr>";
}
?>
</table>
362nobodyさん:2010/11/30(火) 19:40:35 ID:???
>>358
一発で欲しい形でデータを取るための複雑なクエリーで最適化できてないのもあるけど、結果取得に20秒位かかってるんだけど、クエリーはシンプルにして結果取得を短い時間でできるものにして、クエリーを複数回実行して結果を処理でなんとかしたらどうかなと思ったんだよね。
363nobodyさん:2010/11/30(火) 19:57:22 ID:???
それは適切なindexが設定できていないもしくは
クエリーがきちっと最適化できてないだけじゃないの?

まぁこれ以上はシステム構成やデータ件数等も関連してくるし
スレチにもなるから若干過疎ってるがmysqlのスレ行くほうが良いよ
364nobodyさん:2010/11/30(火) 21:56:19 ID:???
>>347
百で割ってから百倍すりゃいいじゃん。
365nobodyさん:2010/11/30(火) 22:28:10 ID:???
PHPの場合だと
56102
↓/100
56.102
↓*100
56102
こうならないっけ?
366nobodyさん:2010/12/01(水) 01:29:45 ID:???
じゃあ割ったあとに整数にすればいいじゃん
367nobodyさん:2010/12/01(水) 01:39:59 ID:???
368nobodyさん:2010/12/01(水) 01:40:06 ID:???
数値が5桁とは限らない
ていうか最初に答え出てるのに引っ張るなよw

if (strlen($num) <= 3)
return $num;
} else {
return round($num, -3);
}
369nobodyさん:2010/12/01(水) 10:44:50 ID:KEK0dLq1
PdoのトランザクションってPrepareで実行した奴には適応されないんですかね?
370nobodyさん:2010/12/01(水) 10:59:50 ID:???
んなこたぁない
371nobodyさん:2010/12/01(水) 11:16:50 ID:B1SR7o7P
preg_replaceだと、マルチバイトに対応していないということで
(uオプションを使えばUTF-8なら使える…らしい)
mb_ereg_replaceを使えって色々なところに書いてあるんですが
色々試してみたんですが、preg_replaceでも普通にマルチバイトで
置換ができてしまいます。
UTF-8/EUC-JP/SJIS全て試し、漢字・半角カタカナなどもやりましたが
正常に処理されました。
PHPの環境によるんでしょうか?Windows+XAMPPのPHPです。
372nobodyさん:2010/12/01(水) 12:01:46 ID:???
正常に処理されない文字があるので、その文字でテストすれば失敗します。
373nobodyさん:2010/12/01(水) 12:54:07 ID:???
↓その文字とは!
374nobodyさん:2010/12/01(水) 12:57:12 ID:???
まぁ、気にするな!
375nobodyさん:2010/12/01(水) 13:18:36 ID:???
mb_language
mb_internal_encoding
mb_regex_encoding
あたりがきちんと設定されていれば、pregでいいんじゃないの?
不具合起きたことないんだけど。
というか、ereg系はすでに非推奨になってるので、こっち使うほうが問題あると思う。
376nobodyさん:2010/12/01(水) 14:52:40 ID:???
その設定ってpreg系に反映されるの?
377nobodyさん:2010/12/01(水) 15:10:40 ID:???
ereg系が5.3.0で非推奨になったのはマニュアルで確認できましたが
mb_ereg系はとくに記載がありませんでした。うーん。
378nobodyさん:2010/12/01(水) 15:11:39 ID:???
mb_languageの設定ってmb_send_mailでしか使われないよね?
mb_internal_encodingの設定ってmb系の関数で元の文字コードを指定しなかったときのデフォルトなだけだよね?
379nobodyさん:2010/12/01(水) 15:12:23 ID:???
されないし。

mb系じゃなきゃ、文字のエンコードなんかしったことじゃないから
SJISなら、漢字のつもりでもxx5Cって文字の後ろを\としてしまうとか、 ある漢字の中に 5Bがあって [ と勘違いするとか、
EUCの( [a1ca] が 押分[b2a1caac]って文字列内に見つかるとか。
380nobodyさん:2010/12/01(水) 15:43:06 ID:???
美乳入口髷油
381nobodyさん:2010/12/01(水) 15:55:54 ID:???
eregが非推奨なのはバイナリセーフじゃないからだよね
mb_eregはバイナリセーフだから使ってよし
mb_languageって何にでも効くおまじないじゃないよ、そんなソースみたら笑っちゃうかも
382nobodyさん:2010/12/01(水) 16:10:48 ID:???
文字コード周りは分かってないヤツがウソ解説サイト作りまくってるから、
間違って覚えてる人とか勘違いしてる人は少しくらいいるかもね。
383nobodyさん:2010/12/01(水) 16:36:11 ID:???
テストしたところ、preg_replaceできちんと
文字化けすることを確認しました。
ありがとうございます。
384nobodyさん:2010/12/01(水) 16:51:58 ID:???
ホームページの一部分に会員からの投稿がリアルタイムで更新されるようなものを作りたいと思っています。
Twitterのような感じのものです。他にはニコニコ生放送のタグや商品広告みたいな感じです。
ページをリロードしていないのに、内容が更新されていきます。

あれはどうやっているのでしょうか。
更新内容はDBに保存するとして、リロードしてないのにページの一部を更新する方法がわかりません。
385nobodyさん:2010/12/01(水) 16:59:02 ID:???
あれはクライアントサイドでやるしかないな
386nobodyさん:2010/12/01(水) 16:59:42 ID:???
>>384
JavaScipt
しかもリアルタイムなわけではない
387nobodyさん:2010/12/01(水) 17:21:59 ID:???
WebSocket
388nobodyさん:2010/12/01(水) 17:27:42 ID:???
>>383
どう書いたかぐらい書けよハゲ
389nobodyさん:2010/12/01(水) 17:35:58 ID:???
>>388
あなたみたいな失礼な人に教える筋合いはありません。
390nobodyさん:2010/12/01(水) 17:49:40 ID:???
なにが教えるだよ
おまえが書いて間違ってるかどうかチェックしてもらう側だろうがよ
391nobodyさん:2010/12/01(水) 18:01:55 ID:???
>>384
一般人のインフラで多用するようなもんじゃないよ
リアルタイムにこだわるとリクエスト数が激しいから
すぐ管理者に目をつけられる
392nobodyさん:2010/12/01(水) 18:02:04 ID:???
とまあ、ここまで俺の自演
393383:2010/12/01(水) 18:17:26 ID:???
>>388
EUCで「押分」の文字列で「( 」置換などです。
394nobodyさん:2010/12/01(水) 19:47:55 ID:???
>>390
そのような筋は聞いたことがありません。
このスレのルールを承知しているのですか?
>>1をよく読みなおして私に質問があるならIDを出してからにしてください。
395nobodyさん:2010/12/01(水) 19:50:48 ID:???
はいはいそこまでね
396nobodyさん:2010/12/01(水) 20:00:22 ID:???
>>394
おかしいのは放置お願いします。
397nobodyさん:2010/12/01(水) 23:40:58 ID:u6fu+xrh
PHPのFatal ErrorやParse Errorのレスポンスコードが
200番を返すようになっています。これって正しくは500番のレスポンスコードを
返すのが正しい動作だと思い変更したいと思っています。
ただphp.iniの設定項目等で変えられないかと見てみたのですがそのような項目がちょっと
見つけられませんでした。

PHPのバージョンは5.1くらいだったと思います。
もし、何かご存知の方がいましたら教えてもらえると助かります。
398nobodyさん:2010/12/01(水) 23:59:00 ID:???
エラーの種類とエラー箇所を指し示すhtmlドキュメントを作成しておくるので
動作的には200であってるんだが
399nobodyさん:2010/12/02(木) 00:06:04 ID:???
5xx Server Error サーバエラー
サーバがリクエストの処理に失敗した。
400nobodyさん:2010/12/02(木) 00:14:22 ID:???
まぁどうしても500が返したいというなら自分でエラー定義して
headerで送出するのがいいんじゃないだろうか

http://www.php.net/manual/ja/function.trigger-error.php
http://www.php.net/manual/ja/function.set-error-handler.php
http://www.php.net/manual/ja/function.header.php
401nobodyさん:2010/12/02(木) 00:21:12 ID:???
シンプルにこんな感じでいいんじゃね

<?php
echo $a;
if (error_get_last()) {
header("Status: 500 Internal Server Error");
die();
}

あとはエラードキュメント用意する
402401:2010/12/02(木) 00:26:59 ID:???
ごめんなんかいろいろおかしかった
スルーして
403nobodyさん:2010/12/02(木) 00:37:13 ID:???
たしかにFatal Errorとかは500が妥当だとは思う。
例えばPHPからJavascriptを吐き出す時、エラーのページが200で返って来ると
ブラウザがエラーメッセージをjsファイルだと思い込んで実行して
Unexpected token '<'とかなんとか。
#500やら40xなら普通は実行されない。

ただそれは開発中の話であってHTTPステータス細工する暇あったらFatalError無くすし、
運用後に発生するかも知れない未知のエラーをログに残したいならphpのエラーログがあるし
そこまで必要性は感じなかったね
404nobodyさん:2010/12/02(木) 00:53:52 ID:i7zddhjb
思ったより皆さんが反応していただけて嬉しいです。

一日中調べていてこの事に触れている記事などが余りなくて
私が気にし過ぎなだけで、PHP的には正しい動作なのかなとも考えていました。

本来、エラー系は開発時に潰しておかないといけないのはその通りなのですが
開発時に私がいなかったもので一通りログから調べ直してみたいと思った次第です。

エラーログも切り分ければ良いのですが、エラーログの出力先がApaheと共通に
なっているので単純にResponseコードで判断できないかなと考えていました。
その設定を変えろよ、言われればおっしゃる通りですが、、、

なんとなく200番返しちゃうとエラーページも検索エンジンがインデックスしちゃうよなー
とかも考えたりするので何か解決策が無いかなとか考えています。
書いていただけた事を読み直して対応を考えたいと思います。ありがとうございます。
405nobodyさん:2010/12/02(木) 00:57:01 ID:???
未知のエラーに遭遇って鯖管が鯖をいじっくった以外になんかあるのだろうか
日付つけてなんかするシステムだとバグで時限式爆弾みたいなことはあるかもしれないが
なんかどこまでシステムを信頼していいのか不安になってきた
406nobodyさん:2010/12/02(木) 01:11:44 ID:i7zddhjb
>405
PHPのバージョンアップに伴って確認し切れない所でエラーが発生したり
とかは十分あり得るかなー、と。。。思います。
これは分かりやすい部分の例ですが。

それも本来、ちゃんと確認しろよって部分ですが諸般のIT事情により見れない時がありますので、、、
407nobodyさん:2010/12/02(木) 01:39:12 ID:???
>>404
>一通りログから調べ直してみたい
そういう用途なら尚更PHPのエラーログを出す設定にした方がいいね
noticeもwarningも取れるし

>>405
単に負荷が高くなって開発時には想定してなかった場所でタイムアウトの類のエラーが出てきたとか
DBのコネクション数オーバーとか
データ保存領域のパーティションが一杯になったとか
DB作り直した時InnoDBのつもりがMyISAMでトランザクション効いてなかったりとか
md5がコンフリクトしたとかw
まあ「未知のバグ」と読み替えてもいいし
408346:2010/12/02(木) 06:07:59 ID:2FQwk5Ve
>>348
> is_file, is_readable, file_exists等
いろいろ試したところ、同じサーバーにあるファイルだとそれでTRUEが確認できましたが、
外部サイトだとあってもなくてもFALSEを返してきます
外部のRSSのアクセス可能不可能の確認に使うにはなにかやり方があるのでしょうか?
教えていただけるとさいわいです
よろしくお願いします
409nobodyさん:2010/12/02(木) 06:14:41 ID:???
いろいろあるけど
get_headersとかでいいんじゃね
410nobodyさん:2010/12/02(木) 06:17:51 ID:2FQwk5Ve
>>409
ありがとうございます
if (!preg_match('/Not Found/',$rssurl)){
で読みたいRSSの有無判定できるようになりました
感謝です
411nobodyさん:2010/12/02(木) 06:18:48 ID:???
あ、貼るとこ間違ってました
そのrssurlのとこにget_headersのデータはいってます
412nobodyさん:2010/12/02(木) 06:20:42 ID:???
404じゃなかったらではなく
200だったらのほうがいいと思う
それだと503とかも通っちゃうしね
413nobodyさん:2010/12/02(木) 06:29:44 ID:2FQwk5Ve
>>412
$head = get_headers($rss,1);
if (preg_match('/200|302/',$head[0])){

ありがとうございます
読みに行ったブログのrssは302を返してきたので、302も通るようにしました
レスポンスコードむずかしいです
414nobodyさん:2010/12/02(木) 11:11:26 ID:xyBKojGi
PODでINSERTした直後にAUTO_INCREMENTされた値を取得する方法教えてください。
使ったこと無いけどmysql_insert_id()みたいなものを。
415nobodyさん:2010/12/02(木) 11:14:30 ID:???
lastInsertId ?
416nobodyさん:2010/12/02(木) 11:27:54 ID:???
ポッド
417nobodyさん:2010/12/02(木) 12:51:52 ID:xyBKojGi
>>415
できました。ありがとうございます。

DとO紛らわしいと思う。
418nobodyさん:2010/12/02(木) 16:53:09 ID:???
相談させてください。

携帯サイト用画像リサイズスクリプトImageresize4keitai
http://www.web2-labo.com/_imageresize4keitai090421.html
というものがあります。
画像のサイズを指定した小さいサイズでリサイズしてくれるとのことなのですが・・・

前のHPを作った前任者さんが使っていたのですが、使うメリットが分かりません。
<img="" width="70">でも同じではないのでしょうか?

教えていただけると助かります。
419nobodyさん:2010/12/02(木) 16:58:28 ID:???
>>418
携帯のハードが耐えられるメモリ量ならimg-widthでも構わない。
強いてあげるなら携帯への転送量が減る分だけ表示が速くなるとかそんな感じかな。
420nobodyさん:2010/12/02(木) 16:59:34 ID:???
>>418
読み込み時間・パケットの節約、縮小クオリティのコントロール
421418:2010/12/02(木) 17:17:51 ID:???
419様・420様 レスありがとうございます。
フォトショップなどで画像を最初から小さいサイズにしておけば、Imageresize4keitai のメリットはなくなりますか?
422nobodyさん:2010/12/02(木) 17:20:30 ID:???
UAでサイズ振り分けるんじゃねーの
423nobodyさん:2010/12/02(木) 17:29:31 ID:???
指定したらその幅になる
指定しなかったら携帯の横幅に合わせられる

昔ほぼ同じ物作ったわ
これキャッシュディレクトリあるけど、毎回生成し直すんじゃね?
424nobodyさん:2010/12/02(木) 17:33:26 ID:???
>フォトショップなどで画像を最初から小さいサイズにしておけば、
そうだが思考がデザイナーだな
425nobodyさん:2010/12/02(木) 17:37:37 ID:???
>>421
小さいサイズ作るのが面倒だからそのプログラムを作ったんだと思うよ
426nobodyさん:2010/12/02(木) 20:41:55 ID:gvFjnnhT
【OS名】RH6
【PHPのバージョン】5.3
【連携ソフトウェア】MySQL Samba
【質問内容】
sample.php
exec($command, $out, $return);
で別ファイル(mail.php)のsendmailを実行してます。
mail($to,$subject,$body);
という簡単なものです。
戻り値によってexec実行後の挙動を変えているのですが、sendmailからgmailのsmtpを使うことになり
pearのmailのモジュールを直接起動するように変更しました。
モジュールを直接起動するだけなので$outに何も残らずexec後の挙動が自動化できなくなりました。
$outに戻り値を返すにはどのようにしたらよいでしょうか?
427nobodyさん:2010/12/02(木) 23:51:02 ID:???
pearのmailのモジュールから結果を返すようにすればいいんじゃね?
428426:2010/12/03(金) 09:25:48 ID:d50vwSIO
>>427
いまは
require_once("Mail.php");
$param = array(SMTPの設定);
$header = array(toとかsubject設定);
$smtp = Mail::factory( 'smtp', $param );
$smtp->send( $mailto, $header, $body );
という風にして送信してます。
これらにさらにオプションみたいなものがあるんでしょうか。
429nobodyさん:2010/12/03(金) 10:29:21 ID:Q3Oa/UUX
PDOでSQLを使用しています。
SQLiteの型がINTEGERであっても、fetchで返ってくる値の型はstringでした。
MySQLのBOOLEAN型などであっても、fetchは常にString型で返してくるのでしょうか?
よろしくお願いします。
430nobodyさん:2010/12/03(金) 15:30:10 ID:???
 情報処理推進機構セキュリティセンター(IPA/ISEC)とJPCERT コーディネーションセンター(JPCERT/CC)は12月1日、
サーバサイドスクリプト言語「PHP」にサービス拒否(DoS)攻撃を受ける脆弱性が確認されたと「Japan Vulnerability Notes(JVN)」で発表した。
 5.3.3 revision 305571以前のバージョンのgetSymbol関数には、整数オーバーフローの脆弱性が存在する。悪用されると、
遠隔の第三者からのDoS攻撃を受ける可能性がある。JVNでは、ベンダーが提供する情報をもとに最新版へアップデートするよう呼びかけている。
431nobodyさん:2010/12/03(金) 15:34:18 ID:???
getSymbol関数とか使った事も聞いた事もないけど、
Windowsカーネルに権限昇格バグがあるのだけは知っている
432nobodyさん:2010/12/03(金) 18:47:43 ID:apCQGjmG
クラスについて質問します。
外部ファイルをrequireやincludeするとき、コンストラクタの中で呼び出すのと
クラス宣言の外(冒頭)で呼び出すのはどう違うんでしょうか?
433nobodyさん:2010/12/03(金) 18:57:01 ID:jI96G3Kc
ウェブプログラムから外部プログラムを呼びたいのですが
その呼びたいプログラムはファイルに結果を出力する形になっています

/tmp/out.data
を一時出力ファイルにしようとしましたが
同時に副数人がアクセスすると/tmp/out.dataが前の人の結果を上書きしてしまいます

ファイル名をuuidなどで生成させて絶対重ならないようにするのが普通のやりかたなのでしょうか?
何かLinuxのパイプ関係でプロセスごとに一時ファイルを自動で分けるようなやり方はないのでしょうか

434nobodyさん:2010/12/03(金) 19:17:07 ID:???
>>432
プログラムの流れの順番が違う
冒頭で呼び出すと最初に全ファイルの関数かぶりやら
ファイルの依存関係がチェックされるのに対して
コンストラクタ中で宣言するとインスタンス生成時にチェックされる
そのため関数かぶりやらで止まる可能性は少なからずあるし
ファイルの依存関係もそれまでチェックされない

>>433
tempnamを使ってみてはどう?
ttp://jp2.php.net/manual/ja/function.tempnam.php
435nobodyさん:2010/12/04(土) 01:18:43 ID:???
ここでいいのかわかりませんが…
htmlのフォームの属性で携帯のキャリアによっては
name属性かid属性か使い分けなくてはならなかったような気がしたのですが
どうでしたっけ…
436nobodyさん:2010/12/04(土) 01:19:24 ID:IEmBp40c
IDを出すのを忘れました
437nobodyさん:2010/12/04(土) 02:39:53 ID:???
438nobodyさん:2010/12/04(土) 07:40:58 ID:???
ネット上の書き込みなどで、
本人の身元を完全に特定できるようになりたいのですが、
そういう場合、どのようなところに就職すれば良いのでしょうか?

プロバイダーですか?
それとも、警察庁のサイバー犯罪対策なんちゃらとかいうところですか?
それとも、また別の機関?なのでしょうか?

やはり、警察系の組織が一番良いのですかね?
それとも、プロバイダーなんですかね?

個人的には、この2つのどちらかだと思っているのですが、
実際はどうなんでしょうか?

誰か教えてください。お願いします。
439nobodyさん:2010/12/04(土) 07:49:53 ID:???
中国共産党もしくはアメリカ諜報部
440nobodyさん:2010/12/04(土) 08:43:24 ID:???
真面目に教えろ。
441nobodyさん:2010/12/04(土) 08:45:19 ID:???
真面目に質問しろ。
442nobodyさん:2010/12/04(土) 09:28:29 ID:???
>>438
就職先は関係ありません。どこに就職しても無理です。他人のサイトでは無理です。
自分のサイトであれば、住所送ってもらって書面でログインパスワードなどを送るようにすれば
出来ますが、貴方が知りたいのは たとえば私が誰であるかというようなことでしょう?
どこかでは全部分かっているのだと思うのでしたら、ネットをやめるのおすすめです。
また、質問が板違いかと思われます。
443nobodyさん:2010/12/04(土) 13:13:40 ID:???
ゆとりチンピラか
444nobodyさん:2010/12/04(土) 13:17:04 ID:???
マルチの相手をすんな!
445nobodyさん:2010/12/04(土) 13:31:54 ID:???
そのうち不正アクセスで逮捕されるんだからそっと見守ってやれ
446nobodyさん:2010/12/04(土) 13:44:36 ID:???
不正アクセスすら出来んだろ
447nobodyさん:2010/12/04(土) 15:01:15 ID:???
>>442
お前、質問の意味分かってないな・・・。
話にならんわ。さっさと死ねカス。

>>446
死ねよゴミクズ。
448438:2010/12/04(土) 15:04:18 ID:???
>>447
他人のふりをして書きこまないでください!
449438:2010/12/04(土) 15:13:28 ID:???
すいません私の書き込みで荒れてしまったみたいです
私のためにケンカするのはやめて
おちんちんびろーん
450438:2010/12/04(土) 15:17:23 ID:???
私は低能スイーツでーす♪
もうすぐ死にますから許してくださーい♪
451438:2010/12/04(土) 15:23:40 ID:???
しにまっへぇーん
452438:2010/12/04(土) 15:24:29 ID:???
しにまーっす
453nobodyさん:2010/12/04(土) 23:05:39 ID:???
休みの間は2chを閉鎖するべき
454nobodyさん:2010/12/04(土) 23:13:33 ID:???
>>453 何の休み?
455nobodyさん:2010/12/05(日) 01:22:21 ID:Nvi5Q3Wb
【OS名】Redhat
【PHPのバージョン】5.3
【連携ソフトウェア】Oracle
【質問内容】

ファイルダウンロード(大きいサイズ)でタイムアウトしてしまう対策ついて質問させて下さい。

set_time_limit(0);
でサーバー側のタイムアウトを長くする事は出来たのですが。
ブラウザ側のタイムアウトでプログラムの処理が切断されてしまいます。

echo str_pad('',256);
flush();
を使用しブラウザ側に定期的にパケットを送信する方法も試したのですが。
そうするとダウンロード処理のヘッダー
header('Content-Length: ' . filesize($filename));
header('Content-Disposition: attachment; filename='.basename($filename));
の前に空白文字が出力されてしまう為かダウンロードファイルの内容がブラウザに表示されてしまい。
ブラウザのダウンロードダイアログが出ません

ヘッダー前の空白文字を消す方法か
その他にブラウザ側に定期的にパケットを送信する方法ありましたら教えて頂けないでしょうか?


よろしくお願いいたします。
456nobodyさん:2010/12/05(日) 01:23:59 ID:???
ブラウザ側のタイムアウトって何?
457nobodyさん:2010/12/05(日) 01:25:33 ID:D3Xz+Jzo
>>438
真面目に答えると、エシュロンに就職するのが間違いないでしょう。
このスレの住人のようなレベルの低い人達に質問しても無理です。
458nobodyさん:2010/12/05(日) 01:27:12 ID:???
>>457
せめてNSAと言えよ…
459nobodyさん:2010/12/05(日) 01:28:32 ID:???
>>455
ファイルダウンロードでタイムアウトはしないだろ
460nobodyさん:2010/12/05(日) 01:32:45 ID:???
大きなイメージをブラウザに表示させるとかそういう用途?
単純なzipとかのファイルのダウンロードならダウンロードダイアログが出て
あとはブラウザが勝手にダウンロード終了までコネクトし続けるでしょ?
いまいちどういう状況なのかよくわからない
461nobodyさん:2010/12/05(日) 01:33:49 ID:???
あぁ、デカい静的ファイルのダウンロードじゃなくて、
動的に大きいサイズのファイルを作るわけね。
で、ダウンロードが始まる前にタイムアウトするわけか。よくあるね。
ファイルの準備が完了するまでプログレスバーを出すか、
準備が完了してからダウンロードボタンを表示させるなど。
462nobodyさん:2010/12/05(日) 01:38:28 ID:???
ちなみにダウンロードボタンを押してからはブラウザはそのリクエストの
受信待ちになるから、パケットを送りつけたらダウンロードファイルの
一部(先頭)になってしまうよ。
463nobodyさん:2010/12/05(日) 01:40:10 ID:???
俺ならダウンロード画面で準備中ってだして
ajaxで10秒置きにリクエストおくってサーバ側は準備できたらURLと準備OKのフラグを送出して
それができたら準備中って表示してるところをDOMでダウンロードリンクに書き換えするな
464nobodyさん:2010/12/05(日) 01:41:31 ID:???
時間がかかるリクエストはそういう方法がいいね
465455:2010/12/05(日) 01:43:18 ID:Nvi5Q3Wb
皆さん説明が不十分で申し訳ないです。
>>461さんが言っている通りです

>>462
ダウンロードボタン常に出た状態で、押してからタイムアウトしない様にしたいのですが。
難しそうでしょうか・・・
466455:2010/12/05(日) 01:46:18 ID:Nvi5Q3Wb
>>463-464
ajaxは今の画面からして無理そうな気がします。。。
467nobodyさん:2010/12/05(日) 01:46:46 ID:???
>>465
もし準備に1時間かかったら1時間タイムアウトしないの?
確かIEはタイムアウト短めなんだよな。
Javascriptのプログレスバーで少し時間稼ぎできた記憶もあるけど。

header()を定期的に(同じ内容を)何度も送ってみるのはどう?
試したことないけど。
468被リンクサービスの決定版:2010/12/05(日) 02:58:32 ID:07kW5KS8
被リンクサービスはこれらの業者を掛け持ちするのがベスト!
http://hibari.2ch.net/test/read.cgi/hp/1291304974/43
469nobodyさん:2010/12/05(日) 09:26:40 ID:???
>>457
日本国内でお願いします。
470nobodyさん:2010/12/05(日) 10:19:28 ID:8LoFcf3S
日記のアプリがあって、ユーザーが学生と教師にわかれてます
とりあえず学生向けのクラスを作ってその中で日記の機能を実現して、
教師向けクラスは学生向けクラスを継承することにしました
この時、DBテーブルの学生向け・教師向けの指定はどう切り替えたら良いんでしょうか?

ログイン時にユーザータイプをセッション化してifで切り替えるのでないやりかたありますか?

教師向けクラスのなかでどうにかして指定テーブルを上書きしたいんですがどうしたら良いですか?
471nobodyさん:2010/12/05(日) 10:23:54 ID:???
任意の繋いでる先を特定しようものならまずはネットワークのルートを押さえて
枝分かれする分岐点での認証を全て突破していかないといけない
そういうレベルの話

最小のグループの中に属する接続先のみを特定する場合
最深部(接続先)の1歩手前(ようはプロバイダ)を掌握できれば可能

重要なのはプロバイダからの情報で接続先や契約者は特定できても
実際に接続している個人までの特定は不可能ということだ

ちなみに警察が逮捕できるのはプロバイダから情報を提供してもらってるから
提供された情報からわかるのは接続先と契約者でしかないので
個人まで特定するには最終的には自白か何か証拠がないといけない
プロバイダは契約者との間に守秘義務があるので警察の令状がない限り情報は提供できない

プロバイダに入社すればそこと契約してる人の情報を入手できる可能性がある
(ただし情報へのアクセスは権限がある人のみで権限があっても理由なきアクセスは不可能)
警察に入っても捜査の範囲内でしか知りうることができないしそもそも配属されるとは限らない

プロバイダのデータベースに不正アクセスできれば何か情報があるかもしれない程度
普通重要情報はネットワークから切り離すし
不正アクセスは犯罪行為であってリスクが高い

ようは諦めろ
中国共産党は国内のネットワークを全て支柱におさめてるので(共産党がプロバイダなようなもん)
国民の監視ができるだけで国から切り離せば個人を知ることはできない
CIAとかFBIとか海外の組織ならできそうなイメージはあるんだろうけど
ああいう機関もどこかしら情報提供がないと何もできない
472nobodyさん:2010/12/05(日) 10:28:32 ID:???
>>470
それはDBの設計の話では?
教師が書いた日記か学生が書いた日記かがわかるテーブルを用意すればいい
記事ID ユーザ
100000 学生A
100001 教師A
473nobodyさん:2010/12/05(日) 11:09:08 ID:???
>教師向けクラスは学生向けクラスを継承することにしました
なんかこの時点ですごい設計になってる気がする
474nobodyさん:2010/12/05(日) 11:18:47 ID:???
絶対におかしいよ
475デリカット:2010/12/05(日) 11:39:10 ID:???
ケント違いよ
476nobodyさん:2010/12/05(日) 14:03:39 ID:???
Yes! I am KENT! yeah okkkkk soo goood
477nobodyさん:2010/12/05(日) 19:56:57 ID:???
>>470
教師クラスが学生クラスを継承するのはまあいいと思うけど、
テーブルが別になってるのが怪しいのでDB設計は見直した方が良いと思う

それはまあ置いておいて、if以外で実現するとなると、
学生クラスと教師クラスでgetDiaryTable()の戻り値を変えるとか
478nobodyさん:2010/12/05(日) 19:58:06 ID:???
>>477
>教師クラスが学生クラスを継承するのはまあいいと思うけど、
なんでいいの?
479nobodyさん:2010/12/05(日) 20:08:42 ID:???
> 教師「向け」クラスは学生「向け」クラスを継承することにしました
と書いてあるだけで「教師 is-a 学生」という設計になってるとは書いてないから。
そして単にアクセス権の領域を継承しているのだろうと簡単に想像できるから。
さらに本題と無関係だから。
480nobodyさん:2010/12/05(日) 20:18:25 ID:???
>>479
http://ja.wikipedia.org/wiki/%E7%B6%99%E6%89%BF
>一般的に、BがAを継承する場合、B is a A. (BはAの一種である)という意味的な関係(Is-a関係)が成り立つ。
>従って、同じふるまいを持つからと言って、意味的に無関係なクラス間に継承関係を持たせるのは適切でない場合が多い。
481nobodyさん:2010/12/05(日) 20:29:37 ID:???
人クラス?を学生クラスでつくっちゃったんだろw
482nobodyさん:2010/12/05(日) 20:36:34 ID:???
先生が先生の授業をうけるというのは変だしなー
まぁ本題に関係ないのは関係ないが・・・
483nobodyさん:2010/12/05(日) 20:38:12 ID:???
>>470はあくまで「向け」って書いてあるだけで、
class Teacher extends Studentとは言い切ってないだろ。
class SuperUser extends Userかもしれんだろ。
484nobodyさん:2010/12/05(日) 20:40:12 ID:???
じゃ基底クラスに学生向けの処理を書くのがおかしい
485nobodyさん:2010/12/05(日) 20:52:05 ID:Z6YIuGAA
くだらない質問ですがよろしくお願いします。

前提として現在動作しているWebアプリケーションに機能を追加して欲しい ということがあります。


ですが、現在動作しているWebアプリはJavaで組まれているのですが、設計書もマニュアルもなく、
当方Javaを深く勉強したことがないために、ソースを読み解けません。

要望としては機能さえ同じであれば、どんな言語でも問題ないということで、
PHPで構築し直そうと考えています。


そこで、Javaで組まれたWebアプリに機能を追加したいがために、
PHPで新しく構築し直すことの”もっともらしい理由”って何かありますか?

マジレスよろしくお願いします。
486nobodyさん:2010/12/05(日) 20:54:54 ID:???
>>485
簡単だから、でいいんじゃない?
もしくは別に正直に自分がPHPしかできないからって言ってもいいし。(物は言い様だから上手く言い換えてね)
487nobodyさん:2010/12/05(日) 20:55:32 ID:???
安く出来ますとか言えばいいんちゃうの?
488485:2010/12/05(日) 21:05:19 ID:Z6YIuGAA
パッと思いつくのは
Javaと比較して
PHPは
・開発が一般的に早いと言われている
・HTMLにタグを直接埋め込めるためにソースを理解しやすい。結果、保守が容易である(本当?)
・一般的にデータベースとの接続性が良いと言われている(開発しやすいと同義?)
・PHPはWebサーバから実行するときは、新しいプロセスを生成せずにスレッドとして実行されます。
 そのため、Javaのシステムよりもメモリに負荷がかからず、軽い。(本当?)

でもこれだけでは、構築し直すメリットがあまりないでよね。
もっともらしい理由が欲しいです
489nobodyさん:2010/12/05(日) 21:06:28 ID:???
じゃ実際にメリットないんだよ
490nobodyさん:2010/12/05(日) 21:55:08 ID:???
スレチですいません素数ってなんですか?
491被リンクサービスの決定版:2010/12/05(日) 21:56:44 ID:07kW5KS8
被リンクサービスはこれらの業者を掛け持ちするのがベスト!
http://hibari.2ch.net/test/read.cgi/hp/1291304974/43
492nobodyさん:2010/12/05(日) 21:56:52 ID:???
1とその数以外で割れない数
2,3,5,7,11,13,17…って感じ
493nobodyさん:2010/12/05(日) 21:59:48 ID:???
>>490
ググれば?
つーか素数を知らないってマジで小学生か?
494nobodyさん:2010/12/05(日) 22:02:45 ID:???
>>488
はっきりJava知らないから、って言えばいいじゃねぇか。
そうやって屁理屈こねてボロ出すより正直に言ったほうが話が早いと思う。
でも求められてる追加機能が大したことなかったら再構築とか認められないよね。
495nobodyさん:2010/12/05(日) 22:06:37 ID:???
Javaは最新の技術を追える
これは結構大事な事
とはいえJavaOnlyには今はしないけどね
部分部分でJavaはよく使う
496nobodyさん:2010/12/06(月) 00:47:42 ID:???
Sunが買収されてからJavaはボロボロじゃないか
コミュニティーもJOJOに衰退していってる
逆にC#は活発になってる
497nobodyさん:2010/12/06(月) 02:05:20 ID:yucJCxgO
phpってC言語に似てるねって工学部の友人に言われたのですが
そんなに似てるんですか?
自分C言語とかやらずにHTML→phpなので良く解らないのですが

もしかしてC言語やっておいたほうがいいのでしょうか
498nobodyさん:2010/12/06(月) 02:09:31 ID:???
その友人はアホ
499nobodyさん:2010/12/06(月) 02:19:04 ID:???
まぁCOBOLとかFORTRANに比べれば似てると思うよ。
C言語にBASICのテイストを加えた感じじゃない?
500nobodyさん:2010/12/06(月) 02:32:49 ID:???
Cやperlとかから良い部分等パクってC,C++で作ってるから似てて当たり前
だからといってCをやる必要性は少ない
その程度の知識しかないならもっとPHPをやった方が良い(PHPをしたいなら)
501nobodyさん:2010/12/06(月) 02:35:55 ID:yucJCxgO
なるほど!
ありがとうございます!
502nobodyさん:2010/12/06(月) 04:30:41 ID:+HasdjW9
【OS名】MacOS X 10.6
【PHPのバージョン】5.2.5
【連携ソフトウェア】MAMP (MySQL 5.0.41)
【質問内容】

データベースからメモリ使用量を抑えて結果を出力したい。

$result = mysql_unbuffered_query($query);
while ( $row = mysql_fetch_assoc($result) ) {
 //$rowの内容を出力
}

mysql_queryの代わりに、
mysql_unbuffered_queryを使ってみたのだけど、
1回目の結果しか出力してくれません。
503nobodyさん:2010/12/06(月) 05:02:19 ID:???
>>502
mysql_unbuffered_query -- MySQL に SQL クエリを送信するが、結果に対してのフェッチやバッファリングは行わない
504nobodyさん:2010/12/06(月) 08:14:48 ID:???
PHPはC言語の達人達が作ってるからそりゃ似てる罠
505nobodyさん:2010/12/06(月) 08:28:10 ID:???
C言語の達人になんかワロタ
506nobodyさん:2010/12/06(月) 08:29:21 ID:???
モジュールとかライブラリ類がCで実装されてるからCで全部置き換えれる
507nobodyさん:2010/12/06(月) 08:45:12 ID:???
>>485
・ドキュメント類の無いシステムの改修は請けられない
・PHPは作業員単価が安い
真っ当な理屈で行くならこの2つくらい。

前者はそのシステムが他社製だった場合に限る。
後者はJava使える人を雇ったor外注した場合のコストを仮に出して
「今作り直しておくと将来の機能追加の際の費用が下がるよ」という感じに。
508nobodyさん:2010/12/06(月) 08:47:50 ID:???
>>485
あれ、それうちが依頼した案件とそっくりなんだけど
509nobodyさん:2010/12/06(月) 16:04:59 ID:???
言語を選ぶドン!
510nobodyさん:2010/12/06(月) 19:16:09 ID:1oqepL+/
preg_replaceのパターンについて教えて下さい

>>00 にはマッチするけど >>00-00 
には一切マッチしないパターンを作りたいんですが、うまくいきません。

[0-9]{1,3}[^-] と考えましたが、これだと
>>00 はいいんですが、
>>00-00 もハイフンの直前までマッチして置き換えられてしまいます。
511nobodyさん:2010/12/06(月) 19:25:33 ID:???
>>00 って数字の連続って意味? よくわからんので適当
[\d]{1,3}(?!\d)
512nobodyさん:2010/12/06(月) 19:56:13 ID:1oqepL+/
>>511
>>00は数字の連続の意味です。
試してみたんですが、[\d]{1,3}(?!\d)だと >>00 だけでなく >>00-00
のハイフン前までもマッチしてしまいました。
>>00-00 には一切マッチさせたくないんですが。
513nobodyさん:2010/12/06(月) 20:10:39 ID:???
>>で始まって数字の連続で終わるでいいんじゃね
514512:2010/12/06(月) 20:27:31 ID:1oqepL+/
>>513
説明不足で済みません。
>>00-00 や >>00 は文字列に挟まれていることもありますし
一行内に複数出てくることもあります
515nobodyさん:2010/12/06(月) 22:01:05 ID:???
というかスレチ
516nobodyさん:2010/12/06(月) 22:09:10 ID:???
(?<!-)(?<![0-9])[0-9]+(?!-)(?![0-9])
517PHP忍者 ◆vx6KgJyjvE :2010/12/06(月) 22:56:38 ID:???
518nobodyさん:2010/12/07(火) 01:05:58 ID:jpXYBjAQ
新Macスレに書き込みましたがスルーされてしまったので
こちらで質問させてください。
スレ違いなら申し訳ですが、AppleのiTunes Connectに
表示される自分のアカウントの sales and trendの値を
HTTP経由でRSSやXMLで取得する方法ってどなたかご存じないですか?

下記のサイトが、それらしいことやってそうですが、
ドメインやAPIキーが何を意味してるか良く分かりません。
http://snippie.net/snip/f835bd0d

アカウントとAppleIDを条件にREST等で取得するような
APIってないでしょうか。
519nobodyさん:2010/12/07(火) 01:56:18 ID:???
ソース見てみろよ
無いからパースかけてるんだろ…
520nobodyさん:2010/12/07(火) 02:02:54 ID:???
もうPHPも落ち目なのかな?
最近全然まともな質問もないし
と思ったらWebProgで一番勢いはある
ということは2chから人がいなくなったのかな
521nobodyさん:2010/12/07(火) 02:05:20 ID:???
2chに書き込んでも根性ひん曲がった悪意の塊しかいないからな
522nobodyさん:2010/12/07(火) 02:08:17 ID:???
元々PHP板はこんなもん
523nobodyさん:2010/12/07(火) 02:21:15 ID:???
いつからここがPHP板になったんだよ
524nobodyさん:2010/12/07(火) 02:30:28 ID:???
urlみてみ?
板名はWebProg板だがPHP板と呼ぶ人はそれなりに居る
525nobodyさん:2010/12/07(火) 02:31:47 ID:???
>>524
他に呼んでる人の例plz
526nobodyさん:2010/12/07(火) 02:33:38 ID:???
例ってなんだよ例って
俺も認識が違ったようだ
旧名がPHP板で再編されてWebプログラム板になった
だからPHP板と呼ぶ人もいる

ttp://teri.2ch.net/accuse/kako/988/988641092.html
527nobodyさん:2010/12/07(火) 02:39:11 ID:???
こういうどうでもいいくだらないやりとりがダメにしてるんだろうなw
528nobodyさん:2010/12/07(火) 02:42:39 ID:???
雑スレあっても雑スレと統合するようなスレだから
仕方ないんじゃないかと・・・
529nobodyさん:2010/12/07(火) 07:30:00 ID:???
>>526
何年前の話だよ
530nobodyさん:2010/12/07(火) 10:16:16 ID:???
>>529
何年前の話か分からないという質問ですか?
それならIDを出して書きこんでくださいね
531nobodyさん:2010/12/07(火) 10:19:00 ID:9UYYDQMR
PHP+MySQLでアプリを組んでおります。
MySQLでビューを使っているのですが、ビューが遅いと聞き、
毎回PHPにてクエリを作成したものと、ビューを用いたもので速度実験してみました。

$sql_1 = "SELECT * FROM test1 LEFT JOIN text2 ON test1.id = test2.id";
$sql_2 = "SELECT * FROM test_view";

$loop = 10000;

// ビュー無し
$start1 = get_time();
for ($i = 0 ; $i < $loop ; $i++) {
$result = $db->query($sql_1);
}
echo get_time() - $start1 ."<br />\n";

// ビューあり
$start2 = get_time();
for ($i = 0 ; $i < $loop ; $i++) {
$result = $db->query($sql_2);
}
echo get_time() - $start2 ."<br />\n";

結果、
ビュー無:sec 6.97133803368
ビュー有:sec 6.43778681755
となったんですが、これは一度作成したビューをキャッシュで保持しているのでこうなったのでしょうか。


ちなみにmysqlは5.1.33です。
532nobodyさん:2010/12/07(火) 12:04:31 ID:???
// ビュー無し
// ビューあり

実行順序を変えた結果も教えてください。
533nobodyさん:2010/12/07(火) 13:20:45 ID:???
>>532

ビュー無 ⇒ ビュー有 実施済み

この実行順序を変えて、ビュー有⇒ビュー無で実行することに意味があるの?
534nobodyさん:2010/12/07(火) 13:31:31 ID:KlJmKKf8
It is not safe to rely on the system's timezone settings. Please use the date.timezone setting, the TZ environment variable or the date_default_timezone_set()
date.timezone = Asia/Tokyoと設定してApacheを再起動しても上記の文章がでるんですが、
他に何か設定する必要があるんでしょうか?
Xamppでやってます。Php5.2です。
535nobodyさん:2010/12/07(火) 13:43:49 ID:???
インストーラー版?zip版?
536nobodyさん:2010/12/07(火) 14:09:38 ID:KlJmKKf8
Zipです。
537nobodyさん:2010/12/07(火) 14:15:20 ID:???
セットアップ用のbatは実行したの?
538nobodyさん:2010/12/07(火) 14:35:24 ID:???
どこのiniファイルを設定したのか気になりますね
539nobodyさん:2010/12/07(火) 14:56:28 ID:???
xampp使ってるが
timezoneを自分で設定した記憶がない
初期設定で勝手にやってくれるはずだが
ちゃんと使う前に説明嫁
540nobodyさん:2010/12/07(火) 16:12:38 ID:???
>>535>>537
質問はIDを出して書き込んでください。
541nobodyさん:2010/12/07(火) 16:15:13 ID:???
ID厨
542nobodyさん:2010/12/07(火) 16:17:11 ID:???
こいつ性根がひん曲がってるってレベルじゃねーぞw
543nobodyさん:2010/12/07(火) 16:30:04 ID:???
質問者に対する回答に必要な情報が足りてないから聞いてるのを質問とか
引きこもってて脳みそ溶けてるんだろ
544nobodyさん:2010/12/07(火) 16:36:25 ID:???
溶けてるなんてレベルじゃないな
545512:2010/12/07(火) 18:54:38 ID:vVw0jPrd
>>516
上手くいきました!有難うございました
もっと勉強します
546nobodyさん:2010/12/08(水) 01:30:59 ID:BxjIm/1J
携帯でwebサービスの管理画面を操作する時、
たとえば要素が50個くらいあるフォームだとしたら、
入力>確認>投稿 というプロセスのあいだの情報の引き回しはどうすべきでしょうか?

現在、PC版の管理画面ではセッションの中に$_POSTを全部放り込んで
最後の投稿画面にまで持ち回してますが、携帯だとそれは厳しいのかな?と悩んでいます。
そうだとしたら、どういうやり方をするのがセオリーですか?
547nobodyさん:2010/12/08(水) 01:37:24 ID:???
COOKIE使わないセッションでどうぞ
若しくはhidden
548nobodyさん:2010/12/08(水) 16:13:35 ID:???
>>541-544
・ 質問者として、態度をわきまえること。
549nobodyさん:2010/12/08(水) 16:17:15 ID:???
おかえりー
学校行ってたの?
550nobodyさん:2010/12/08(水) 20:13:54 ID:???
携帯でもcookie使えるけど
551nobodyさん:2010/12/08(水) 21:07:00 ID:???
汎用的に作りたいんじゃ?
552nobodyさん:2010/12/09(木) 03:39:21 ID:???
>>551
質問はIDを出して書き込んでください。
553nobodyさん:2010/12/09(木) 04:20:52 ID:???
>>552
質問と疑問形を見分けられるようにスクリプトを改修することを勧告します。
なお、この勧告を3回発した後、なお当該自称が継続する場合は、強制力を
持った「改修指示」に自動的に更新されます。
554nobodyさん:2010/12/09(木) 06:09:50 ID:???
>>553
・解決しなくても回答をもらった場合はお礼を言うこと。
555nobodyさん:2010/12/09(木) 09:16:01 ID:???
アフォはスルーしようぜ
556nobodyさん:2010/12/09(木) 10:07:12 ID:???
こんな風に育ってしまって親がかわいそうだけど
育てたのは親だから自業自得か
557nobodyさん:2010/12/09(木) 17:31:31 ID:Q1lTwUUp
mb_strimwidthでどうも解決しない問題があります。
どなたか解決方法を教えてもらえないでしょうか?

$title = mb_strimwidth($item, 0, 55, '…', 'UTF-8');

上記のように書いた場合でも、以下のように横幅が揃わないのです。。

1 スタ-バックスカード500円券が80%OFFの100円で(配送費用込み)掲…
2 「ココロに残る、自然派フランス料理を。」 仙川にある『Bistro…

こちらが元の文字列

1 スタ-バックスカード500円券が80%OFFの100円で(配送費用込み)掲載日時を11/25/-11/30の期間でツイッターでお知らせします!枚数限定早いもの勝ち【ヒント:21半頃か】

2 「ココロに残る、自然派フランス料理を。」 仙川にある『Bistro de Herb』の新鮮野菜や旬のシーフードをゆったり味わえる『フレンチ・フルコース』が、2,500円!
558nobodyさん:2010/12/09(木) 17:35:27 ID:???
そりゃ、文字によってフォントの幅が違うからね
559nobodyさん:2010/12/09(木) 17:54:34 ID:Q1lTwUUp
>>558

レスありがとうございます。

なるほど、そういうことだったのですか。
現実的によい解決方法があったら教えてもらえないでしょうか?
560nobodyさん:2010/12/09(木) 18:03:42 ID:???
等幅フォント
561nobodyさん:2010/12/09(木) 18:42:47 ID:???
test
562nobodyさん:2010/12/09(木) 19:35:48 ID:B+6MlJyV
>>560

等幅フォントで検索してみました!

しかし、元となる文字列はAPIから取得しているので、
すべてサーバサイドで変換して、横幅をそろえて、
最終的にそろったフォントをテキストメールで送信なんて芸当はできないっぽいですね。。
563nobodyさん:2010/12/09(木) 21:18:40 ID:???
>>562
※等幅フォントでご覧下さい

っていう但し書きが付いているメールがかなり来ますよ。
564nobodyさん:2010/12/09(木) 21:24:01 ID:B+6MlJyV
>>563

なるほどー。

ちょっと諦めるしかなさげなのですね。
565nobodyさん:2010/12/10(金) 01:34:55 ID:AaQt1j6z
http://www.lapindor.co.jp/homme/faq.php

このサイトのFAQのように、
質問をクリックするとすぐ下に答えが表示されるPHPのページを作りたいのですが、
こういったページを作るためのフリー素材を配布しているサイトはありますか?

かなり調べましたが、このような形のFAQをPHPで作る方法が分かりません。

素人でも簡単にカスタマイズできるものを探しています。

くだらない質問ですがなにとぞよろしくお願いします。
566nobodyさん:2010/12/10(金) 01:59:12 ID:???
cssとjavascriptで簡単に出来ますがな…
567nobodyさん:2010/12/10(金) 02:24:10 ID:AaQt1j6z
>>566
レスありがとうございます。

知識が全然ないもので。。

javascriptに関するサイトでここを見れば
馬鹿でも作れるといったサイトはありますか?

できれば教えていただきたいのです。
568nobodyさん:2010/12/10(金) 02:32:18 ID:???
そのページのURLがPHPってだけであって
実装はJavaScriptで行われている
というか普通そういうのはJavaScript
まずは元となるテキストを用意する

<p id="q1">ウィッグの素材は?<div style="display:none">高級ファイバーを使用し、お洒落で自然なスタイルと立体的で綺麗な髪色を再現しています。</div></p>

あとはこの場所(p)がクリックされたときに中のdivのstyleをdisplayに変更するだけ
逆にdisplayだったときはnoneに戻すことで見えなくなる

JavaScriptのDOM操作を覚えれば簡単
569nobodyさん:2010/12/10(金) 02:36:23 ID:???
<div id="faq"><p>faq</p><span>contents</span></div>
<script>$("#faq p").click = function(){$("#faq span").toggle();}</script>

jquery使えばこんだけ
後はググれ
570nobodyさん:2010/12/10(金) 02:42:04 ID:???
<div onclick="this.lastChild.style.display=this.lastChild.style.display=='block'?'none':'block'" style="color:blue;text-decoration:underline;cursor:pointer">click me<span style="display:none;margin-left:20px">hoge</span></div>
571nobodyさん:2010/12/10(金) 03:27:32 ID:???
>>569
click=にするんじゃなくて
せめてclick(function(){}):
にすべき

まぁPHPスレでJavaScriptの質問っていうのは
完全にすれちだから誘導すべきなんだけどね

とりあえず>>565はこっちへ移動する事をおすすめする

Webサイト制作初心者用質問スレ part222
ttp://hibari.2ch.net/test/read.cgi/hp/1291304974/
572nobodyさん:2010/12/10(金) 03:34:47 ID:???
>>571
あーそっちそっち
今、ちょうどC#とHaskelの板挟みで何がどうかわすれとったわw
573nobodyさん:2010/12/10(金) 03:56:53 ID:???
いや、むしろこっちだろ

http://hibari.2ch.net/test/read.cgi/hp/1289130738/
574nobodyさん:2010/12/10(金) 04:04:53 ID:???
そっちに行くには知識が乏しそうだからあえて除外した
JSを書いてみたりしてる訳でもないしね
575565=567:2010/12/10(金) 04:54:02 ID:AaQt1j6z
みなさん、ありがとうございます。

この板のみなさんが優しくて大変助かりました!

アドバイスのおかげでなんとかなりそうです!
576nobodyさん:2010/12/10(金) 10:15:31 ID:5NVSc+YH
ちょこっと質問なんですが
fopen(ファイルのパス)
file(ファイルのパス)

ってあるんですけど、このパスって絶対パスと相対パスどっちなんでしょうか?
そんでもって絶対パスと相対パスってどっちの方が良いかとかメリットデメリットあります?
577nobodyさん:2010/12/10(金) 10:24:50 ID:???
>>576
どっちでも問題なく使える
絶対パスで問題があるとしたらスクリプトの配置を変えた時だね
578nobodyさん:2010/12/10(金) 10:33:54 ID:5NVSc+YH
なるほど!
ありがとうございます!
579nobodyさん:2010/12/10(金) 10:43:42 ID:???
相対パスのほうが、デバッグの時は有利
580nobodyさん:2010/12/10(金) 10:53:37 ID:???
相対だと違う階層のファイルをincludeしたときとかに、カレントが実行してるファイルのとこになるので注意。
結局 dirname(__FILE__)使ったりする。
581nobodyさん:2010/12/10(金) 12:03:19 ID:FHNkWvc0
strlen()関数について質問です
strlen()関数はそのまま使ったら文字数のバイト数を表示するんですよね?
'あいうえお'と入れても10ではなく15バイトと表示されてしまうのですが
582nobodyさん:2010/12/10(金) 12:05:37 ID:oH6UvGx+
質問です。
・したい事
ページ遷移先で$_FILESを有効にしたい。

・問題点
<form action="./" method="POST" id="m-form" enctype="multipart/form-data">
の「enctype="multipart/form-data"」を付け足したのですが、
画面遷移すると文字化け(s-jisで作っていて、UTF-8で表示しているため)します。
その後、ウェブのメニュー画面より、表示->エンコード->s-jisと
したら、「ページの有効期限が切れています。」となります。

どのように解決すればよいかわかりません。
お教えください。よろしくお願いします。
583581:2010/12/10(金) 12:09:03 ID:FHNkWvc0
さらに言うと全角の容量を1つ3バイトではなく2ちゃんねるのように1つ2バイトにするには
どうすればよいのでしょうか?
584nobodyさん:2010/12/10(金) 12:09:09 ID:???
>>581
マルチバイト対応のmb系の関数を使ってください
mb_strlen
585nobodyさん:2010/12/10(金) 12:18:16 ID:FHNkWvc0
>>584
やはり一文字当たり3バイトになっていまいます・・・。

$contents = htmlspecialchars($_POST['name']);
if(mb_strlen($name) >= 50){
$name = 名前長すぎ;
}

とやってるんですが、全角じゃ16文字が限界で
586nobodyさん:2010/12/10(金) 12:19:52 ID:FHNkWvc0
$name = htmlspecialchars($_POST['name']);
if(mb_strlen($name) >= 50){
$name = 名前長すぎ;
}
です・・・。連続投稿すみません・・・。
587nobodyさん:2010/12/10(金) 12:23:57 ID:???
588nobodyさん:2010/12/10(金) 12:25:10 ID:???
UTF-8に統一しろというのはそういうことさね
589nobodyさん:2010/12/10(金) 12:25:25 ID:???
>>587
おお、ありがとうございます
本当に5回もレスしてすみません・・・。
590nobodyさん:2010/12/10(金) 12:47:17 ID:???
っていうか2chが全角=2byteなのってUTF-8使ってないからじゃ無いっけ?
UTF-8なら全角=3byteで正解な気が
591nobodyさん:2010/12/10(金) 12:57:44 ID:???
ラテン文字に居たっては1→2バイトだからな
UTF-8になかなか統一されない一番の理由はそこにある
592nobodyさん:2010/12/10(金) 13:00:25 ID:???
いや、携帯のせいだろ
593582:2010/12/10(金) 13:18:42 ID:oH6UvGx+
たすけてけろーー!
594nobodyさん:2010/12/10(金) 13:41:15 ID:???
metaタグかContent-Typeヘッダを正確に書けば文字化けしないっしょ
595582:2010/12/10(金) 14:32:10 ID:oH6UvGx+
ありがとうございます。

やってみます。
596nobodyさん:2010/12/10(金) 14:53:45 ID:???
>>594
そもそもmb_strlenの第二引数に文字コード入れれるだろ
597596:2010/12/10(金) 14:54:40 ID:???
ごめん間違えたわ
598nobodyさん:2010/12/10(金) 22:18:42 ID:sfMMgbI8
名前空間って何に使うんですか?
599nobodyさん:2010/12/10(金) 22:34:15 ID:???
クラス名の衝突回避
600nobodyさん:2010/12/11(土) 01:23:40 ID:???
変数名の衝突回避もできれば便利なのに。
601nobodyさん:2010/12/11(土) 06:59:44 ID:???
変数名が衝突するとか言うのは作りが悪いだけ。
602nobodyさん:2010/12/11(土) 09:51:20 ID:???
わしもそうおもふな
603nobodyさん:2010/12/11(土) 16:00:56 ID:???
じゃぁクラス名が衝突するのは作りに問題ないの?
604nobodyさん:2010/12/11(土) 16:39:46 ID:???
クラス名は衝突するようになってるの
再利用可能な部品だからいろんな人がお好きに使ってねーって公開してるの
いろんな部品かき集めて作ったら同じクラス名があってうまくインスタンス化できないの
誰が作った部品か書いてあればよかったのになぁと思うわけなの

まぁ普通は他人と衝突しないように作るがどうしても名前が長くなってしまいがち
別に悪くはないけど長くしたところで100%衝突回避できる保証はないからあったほうがいいという話
605nobodyさん:2010/12/11(土) 17:09:07 ID:kZNhymsR
【OS名】windowsXP
【PHPのバージョン】5
【連携ソフトウェア】
【質問内容】
会員登録ページを作りたいのですが、会員数は800人程度なのと
内輪のサークルみたいな感じで不特定の人を相手にする訳ではないのと
頻繁にアクセスされる事もないのでデータベースとかを使うのは
大げさ(自分が扱う自信がない)な感じがしています。

データベースを使わない会員登録&アクセス制限の無料サンプルってないでしょうか?
「会員登録 php」でググってるのですが、中々ヒットしなくて
606nobodyさん:2010/12/11(土) 17:10:44 ID:???
800人も居たらDB使ってもいいんじゃ
607nobodyさん:2010/12/11(土) 17:54:38 ID:???
DB使った方が簡単だと思うが…
テキストファイルベースでそういうの作る方が難しい
608605:2010/12/11(土) 18:02:38 ID:kZNhymsR
レス、ありがとうございます。
DB使った方が良いですか。
先程からググってるんですが、なんかこれだってのが
見つからないんで、お勧めあったら教えて下さい。
今から、本屋行ってphpの本漁ってきます。
609nobodyさん:2010/12/11(土) 18:03:31 ID:???
ファイルで管理する一番単純な方法はディレクトリ名をアカウント名にする
610nobodyさん:2010/12/11(土) 18:07:09 ID:???
1000人以下ならCSVファイルでokだろ。
あとの管理も楽。
611nobodyさん:2010/12/11(土) 18:09:13 ID:???
口で言うのは簡単だがあなたにはたぶん作れない
というわけでDBを使う気があるのならxoopsみたいなものをインストールしたほうが早いんでは?
612nobodyさん:2010/12/11(土) 18:23:10 ID:???
会員登録だけのスクリプトとかあんまり落ちてないだろう
ショッピングカートとか探して参考にしてみれば?
613nobodyさん:2010/12/11(土) 18:27:49 ID:???
>>610
1000人以下でもSQLite使ったほうが管理はしやすいと思うが・・・
614nobodyさん:2010/12/11(土) 18:31:33 ID:6a9fgwGZ
ふつうにDB使っとけよ
615nobodyさん:2010/12/11(土) 18:52:14 ID:???
>>605
DBを使うことが大げさとは思わないけど、DBを避けて作ることも可

サンプル探す時は「会員登録」に拘るんじゃなくて
構成の似ているものを探せばすぐ流用できるのは出てくる。
616nobodyさん:2010/12/11(土) 19:07:53 ID:???
はぁ?

単にDB使う前に二の足踏んでるだけの人に
なんでそんなこと薦めるんだよ

あとあとのこと考えれば明らかにDB使わないほうが
ややこしいっつーの
617nobodyさん:2010/12/11(土) 19:18:05 ID:???
・800人
・仲間内
・管理者は一人

じゃあEXCELで十分。
618nobodyさん:2010/12/11(土) 19:31:25 ID:???
質問と関係ないとこでケンカすんな餓鬼ドモが
619nobodyさん:2010/12/11(土) 19:34:36 ID:???
便所の落書きで熱くなるなよ
620nobodyさん:2010/12/11(土) 20:25:10 ID:???
EXCELすごいよEXCEL
621nobodyさん:2010/12/11(土) 20:39:59 ID:???
アクセス制限も含めてやりたいんじゃないの?
622nobodyさん:2010/12/11(土) 20:56:54 ID:???
データベースかテキストかって単なる保存場所の問題で
アクセス制限とはまた別の話
623nobodyさん:2010/12/11(土) 21:52:53 ID:???
>>622
>データベースを使わない会員登録&アクセス制限の無料サンプルってないでしょうか?
別な話じゃねーよ
624nobodyさん:2010/12/11(土) 22:03:24 ID:???
はい?「データベースを使わない」って形容詞が付いてるんだから
使っても作れるし、使わなくても作れる、つまり別の物だろ。
625nobodyさん:2010/12/11(土) 22:50:31 ID:???
> データベースを使わない
↑これ形容詞なのかwww
626nobodyさん:2010/12/11(土) 23:10:05 ID:???
小卒かな
627nobodyさん:2010/12/11(土) 23:52:26 ID:???
SQLiteかPosql使えばいいよ
628nobodyさん:2010/12/12(日) 03:10:46 ID:upsovo/5

$text = <<EOL
この中でphpのif文などを使いたい
EOL;

のですが可能ですか?
629nobodyさん:2010/12/12(日) 03:19:25 ID:???
>>609
ファイルの方が手っ取り早くね

アカウント作成
touch($user)

アカウント削除
unlink($user)

アカウント確認
file_get_contents($user)

パスワードはファイル内にでも書いとけってことで
630nobodyさん:2010/12/12(日) 03:43:01 ID:???
>>628
あなたがやりたいのは
$text = "この中でphpのif文などを使いたい";
と同じこと。途中でif文を使いたいなら分割しましょう。
ちなみにヒアドキュメントは"<<<"です。

$text = <<<EOL
・・・
EOL;
if(〜){
$text .= <<<EOL
・・・
EOL;
}else{
$text .= <<<EOL
・・・
EOL;
}
631nobodyさん:2010/12/12(日) 04:25:43 ID:upsovo/5
>>630
本当にありがとうございます
632nobodyさん:2010/12/12(日) 14:41:37 ID:p55fUIgB
return値がvoidの場合でもちゃんとreturnは記述したほうがいいですか?
633nobodyさん:2010/12/12(日) 14:51:35 ID:N/dcrvR4
別に書かなくて良いよ
634nobodyさん:2010/12/12(日) 14:52:48 ID:???
書く必要はないが気持ち悪いのでいつも書いてる
635nobodyさん:2010/12/12(日) 14:53:47 ID:???
むしろ書いちゃダメでしょ
636nobodyさん:2010/12/12(日) 16:34:39 ID:???
なんとか粒子が濃いからね
637nobodyさん:2010/12/12(日) 16:38:08 ID:oK+8zv6U
かきすぎるとさるとよばれますよ。
638nobodyさん:2010/12/12(日) 18:21:06 ID:???
if () {
 while(1) {
  if () {
    return;
  }
 }
}

後ろに処理がなかったらbreakの代わりにreturn使ったりするな
ちなみに俺はループは無限ループにして
中で抜ける条件を書く異端者なので参考にしないほうがいい
639nobodyさん:2010/12/12(日) 18:27:51 ID:???
異端というか組み込みやってた感じがしなくもないな
まぁ参考にはしないほうがいいなw
640nobodyさん:2010/12/12(日) 18:31:03 ID:???
スクリプト言語に過度の期待はするなw
商売なら別だけどね
641nobodyさん:2010/12/12(日) 19:29:47 ID:???
トリッキーなことを得意がってやっていると
改造の時に困るぞ。
642nobodyさん:2010/12/12(日) 22:53:47 ID:G6vvlQR5
自作関数について質問です。
a.txt
1列目,2列目
ID,001
name,名前
(行列可変)
のような複数のデータファイルがあります。
これを複数同時に読み込みたいので下記の関数作ってみたけどうまくいきませんでした。
$dataに連想配列が返ってくるようにはどうしたらよいでしょうか?
$read_file = array("a.txt","b.txt");
function Read($read_file){
foreach($read_file as $key){
$str = @file_get_contents($key);
$array = explode("\r\n", $str);
foreach($array as $koumoku => $value){
if($value){
$item = explode(',', $value) ;
$data[$key][$item[0]] = $item[1];
echo $data[$key][$item[0]]."<BR>";
}}}
return $data;
}
var_dump($data);
------
643nobodyさん:2010/12/12(日) 23:26:41 ID:???
関数呼び出ししてないってオチじゃないよね・・・?
あとfgetcsvを知っておくとともっと楽にできるかもしれない
644nobodyさん:2010/12/12(日) 23:32:39 ID:G6vvlQR5
参考書探して呼んでたら自己解決しました。
global $data
っての追加したらできました。

>>643
呼び出し部分はここのコピぺし忘れただけです;
fgetcsv調べてみます
ありがとうございます。
645nobodyさん:2010/12/12(日) 23:53:05 ID:???
returnして受け取れよw
646nobodyさん:2010/12/13(月) 00:06:22 ID:???
~~旦_(‥ )こりゃどうも
647nobodyさん:2010/12/13(月) 07:58:36 ID:???
便利だぞ!

global 彼女の部屋
648nobodyさん:2010/12/13(月) 08:59:07 ID:???
リア充乙
649nobodyさん:2010/12/13(月) 10:42:41 ID:???
global 俺の嫁
650nobodyさん:2010/12/13(月) 11:15:55 ID:???
彼女の部屋.引き出し.open()

おや・・・知らない男の写真がたくさん出てきたぞ
651nobodyさん:2010/12/13(月) 11:24:41 ID:???
>>650 fgetcsv で取り込んで整理しましょう。
652nobodyさん:2010/12/13(月) 11:51:19 ID:???
unlink(>>650)
653nobodyさん:2010/12/13(月) 13:05:35 ID:???
>>652
パーミッションエラー
削除する権限がありません
654nobodyさん:2010/12/13(月) 13:13:46 ID:???
MySQLのビューって、LEFT JOINみたいにキーが一致するものを取得するんだと思ってたけど
実際には一度全てのパターンマッチを取得してからWHEREでキーの一致する部分を検索してたんだな
そりゃ思いはずだ
655nobodyさん:2010/12/13(月) 17:57:30 ID:???
ゴバ━━━━(゚∀゚)━━━━ク!!!!
MySQL 総合 Part18
http://hibari.2ch.net/test/read.cgi/db/1276247839/l50
656nobodyさん:2010/12/13(月) 19:51:50 ID:3wG2VAx5
Windows7(32bit)
PHP5.3.3
Apache2.2.17
この環境で拡張子htmlのファイルからテキストデータを拡張子phpのスクリプトに送信すると何故かダウンロードダイアログが出てしまいます
php→phpだと特に問題ないのですが何か設定するべき箇所はありますか?
657nobodyさん:2010/12/13(月) 20:04:02 ID:???
キャッシュ削除してみると幸せになれるかも

あとはエスパーに任せたw
658nobodyさん:2010/12/13(月) 20:31:58 ID:X4P4A1O7
>>656

> テキストデータを拡張子phpのスクリプトに送信する

 この部分についての具体的な記載をお願いします。

>> テキストデータを送信する、拡張子phpのスクリプトに

 どの様な方法で、どの様なテキストデータを送信しているかが判然としません。
659nobodyさん:2010/12/13(月) 20:33:41 ID:???
追加して書けば…

>> 拡張子phpのスクリプトで受信する

 考えがあると思いますが、どのようなテクストデータを
 どの様に受信する考えでしょうか?

 質問が漠然とし過ぎていて、回答が得難いと考えます。

660nobodyさん:2010/12/13(月) 20:47:57 ID:3wG2VAx5
>>658-659
漠然としすぎましたね申し訳ないです
具体的なソースを書くと

A.html
<FORM method='post' action='B.php'>"
<input type='text' name='a'>"
<BR>"
<input type='submit' value='送信'>"
</FORM>"
このフォームで作ったテキストデータを

B.php
<?php
print $_POST["a"];
?>
このスクリプトにPOSTで送信して表示させたかったのですがAがhtmlだとダウンロードダイアログが開いてしまいます
A.htmlを
<?php
echo "<FORM method='post' action='uke.php'>";
echo "<input type='text' name='a'>";
echo "<BR>";
echo "<input type='submit' value='送信'>";
echo "</FORM>";
?>
の様にphpソースに書き換えるとB.phpに問題無く送信出来て表示も出来るのでapacheのhttpd.conf等に何か記述漏れがあるのかと思い質問させて頂きました
661nobodyさん:2010/12/13(月) 21:00:56 ID:???
どう見ても下はBに送ってないが
662nobodyさん:2010/12/13(月) 21:05:18 ID:???
A.htmlにダブルクオーテーションが混入してるように見えるが
663nobodyさん:2010/12/13(月) 22:09:59 ID:3wG2VAx5
すみません自己解決しました
原因はhtmlファイルにhttp://localhost/〜経由でアクセスしていたのではなくhtmlなのをいいことに直接ファイルをクリックしていたのが悪かったみたいです
664nobodyさん:2010/12/13(月) 22:11:53 ID:???
はぁ?
665nobodyさん:2010/12/13(月) 22:20:58 ID:???
つまりhttp://ではなくりC:\\name.htmlを開いて実行していたんでしょw

自鯖でR15秒更新のチャートをGDで作っているんだけどたまに重いときがあるんだ。
理由がさっぱりわからない。だれか理由はわかりませんか?
666nobodyさん:2010/12/13(月) 22:28:55 ID:???
667nobodyさん:2010/12/13(月) 22:45:49 ID:???
IEを相手にContent-Dispositionのfilename=で日本語ファイルを設定するにあたり、

1 SJISでファイル名を返す
2 URL EncodeしたUTF8文字列を返す

双方試したのですが、ファイル名に半角スペースを含む場合

1はアンダーバーに変更される
2は+のままになる

という症状になってしまいます。
スペースのままファイル名を付けるいい方法はないでしょうか?
668nobodyさん:2010/12/13(月) 22:53:46 ID:???
669nobodyさん:2010/12/13(月) 23:04:39 ID:???
ごめんなさい、PHP使ってるけどPHP関係ありませんでした、移動します。
670nobodyさん:2010/12/14(火) 04:13:11 ID:???
最近「>>1」厨がウザいのですが、
何か良い解決法はありませんでしょうか?
671nobodyさん:2010/12/14(火) 05:19:17 ID:???
>>1厨厨
672nobodyさん:2010/12/14(火) 06:41:40 ID:l3lG4ooA
入力したデータを送信してPHPで処理するのを作ってるんですが(主に文書)
その際のエラーチェックやセキュリティはPHPで行うのと、JavaScriptで行うのどっちがいいのでしょうか?

自分的にはクライアント側でやったほうがサーバーの負荷が少なくて済むと思うのですが
サーバー側でやった方がセキュリティ方面で良かったりします?
673nobodyさん:2010/12/14(火) 06:56:20 ID:???
クライアントなんてJavaScriptきってれば抜けられるわけだが
JavaScriptで送信するようにしてもクライアントのみのチェックはやってはいけない
最終的に判断するのはサーバであるべき
クライアント側はあくまでも補佐であることを忘れてはならない
(送信→失敗→再送信→失敗→再送信・・・といったことを少なくするための)
674nobodyさん:2010/12/14(火) 07:08:01 ID:P37GDDtJ
>>672

> エラーチェックやセキュリティ

何を基準にエラーやセキュリティと述べているかが判然としません。
675nobodyさん:2010/12/14(火) 07:19:58 ID:l3lG4ooA
>>673
なるほど!ありがとうございます!
676nobodyさん:2010/12/14(火) 07:23:12 ID:???
俺としてはJavaScriptで確認、PHPで再確認するのがいいかな
Javascriptだけのチェックじゃ>>673の言うとおり切ってりゃすぐ抜けられる
だけどJavaScriptでもチェックできるようにしたらサーバーへの負担も少なくなるしクライアントも楽
サーバーの補佐としてJavaScriptを入れておくことを薦める
677nobodyさん:2010/12/14(火) 08:13:37 ID:???
俺としてはPHPでのチェックがネックになるようなサーバなら捨てちまえ
678nobodyさん:2010/12/14(火) 09:11:52 ID:???
大規模なところだとそういうの気にした方がいいんじゃね?
mixiとか
679nobodyさん:2010/12/14(火) 09:38:52 ID:???
何をチェックするかによるだろ
データベースに照合してかぶってないか確認するような場合はそもそもJavaScriptじゃ無理だし
文字数やら型やら調べるだけなら負荷とか考える必要もない
680nobodyさん:2010/12/14(火) 09:40:48 ID:???
入力間違いとかユーザに起因するエラーチェックはクライアント側(JavaScript)
セキュリティなど悪意のあるユーザ対策はサーバー側(PHP)
かな
681nobodyさん:2010/12/14(火) 09:43:33 ID:???
分けるんじゃなくて必ずサーバ側でやらないとだめ
入力間違いをJavaScriptを無効化されてすり抜けた場合間違ったまま登録できてしまう
682nobodyさん:2010/12/14(火) 10:12:25 ID:???
本来、JavaScript を使用してクライアント側でチェックするのは、使用者をサポートすることを目的として使います。
サーバー側で処理をする上でのチェックは、使用者をサポートすることは考えません。
サーバー側での処理を考えてのチェックであり、チェックする目的が違っています。
683nobodyさん:2010/12/14(火) 10:28:05 ID:???
Ajaxが主流の時代に何言ってんだよ。
サーバーでのチェックなんて時代遅れ。
全てJavascript+Ajaxでやるのが正解。
684nobodyさん:2010/12/14(火) 10:30:06 ID:???
>>683
頭悪いの丸出しだぞ
Ajaxの定義をしっかり持ってこい

どちらにせよ、サーバーサイドで全て行い、クライアントにも使いやすいようにJavaScriptでもするのがいいんじゃないかな?
685nobodyさん:2010/12/14(火) 10:44:43 ID:???
Javascript+Ajax(キリッ

ひさびさに笑わせてもらった
686nobodyさん:2010/12/14(火) 10:45:55 ID:???
>>683は釣りだよな?
素で言ってるならとてもこの板の住人とは思えない
687nobodyさん:2010/12/14(火) 10:49:11 ID:???
はぁ?サーバーサイドとか意味ないし。
Ajaxで十分。
688nobodyさん:2010/12/14(火) 10:50:27 ID:???
ちょっと待て、何言ってるんだ
689nobodyさん:2010/12/14(火) 10:50:50 ID:???
Ajaxはサーバと通信しないとでもいいたいようだなw
690nobodyさん:2010/12/14(火) 10:51:56 ID:???
サーバーへの負荷が少なくファイルが存在するのかチェックする方法はあるのでしょうか?
file_get_contentsで内容までは読む必要はありません。

>>683
それは何処からどうみても間違い
691nobodyさん:2010/12/14(火) 10:54:30 ID:???
get_headers
しかし関数名とは裏腹にGETリクエストしてるって数スレ前で指摘されてたのが気になるところ
curlでheadリクエストしたほうがいいかも
692nobodyさん:2010/12/14(火) 10:55:25 ID:???
>>690
質問ならIDを出すように。

Ajaxの事よく知りもしないで適当なこと言ってんじゃねぇよ。
693nobodyさん:2010/12/14(火) 10:55:50 ID:???
file_exists
694nobodyさん:2010/12/14(火) 10:57:15 ID:???
>>691,693
ID出さない奴に答えてんじゃねぇよ。荒らしかよクズが
695nobodyさん:2010/12/14(火) 10:57:23 ID:???
誰かスレ違いだけど>>687に教えてやれよ
696nobodyさん:2010/12/14(火) 10:58:06 ID:???
何か変なのが沸いてしまった
697nobodyさん:2010/12/14(火) 10:58:49 ID:???
低能さを自ら晒して顔真っ赤になっちゃってかわいいのうwww
698nobodyさん:2010/12/14(火) 10:59:45 ID:???
うわ、IDを出せと煽っていた人のスキルがここまで酷いものだとは思わなかった
699nobodyさん:2010/12/14(火) 11:09:48 ID:???
>>695
誰も質問してねぇし。

おもいら揃いも揃ってクズだな。ここまでひどいとは思わなかったよ。
PHPなんかもう古いだろ。これからはAjaxらしいから勉強したほうがいいぞ。
700nobodyさん:2010/12/14(火) 11:14:38 ID:???
>>691
>curlでheadリクエストしたほうがいいかも

こちらで作りました
ありがとう
701nobodyさん:2010/12/14(火) 11:16:41 ID:???
>>699
お前ちょっと自分が思ってるAjaxを説明してみろ
702nobodyさん:2010/12/14(火) 11:16:51 ID:???
>>700
最後までID出さずじまいか。最悪だな。
703nobodyさん:2010/12/14(火) 11:17:41 ID:u6a6HqKY
今質問してもよろしいのでしょうか・・・?
704nobodyさん:2010/12/14(火) 11:17:51 ID:???
>>701
質問ならIDを出すように。
Ajaxくらいググればいくらでも調べられるだろ。
人に頼ってんじゃねぇよ。
705nobodyさん:2010/12/14(火) 11:18:19 ID:???
ヴァカが1人湧いてるだけなので気にせず質問してね
706nobodyさん:2010/12/14(火) 11:19:10 ID:???
ヴァカって言った奴がヴァカとはよく言ったものだ
707nobodyさん:2010/12/14(火) 11:20:16 ID:???
うわぁ・・・
本当にいつもの脳がメルトダウンしてるやつだったか
こんな低レベルが煽りに駐留してるなんてもうPHPスレもだめかもわからんね
708nobodyさん:2010/12/14(火) 11:24:34 ID:???
いやそれ以前にAjaxもろくに知らないおまいらのレベルが終わってんだろ
709nobodyさん:2010/12/14(火) 11:30:37 ID:u6a6HqKY
入力するときはUTF-8
入力された文字を保存するテキストファイルはANSIで保存
そんでそのテキストファイルを表示する時はまたUTF-8という感じにしたいのですが

ANSIで表示できないUTF-8の特殊文字(例:?)だけを?と変換して保存し
更にソレをUTF-8とかでブラウザーでちゃんと元の特殊文字で表示されるようにするにはどうしたらよいのでしょう?
710nobodyさん:2010/12/14(火) 11:30:49 ID:???
病院連れて行かないでこのスレに常駐させておく親も親だな
711nobodyさん:2010/12/14(火) 11:31:23 ID:???
もう誰が誰だかよくわかんない
ID???とかマジで油豚みたいなの擁護してるだけとしか思えん
712nobodyさん:2010/12/14(火) 11:33:29 ID:???
この板Unicode対応してないから特殊文字使えんよ
713nobodyさん:2010/12/14(火) 11:37:56 ID:???
>>709

> 入力するときはUTF-8
 これはクライアント側で入力するときにUTF-8と言う意味ですか?
 サーバー側で受け、PHPに渡されるときのコード体系がUTF-8と言う意味ですか?

> 入力された文字を保存するテキストファイルはANSIで保存
 これはサーバー側でPHPにて、テキストファイルとして保存することを述べていますか?

> そんでそのテキストファイルを表示する時はまたUTF-8という感じにしたいのですが
 「テキストファイルを表示する」とはPHPで表示するという意味ですか?
 サーバー側でサーバーの端末に表示するんですか?
 それとも入力に使用したクライアント側で表示することを意図していますか?

どこでPHPが関わってくるのか、クライアント側、サーバー側がどこで関わるのか、
それらを明確にすることで、あなたが意図する回答も得やすいと思います。
714nobodyさん:2010/12/14(火) 11:40:33 ID:???
>>709
素直にAjaxを使ってください。
715nobodyさん:2010/12/14(火) 11:42:28 ID:???
>>714 `;:゙;`;・(゚ε゚ )ブッ!! 微妙な流れに牛乳噴いちゃいました。
716nobodyさん:2010/12/14(火) 11:44:49 ID:u6a6HqKY
>>713
すみません、説明不足でした

入力する時というのはクライアント側で、という意味です。そしてその文字列をPHPでサーバーに送ります
そしてサーバーにテキストファイルとして保存する時ANSIで、という事です
PHPでテキストファイルを読み込んで表示するという意味です
717nobodyさん:2010/12/14(火) 11:45:52 ID:???
こーいう初心者スレって大抵初心者うぜぇ死ねって展開なのに
逆なんだよなぁココ
718nobodyさん:2010/12/14(火) 11:45:59 ID:???
>>709
ANSIで保存というのはどういうことでしょうか。
実は別に変換して保存しなくてもいいのではないですか?
utf8そのまま表示すればいいんだし。
文字コード変換で、指定されたコードで変換できない文字を別の表現に変えて保存したりすることはありますが。
なんでそんな変換をしないといけないと思ったか書いてもらえるといいかも。
719nobodyさん:2010/12/14(火) 11:49:59 ID:???
そろそろajaxネタ自重してくれ
720nobodyさん:2010/12/14(火) 11:50:34 ID:???
深読みして容量節約のためなら単に圧縮すればいいよ
それでPHPで読むとき解凍すればいい
721nobodyさん:2010/12/14(火) 11:51:12 ID:u6a6HqKY
>>718
UTF-8だと全角文字の容量が3バイトだったりして100MBの全角文字が150Mになったりするので
だけどUnicodeの特殊文字も使いたい、という訳です
そんで記号とか普通の文字はANSIでそのまま、Unicode特有の特殊文字は#8492とか変換してANSIのテキストファイルで保存したいな
という事です
722nobodyさん:2010/12/14(火) 11:53:01 ID:???
無理だろ新しい武器なんだぜ?
池沼にとっては足りない脳みそを補うために必要なものだ

回答者が質問者に追加情報聞き出すために質問→質問はID出せ
質問者への回答→Ajax使え
煽りへの対抗→Ajax知らねえだけだろ自分でググレ
723718:2010/12/14(火) 11:54:36 ID:???
>>721
まずANSIってのやめましょうよ。
>>720のエスパーに敬意を表して、ファイルごと圧縮すれば?
たとえば3バイト文字だけ選んで記号化しても3バイトで収まらないっすよ?
724nobodyさん:2010/12/14(火) 11:59:34 ID:???
>>721

サーバーでの容量を気にしている時点でPHPうんぬんから視点を変えることをお勧めします。
サーバーの容量をPHPプログラミングで救済するよりはサーバーの増強を検討した方が良いと思います。
容量が大きなファイルを取り扱うのならば見合ったサーバー構成にすることが望ましいです。
725nobodyさん:2010/12/14(火) 12:04:20 ID:???
2chのunicodeがonになってる所ってどーなってんだっけ?
2chのログってJISで保存してたと思うけど
unicodeがonになってる板はutf8とかでログ保存してんの?
726nobodyさん:2010/12/14(火) 12:07:43 ID:???
ただの数値実体参照だろ
727nobodyさん:2010/12/14(火) 12:17:45 ID:???
shiftjisに変換して漢字を2バイトに収めたうえで変換できない文字だけを
別表記(たとえば数値実体参照)でって方法もあるけど。
mb_substitute_characterでlong指定とか。
728nobodyさん:2010/12/14(火) 12:35:08 ID:???
あ、もしかして参照したいのか?
2chみたいに
ログ→数値
ブラウザ→表示
でも入力する時コードで入力しないとダメだけど
729nobodyさん:2010/12/14(火) 12:40:56 ID:???
>数値実体参照
>数値実体参照
>数値実体参照
730nobodyさん:2010/12/14(火) 12:43:15 ID:???
だっけどさーわざわざ?ってログ作るよりunicodeでそのまま保存したほうが容量軽いんじゃねー?って思ったりするんだが
ログも全部UTF-8でいいよJISなんて携帯が足引っ張ってるだけなんだし
731nobodyさん:2010/12/14(火) 12:45:39 ID:???
数値実体参照変換はphpじゃ無縁なんじゃない?
732nobodyさん:2010/12/14(火) 13:06:00 ID:???
つまりまとめるとphpで文字実体参照したいですって事か。
どっちが数値でどっちが文字かわかんねぇが。
733nobodyさん:2010/12/14(火) 13:16:48 ID:???
お前ら本当に得意不得意ハッキリしてんな
734nobodyさん:2010/12/14(火) 13:17:19 ID:???
数字実体参照ってのはまあ間違いだな。
735nobodyさん:2010/12/14(火) 13:19:27 ID:???
軽い話題じゃないとついていけないからなしょうがない
736nobodyさん:2010/12/14(火) 13:22:06 ID:???
JISなんか使ってたっけ?
737nobodyさん:2010/12/14(火) 13:36:45 ID:???
JISはまた容量増えるしな。
あ1で8バイトだ
738nobodyさん:2010/12/14(火) 13:38:58 ID:???
うっそマジで、もうメリット無いじゃん
739nobodyさん:2010/12/14(火) 13:43:33 ID:???
ajax厨はなんなんだ
740nobodyさん:2010/12/14(火) 13:46:05 ID:???
お前ら文字コードの参照くらいAjaxでできるだろ
時代はAjaxだろ
741nobodyさん:2010/12/14(火) 13:47:59 ID:???
ANSIって
あいうえお→10バイト
あ1→3バイトじゃないの?
ちょっとまた容量増えるってどういうことだ、ANSIとJISの違いがわからない俺に説明してくれ
742nobodyさん:2010/12/14(火) 13:49:04 ID:???
AJAXのXの部分はPHPが担当するんだけどな
743nobodyさん:2010/12/14(火) 13:51:03 ID:???
>>741
ごめん1バイト間違えたのでついでに解説
こっから漢字な:1B 24 42
あ:24 22
漢字ここまでな:1B 28 4A
1:31
で9バイトっす
744nobodyさん:2010/12/14(火) 13:53:48 ID:???
俺、
<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS">

テキストは自動的にANISで保存される

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

テキストは自動的にUTF-8で保存される

っていう無知無知ギャルな認識してんだけどコレ合ってんの?
745nobodyさん:2010/12/14(火) 13:55:25 ID:???
受け取った文字列のencodingをdumpしてみればいいじゃないか
746nobodyさん:2010/12/14(火) 13:56:39 ID:???
>>744
文字コードを指定すると、自動でそのタグ書いてくれる
アプリなら見たことあるけど、それを書くと自動で
文字コードを変更してくれるアプリは見たこと無い。
あるの?
747nobodyさん:2010/12/14(火) 13:59:05 ID:???
>>744
それはブラウザで表示するテキストの文字コードじゃないか?
保存されている文字コードに合わせて、そのタグを書いてやるとブラウザがそれを参考に出力してくれる。
748nobodyさん:2010/12/14(火) 13:59:21 ID:???
>>744
上のなら、 このファイルはShift_JISだぞ、そのつもりで読めよってブラウザに知らせるだけだよ。
749nobodyさん:2010/12/14(火) 14:01:17 ID:???
>>746
笑って良いがutf-8で行うとテキストが勝手にUTF-8で保存されてて
Shift_JISで行うとテキストが勝手にANSIで保存されてたっていう体験談でそう決めてた

まぁutf-8の場合unicode形式の文字送ったらテキストがUTF-8になって
Shift_JISでunicode形式の文字送ったらそのままANSIで数値実体参照変換されたんだろうって事だろうけど
750nobodyさん:2010/12/14(火) 14:02:23 ID:???
>>749
後者で正解・・・・・・だと思う。
751nobodyさん:2010/12/14(火) 14:02:44 ID:???
勘違いしてるとこがあるけど、説明がめんどくさいw
752nobodyさん:2010/12/14(火) 14:02:53 ID:???
あえて文書文字コードと違うものを指定して化けさせて嫌がらせするときにも使えるな
753nobodyさん:2010/12/14(火) 14:04:28 ID:???
ふと、思ったんだが…

雑談もどきを重ねるならば、このスレでやると喜ばれると思いました。

俺が初心者にPHPを伝授する
http://hibari.2ch.net/test/read.cgi/php/1167984858/l50

IDを晒して質問する初心者を、生温かく受け入れてみたい年頃なのです。
754nobodyさん:2010/12/14(火) 14:04:34 ID:???
>>749
解ってるじゃんかよwまどろっこしい奴め
755nobodyさん:2010/12/14(火) 14:06:49 ID:???
>>743
うっわ過疎ってんな
っていうか初心者質問スレしか専門板にぎわってないんだよな
PHPについて適度な雑談するときも質問スレになっちゃってるし

初心者に優しくしてるとソイツが段々力付けてここの住人になってくれてにぎわうとゆー
756nobodyさん:2010/12/14(火) 14:08:57 ID:???
規制+専門板名物キチガイ+板多すぎ
これで新規は質問スレにしか寄り付かないからな
757nobodyさん:2010/12/14(火) 14:12:52 ID:???
んじゃあさ
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
でも「unicodeが含まれててもANSIで保存するぜ俺のphpは!」なんて事できんの?
何か俺ID出して質問したほうがいい気がしてきた・・・。
758nobodyさん:2010/12/14(火) 14:13:49 ID:???
突如沸いたAJAXよりかはマシな流れだと思うけど
759nobodyさん:2010/12/14(火) 14:21:32 ID:???
>>757
保存って変だし、
ANSIってのも変だ。 ANSIって何さw
760nobodyさん:2010/12/14(火) 14:22:18 ID:???
ANSI Cしか思い浮かばんw
761nobodyさん:2010/12/14(火) 14:24:50 ID:???
日本語ウインドウズだとShift_JIS
762nobodyさん:2010/12/14(火) 14:32:53 ID:???
えっと、テキストファイルってのはデフォルトの文字コードがANSIになってる
そんでcharset=Shift_JIS"だとunicodeの文字を送るとサーバーは認識できないからANSIのテキストに変換されて保存される
charset=utf-8だとunicodeの文字を送るとサーバーは認識してテキストファイルにunicodeの文字でUTF8のテキストにそのまま保存される

ふぅ、まぁこんな所だ

んでUTF-8でunicode送ってもテキストファイルAはNSIのまま保存?
それは文字列の文字コード変換でも使えばいいんじゃねーの?
763nobodyさん:2010/12/14(火) 14:33:34 ID:???
>>757
ほれ

<?php
mb_language("Japanese");
$a = "hoge.txt";
touch($a); //文字コードはOS依存(デスクトップで右クリ→ファイルを作成状態)
$s = mb_convert_encoding("あいうえお", "UTF-8", "auto");
file_put_contents($a, $s); //ここでUTF-8になる
764nobodyさん:2010/12/14(火) 14:39:04 ID:???
ついでに
mb_detect_encodingで誤検出大作したほうがいいかも
765nobodyさん:2010/12/14(火) 14:45:10 ID:???
テキストファイルってのはデフォルトの文字コードがANSIになってるってのは、
ウインドウズのメモ帳とかの話?
そしたら、そのまま保存すれば Shift_JISになります。
もちろん2バイト文字が入ってなければ ANSIコードで書かれたファイルと言ってもいいですけど。

ファイルの文字コードなんてないんだよ。なんの文字コードでかいてあるか、中身みないとわからないから
もしくは、読んでもわからないから文字化けするんだよ。
だから、このファイルはこの文字コードで書いたからなって指定するんだよ。
メモ帳で charset=utf-8 っていれて保存したのブラウザで見れば化けまっせ。
PHP関係ないな。
766nobodyさん:2010/12/14(火) 15:03:05 ID:???
>>744>>757
ヘッダで指定しろよ
767nobodyさん:2010/12/14(火) 15:08:07 ID:???
メモ帳で保存すると
     abcde  あいうえお
ANIS    5     10
UTF-8   5     15

だけどサーバー上は関係ねーからな
例えばレスしてログ作ってもunicodeがそのまま保存されても変換されても同じ
768nobodyさん:2010/12/14(火) 15:17:06 ID:???
>>767
えっと、サーバーにアップすると文字コードが変わると思ってる人?
769nobodyさん:2010/12/14(火) 16:09:22 ID:???
>>767
それとも、Ajax最強って思ってる人?
770nobodyさん:2010/12/14(火) 16:23:12 ID:???
charset=shift-JISとなってるphpでunicodeの特殊文字をサーバーで処理したらどうなるの?
771nobodyさん:2010/12/14(火) 16:44:53 ID:???
default_charsetのこと?
772nobodyさん:2010/12/14(火) 17:23:07 ID:???
>>770 それは質問ですか?
773nobodyさん:2010/12/14(火) 17:26:56 ID:???
漢字部分はShiftJISなりEUCなりUnicodeで変換されるんで
ANSIって1バイトコードのことだったような気がするんだが
774nobodyさん:2010/12/14(火) 17:28:53 ID:???
>>772
質問する時はIDを出してくださいね
775nobodyさん:2010/12/14(火) 17:37:00 ID:???
質問やない!
確認や!
776nobodyさん:2010/12/14(火) 17:40:37 ID:???
大変よく出来ました。
777nobodyさん:2010/12/14(火) 17:42:13 ID:???
はなまるっ!
778nobodyさん:2010/12/14(火) 17:45:41 ID:???
センセイション!
779nobodyさん:2010/12/14(火) 17:46:36 ID:???
>>773
変換されるって言ってるけど、何が変換してると思ってるんです?
メモ帳で漢字書きますよね? 1って打ったら31ってコードがはいるでしょ?
あって打ったら 82A0が入るわけでそれで終わり。 そのまま保存されるし、
そのファイル読み込んで表示しても何にも変わらない。PHPが処理しようがなにしようが。
ブラウザで表示させてもブラウザに渡されるのは 3182A0
これを 1あ って表示するかどうかはブラウザがこれはshift-jisだって教えてもらってた場合だけ。
780nobodyさん:2010/12/14(火) 17:54:34 ID:???
>>779
その理屈でいうならwindowsは内部がunicodeであってメモ帳で保存するときに
指定した文字コードへ変換されるんだが
俺はメモ帳でもUTF-8で保存するけどな
781nobodyさん:2010/12/14(火) 18:02:10 ID:???
うそつけ変換されるか
782nobodyさん:2010/12/14(火) 18:12:08 ID:???
783nobodyさん:2010/12/14(火) 18:14:13 ID:???
XPまでのnotepad.exeはSJISのみ対応だったよな

>>780
内部がunicodeなら開く時に文字化けしています。
784nobodyさん:2010/12/14(火) 18:23:49 ID:???
>>780
メモ帳でUTF-8で保存するとBOMでろくなことにならんけどな。

ANSIやっとわかったよ。
メモ帳で CP932で保存するのをANSIって選択させやがるのなwwww
785nobodyさん:2010/12/14(火) 18:30:18 ID:???
まあWindowsプログラマだとしたらShift_JISよりもANSIって言いたくなるかもしれない
786nobodyさん:2010/12/14(火) 18:32:51 ID:???
ならんってw
787nobodyさん:2010/12/14(火) 18:40:35 ID:???
>>783
内部ってファイル内部じゃなくてメモリの話ね
うさみみハリケーンで調べたけどメモリではUTF-16のLEで格納されてた
788nobodyさん:2010/12/14(火) 18:44:38 ID:???
今調べてみたけど、
<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
でフォームからあ*1000を送ってテキストに保存させたら2KB
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
でフォームからあ*1000を送ってテキストに保存させたら3KBだった
789nobodyさん:2010/12/14(火) 18:46:43 ID:???
散々言ってた保存ってのはそのことか。
わからんよw
790nobodyさん:2010/12/14(火) 18:49:02 ID:???
お前ら同じような事話してるようで全くまとまりがねぇ!
少なくとも4人は全く別の話してるぞ!
791nobodyさん:2010/12/14(火) 18:50:38 ID:???
関係ないと思うのを読み飛ばせ。
できなきゃここでいろいろ知るのは無理だw
まともに答えてるの俺ともう一人しかいないけどな。
792nobodyさん:2010/12/14(火) 18:51:19 ID:???
おまえだれだよw
793nobodyさん:2010/12/14(火) 18:54:07 ID:???
だから最初からAjax使えと言っただろ。
794nobodyさん:2010/12/14(火) 19:03:41 ID:???
WindowsならCP932じゃないのか
795nobodyさん:2010/12/14(火) 19:07:16 ID:???
っつーかAjaxってPHPよりJavaScriptって感じじゃねぇー?
796nobodyさん:2010/12/14(火) 19:09:31 ID:???
鯖側の話だろ
797nobodyさん:2010/12/14(火) 19:12:13 ID:???
>>788
UTF-8は全角文字1個ごとに制御文字つけるからバイト数がかさむ
UTF-16は全部2バイトコードにしてあたまに制御文字つけるだけ
そのかわり1バイト文字も2バイトになる
全角文字ばかりならUTF-16で保存すればShift-JISとあまり変わらない
ただPHPだとUTF-16ってイマイチ扱いづらそうな印象なんだがどうなんだろうな
798nobodyさん:2010/12/14(火) 19:16:06 ID:???
>>797
BOMの読み飛ばしとか保存のときに先頭につけるの手動でね
799nobodyさん:2010/12/14(火) 19:25:46 ID:???
JavaScriptのXMLHttpRequestを使ってサーバに非同期でリクエストを送ることができる
サーバからはレスポンスとしてXMLを送ってもらい(プレーンテキストなら何でもいいが)
そのXML(プレーンテキスト)を解釈して結果をJavaScript側で判断するってのが流れだ

サーバに問い合わせる内容が例えばユーザ名の重複チェックだった場合
PHPへリクエストを送りPHPからRDBMSへユーザの照会を行い
重複してるかしてないかの結果と何か便利な付加的な情報があれば加えて
それらRDBMSから取得した情報をXML(実際はry)として送出(レスポンス)する
このように動的にXMLなどのデータを作成して送る必要があるため
必ずサーバサイドの言語と連携する必要がある

俺ってやさしいね
800nobodyさん:2010/12/14(火) 19:27:21 ID:???
静的ファイル読み込んでJSで処理してもいいんだけどね
801nobodyさん:2010/12/14(火) 19:28:03 ID:???
まあユーザ名の処理なんかはサーバーサイドでやらないとな
802nobodyさん:2010/12/14(火) 19:37:11 ID:xhJxB9zD
Linuxで動くシステムを開発しています。

XAMPPを使ってローカルである程度の動きを実装したいと考えていますが
フォルダの階層を表示するときに
Linuxだと/、windowsだと\になります。当然ですが。

プログラム中でファイルをインクルードするときに
パスを記述するときにこの違いはどの様にして対応してますか?

DIRECTORY_SEPARATORをつかってパスを記載してますか?

PHPの設定ファイルとかで簡単にパスの区切り文字を
windowsでも/にする方法とかはありますか?

803nobodyさん:2010/12/14(火) 19:38:21 ID:???
なんか今日俺がどれだけ文字コードちゃんの理解が足りなかったかよくわかった
ごめんねUTF-8ちゃん
804nobodyさん:2010/12/14(火) 19:41:35 ID:???
相対パスにするから意識しない
805nobodyさん:2010/12/14(火) 19:43:26 ID:???
同じく相対だなー
絶対パスに指定するとしても1箇所のみでそこは
DIRECTORY_SEPARATORを使って書く
806nobodyさん:2010/12/14(火) 20:01:09 ID:???
仮想化ソフトとUbuntuで配布してる仮想マシン入れればwindowsでlinux併用できるのに
なんでwindows版の開発環境使うんだろうか
807nobodyさん:2010/12/14(火) 20:33:06 ID:???
Windowsでも開発することはあるけど…
仮想マシンにあるフォルダの共有機能使ってUbuntuで動かしてるわ
808802:2010/12/14(火) 20:39:41 ID:???
>>804 >>805

参考になりました。
私も相対パスを利用していきます。

ありがとうございました。
809nobodyさん:2010/12/14(火) 20:42:54 ID:???
Windowsサーバーで運用してるシステムもたくさんあると思うが
810nobodyさん:2010/12/14(火) 20:43:58 ID:???
>>802=>>808
DIRECTORY_SEPARATOR 使ってるよ
ただインクルードについては、include_pathに入れちゃうからパス指定はしてない。
811サーバー”管理”:2010/12/14(火) 20:46:08 ID:???
あり過ぎて困っています。
812nobodyさん:2010/12/14(火) 20:49:58 ID:???
>>809
>>802さんは「Linuxで動くシステム」と言っているので
それならローカル環境も、極力本番に近いLinuxにしたらという事を
>>806-807さんは言っているのだと思います。
813nobodyさん:2010/12/14(火) 20:53:37 ID:???
丁寧で好感が持てる回答ですね
これを参考にして他の回答者はまともな文章を書きましょう
814nobodyさん:2010/12/14(火) 20:58:13 ID:???
はい
815nobodyさん:2010/12/14(火) 21:13:35 ID:???
どうみてもAjax厨の自演にしか見えないんだけどな
816nobodyさん:2010/12/15(水) 01:02:35 ID:???
mysqlスレに質問するべきかもしれないのですが、
以下の命令を実行すると

$sql = " select log_id, name, mail_address from tokai_member ";
$sql.= " where log_id= '" . $_SESSION["log_id"] . "'";
$res = mysql_query( $sql );
$count = 0;
$info = mysql_fetch_array( $res ) ;

$info["log_id"] $info["name"] $info["mail_address"] にはデータが入るのですが

$sql = " select log_id, name, mail_address from tokai_member ";を
$sql = " select * from tokai_member "; に変えると $info["mail_address"] にだけ、
値が入らないのですが、何が間違えなのさっぱり分かりません。
データベースの方の設定で「*」の時は取得できない設定とかってあるのでしょうか。

環境はWinXp、xamppのmysqlを使っています。
よろしくお願いします。


817nobodyさん:2010/12/15(水) 01:05:46 ID:???
>>1
818nobodyさん:2010/12/15(水) 01:15:10 ID:V9crItGv
失礼しました。

【OS名】WindowsXP
【PHPのバージョン】5
【連携ソフトウェア】MySQL
【質問内容】
mysqlスレに質問するべきかもしれないのですが、
以下の命令を実行すると

$sql = " select log_id, name, mail_address from tokai_member ";
$sql.= " where log_id= '" . $_SESSION["log_id"] . "'";
$res = mysql_query( $sql );
$count = 0;
$info = mysql_fetch_array( $res ) ;

$info["log_id"] $info["name"] $info["mail_address"] にはデータが入るのですが

$sql = " select log_id, name, mail_address from tokai_member ";を
$sql = " select * from tokai_member "; に変えると $info["mail_address"] にだけ、
値が入らないのですが、何が間違えなのさっぱり分かりません。
データベースの方の設定で「*」の時は取得できない設定とかってあるのでしょうか。

819nobodyさん:2010/12/15(水) 01:17:58 ID:???
>>818
それはない。何か見落としてるはず。
820nobodyさん:2010/12/15(水) 04:11:52 ID:???
phpmyadminからの操作はどう?
821nobodyさん:2010/12/15(水) 07:48:29 ID:???
mysql_fetch_assocで
822nobodyさん:2010/12/15(水) 08:47:47 ID:24J/DfE6
質問です
PHPで皆がMySQLとかに自分の情報を書き込むサイトを作ってるのですが
この場合、PHPはアクセス制限かけた所に保存して、書き込みフォームで引き出すという方がいいでしょうか?
それともそのまま書き込みフォームにphpを記入してもいいのでしょうか?

安全面から見るとどっちの方がいいんでしょう?
823nobodyさん:2010/12/15(水) 09:07:07 ID:???
>>822
要するに、public下にスクリプトを置くか、
public下ではhtmlレベルでrequire_onceかなんかでphpを呼び出すかってことかな?

どっちも一緒
824818:2010/12/15(水) 09:22:44 ID:V9crItGv
>>819-821さん、レスありがとうございます。

phpmyadminでの操作では、問題ありません。
phpmyadminのsql画面で同じsql文を実行すると、3項目出てきます。

mysql_fetch_assocというのは、知らなかったので
調べてやってみます。
825nobodyさん:2010/12/15(水) 09:23:21 ID:24J/DfE6
>>823
すみません、publicって皆がアクセスできるところでしたっけ?
とりあえずCGIってcgi-binってフォルダがあってそこに入れる感じじゃないですか?そしてそのフォルダに属性でアクセス制限かけたり

だけどphpってHTMLにそのまま記入してますが大丈夫なんですか?っていう感じです、説明足りずスミマセン
自分はcgiみたいにアクセス制限かけた所に呼び出すphp保存して、phpでではrequire_onceやinclude_onceで呼び出した方が安全に思えるんですが
どっちも一緒なのですか
826nobodyさん:2010/12/15(水) 09:26:37 ID:???
うん一緒
CGIが家で全裸露出するとしたら
PHPは透明人間になって駅前で全裸露出する感じ
827nobodyさん:2010/12/15(水) 09:28:23 ID:???
require_onceとかはプログラムが複雑になったとき同じphpファイルを何回も書き込んで実行しないで
連用して使う感じだからそんな安全重視とかって感じではない
だからこそphpはセキュリティをしっかりやらなければならない
828nobodyさん:2010/12/15(水) 09:34:59 ID:???
>>824
mail_addressが2つあるとかじゃないよな?
829nobodyさん:2010/12/15(水) 09:35:26 ID:24J/DfE6
>>826
解りやすいたとえありがとうございます!
830nobodyさん:2010/12/15(水) 09:39:01 ID:???
>>826>>827
何か違うよーな
831nobodyさん:2010/12/15(水) 09:48:59 ID:???
処理は拡張子に依存しているからファイルの中身がHTML寄りであろうがCGI寄りであろうが
リスクは一緒。
832nobodyさん:2010/12/15(水) 09:53:44 ID:???
おじちゃんたち、どおして働かないのぉ?.exe
833nobodyさん:2010/12/15(水) 10:00:38 ID:???
ブラクラじゃねぇか
834nobodyさん:2010/12/15(水) 10:18:05 ID:V9crItGv
>>828
レス、ありがとうございます。

mail_addressは1つしかありません。
phpmyadminでのsql実行や、「*」を使わずカラム指定した時は
正常に見えるので構造定義等は間違っていないと思いたいのですが。。。

他のカラムと違うのはmail_addressを主キーに指定しているくらいです。
835nobodyさん:2010/12/15(水) 10:48:14 ID:???
それって単にSQLの最初の一行目のmail_addressが空なだけなんじゃねw
836nobodyさん:2010/12/15(水) 10:56:45 ID:???
ORDER BY が無いと読み込む順序は不定。
フィールドを指定したときと*の場合で読む順序が変わってるだけかと。
確かめてみたらプライマリキーを指定したときはプライマリキーの順番、
*やプライマリキーを出力に指定してない場合はINSERTした順番のような感じだった。

なので、835に一票
837nobodyさん:2010/12/15(水) 11:06:51 ID:???
キー定義されてないなら
警告でるし、そのときはNULLのはず。
DBでNULLならNULLだけど。
838nobodyさん:2010/12/15(水) 11:13:25 ID:V9crItGv
>>835-836
レス、ありがとうございます。

>>それって単にSQLの最初の一行目のmail_addressが空なだけなんじゃねw
最初のレコードのmail_addressカラムにデータが入ってないと言うことでしょうか。
データ自体は入っています。(テスト中で3件しかないので)

836さんの言われてることは、mail_addressカラムに全部データが入っていれば
問題ないのですよね。

ただ、 >>プライマリキーを出力に指定してない場合 って言うのが、よく分かりません。
出力する、しないが指定できるのでしょうか?

ちょっと、ググって来ます。
839nobodyさん:2010/12/15(水) 11:15:03 ID:???
>>837
ありがとうございます。
書いてる途中にレスが。。。。

警告みたいなものはでないです。
840nobodyさん:2010/12/15(水) 11:53:05 ID:MdJi7P3P
【OS名】Ubuntu 10.10
【PHPのバージョン】5.3
【連携ソフトウェア】Apache, MySQL
【質問内容】

超ローカルcatv接続なのに規制されました(泣
phpを使って規制解除をしてもらう方法を教えてください
841nobodyさん:2010/12/15(水) 12:01:17 ID:???
PHPとは関係ないので諦めて規制解除をお待ちください
842nobodyさん:2010/12/15(水) 12:54:05 ID:???
PHPにこんな感じの匿名classはないんだっけ?
$class = new {var $m_name = "value"};

>>838
あとは凡ミスしか考えられない
色々と弄り回しているんだろうからデータも再確認した方がいいかも
843nobodyさん:2010/12/15(水) 12:56:54 ID:???
>>1
844nobodyさん:2010/12/15(水) 13:12:58 ID:???
>>818

> $info["mail_address"] にだけ値が入らない

どのようにして、「値が入らない」ことを確認していますか?
実は値が入っていても、「入っていない」と誤って認識してしまうプログラミングをしている可能性はありませんか?

845nobodyさん:2010/12/15(水) 13:20:44 ID:???
if ( $info["mail_address"] = "" ) とかで代入しちゃってるとか
846nobodyさん:2010/12/15(水) 13:26:38 ID:???
$infoをvar_dumpで出力して中身見ろ

>>842
一応あるといっていいのか謎な物はある
$class = new stdClass();
$class->m_name = "value";

こんな感じでプロパティを追加してく
メソッドも一応関数使って追加できたはず
847nobodyさん:2010/12/15(水) 14:55:36 ID:V9crItGv
>>842,844-845
レス、ありがとうございます。

print($info["mail_address"]); とやって確認しています。
他のデータは表示されます。

ここまで来ると凡ミスだと思います。

問題の行の「*」を各カラム指定に変えると、正しく取得できるので
他の行でミスをしてるとは考えづらいのですが、多分、ほんの些細なこと
で引っかかってると思います。

もう一度、しっかりプログラムをチェックしてみます。
848nobodyさん:2010/12/15(水) 15:02:20 ID:???
>>847

プログラムの見直しなどを行って、それでも本当に値が入っていないと判断できたならば、
$info["mail_address"] がどんな状態になっているかを調べませんか?

そして、調べた結果をこのスレに書いてもらえますか?

私個人の経験ではありえない状況であるので、是非にとも、一つの知識として得ておきたいと思いました。

厚かましいお願いで申し訳ありませんが、宜しくお願いします。
849nobodyさん:2010/12/15(水) 15:33:06 ID:???
printじゃなくて var_dump で $info 丸ごと見たいところですよね。
850nobodyさん:2010/12/15(水) 17:03:42 ID:???
>>847
可能ならDBのテーブル構造を示したほうが参考になるかも。
$info["mail_address"]だけが空というのは原因が想像できないので
フィールド名を変えてみたりして試したらどうですか。
"name"と"mail_address"のフィールド名を逆にしたらどうなりますか?
851nobodyさん:2010/12/15(水) 18:21:14 ID:???
凡ミスに対しておまいら不思議なくらいいつまでも親切だな
852nobodyさん:2010/12/15(水) 18:25:26 ID:???
>>851
あなたはこのスレに相応しくないようですのでお引取り願います
853nobodyさん:2010/12/15(水) 19:01:54 ID:???
>>852
そうした言葉は荒れる原因になるので控えて頂けるよう願います
854818:2010/12/15(水) 23:02:39 ID:V9crItGv
皆さん、色々ありがとうございました。
思いっ切り、思い込みによる凡ミスでした。
結論は、大文字小文字の違いによるものでした。

私が、大文字小文字の区別を他言語と混同していたのが原因です。

テーブルの構造の方では「mail_Address」、phpファイルの方では
$info["mail_address"]等「A」と「a」の違いでした。

var_dumpで確認したところ、カラム指定を「*」にすると、連想配列のインデックスは
テーブルの構造で定義された通りの大文字小文字の区別で設定され、
カラム指定の場合は、カラム指定で書いた大文字小文字に修正されて設定されていました。

構造定義では「mail_Address」、select命令で「*」を指定した場合、 $info["mail_Address"] と
なって、カラム指定で「mail_address」と書くと $Info["mail_address"]と設定されました。

なので、「*」でselect文を実行した場合に、print($info["mail_address"]とすると表示されないと
言う事みたいです。

皆さんから、そんなこと当たり前のことだと言われると思いますが、私の様な初心者には
嵌りやすいことかなと思い、長々と書かせてもらいました。

親身にレスを下さってありがとうございました。
855nobodyさん:2010/12/16(木) 00:02:13 ID:???
自動的にmail_Address AS mail_addressって意味になるのか。
それは知らなかったな。
まあ覚えておくべきはこのMySQLの仕様じゃなくてvar_dumpを使うだのといったバグの探し方だよ。
856nobodyさん:2010/12/16(木) 01:56:04 ID:???
とりあえず荒らしから低レベルPHPerに転換したやつは先にAjax勉強しとけ
857nobodyさん:2010/12/16(木) 02:31:19 ID:???
Ajaxを勉強 にすごい違和感、概念を覚えるならまだわかるけど。
858nobodyさん:2010/12/16(木) 03:18:28 ID:swQxSHZw
$tmp = mb_convert_encoding('', 'UTF-8', 'EUC-JP');
echo mb_get_info('illegal_chars'); // 1
$tmp = mb_convert_encoding('', 'UTF-8', 'EUC-JP');
echo mb_get_info('illegal_chars'); // 2

と、mb_get_info('illegal_chars') の値が加算され続けてしまいます。
これを0に戻す方法はないでしょうか?
よろしくお願いします。
859nobodyさん:2010/12/16(木) 06:02:45 ID:???
>>857
概念知ってるのに実装できないのは頭が足りないから
頭が足りないのは勉強するしかない
勉強しても補えないほどのIQの持ち主ならお気の毒だ
860nobodyさん:2010/12/16(木) 06:03:25 ID:???
861nobodyさん:2010/12/16(木) 08:58:58 ID:???
862nobodyさん:2010/12/16(木) 09:11:05 ID:???
>>858
わからんがなさそう。
mb_convert_encodingを実行する直前と直後で値を比べて判断するしかないんじゃない
863nobodyさん:2010/12/16(木) 13:02:54 ID:???
<?php
include_once(dirname(__FILE__).'/A.php');
include_once(dirname(__FILE__).'/B.php');
include_once(dirname(__FILE__).'/C.php');
?>
それぞれABCを実行したいのですがAとBだけでCが実行されません
どうしたら出来るようになりますか?
864nobodyさん:2010/12/16(木) 13:05:13 ID:???
エスパーじゃないと回答無理じゃね
865nobodyさん:2010/12/16(木) 13:08:11 ID:???
inclide_onceだから、他でC.phpをインクルードしてるんじゃね?
866nobodyさん:2010/12/16(木) 13:15:27 ID:???
>>863
ちゃんと呼び出されているのか、include_onceの返り値を確認する。
warningが出てないか確認する。
include_onceじゃなくてincludeかrequireを使ってみる。
867nobodyさん:2010/12/16(木) 13:27:41 ID:???
C.phpを書く。
ないものはインクルードされない
868nobodyさん:2010/12/16(木) 13:29:05 ID:???
初心者はエラーをディスプレイ表示にした方が良いぞ
869nobodyさん:2010/12/16(木) 13:31:02 ID:???
初心者じゃありません。Ajaxについてはあなた方より詳しいです。
870nobodyさん:2010/12/16(木) 13:34:20 ID:???
自称非初心者は大抵素人
871nobodyさん:2010/12/16(木) 13:37:39 ID:???
素人じゃありません。JAXAについてはあなた方より詳しいです。
872nobodyさん:2010/12/16(木) 13:42:27 ID:???
21日は皆既月蝕だってさ
873nobodyさん:2010/12/16(木) 13:44:49 ID:???
月食を月蝕と書かれると気持ち悪い
874nobodyさん:2010/12/16(木) 13:47:23 ID:???
素人じゃありません。一人遊びについてはあなた方より詳しいです。
875nobodyさん:2010/12/16(木) 13:52:34 ID:???
月食月蝕ウゼェ。
たまには、NetBeansのことも……
876nobodyさん:2010/12/16(木) 13:57:40 ID:???
Oracleキモい視ね
877nobodyさん:2010/12/16(木) 13:58:58 ID:???
include使ってみろって言ってる奴はあほなのか・・・?
それならまだrequireかrequire_once使えって言えよ・・・
<?php
error_reporting(E_ALL);
require_once(dirname(__FILE__).'/A.php');
require_once(dirname(__FILE__).'/B.php');
require_once(dirname(__FILE__).'/C.php');

これで実行してみろ
878nobodyさん:2010/12/16(木) 14:00:16 ID:???
あほじゃありません。カフェインの中毒性についてはあなた方より詳しいです。
879nobodyさん:2010/12/16(木) 14:21:47 ID:???
includeならエラーがあっても続くだろ
880nobodyさん:2010/12/16(木) 14:31:14 ID:???
<?php
error_reporting(E_ALL);
ini_set("display_startup_errors","on");
require_once(dirname(__FILE__).'/A.php');
require_once(dirname(__FILE__).'/B.php');
require_once(dirname(__FILE__).'/C.php');

こっちの方が良いな
エラーがあっても続くのはincludeもinclude_onceも一緒
881nobodyさん:2010/12/16(木) 15:09:41 ID:???
>AとBだけでCが実行されません

なんだから、includeの問題じゃないだろ。
Cがないか、スペルが間違っているか、全角半角が間違ってるか
要するに、そういうレベルの話だろ。
882nobodyさん:2010/12/16(木) 15:20:20 ID:???
Bでexitしてるとかそういうこともありえる。
883nobodyさん:2010/12/16(木) 15:41:22 ID:???
簡単な質問だとイキイキするなおまいら
884nobodyさん:2010/12/16(木) 15:42:20 ID:???
includeを使ってみろと書いたのは>>865の言うように他で既にincludeしている可能性を確認するため。
include_onceでも返り値を確認すれば済む話。
885nobodyさん:2010/12/16(木) 15:43:30 ID:???
error_reportingとか書いてる奴はあほなのか・・・?
それならまだAjax使えって言えよ・・・
886nobodyさん:2010/12/16(木) 15:50:15 ID:???
Ajaxじゃありません。error_reportingについてはあなた方より詳しいです。
887nobodyさん:2010/12/16(木) 16:07:38 ID:???
888nobodyさん:2010/12/16(木) 16:10:51 ID:???
>>887
反応が鈍すぎます。
該当レスが書き込まれて30分以内にレスできない場合は無駄なリソース消費を
抑えるためにレスを控えるようスクリプトを改善して下さい。
889nobodyさん:2010/12/16(木) 16:15:47 ID:???
>>888
訂正スクリプトの割に反応が遅いですね。
スレッドの巡回間隔をもう少し短くして下さい。
890nobodyさん:2010/12/16(木) 16:21:15 ID:???
>>864-889
>>694
ID出さない奴に答えてんじゃねぇよ。荒らしかよクズが
891nobodyさん:2010/12/16(木) 16:22:40 ID:???
スクリプト言語なんだから途中経過を示す表示でも入れてテストすればわかる。

全ID表示なら透明あぼーんで解決するのにね。
892nobodyさん:2010/12/16(木) 16:24:13 ID:???
言ってる意味が全くわかりません
893nobodyさん:2010/12/16(木) 16:27:13 ID:???
IDなくてもあぼ〜ん出来るけどな
894nobodyさん:2010/12/16(木) 16:30:20 ID:???
言ってる意味が全くわかりません
895nobodyさん:2010/12/16(木) 16:41:59 ID:???
お前がその筆頭だけどな(藁
896nobodyさん:2010/12/16(木) 19:31:31 ID:WN9KAPbv
【OS名】Windows Vista Homebasic
【PHPのバージョン】5.31
【連携ソフトウェア】特になし
【質問内容】
Xamppから一式インストールして、PHPに挑戦中なのですが、
PDFファイルのダウンロード(或いはブラウザ上で表示)するページが作れません。
以下のサイトを参考に作成したのですが、PDFファイルが
全てテキストファイルとして表示(文字化け)されてしまいます。

IEだとContent-typeが無視される問題があると知り、
FireFoxでも試してみましたが、同じ結果でした。

考えられる原因は何があるでしょうか。よろしくお願いいたします。

参考サイト
ttp://code.nanigac.com/source/view/462
ttp://shoyu-ramen23.jugem.jp/?eid=64
897nobodyさん:2010/12/16(木) 19:33:40 ID:???
XAMPP
898nobodyさん:2010/12/16(木) 19:44:29 ID:???
>>896
ファイルがあるんなら、すなおにリンクして 右ボタンおして保存してねって逃げればどうよというのはおいといて、

header前になんか書き出してないかチェック。

駄目なら

header('Content-type: application/pdf');
header('Content-Disposition: attachment; filename="sample.pdf"');

だけでテスト
899nobodyさん:2010/12/16(木) 19:55:27 ID:???
>>896
初心者がXAMPP使うな
900nobodyさん:2010/12/16(木) 19:56:58 ID:???
じゃあ何使えばいいのさ
901nobodyさん:2010/12/16(木) 20:08:04 ID:???
>>854

なるほど

状況が理解できました。

連想配列の索引、表の定義、SQLを絡めて、大変にためになる事例でした。

結果報告にお礼します。

ありがとうございました。

902896:2010/12/16(木) 20:22:09 ID:WN9KAPbv
>>897
XAMPPですね。ありがとうございます。

>>898
とりあえず、それだけのPHPファイルを作成したらうまく動きました。
ありがとうございます。

ただ原因がいまいち分からないので、また暫く自分なりに
挑戦してみてダメだったらここで再び質問させて頂こうと思います。
903nobodyさん:2010/12/16(木) 22:52:18 ID:???
>>897
AJAXですね。ありがとうございます。
904nobodyさん:2010/12/17(金) 06:06:59 ID:???
AJAXじゃありません。初心者についてはあなた方より詳しいです。
905nobodyさん:2010/12/17(金) 08:03:34 ID:???
そろそろスレ違いに気付いて移動しろ
906nobodyさん:2010/12/17(金) 08:47:30 ID:???
スレ違いじゃありません。JAXAについてはあなた方より詳しいです。
907nobodyさん:2010/12/17(金) 09:42:21 ID:???
>>906
先日の周回衛星の失敗原因は何ですか?
908nobodyさん:2010/12/17(金) 09:56:16 ID:???
想定外の月蝕の発生によるものです
909nobodyさん:2010/12/17(金) 11:34:27 ID:2FWeMtu8
DBのソート処理とか、プログラムにソート処理させたほうがDBに負荷かからないよな
皆は、どの程度PHPがわに処理させる?
910nobodyさん:2010/12/17(金) 11:38:13 ID:???
DBで出来ることはDBでやれ
911nobodyさん:2010/12/17(金) 11:40:42 ID:???
1台のサーバーにDBもウェブサーバーも載ってる状態ならどっちで処理しても大差無い
負荷分散を考慮するなら検討する必要がある
912nobodyさん:2010/12/17(金) 11:56:18 ID:???
憶測だがPHPのほうが負荷かかるんじゃね?
10万レコードぐらい用意してDBソートとPHPソートでベンチマーク測ってみなよ
913nobodyさん:2010/12/17(金) 12:14:01 ID:???
サーバー構成等にもよるからどーとは言えない
けど基本的にDBで出来る事はDBでって感じだな・・・
914nobodyさん:2010/12/17(金) 12:34:12 ID:???
データ量の多いものは一般的にDBで処理する。
少ないものは大差ないので好きな方で処理すれば良い。

一時期、DBに何でも放り込むなという議論があったけど
あれは結局どうなったのでしょうね?
915nobodyさん:2010/12/17(金) 13:58:32 ID:???
ユーザーがアップロードした画像データやバイナリファイルも全て
DBに登録するのが吉。
916nobodyさん:2010/12/17(金) 14:00:15 ID:???
AjaxもすべてDBで処理すべき
917nobodyさん:2010/12/17(金) 14:01:13 ID:???
DBは分かりませんがAjaxについてはあなた方より詳しいです。
918nobodyさん:2010/12/17(金) 14:53:40 ID:???
ここ参考になるわぁ
皆さんの高い技術レヴェルのお話はいつも勉強になってます
僕もAJAXをマスターしてPHP余裕になります
919nobodyさん:2010/12/17(金) 15:06:42 ID:???
おいはやく$var = function(){};書けるようにしろよ
920nobodyさん:2010/12/17(金) 16:46:59 ID:???
>>919
おいはやく$var = function(){};書ける言語を使えよ
921nobodyさん:2010/12/17(金) 17:15:03 ID:???
var = function(){};ならAjaxで間違いない!
922nobodyさん:2010/12/17(金) 17:30:23 ID:???
サーバーサイドjavascriptか
923nobodyさん:2010/12/17(金) 17:57:03 ID:???
すみません、とんでもなく初歩的なんですが

<?php
echo "<h1 class="title">見出し</h1>";
?>

これでエラーが出るのはどうしてでしょうか…
かれこれ小一時間調べてるんですが…('A`)
924nobodyさん:2010/12/17(金) 17:59:22 ID:???
echo "<h1 class=\"title\">見出し</h1>";
925nobodyさん:2010/12/17(金) 17:59:42 ID:???
>>923
これこそ>>1といわれるべきだよな
926nobodyさん:2010/12/17(金) 18:03:50 ID:???
>>923
echo "<h1 class=title>見出し</h1>";
927nobodyさん:2010/12/17(金) 18:19:55 ID:???
すみません、とんでもなく専門的なんですが

<?php
echo "<h10 class="title">見出し</h10>";
?>

これでエラーが出るのはどうしてでしょうか…
かれこれ小十時間調べてるんですが…('A`)
928923:2010/12/17(金) 18:22:25 ID:???
>>924,926
ありがとうございます!
1日目で挫折するかと思った…これからもっと勉強していきます
929nobodyさん:2010/12/17(金) 18:24:21 ID:???
>>927
あと30秒考えればわかるのに、なぜ諦める?
930nobodyさん:2010/12/17(金) 18:26:36 ID:???
>>929
ありがとうございます!
10日目で挫折するかと思った…これからもっと勉強していきます
Ajaxを。
931nobodyさん:2010/12/17(金) 18:28:32 ID:???
できたかできないかじゃなく
理解したかしていないか書けよ
932nobodyさん:2010/12/17(金) 18:37:57 ID:???

その前に ID 出して書けよ

その前に Ajax 厨は他スレに行けよ

933nobodyさん:2010/12/17(金) 18:44:22 ID:???
理解したかどうかですが、少なくともAjaxaについてはあなた方より詳しいです。
934nobodyさん:2010/12/17(金) 19:06:46 ID:???
>>1

> 次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。

現在、934 ですから残りは46ですね。

そろそろ、煽り厨が静かになる頃でしょうか?

935nobodyさん:2010/12/17(金) 19:44:35 ID:j3isg1G8
PHP関数のmysql_xxx()とか古いから使うな的なこと言われてるけど、
PDOもMDB2同様、内部でmysql_xxxとかpg_xxxとか使ってるで合ってる?
936nobodyさん:2010/12/17(金) 20:26:05 ID:???
$_REQUESTってどうなん?
今解析してるコードが全て$_REQUESTなんだけど
937nobodyさん:2010/12/17(金) 20:42:32 ID:???
ID出さない質問者には全てAjaxで答えます
938nobodyさん:2010/12/17(金) 21:03:26 ID:???
>>935 PDOについてはコードが公開されているから自分で見てみることをお勧めします。

>>936 ID が出ていないから質問じゃないですよね?

>>937 何事も「ほどほど」にね。
939nobodyさん:2010/12/17(金) 21:52:28 ID:???
ほどほどにしてほしいのはスレタイも1すらも読まない質問者のほうだわ
940935:2010/12/17(金) 22:22:19 ID:j3isg1G8
自分で見たけどZEND API詳しく知らないから、はっきりわからなくて質問したんだ。
PHPソースをVSに突っ込むとPCごと落ちるしスペック的に厳しい。
MySQLで調べてみると、
php-5.3.3/ext/pdo_mysql/mysql_driver.c
あたりでmysql_stmt_prepare(), mysql_close() とか使ってるけど、
それはPHP関数のmysql_*()じゃなく、
php-5.3.3/ext/mysqlnd/*
で定義されてる関数を使ってて、
ext/mysql/*
ext/mysqli/*
も同様。つまりPDOもPHP関数のmysql_*も同じ関数を参照してる。で正しいかな。
941nobodyさん:2010/12/18(土) 00:07:33 ID:???
>>938ってAjax厨だろ?
何しれーっとして初心者回答者ぶってんの?
クソワロスwwwwwwwwww
942nobodyさん:2010/12/18(土) 00:31:33 ID:???
一番低レベルのAPI使って普通実装するんじゃない
CにPDOのようなものが拡張APIがあったとしても
それで実装するようなことはしないんじゃないかな
943nobodyさん:2010/12/18(土) 01:34:40 ID:???
一番低レベルのAjax使って普通実装するんじゃない
COBOLにJAXAのようなものが拡張Jaxascriptがあったとしても
それで実装するようなことはしないんじゃないかな
944nobodyさん:2010/12/18(土) 10:26:05 ID:???
>>Ajax厨

不思議と静かになりましたね。
9時間も書き込みが無いなんて、このスレらしくないですね。
945nobodyさん:2010/12/18(土) 11:21:20 ID:GFOQOe1n
素人質問ですが、たまにweb見てると
http://www.hogehoge.com/-/index/p/answer_yes=1/
みたいなURLがあります。

この/-/っていうのは何をしてるんでしょうか?
具体的にこのケースで何をしてるかなんてわからないにしても、
たとえばどういう時にこういう処理をするのか知りたいです。

言語にもよるかも知れないですが、とりあえずPHPという前提で教えてください
よろしくお願いします
946nobodyさん:2010/12/18(土) 11:23:44 ID:???
>>945
ディレクトリだろ・・・
947nobodyさん:2010/12/18(土) 11:25:36 ID:???
>>945
Ajaxだろ・・・
948nobodyさん:2010/12/18(土) 11:33:30 ID:???
ディレクトリだろうとAjaxだろうとすべてDBに入れれば解決
949nobodyさん:2010/12/18(土) 11:34:37 ID:???
>>945
それより /answer_yes=1/ に興味を持って欲しいものだな。
950nobodyさん:2010/12/18(土) 11:42:20 ID:???
>>945
mod_rewrite
951nobodyさん:2010/12/18(土) 11:43:32 ID:???
/answer_1=yes/ にしろ
952nobodyさん:2010/12/18(土) 11:44:50 ID:???
/answer_1=Ajax/ にしろ
953nobodyさん:2010/12/18(土) 11:50:09 ID:???
?name=valueにすると検索エンジンに嫌われるとかでmod_rewriteで変換しているサイトがあります
954nobodyさん:2010/12/18(土) 11:57:51 ID:rgAUSlhv
【OS名】Redhat系
【PHPのバージョン】5.2
【連携ソフトウェア】PostgreSQL8
【質問内容】

画面が10個とか有るシステムで、画面毎にセッション変数の名前がぶつからない様に
$_SESSION["AAA_BBBB_CCCCCCCC_DDDDDDDDD"]
とかいう名前で、1画面毎に50個位変数を作っていたのですが、

先日ふと「SESS_」をみて愕然としました。名前がいちいち書いてあったからです。

(名前を小さくしろと言うのは根本的な解決策で、それはそれでそうなのですが、)

思ったのは、上記名前を、
$_SESSION["AAA_BBBB"]["CCCCCCCC_DDDDDDDDD"]
の様にしたら、「SESS_」の中身が減るのでは、で、実際やったらそれなりに
減りました。(前半の名前は画面を表します。)

質問ですが、
1.配列の配列にして、なにか(隠れたとんでもない)問題がおきないでしょうか?
2.速度は、やはり後の書き方の方が遅いでしょうか?

なお、値は整数か、数字1文字か、漢字数十文字です。

よろしくお願いいたします。
955nobodyさん:2010/12/18(土) 12:15:24 ID:???
>>954
セッション変数といっても特に特別なことはなくてvar_exportと同じような感じでファイルに書き込まれるだけだよ
956nobodyさん:2010/12/18(土) 12:16:51 ID:???
ごめselializeの方が適切か
957nobodyさん:2010/12/18(土) 12:19:39 ID:???
>>954

> 先日ふと「SESS_」をみて愕然としました。名前がいちいち書いてあったからです。
> 「SESS_」の中身が減るのでは、で、実際やったらそれなりに減りました。

減らせることで何を得たかが判然としません。


> 1.配列の配列にして、なにか(隠れたとんでもない)問題がおきないでしょうか?

ここで問題は発生しないと答えを得たとして、後に問題が発生したらどうするのでしょうか?


> 2.速度は、やはり後の書き方の方が遅いでしょうか?

何をもって、「遅い」もしくは「早い」と判断するのでしょうか?


書かれている質問の文章では、質問の意図が読み取り難いです。
お手数ですが、もう少し文章を練ってから質問をしてもらえますか?
958nobodyさん:2010/12/18(土) 12:30:43 ID:???
>>954
$_SESSION["Ajax"]
959nobodyさん:2010/12/18(土) 12:34:02 ID:???
>>958
これは凄い!
ありがとうございました
960945:2010/12/18(土) 13:52:10 ID:GFOQOe1n
>>946
文字通り - ってディレクトリがあるってことですか?
素直にそう解釈して良いのかな?
961nobodyさん:2010/12/18(土) 13:57:25 ID:???
>>960
ぶっちゃけ、作った人に聞かないとわからない
ディレクトリがあるのかmod_rewriteなのかこっちから調べる方法はない
962nobodyさん:2010/12/18(土) 13:58:12 ID:???
その2つとも限らない
963945:2010/12/18(土) 14:58:06 ID:GFOQOe1n
>>961
まあそうですよね〜
でも時々/-/ってのをいろんなところでみるんで、
ああいうパスを使うもの凄く一般的なテクニックとか便利なプラグインがあるのかと思いました
んー、気になる
964nobodyさん:2010/12/18(土) 15:01:05 ID:???
どこで見るの?
965nobodyさん:2010/12/18(土) 15:04:37 ID:???
>>963
まぁ、恐らくはmod_rewriteで置換してるとは思うが
それか、独特のフレームワーク使ってるとか

ZendFW使ってる人はデフォルトで「http://hogehoge.com/controller名/action名/var(GET)/value/」
966945:2010/12/18(土) 15:16:50 ID:???
>>965
自分もZendFW使ってるんですけど、あれの例だとコントローラ名やモジュール名を隠す為に
というか、-って名前のコントローラ名にしてるんですかね
あ、でもそれだとコントローラやモジュールの命名規則に反するような… わからんなぁ

初心者向けのPHPでアプリ開発みたいな本何冊も読んだけど「-」て使うの見たことないんで
何か高等テクニックなのかと… 気になる
mod_rewriteでコントローラ・モジュール名隠してるって考えるのが普通かなぁ
967nobodyさん:2010/12/18(土) 15:19:34 ID:???
amazonだろ多分
968nobodyさん:2010/12/18(土) 15:21:49 ID:???
969nobodyさん:2010/12/18(土) 15:39:33 ID:???
>>966
だからサンプル出せと
システムによるだろ
あとID忘れずに
970nobodyさん:2010/12/18(土) 15:44:50 ID:???
このスレで議論されている事の8割はAjaxで3行で説明できる
971nobodyさん:2010/12/18(土) 15:52:20 ID:???
>>970
3行でAjaxの処理も加えて議論されてることのどれでもいいから
自分で選んで説明してくれ
ただし1行80文字までな
972nobodyさん:2010/12/18(土) 15:54:36 ID:???
>>971
質問はIDを出すようにしてください
973nobodyさん:2010/12/18(土) 16:02:54 ID:???
>>969
横レスだがいいか?
http://jbpress.ismedia.jp/articles/-/5076
974nobodyさん:2010/12/18(土) 16:14:11 ID:???
975^:2010/12/18(土) 17:47:32 ID:???
IDってどうやって出すのですか?
976nobodyさん:2010/12/18(土) 17:48:24 ID:???
>>975
メール欄の「sage」を消せばいいよ
977nobodyさん:2010/12/18(土) 17:55:12 ID:???
>>976

>>1 を読んでください。

IDを出さない質問には安易に応えないように。Ajax厨が湧いて出てくるからね。
978^:2010/12/18(土) 18:00:13 ID:???
質問です。PHPでJAXAから衛星を発射できますか?
979nobodyさん:2010/12/18(土) 19:04:46 ID:???
可能です。PHPならば何でも出来ます。
北朝鮮が攻撃してきてもPHPが守ってくれます。
普天間基地問題もPHPが対応してくれます。

>>980
>>1
> 次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。
980nobodyさん:2010/12/18(土) 19:37:11 ID:???
空気読まない馬鹿どもは隔離スレいけ
次スレもこんなんだったら優良回答者様が一人居なくなると思え
981nobodyさん:2010/12/18(土) 20:02:53 ID:???
>>980

次スレ立てをよろしく!
982nobodyさん:2010/12/18(土) 20:11:09 ID:???
983nobodyさん:2010/12/18(土) 22:07:23 ID:???
今独学でPHPを勉強しています。本当に初歩的なことを聞きたいんですが…

<?php
function zeikomi($nedan) {←
$nedan = $nedan * 1.05;
return $nedan;
}←

←印の{}は関数だから使うってことなんでしょうか?
PHP初心者のサイトを見てて、いきなり{}が出てきたので
よく理解できなかったので…
是非教えてください
984nobodyさん:2010/12/18(土) 22:14:40 ID:???
>>954

> 先日ふと「SESS_」をみて愕然としました。名前がいちいち書いてあったからです。
の意味がわからないんだけど。
session id のことだとして、画面毎に session id を変えてるのか?
985nobodyさん:2010/12/18(土) 22:16:25 ID:xdLeb3mA
>>983です
ID出すの忘れました
986nobodyさん:2010/12/18(土) 22:16:34 ID:???
>>983

>>1
どういたちうまちて
987nobodyさん:2010/12/18(土) 22:23:18 ID:???
>>985
{}を使うのは関数だけでなくif文、for文など沢山のシーンで使われます。
http://www.php.net/manual/ja/control-structures.if.php
そのた、文字列内で変数を展開する際にも使われます。

公式マニュアルにざっと目を通すといいでしょう。
http://www.php.net/manual/ja/index.php
988nobodyさん:2010/12/18(土) 22:30:46 ID:xdLeb3mA
>>987
レスありがとうございます。
変数だけではなく、if文やfor文でも使うんですね。
まだ理解しきれてないですが、目を通して理解していこうと思います
ありがとうございました。
989983:2010/12/18(土) 22:40:43 ID:xdLeb3mA
度々の質問すいません
本を買おうと思ってたんですが

>>1を読むと
(PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。)

市販の書籍は嘘って書いてますが、なぜ嘘なのでしょうか?
市販の書籍は買わない方がいいですか?
990nobodyさん:2010/12/18(土) 22:48:23 ID:???
「鵜呑みにしない」

結構スキルが無い人が書いていてconfigを分かってなかったり、セキュリティが不十分だったり
バージョンアップで挙動が変わったりするから
あくまで参考程度に留めておいて自分でマニュアル読んで確認したほうが良いよということ。
そのほうが勉強にもなるしね。
991983:2010/12/18(土) 22:51:43 ID:xdLeb3mA
>>990
なるほど
そういう事なんですね
では、本を頼らず、自分で調べたり確認したりしようと思います
ありがとうございました。
992nobodyさん:2010/12/18(土) 23:13:27 ID:3yLhGk6x
for文で、$abc[interval*]の値を$nextに代入したいのですが、
(*は1〜$numまで)

for($loop=1;$loop<=$num;$loop++){
$next = ${'abc[interval'.$loop.']'};
var_dump($next);
}

としても、ループはしますが$nextはnullのままです

print "${abc[interval.$loop]}";
とすると、ちゃんと表示されるのですが、
計算式でこれを書くと文法エラーになります。

どのように書くのが適切でしょうか。
993nobodyさん:2010/12/18(土) 23:31:45 ID:???
$abc['interval'.$loop]
994nobodyさん:2010/12/18(土) 23:48:57 ID:???
>>993
ありがとうございます!できました!
995nobodyさん:2010/12/19(日) 15:50:41 ID:tGqZvcRh
apiから情報を取るとき、file_get_contentsに失敗する時があるので、
以下のように2回トライしています。

$url = 'http://www.groupon.jp/api-v2/?type=area';
$items = @file_get_contents($url);

if(empty($item)) {
$item = @file_get_contents($url);
}


失敗するのはサーバ側の問題なのでしょうがないのでしょうか?
また、上のやり方がまずい方法であれば、指摘してもらえるとありがたいです。
996nobodyさん:2010/12/19(日) 15:52:23 ID:???
タイムアウト時間を長くしてやれ
997nobodyさん:2010/12/19(日) 15:55:03 ID:???
>>995
失敗ってどんな失敗?
リトライの設定はないっぽいけどタイムアウトを伸ばしたいなら設定で変えられるよ
998nobodyさん:2010/12/19(日) 15:57:22 ID:???
whileで成功するまで繰り返せwwwwwwwww
999nobodyさん:2010/12/19(日) 16:00:33 ID:tGqZvcRh
>>996 >>997

失敗は単純にURLから情報を取得できないといった形だと思います。
タイムアウトの設定という方法があるんですね。
その方向で調べてみます。

ありがとうございます。
1000nobodyさん:2010/12/19(日) 16:09:33 ID:???
>>999
エラーコードにもいろいろあって対策も変わるのでちゃんと見たほうがいいよ
10011001
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。