【PHP】下らねぇ質問はここに書き込みやがれ 70
レス数が1000を超えています。これ以上書き込みはできません。
0001nobodyさん
2008/06/25(水) 10:14:08ID:???PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り
次スレは970が立ててください立たなかった場合は980よろ
◆前スレ
【PHP】下らねぇ質問はここに書き込みやがれ 69
http://pc11.2ch.net/test/read.cgi/php/1211879073/
◆質問する時の注意
・ サーバーのOS(Linux、Windows他)、WebサーバーとPHPの種類やバージョン等を必ず明記すること。
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
・偽者防止に必ずIDを表示(メール欄に何も記述しない)、若しくはトリップをつける事。
◆質問後の注意
・偽者防止に必ずIDを表示(メール欄に何も記述しない)、若しくは質問時のトリップをつける事。
・2回目以降は最初に質問した際のレス番号を名前欄に入れること。
・解決しなくても回答をもらった場合はお礼を言うこと。
(荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)
◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。
【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで
0002nobodyさん
2008/06/25(水) 10:14:38ID:???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プログラムとして実行された結果になる。
10. そもそもインストールの時点でうまくいかない
→ 確認すべきはPHPのconfigureの引数、php.iniの内容と置き場所、
Webサーバの設定(Apacheならhttpd.conf)、起動&再起動あたり
0003nobodyさん
2008/06/25(水) 10:14:52ID:???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.を参照
0004nobodyさん
2008/06/25(水) 10:15:02ID:???21. 画像処理一般 or GDの限界
→ ImageMagick(PECLのやつ or シェルから実行)
22. 画像・音・動画はファイルで保存?DBに保存?
→ 好きにしてください
0005nobodyさん
2008/06/25(水) 10:15:15ID:???■本家マニュアル 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://smarty.php.net/
■Zend本家 http://www.zend.com/
■Zend Framework http://framework.zend.com/
■php | architect http://www.phparch.com/
■Smartyマニュアル http://smarty.php.net/manual/en/
■PECL本家(英語) http://pecl.php.net/
0006nobodyさん
2008/06/25(水) 10:16:09ID:???【PHP】下らねぇ質問はここに書き込みやがれ 69
http://pc11.2ch.net/test/read.cgi/php/1211879073/
【PHP】下らねぇ質問はここに書き込みやがれ 68
http://pc11.2ch.net/test/read.cgi/php/1209822736/
【PHP】下らねぇ質問はここに書き込みやがれ 67
http://pc11.2ch.net/test/read.cgi/php/1207863515/
【PHP】下らねぇ質問はここに書き込みやがれ 66
http://pc11.2ch.net/test/read.cgi/php/1205655807/
【PHP】下らねぇ質問はここに書き込みやがれ 65
http://pc11.2ch.net/test/read.cgi/php/1203854597/
【PHP】下らねぇ質問はここに書き込みやがれ 64
http://pc11.2ch.net/test/read.cgi/php/1202536271/
【PHP】下らねぇ質問はここに書き込みやがれ 61
http://pc11.2ch.net/test/read.cgi/php/1201425479/
【PHP】下らねぇ質問はここに書き込みやがれ 62
http://pc11.2ch.net/test/read.cgi/php/1199956159/
【PHP】下らねぇ質問はここに書き込みやがれ 61
http://pc11.2ch.net/test/read.cgi/php/1198002831/
【PHP】下らねぇ質問はここに書き込みやがれ 60
http://pc11.2ch.net/test/read.cgi/php/1196511516/
【PHP】下らねぇ質問はここに書き込みやがれ 59
http://pc11.2ch.net/test/read.cgi/php/1195204145/
【PHP】下らねぇ質問はここに書き込みやがれ 58
http://pc11.2ch.net/test/read.cgi/php/1194084457/
【PHP】下らねぇ質問はここに書き込みやがれ 57
http://pc11.2ch.net/test/read.cgi/php/1193062236/
0007nobodyさん
2008/06/25(水) 10:19:00ID:???くだすれPHP(超初心者用)4
http://pc11.2ch.net/test/read.cgi/php/1213356756/
PHP関連の書籍 第6版
http://pc11.2ch.net/test/read.cgi/php/1213919075/
【PHP】フレームワーク CakePHP 4ホール目【v1.2】
http://pc11.2ch.net/test/read.cgi/php/1213892680/
【PHP】 Smarty 隔離スレ 【テンプレート】
http://pc11.2ch.net/test/read.cgi/php/1201879269/
PHP総合雑談スレ
http://pc11.2ch.net/test/read.cgi/php/1200314111/
【PHP】フレームワークについて語るスレ10【総合】
http://pc11.2ch.net/test/read.cgi/php/1202521438/
【PHP】Ethna part.2【国産フレームワーク】
http://pc11.2ch.net/test/read.cgi/php/1186096518/
ZendFramework Part2
http://pc11.2ch.net/test/read.cgi/php/1204726884/
フランチョスとsymfony
http://pc11.2ch.net/test/read.cgi/php/1201177567/
最強のPHPエディタはなに?
http://pc11.2ch.net/test/read.cgi/php/1133785416/
0008nobodyさん
2008/06/25(水) 10:21:49ID:???http://pc11.2ch.net/test/read.cgi/php/1188789351/
【PHP】フレームワーク Akelos
http://pc11.2ch.net/test/read.cgi/php/1187333485/
正規表現道場
http://pc11.2ch.net/test/read.cgi/php/1168450843/
正規表現 Part5
http://pc11.2ch.net/test/read.cgi/tech/1212498448/
MySQL 総合 Part14
http://pc11.2ch.net/test/read.cgi/db/1213319883/
Oracle 総合 Session6
http://pc11.2ch.net/test/read.cgi/db/1162215948/
SQLite 6
http://pc11.2ch.net/test/read.cgi/db/1193118037/
Microsoft SQL Server 総合スレ 6
http://pc11.2ch.net/test/read.cgi/db/1207377114/
PostgreSQL Part.5
http://pc11.2ch.net/test/read.cgi/db/1196512717/
データベース
http://pc11.2ch.net/db/
0009nobodyさん
2008/06/25(水) 12:12:15ID:???全く見当たらない
0010nobodyさん
2008/06/25(水) 12:45:34ID:???=== MediaWiki 管理者の集い 第2版 ===
http://pc11.2ch.net/test/read.cgi/php/1183501450/
こちらへどうぞ
0012nobodyさん
2008/06/25(水) 15:52:40ID:???PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り
◆前スレ
【PHP】下らねぇ質問はここに書き込みやがれ 69
http://pc11.2ch.net/test/read.cgi/php/1211879073/
◆質問する時の注意
・ 自分のIDを表示させること。(メール欄に何も記述しないこと。空白も入力しちゃダメ)
・ サーバーのOS(Linux、Windows他)、WebサーバーとPHPの種類やバージョン等を明記すること。
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
◆質問後の注意
・偽者防止に必ずIDを表示させること。(メール欄に何も記述しない)
・2回目以降は最初に質問した際のレス番号を名前欄に入れること。
・解決しなくても回答をもらった場合はお礼を言うこと。
(荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)
◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。
【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで
0013nobodyさん
2008/06/25(水) 17:26:02ID:???・取得したいXMLの内容
<results>
<SAVE_COUNT u="http%3A%2F%2Fblog.katsuma.tv%2F" ct="1"/>
</results>
・どうしたいのか?
上記の u= と ct= の値を simplexml 関数を使って取得したいのですが、うまくいきません。
print_r($xml->SAVE_COUNT);
で
SimpleXMLElement Object
(
[@attributes] => Array
(
[u] => http%3A%2F%2Fblog.katsuma.tv%2F
[ct] => 1
)
)
となるのですが・・・。
ct と u っていうのは要素になるのでどうやれば取得できますでしょうか。
教えて下さい。よろしくお願いします。
0014nobodyさん
2008/06/25(水) 17:33:26ID:???0017nobodyさん
2008/06/25(水) 18:19:49ID:???先人が議論して作りあげてきたものを独断で変えるなよ
トリップがだめなのはトリップをつければsageたままでいいという馬鹿が生まれるからだ
質問者はスレをあげるのがここでのマナー
あげれば回答者は質問があることがわかるしスレも上位にあると際立って人がきやすいからだ
有効な回答をほしいと思ってるのならageて当然
つまりsageたままでは適当な回答でいいと言ってるようなもの
偽者防止だけが理由だと思ってるなら100年ROMってろ
0018nobodyさん
2008/06/25(水) 18:33:30ID:???0020nobodyさん
2008/06/25(水) 19:56:42ID:???先人が議論ってどこにあんのよ?
過去スレ以前に読んだ事があるが
議論らしい議論はなかったが?
それにageて当然とかお前の思い込みも良い所
それに議論しようとしても全く聞く耳も持ってねーし
0021nobodyさん
2008/06/25(水) 20:00:09ID:???PHPユーザーしょうがねぇな。
0022nobodyさん
2008/06/25(水) 20:44:50ID:???チェック項目の条件に応じた店舗を表示するさいに
各店舗の情報をXMLでデータベースを作りたいのですが
XMLでのテキストファイルが3000行ほどになってしまいます。
そこで店舗ごとに1つのファイル化を考えたのですが
3000行あるひとつのファイルを読み込み検証するのと
60行ほどのデータを50コ開いて検証するのとでは
どちらが軽量で負荷が少ないでしょうか?
また設計上どちら望ましいでしょうか?
0023nobodyさん
2008/06/25(水) 20:46:16ID:???0024nobodyさん
2008/06/25(水) 20:48:58ID:???手持ちの過去ログが45までしかないが、
今のテンプレにガラっと変わったとき前後に、
そんな話をしていた。
もう2年ぐらい前だったと思うけど。
0025nobodyさん
2008/06/25(水) 20:55:50ID:???回答する気もないくせに、回答者ぶって煽る奴が、このスレは多すぎる。
ID表示必須なら回答者にもそう義務づけるべきだな。
0026nobodyさん
2008/06/25(水) 21:03:01ID:???0027nobodyさん
2008/06/25(水) 21:10:46ID:???あげるのがルール
それが気に入らないなら他いくかスレ作って一人で答えてやれ
しかし何度とあったループだなこれ
0028nobodyさん
2008/06/25(水) 21:16:20ID:???0029nobodyさん
2008/06/25(水) 22:01:00ID:???パフォーマンスで言えば一括の方が有利。
IOにおいてシーケンシャルリードの効果をより期待できるし、
実行時間ではパーサの複数回初期化によるオーバーヘッドが減る。
メモリでは最大消費量が多くなる場合がある。
それはパーサがXML文章全体をDOMに変換する場合。
対処としてXMLReaderといったAPIの利用が考えられる。
設計で言えば、分割する必要はない。
0030nobodyさん
2008/06/26(木) 00:12:55ID:???>>24
議論は一度も無い
くだ質スレでテンプレが変わったのが23から
22では次スレのテンプレに関して旧本スレのを貼っておく
というレスがあってその後議論されていない
旧本スレでIDに関する注釈が入ったのが17から
16のスレでもIDに関して議論は別にされていない
(この時点ではただage進行でと言う事のみ)
で、旧本スレのテンプレが現行の物に変わったのが34からだけど
旧本スレは34で終了しくだ質スレに統合
>>27
その上げるのがルールはどこから出てきたんだ
まともな理由がどこにも無かったわけだが
そして上げるのがルールと言ってる奴に聞いてもまともな回答がない
0031nobodyさん
2008/06/26(木) 01:31:36ID:???質問者はageろって言われ続けてるんだからおとなしくageればいいんだよ。
ageてない質問者に回答する回答者はただの荒らし。
0032nobodyさん
2008/06/26(木) 02:00:27ID:LMAVX0mlどっちが速いですか?
0033nobodyさん
2008/06/26(木) 02:14:33ID:???0034nobodyさん
2008/06/26(木) 05:51:28ID:???知らなかった
0035nobodyさん
2008/06/26(木) 06:41:08ID:???はいって何だよ。出来んのかよ。さっきから何度も。何がはいなんだよ。
出来もしねえ奴が軽々しくはいなんて言うんじゃねえよ。
わかってんのかよ。はいって言う事の責任の重さを。
社会勉強のつもりでやってんだったら辞めろおまえ。
0037nobodyさん
2008/06/26(木) 09:08:22ID:???なにそのとりあえずやっとけみたいなのw
元々議論すらされてないのに
ageてない質問者やそれに答えるのが荒らしとか
0038nobodyさん
2008/06/26(木) 09:49:37ID:???やたら仕切るくせに、質問に答えることはほぼ皆無で、
毎回毎回、質問の形式にひたすらクレームを付ける。
こいつか……。
0039nobodyさん
2008/06/26(木) 10:06:02ID:???とりあえずこっち池
http://pc11.2ch.net/test/read.cgi/php/1213356756/
0040nobodyさん
2008/06/26(木) 11:53:10ID:FZ89xb6m004122
2008/06/26(木) 12:03:25ID:???池沼氏ね。
>>37
全くそのとおりだなageてなくても答えろよなカス回答者しかいねえんだから。
>>38
お前もそんなくらだねえレスしてる暇があったら早く俺の質問に答えろ。
>>39
行かせる前に俺の質問に答えてからにしろ。
0042nobodyさん
2008/06/26(木) 12:03:46ID:???0043nobodyさん
2008/06/26(木) 12:06:14ID:FZ89xb6m0046nobodyさん
2008/06/26(木) 13:55:23ID:???ありがとう。一括の方向でいきます。
>>45
とりあえずXMLは手書きで作ります。
余裕があればデータ編集も作りたいですが
0047nobodyさん
2008/06/26(木) 15:55:43ID:???0048nobodyさん
2008/06/26(木) 16:24:04ID:???0049にんにく ◆cxt6jyx9JU
2008/06/26(木) 17:42:16ID:8GCvPVyjのソースコードをみつけました。
http://nullpo.biz/down/trip.phps
これの、検索結果を表示するページに、
いくつトリップが見つかったか表示したい
($triplist)の数を数えたい
のですがどうしたらよいのですか?
count($triplist);
では、配列じゃないので1と返されます。
0050nobodyさん
2008/06/26(木) 17:45:08ID:???0052nobodyさん
2008/06/26(木) 18:01:06ID:xST1VWMiその逆はどのようにすればいいでしょうか?
0055nobodyさん
2008/06/26(木) 19:41:59ID:4CdQjp6eデフォルトでは縦の棒グラフになるのですが、
これを横にする方法はありますでしょうか?
Image_Graphは便利なのですが、日本語の情報が少なくて困ります;;
よろしくお願いします。
0057◇832bhO5Akc ◆832bhO5Akc
2008/06/26(木) 20:41:15ID:???http://z-z.jp/
のトリップを作りたいのですが、作り方どうしたらいいかわかりますか?
どうやったら、作り方がわかるか教えてください。
0058nobodyさん
2008/06/26(木) 20:59:35ID:???http://news24.2ch.net/test/read.cgi/mnewsplus/1214470886/l50
0060◇832bhO5Akc ◆832bhO5Akc
2008/06/26(木) 21:34:06ID:8GCvPVyj2CHトリップの作り方は晒してあったから簡単に作れましたが、
http://z-z.jp/のトリップはソースが見れないので作れません。
CGIソースの見方教えてください。
0061nobodyさん
2008/06/26(木) 21:39:46ID:???0062◇832bhO5Akc ◆832bhO5Akc
2008/06/26(木) 21:42:26ID:8GCvPVyjそう簡単には見せてくれなさそうです。
直接CGIソースの見方教えてほしいです。
0063nobodyさん
2008/06/26(木) 21:44:58ID:???ハッシュのような不可逆な一方向関数で作られてるのが多いのに
解読しろっていうのも不可能
直接CGIのソースってなんだよw
サーバでもハッキングする気か?
ほんとこれだからコテトリップは嫌われるんだよ>>1氏ね
0064nobodyさん
2008/06/26(木) 21:46:07ID:???盗もうってことか。
0065nobodyさん
2008/06/26(木) 21:46:49ID:ythtWhVe俺たちをエスパーか何かと勘違いしてないかw
0066◇832bhO5Akc ◆832bhO5Akc
2008/06/26(木) 21:59:06ID:8GCvPVyjhttp://brown.0web.cjb.net/trip
そういや前聞いた話なんだけど、セキュリティホールがなんとかでhttp://z-z.jp/のindex.cgiソースが見れるとか言ってた人もまたトリップ作ってたんだけど、セキュホあるなら誰か見てほしいぜ
お願い(´・ω・`)
#と幇助
0067nobodyさん
2008/06/26(木) 22:02:53ID:???4桁の英数字らしいから、2chトリップを半分にすればいいじゃんw
0068nobodyさん
2008/06/26(木) 22:44:00ID:???教えてくれる可能性もあるんだからメール出してみればいいじゃん
0069nobodyさん
2008/06/26(木) 22:50:19ID:???0070nobodyさん
2008/06/26(木) 23:08:22ID:???自分で適当に入れてできたトリップをでDBに突っ込んでるだけのお粗末なもの
それに気づけないようじゃ仮に生成方法がわかってもお前じゃどうもできないから諦めろ
好きなトリップを生成するためにソースが見たいとかいってるならなおさら諦めろ
無限ループで適当な文字列つっこんで好きなトリップと一致するまでやり続けるシミュレーターなんかは
作れるだろうがPHPじゃそういうのは向いていない
そしていい加減スレ違いなんだよ糞野郎
0071nobodyさん
2008/06/27(金) 00:34:24ID:???0072nobodyさん
2008/06/27(金) 02:00:18ID:Fo33kr6Kたまに物凄く重くてなかなか表示されない時があります。
例えば、一定時間以上かかった場合、途中までしか表示しない
と言う事は出来るのでしょうか?(PHPだけで
出来る場合、参考になる関数などを教えて下さい。
0073nobodyさん
2008/06/27(金) 02:05:47ID:???007472
2008/06/27(金) 02:21:03ID:???ページの末尾(</body>の上)に
ob_flush();
flush(();
を追加したのですが、iframe内のサイトは
ページが全て読み込むまで表示されません。
やはり無理なのではないでしょうか?
0075nobodyさん
2008/06/27(金) 02:57:31ID:???そりゃ、あっちのサーバのレスポンスによるわな
つうか、凄い迷惑行為なんだけど?
0076nobodyさん
2008/06/27(金) 06:59:29ID:???外部のサーバの読み込みを制御できるかどうかは論ずる間もないな
0077nobodyさん
2008/06/27(金) 08:56:23ID:???って手が無いわけでもない。
0078nobodyさん
2008/06/27(金) 09:15:09ID:???0079nobodyさん
2008/06/27(金) 09:49:07ID:???PHPでどうこうできると思う思想がめでたいなと思う。
PHPで参照した参照先のHTMLを
そのままレスポンスとして吐き出すなら分かるが。
008072
2008/06/27(金) 11:14:24ID:???サイトに登録されているリンク集を
ランダムで表示したいと思っていたのですが、
読み込み先の表示が遅くて一定間隔でページが
切り替わらないので、それで困っていました。
file_get_contentsでリンク先の内容を取得しようかともおもったのですが、
フレーム内に入れるのであれば、結局同じ事だと思いますし、
CSSでの疑似フレームでも<html>〜</html>のソースが入ると誤表示されるので、
iframeを使うしかないと思い、「もし出来たら」というおめでたい発想でした。
とりあえず、無理なのが分かったので、諦めます。
0081nobodyさん
2008/06/27(金) 11:31:18ID:???定義済みの文字型変数の中の$から始まる文字列に値を代入したい。
とりあえず例を作りました。
$arg = 'testString';
$parse = 'this is $arg';
var_dump($parse);
//string(12) "this is $arg"
eval('$outputString="'.$parse .'";');
var_dump($outputString);
//string(18) "this is testString"
$parseの中身を再評価して$argをtestStringにしたい、ということになります。
$parseの定義時にダブルクオーテーションでくくれよ。となると思いますが、たとえば関数の外から$parseが来る場合にはその手法は使えません。
正規表現で$arg等変数名を抽出して置換か、例のようにevalを使うか。
例で出したevalは微妙に重そうだし、コードの実行なので変な文字列が入ったら致命的な結果になりかねないので躊躇。
(たとえば何らかの拍子に
$parse = '";exec("Malicious command");echo"';が外部から入ってくるとか。)
それ用の関数とか用意されてないのかなと思い調べましたが見当たらず。
ダブルクオーテーションの文字型変数への代入時のパースがコンパイラの仕事かも・・・
$argがオブジェクトで__toString()の定義とかもありえるわけで、当然単純なパースだけでは無理かも・・・などと挫折気味。
どなたかお時間のある方、教えて頂けないでしょうか。
0082nobodyさん
2008/06/27(金) 11:33:50ID:???0084nobodyさん
2008/06/27(金) 11:51:14ID:???ご返答ありがとうございます。
悪意のあるコードが入ってくる可能性があるのは$parseの方なので正規表現で変数抜き取ってもeval使う時点でNGというか。
安全面では単純に正規表現の置換が良いのですけどね。
$parseがヤバイ事を忘れなければevalかなぁ。と思うんですよね。
でも三日経ったら忘れちゃうよなぁ・・・とか。
あとは$parseでダブルコーテーションのチェック入れるか。
それとたかが文字列組み立てるのにあまり処理コストかけられないという悲しき内情。
これは泥臭いコードにならざろうえないのですかねぇ
0085nobodyさん
2008/06/27(金) 12:24:34ID:???定義済みの変数取得して
同じものがあれば置き換えでいいんじゃ
0087nobodyさん
2008/06/27(金) 15:24:53ID:H/xGfrQF現在配布を中止しているようで、どうにも入手できません。
もしいらっしゃったら、どこかへアップロードしていただけませんか?
よろしくお願い致します。
0089nobodyさん
2008/06/27(金) 15:33:34ID:H/xGfrQFそれは確かな情報なのでしょうか?
実は仕事で使いたいと考えておりますので、入手の可否が重要なのです。
返答をいただいておいて失礼ですが、信じてよろしいでしょうか…?
0090nobodyさん
2008/06/27(金) 15:34:50ID:???0092nobodyさん
2008/06/27(金) 15:44:46ID:???Excel_Reviserのフォーラムだよ。
Macで作ったXLSのテンプレートで
メモリ食いつぶす現象が出たらしい。
0093nobodyさん
2008/06/27(金) 15:47:35ID:???俺も最新版欲しくて見に行ったんだけど、
そんな理由でまだ取れてないwww
Mac版のEXCELのファイル提供して、
そのときのコメントがそういう内容だった、
ってことがソース。
脳内ソース乙と言われても仕方ないwww
0094nobodyさん
2008/06/27(金) 16:02:18ID:H/xGfrQFありがとうございます!
またこまめにチェックしてみます。
予定通り、無事配布再開されることに期待…
0095nobodyさん
2008/06/27(金) 16:48:43ID:K7e2dC+6var_dump()で
array(1) { [0]=> array(12) { ["title"]=> array(1) { [0]=> string(14) "タイトル11" }
["artist"]=> array(1) { [0]=> string(13) "出演者11" } ["musicGenre"]=> array(1) { [0]=> string(1) "2" }
["url"]=> array(1) { [0]=> string(5) "URL11" } ["kaisetsu_text"]=> array(1) { [0]=> string(24) "解説・レビュー 11" }
["DELmujiPic"]=> string(1) "1" ["DB_mujiPic"]=> string(1) "1" ["myWork"]=> array(1) { [0]=> string(1) "0" }
["act"]=> string(6) "確認" ["genre"]=> string(5) "Music" ["mode"]=> string(6) "modify"
["modifyId"]=> string(2) "26" } }
を返す配列 $postAry があります
この配列から"mode"抜き出して出力するにはどうしたらいいでしょう?
echo $postAry["mode"] としても何も表示されません
どなたか回答よろしくお願いします
0096nobodyさん
2008/06/27(金) 16:52:30ID:???0097nobodyさん
2008/06/27(金) 17:49:38ID:K7e2dC+6ありがとうございました
あと、本当に恥ずかしいんですが"title"を出力するにはどうしたらいいんでしょう?
echo $postAry["title"][0] でも echo $postAry[0]["mode"] でもうまくいきません
0098nobodyさん
2008/06/27(金) 17:52:15ID:???0099nobodyさん
2008/06/27(金) 17:55:40ID:???0100nobodyさん
2008/06/27(金) 18:20:09ID:???連結するときにそれぞれの文字列を ' ' で囲いたい。
泥臭く書くのはいくらでもできるけど 余計な変数を使わずに
エレガントに格好よく書ける?
0102JS
2008/06/27(金) 18:27:42ID:???0103nobodyさん
2008/06/27(金) 18:29:33ID:???0104JS
2008/06/27(金) 18:30:40ID:???から更新がな(ry
うらるあったら教えてください
0105nobodyさん
2008/06/27(金) 18:35:07ID:???0107nobodyさん
2008/06/27(金) 19:24:05ID:???function add_quote($value){
return "'".$value."'";
}
implode(", ", array_map("add_quote", $array));
0108nobodyさん
2008/06/27(金) 20:00:06ID:FgqYA5k2windows版のPHP 5.2.5を探しています!
どなたか情報下さい
0109nobodyさん
2008/06/27(金) 20:04:48ID:???http://www.php.net/releases/
0110nobodyさん
2008/06/27(金) 20:18:42ID:FgqYA5k2本当にありがとうございました!
0111nobodyさん
2008/06/27(金) 20:31:31ID:XX5w51Rlみんな使っていないの?
使っていたら、不具合の感じや良かった点とか聞きたいけど。
0112nobodyさん
2008/06/27(金) 20:41:41ID:???0113nobodyさん
2008/06/27(金) 20:45:27ID:???0114nobodyさん
2008/06/27(金) 20:48:54ID:XX5w51RlMYSQL6だって、新しいデータタイプが増えた上に、処理が格段に早くなっているらしい。
なのに、話題にならない方が可笑しいだろ?
枯れた技術が最高だとか、詰まらない執着心を持った人の集まりかと勘ぐりたくなる。
0115nobodyさん
2008/06/27(金) 21:02:17ID:???0116nobodyさん
2008/06/27(金) 21:04:05ID:???0118nobodyさん
2008/06/27(金) 21:07:24ID:???雑談する場所ではない
0120nobodyさん
2008/06/28(土) 02:38:35ID:???PHP4/5はcurrentでまだ随時アップデートされてるんだけど
枯れた技術ってどういう意味?
0121nobodyさん
2008/06/28(土) 06:13:03ID:???0122nobodyさん
2008/06/28(土) 12:43:30ID:???あとはセキュリティフィックスぐらいだろ?
0124nobodyさん
2008/06/28(土) 13:35:38ID:???・母親は受験勉強をする息子の学力向上のためにフェラチオをする
・日本人女性の55%は、出会ったその日に男と寝る
・ファストフードは女子高生たちを性的狂乱状態におとしいれる
・ティーンたちはバイアグラを使ってウサギのようにセックスをする
・女子高生は、刺激のためにノーブラ・ノーパンになる
・日本の最新の流行 : 70歳の売春婦
・老人の売春婦の人気にもかかわらず、日本では小学生の売春婦にも仕事がある
・日本の若い看護婦は売春婦に勝る
・24時間オルガズムが止まらない病気で苦しむ日本人女性の数が増えている
・15未満の子供を対象とした疑似ポルノが日本に蔓延している
・OLの72%が、セックスをより堪能するために何らかのトレーニングを受けている
・人妻は気分転換の目的で昔の恋人に抱かれに行く
・主婦は郊外のコイン・シャワーで売春をしている
・日本男子は柔道や空手の部活で男相手に童貞を捨てている
・ほとんどすべての漁師は海でマンタとSEXしている
・まだ10代の少年から退職した老人までみんな2980円の手コキを利用している
・六本木のあるレストランでは、食事の前にその材料となる動物と獣姦する
※同社が全年齢向けコーナーで七年以上にわたり世界に向けて配信していたものの一部です
※同社の行為は日本人への偏見や人種差別、婦女暴行、幼児虐待を助長するものです
◆毎日新聞の英語版サイトがひどすぎる まとめ@wiki
http://www9.atwiki.jp/mainichiwaiwai/
◆毎日新聞問題の情報集積wiki
http://www8.atwiki.jp/mainichi-matome/
つまり日本人なら
http://www.vipper.net/vip552788.jpg
0125nobodyさん
2008/06/28(土) 14:55:55ID:???どんな風にコンパイルされるか知りたいです。
0126nobodyさん
2008/06/28(土) 18:08:12ID:Eb3UB5kLみんな、アップロードファイルのタイプ判別ってどうやってますか?
$strVal = $_FILES['upFile']['type'];
if($strVal != "image/jpeg"){
//JPGじゃないです
}
…というやり方で判別してるんですが、firefox2or3とsafari3では判別できてるのに
IE6ですべてを「JPGでない」と判定してしまいます
問題点やうまいやり方があれば教えてください。お願いします。
0128nobodyさん
2008/06/28(土) 18:24:27ID:???画像ならGDがエラーにならないか確かめる
セキュリティの点から、ブラウザから送られた付加情報を信用してはいけない
0130nobodyさん
2008/06/28(土) 18:55:47ID:???いちいちバイナリを解析するなんてキチガイ沙汰
0131nobodyさん
2008/06/28(土) 20:42:10ID:???ttp://d.hatena.ne.jp/teracc/20070715#1184515587
こんなエントリが。
RFI(リモートファイルインクルード)とかやられると困ったりするんじゃね。
0133nobodyさん
2008/06/28(土) 22:19:13ID:VC7dBI7aphp5.2.6です
Warning: session_start() [function.session-start]:
Cannot send session cache limiter - headers already sent (output started at C:\web\test\jisaku.php:6) in
local\test\test.php on line 6
単なるソースはセッションによるアクセスカウンターです
<html>
<head>
<title></title>
</head>
<body>
<?
session_start();
if (isset($_SESSION["counter"])) {
$_SESSION["counter"]++;
print($_SESSION["counter"]."回目の読み込みです。");
} else {
$_SESSION["counter"] = 0;
print("はじめての読み込みです。");
}
?>
</body>
</html>
長くなってすいません。お願いします
0135nobodyさん
2008/06/28(土) 22:24:47ID:???0136nobodyさん
2008/06/28(土) 23:00:20ID:???エラーメッセージに書いてある通り、HTTPヘッダが出力された後にsession_startしてもエラーでる。
<html>の前に処理して下さい。
0137nobodyさん
2008/06/28(土) 23:10:51ID:6GRXIQcOphp5.2.3です。
LAN内の話なんですが、
サーバからクライアントのMACアドレスを知りたくて、
$arp = `arp クライアントIP`;
echo "$arp";
っていうphpを
クライアントからアクセスしてみたんですけど空の結果しか返ってきません。
arpってphpじゃ実行できないんですか?
ちなみにarpじゃなくてlsとかなら普通に結果が表示されます。
あとサーバではarpは問題なく実行できます。
0138nobodyさん
2008/06/28(土) 23:52:39ID:???0139nobodyさん
2008/06/29(日) 00:23:07ID:no0HV7ZXhoge.php?category=パスタ、スパゲッティ でリンクされたページで、
$var = $_GET['category'];
print htmlspecialchars($var);
としたところ、
「パスタ、スパゲチEィ」と出力されます
IE6です。fx3やsafariではなりません、正常に書き出されます。
どこが問題なのでしょう? 教えてください、よろしくお願いします
0140nobodyさん
2008/06/29(日) 07:01:51ID:???0141nobodyさん
2008/06/29(日) 08:26:52ID:???それでもpythonには速度で負けますでしょうか。いろいろ調べても見つからなかったので
ご存知のかた教えてもらえればうれしいです。
0142nobodyさん
2008/06/29(日) 09:24:33ID:???http://golf.shinh.org/p.rb?FizzBuzz
0144nobodyさん
2008/06/29(日) 11:24:46ID:???目的としては、アップロードした各会員専用画像ファイル置き場を、本人と管理者以外からアクセスできなくしたいです。
会員は複数で、会員同士が共有するわけではなく、あくまで個人用ファイル置き場、という条件です。
0145nobodyさん
2008/06/29(日) 11:32:55ID:???phpで会員の有効チェック後に画像を出力するコードを書け
0146nobodyさん
2008/06/29(日) 11:37:53ID:???0147nobodyさん
2008/06/29(日) 13:19:40ID:???自分は使ったこと無いけど、Apache なら mod_xsendfile 使うとパフォーマンス的に幸せになれるかも。
0149nobodyさん
2008/06/29(日) 20:47:57ID:???0150nobodyさん
2008/06/29(日) 21:00:10ID:96o86FsFことごとく、Javaで作られていると聞きます。
派遣で仕事をしている人間に聞くと、
phpはソースが筒抜けで、ユーザーに見えてしまうと言っていました。
私のサイトのphpで作っていますが、
プロがみると、ソースが見えてしまっているのでしょうか。
ただ、ソースが見えなければブラウザをレンダリングできないわけですから、
見えること自体ごく自然のことだとも思いますが、
それを仕様として提示していないことが、大手制作会社の不信感を招いているのかもしれません。
0151nobodyさん
2008/06/29(日) 21:23:49ID:???0152nobodyさん
2008/06/29(日) 21:53:42ID:???0153nobodyさん
2008/06/29(日) 21:56:36ID:???0154nobodyさん
2008/06/29(日) 21:58:14ID:???Javaの需要があることは認める。
ソースが筒抜けって誇張表現なんじゃない。
ソースが見えなければブラウザをレンダリングって意味不明。
大手制作会社の不信感?
0155nobodyさん
2008/06/29(日) 21:58:18ID:???0156nobodyさん
2008/06/29(日) 21:59:51ID:???0157nobodyさん
2008/06/29(日) 22:10:42ID:???ヤフーって無名サイトだったんだ・・・
0158nobodyさん
2008/06/29(日) 22:12:51ID:96o86FsFたとえば、派遣会社の求人検索サイトで、
PHPよりもJavaの方が検索数が多く、
また、内容も保険や金融など大規模なサイトと思われるものばかりです。
Javaも同じインタープリタ言語ですし、
中間コードにコンパイルしたから速度が優位だといっても、
PHPだってeAccelelatorなど中間コードにコンパイルして速くする方法が存在するわけで、
速さ優位だとは思いません。
で、結局はソースが見えるか見えないかですが、
ブラウザがサーバーからソースを受信してレンダリングする際に、
ブラウザにとってはソースが筒抜けになるわけですよね。Javaにしても。
パケット透過ツールを使用すれば一目瞭然です。
だから、それを仕様として挙げていないphpの不透明感が、
大手制作会社がクリティカルミッションに使おうとする気に
させないのだと考えたのですが。開発会議でクライアントに突っ込まれる可能性もありますし。
0159nobodyさん
2008/06/29(日) 22:14:17ID:???0160nobodyさん
2008/06/29(日) 22:14:57ID:???0162nobodyさん
2008/06/29(日) 22:20:12ID:???発注や求人はJavaが多いかもな。
Javaでサイト作る需要>JavaでWebサイト作れる人ってことでしょ。
それなりのところなら自分でPHPでサイト作れるだろ。
レンタルでPHPが使えるサイト多いしプロじゃなくても作れる。
JavaもPHPもブラウザが実行しているわけじゃないよ。
Webサーバで実行してその出力が送信されブラウザはHTMLを表示してるんだよ。
ということでそれ以降の発言はクライアントにまだしてなくて良かったね。
0163nobodyさん
2008/06/29(日) 22:20:46ID:???PHP(or JAVA)のソースと、HTMLソースの違いがわかってからここに来てね♪
おたふくソースとも違うからね☆
0164nobodyさん
2008/06/29(日) 22:22:11ID:96o86FsFずっと疑問に思っていたので、ぶつけてみたのですが、
期せずして反感を買ってしまってしまって申し訳ありませんでした。
私は純粋に技術論をお聞きしたかっただけです。他意はないです。
この質問は撤回します。
お騒がせしました。
0165nobodyさん
2008/06/29(日) 22:22:46ID:3JlRTfJh0167nobodyさん
2008/06/29(日) 22:26:37ID:???0168nobodyさん
2008/06/29(日) 22:27:45ID:???0170MEH
2008/06/29(日) 22:30:38ID:3JlRTfJhメタルミッキーというサイトにある通常レス式掲示板を、スレッド式掲示板にしようと頑張っているのですが、スレッド一覧をどのように取得したらよいかわかりません。
よし、やって教えてやろう!という方は是非教えてください。待ってます。
参照:
http://metalmickey.genin.jp/study/php_bbs_1_1.html
0171nobodyさん
2008/06/29(日) 22:31:40ID:???俺は趣味でPHPをちょっと勉強しているだけでよくわからないが、
PHPやJSPなどのHTMLのなかにスクリプトとかを混在して書くタイプは大規模に向いてないかもね。
PHPのバージョンでだいぶ違うとかも関係してるかな。
Javaでのは大規模が多いから人手がいるのかもね。
>>164
反感買ったのはその通りと思うけど
俺個人的には撤回でなかったことにすることよりも
ブラウザがJavaやPHPを実行しているわけではないと判ってくれたよね。
0172nobodyさん
2008/06/29(日) 22:38:15ID:???どちらかと言うと呆れて開いた口が塞がらない感じ
0173nobodyさん
2008/06/29(日) 22:39:00ID:96o86FsFソースが見えるというのは、たとえば、
共通のphpとしてinclude("./common.inc");とした場合に、
エラー表示が、common.incの何行目にエラーが出てしまうと、
悪意のユーザーがcommon.incを直接指定すると見えてしまうからです。
もちろん、Javaでもエラー画面でstacktraceで表示されますが、
それをたどってどこのクラスでNullPointerExceptionが出ているとわかっていても、
直接ソースをみる方法はありません。それはコンパイルされているからです。
あと、Javaはwebサーバーで実行されるという発言されている方がいましたが、
Javaのコードは通常アプリケーションサーバーです。
ソースが見える見えないという点で言えば、やはりJavaであり、
クリティカルミッションに使われる理由なのではないかと思った次第です。
色々とご意見を頂きましてありがとうございます。
0175nobodyさん
2008/06/29(日) 22:42:43ID:???単に、使う人間がPHPしか使えず、PHPで入門したプログラミング初心者ばかりだから、PHPは低く見られるんだよ。
悪いのはPHPではなく、使う人間のスキルが低過ぎること。
たとえば、PHP界隈では、rfc2616やrfc2822を熟読していたら、ほとんど神扱いだろ。
他のWeb系の言語・開発環境では、ありえない。だって、それが最低限度だから。
0176nobodyさん
2008/06/29(日) 22:48:45ID:???common.incはパーミション変えたりcommon.phpに変えるべきだってどっかで見かけたことある。
普段そんなこと忘れてるけど。
Javaはwebサーバーで実行されるって俺が言ったんだけど
>Javaのコードは通常アプリケーションサーバーです。
俺には難しくてわかりません。
Javaアプレット?
Javaが使われていることは認めるがソースが見える見えないに拘るのがよくわからない。
Javaのよさってそこ?
0177nobodyさん
2008/06/29(日) 22:50:09ID:???>ブラウザがサーバーからソースを受信してレンダリングする際に、
>ブラウザにとってはソースが筒抜けになるわけですよね。Javaにしても。
>パケット透過ツールを使用すれば一目瞭然です。
よく分からんのだが、これはどういう意味?
0178nobodyさん
2008/06/29(日) 23:00:26ID:???(アプリケーションサーバを調べてみた)
そりゃ3階層システムのミドルにPHPはないね。
0179nobodyさん
2008/06/29(日) 23:00:26ID:???> たとえば、PHP界隈では、rfc2616やrfc2822を熟読していたら、ほとんど神扱いだろ。
> 他のWeb系の言語・開発環境では、ありえない。だって、それが最低限度だから。
技術者の善し悪しって、別にそんなところじゃないだろw。
RFCなんかを例に出して奴の方が痛い。
javaがphpに比べて優れているのは大規模な開発の設計がやりやすい事。
あとは、堅牢性や分散処理する際など、色々メリットは大きい。
0181nobodyさん
2008/06/29(日) 23:02:28ID:???0182nobodyさん
2008/06/29(日) 23:06:24ID:???http://itpro.nikkeibp.co.jp/article/REVIEW/20070604/273484/zu01.jpg
0183nobodyさん
2008/06/29(日) 23:10:03ID:???ミドル層のJavaとフロント層のPHPを比較することがおかしくない?
PHPを使うことがありえないけどミドル層ならPHPのソースがユーザに見えないでしょ。
フロント層で変な文字受け取ってエラーでしょ。
俺って煽っていると思われて反論されたのかな。
0184nobodyさん
2008/06/29(日) 23:11:42ID:???Webアプリのセキュリティの知識足りないんじゃ。
0186nobodyさん
2008/06/30(月) 00:38:40ID:???0187nobodyさん
2008/06/30(月) 00:49:40ID:???0188nobodyさん
2008/06/30(月) 00:52:38ID:???0189nobodyさん
2008/06/30(月) 00:53:07ID:???納品先のクライアントがソースコードを見れるってことの間違いではないの。
PHPは確かにソースそのまま納品するから、内容見られるかなぁとか思うけど。
0190nobodyさん
2008/06/30(月) 01:11:01ID:???0191nobodyさん
2008/06/30(月) 02:12:26ID:???こんな残業続きで、2chすらみている暇がないんだから。
俺は、今は過労によるパニック障害で休養中だ。
0192nobodyさん
2008/06/30(月) 04:14:37ID:7Iaq6WLHPHPを走らせるのに適したバージョンはどっちですか?
0194nobodyさん
2008/06/30(月) 05:13:01ID:???テンプレ通りに作ったhtmlファイルが50個ある。
各ファイルのn行目とm行目のデータだけを取り出し、別ファイルにまとめたい。
///////////////現在のアルゴリズム//////////////
1.fgetsをn回空ループ
2.N行目でfgets。
3.空ループ
4.M行目でfget。
array[][n.m]に保存
///////////////////////////////////
array[][n,m]をファイルに出力
///////////////////////////////////
とやっているのですが、無駄が多いように感じます
fseek()も試してみたのですが、ファイル先頭からのバイト数は変動するので、中々うまくいきません。
ファイルポインタを任意の行の先頭に移動させる関数はないのでしょうか?
0195nobodyさん
2008/06/30(月) 05:34:32ID:???0196194
2008/06/30(月) 05:58:21ID:???fileを使うとソースは綺麗になるのですが、ファイル全体を変数に収納してしまうため、処理速度が極端に低下してしまいました。
0197nobodyさん
2008/06/30(月) 06:15:27ID:???0198nobodyさん
2008/06/30(月) 06:15:58ID:???別ファイルに書き出すだけの処理ならPHPでやるようなことでもない
処理速度を求めるのであればPHPでやることじゃないね
0199nobodyさん
2008/06/30(月) 09:43:52ID:???100行目だけ出力
head -100 ファイル名 | tail -1
0200nobodyさん
2008/06/30(月) 09:52:37ID:???これをブラウザで「保存」を選ぶと正常に保存できるのですが、「開く」を選ぶとうまく開けません。
どうもアプリケーションが開こうとしたときにはテンポラリファイルがなくなっているようです。
「開く」を選んでも正常に動作させるにはどうすればいいでしょうか?
header('Content-Disposition: attachment; filename="'.$filename.'"');
header('Content-Type: application/octet-stream');
header('Content-Transfer-Encoding: binary');
header('Content-Length: '.$filesize);
$fp = fopen($filepath, "rb");
while (!feof($fp)) {
$contents = fread($fp, 1024*1024*5);
echo $contents;
}
0201nobodyさん
2008/06/30(月) 12:46:25ID:???0202nobodyさん
2008/06/30(月) 13:06:05ID:???0203nobodyさん
2008/06/30(月) 13:17:50ID:???0205nobodyさん
2008/06/30(月) 15:02:15ID:???0206nobodyさん
2008/06/30(月) 15:16:50ID:???0207nobodyさん
2008/06/30(月) 16:02:23ID:???0208nobodyさん
2008/06/30(月) 17:08:50ID:???MySQL連携のプログラムを、UTF-8で作っています。
で、文字エンコーディングを変更するコード SET NAMES は アプリケーションから使うとSQLインジェクションの脆弱性につながる、
との記事を見つけました。
幸いにも、自分が使っているサーバーは mysqli_set_charset() が使えるので助かりましたが、この先の参考にも聞いておきたく思います。
本当に アプリケーション内で SET NAMES を発行するとSQLInjectionの脆弱性につながるのでしょうか。
また、もし、mysqli_set_charset 等が使えないサーバーの場合、どうすればよいのでしょう?
PHPなのかスレスレですが、ご助言いただけると幸いです。
0209nobodyさん
2008/06/30(月) 17:12:08ID:???仕方ないでしょうけど
0210nobodyさん
2008/06/30(月) 17:13:29ID:???0211nobodyさん
2008/06/30(月) 17:22:56ID:???何で危険なのかがわかってればいいよ。
特に問題になるのは、エスケープ関連(SET NAMESだとエスケープAPIは
現在どのエンコーディングを使ってるかわからない)だし、
自分のとこの運用でどうしてるのか把握して問題ないのならいいでしょ。
0212nobodyさん
2008/06/30(月) 17:35:21ID:???PHPでWEBの仕事してるプログラマーって、よくある一般的なイメージな残業、休日出勤な
プログラマーよりは残業時間とか少ないの?
人によりけりだと思うが、軽い気持ちで答えてほしい。
0213nobodyさん
2008/06/30(月) 18:00:50ID:???0214nobodyさん
2008/06/30(月) 18:15:19ID:LUnLRZ5m0215nobodyさん
2008/06/30(月) 18:28:19ID:???2.ランダムで1個選択
3.飛ぶ
0216208
2008/06/30(月) 18:45:53ID:???まだSQLの知識が薄く、照合順序とか多すぎてよくわからないので、理解に時間がかかりそうですが……。
とりあえずは、SET NAMES は使わずに mysqli_set_charset なり mysql_set_charset なりのAPIレベルのもので、設定することにして、
SQLの知識をある程度蓄えてから、対策を練ることにします。
お早い回答、ありがとうございました。
# でも、持ってる参考書とか読んでも、文字コードの設定は SET NAMES...
0217nobodyさん
2008/06/30(月) 18:56:15ID:???0218nobodyさん
2008/06/30(月) 19:19:20ID:???0219nobodyさん
2008/06/30(月) 19:25:18ID:???案件の1つにPHPが入ってくるというのはあるが
だいたい普段は.他の言語でWeb以外のことをやっていたりする
つまり一緒だ
プロジェクトに遅れが出れば残業も休日出勤もあるし
そもそも早く終わったからといってノルマ達成で帰っていいよというわけにはいかない
やることがなければ自習になるが普通は何かしら手伝ったりすることになる
PHP専門でやってるような会社はないに等しい
大学生のベンチャーならありえるが
そういうところも将来的にはPHPのみってことはなくなってくる
まぁそんな都合のよい仕事はないので諦めてください
給料は都会のバイト並でよければ地方で探せばまったりな会社あるかもね
0221nobodyさん
2008/06/30(月) 19:59:29ID:???0222nobodyさん
2008/06/30(月) 20:05:31ID:Eb0PY41u意外にサンプル少ないんで泣いてまつ
書籍追加(確認窓もほすぃ
編集
削除
検索
モヌヌメの書籍、webあったらおしえて〜
apache2
php5
mysql5
linux
0223nobodyさん
2008/06/30(月) 20:09:16ID:???0224nobodyさん
2008/06/30(月) 20:20:34ID:???何でだろうね?
小さいサイズのテキストファイル
Content-Transfer-Encoding指定なし
Content-Length指定なし
readfile($filepath);
だと開けた。
0227nobodyさん
2008/06/30(月) 23:08:40ID:???たしかにこれはそのままだ〜!
ってか書籍スレもあったのねw
0228nobodyさん
2008/07/01(火) 00:35:17ID:A4l+wdTUHTMLの前に$textfile="todo.txt"; として
書いてるんですが
require($textfile)で呼び込むと
todo.txtは呼んでるがそのままソースが全部出てきてしまいます
<HTML>
<HEAD>
<BODY>
内容・・・・
</HTML>
みたいな感じです。PHPの設定なんでしょうか?
0229nobodyさん
2008/07/01(火) 00:36:43ID:???0230228
2008/07/01(火) 00:37:45ID:A4l+wdTU勘違いしてました・・・
癖でTODOリストなのに・・・HTMLで書いてしまってました
申し訳ありません・・・
0231nobodyさん
2008/07/01(火) 00:39:30ID:???0232228
2008/07/01(火) 00:45:06ID:???テキストエリアにtodo.txtの編集書き込みが出来るようなソースを
書いていたんですが、todo.txtはテキストなのに
HTML文章で書いてしまっていただけです
HTMLで書いてたからタグが出てきたので気づいて消したら普通に
文章だけ表示されました。すいません
0233nobodyさん
2008/07/01(火) 14:51:09ID:???test.php?test
という形式で値の受け渡しをしているのを見かけるのですが
どうすれば受け取れるのでしょうか?
0234nobodyさん
2008/07/01(火) 14:56:17ID:???0236nobodyさん
2008/07/01(火) 16:03:57ID:???これってバグ??
0237nobodyさん
2008/07/01(火) 16:17:22ID:???原因不明のメモリーエラーで落ちる。
MySQL使った時、それで原因が特定できず大変な目にあった。
preparedを使いたいなら、自分で実装してくれ。それくらい簡単だろ?
0239nobodyさん
2008/07/01(火) 16:27:58ID:???236ではないが、マジか。
この前使ってみて使いやすかったから、今度からこれ使おう、とか思ってたのに。
まだ、取れてないの? そのバグ。
0241nobodyさん
2008/07/01(火) 17:09:30ID:???バージョンは、5.1.6
WindowsXP、BSD6.2の両方で使って、どちらでも落ちた。
起動してから時間が経つと、突然DBへ接続できなくなる。
再起動すると直る。永続的コネクションを利用しても利用しなくても落ちる。
で、同じ構成でphp標準のmySQL関数でやったら直った。
0242nobodyさん
2008/07/01(火) 17:57:28ID:???5.2.1でprepareの無限ループバグをfixedってあるけど、使うSQLによって発生するんかね
0243241
2008/07/01(火) 19:06:47ID:???参照するとデータがかえってこない。更新すると失敗する。っていう現象。
何回もデータが可笑しいのかと確認しちゃって原因究明にすごい時間がかかった。
速度が上がったわけでもないし、プリペアードのためだけだったから、すぐに標準関数に変えた。
それ以内何も起こらず、DBは連続稼働78日目。
0244nobodyさん
2008/07/01(火) 19:26:12ID:r/sMGUKq私のシステムは、データベースへ接続するクラスを用意していまして、
あとは、各業務クラスに以下のようなコードを書いています。
$sql = "INSERT INTO ...";
$databaseClass->($sql);
あちらこちらの業務クラスに生のSQLが書いてあります。
抽象的なご質問ですが、このような実装をどう思いますか?
市販されている解説本を読むと、テーブル毎にデータベース接続用のクラスを分けろと
書いているものもあるのですが、それだと複数のテーブルをjoinする場合、
どちらのクラスに入れるべきか迷うので、そのような実装はしていませんでした。
結構、正規化しているテーブルが多いので、joinするSQLが少なくありません。
データーベースに関する良いクラス設計指針があればアドバイスお願いします。
0245nobodyさん
2008/07/01(火) 19:37:44ID:???joinしてるSQLを発行するクラスは業務毎に纏めてクラスを分けてるな、俺は
業務モデルから業務DAOとテーブルDAOを呼ぶ感じで
0246nobodyさん
2008/07/01(火) 22:52:13ID:ZeCzXD4I普通のhtmlにアクセスしたら認証なんてないのに
0247nobodyさん
2008/07/01(火) 23:45:17ID:FRuokrT4\1000という表示がIEとSafariで バックスラッシュ+1000 になってしまいます
\部分はSQLから引き出してるのではなく、PHPに直書きしてます
winXP、apache2、PHP5.2.3でUTF8を使っています どう対応すればいいでしょう?
アドバイスお願いします
0248nobodyさん
2008/07/01(火) 23:58:57ID:???PHPはブラウザに依存しないサーバサイド言語で
すべて同じ結果が得られるようになっている
ブラウザによって表示が違うなどの不具合は
PHPとは関係ない
バックスラッシュになるのはブラウザの言語指定がおかしいからとか
そういったことが要因
\ではなく文字参照&yen;(&は半角で)で出力するなど工夫すべし
0249nobodyさん
2008/07/02(水) 00:42:01ID:???エラーが起きる最小限のソースを。
>>241
5.2.0から5.2.6でPDOに関する数十ものバグが修正されているし、MySQLでおきたエラーがSQLiteで起こるとは限らない。
0250nobodyさん
2008/07/02(水) 00:45:28ID:???そんな情報どうして知っているの?
関係者?それとも逆コンパイルしてソースをcompareしたとか???
0251nobodyさん
2008/07/02(水) 00:55:51ID:???0252nobodyさん
2008/07/02(水) 00:58:37ID:???0253nobodyさん
2008/07/02(水) 02:09:08ID:TfVbJDoGありがとう! 感謝します!
0256200
2008/07/02(水) 10:40:54ID:???でできました。
http://jp2.php.net/manual/ja/function.readfile.php#47408
0257236
2008/07/02(水) 10:42:53ID:???コマンドラインより、a.phpを実行後すぐに別端末からb.phpを実行する。
b.phpにおいてbeginTransaction();をコメントインすると、
PDO::ATTR_TIMEOUTが無効になる。
と、まぁこんなかんじです。
a.php ---------------
<?php
$pdo = new PDO('sqlite:a.db');
$pdo->setAttribute(PDO::ATTR_TIMEOUT, 5);
$pdo->beginTransaction();
$pdo->exec("insert into a(i) values(5)");
sleep(100);
$pdo->rollBack();
?>
b.php ---------------
<?php
$pdo = new PDO('sqlite:a.db');
$pdo->setAttribute(PDO::ATTR_TIMEOUT, 5);
//$pdo->beginTransaction();
$sth = $pdo->prepare("insert into a(i) values(10)");
if (!$sth->execute()) {
var_dump($sth->errorInfo());
}
//$pdo->rollBack();
?>
0258nobodyさん
2008/07/02(水) 10:47:24ID:???0259nobodyさん
2008/07/02(水) 11:42:57ID:???>sleep(100);
ここは笑うところか
0260236
2008/07/02(水) 11:56:55ID:???う〜ん、そういわれると仕様通りなのかなぁ
でも、トランザクションを開始しないときは、ちゃんと5秒待機するんだよな
sqlite_busy_timeout()と同じように動作させたいだけなんだが・・・
>>259
ソース見てわからないなら、笑ってたらよいと思いますよ
0261nobodyさん
2008/07/02(水) 11:59:11ID:???0262nobodyさん
2008/07/02(水) 12:05:15ID:LR4oDanJfunction array_collect($key, $array) {
$list = array();
foreach ($array as $arr) {
$list[] = $arr[$key];
}
return $list;
}
のような関数が標準であったりしませんか?
0263nobodyさん
2008/07/02(水) 12:06:18ID:???0265nobodyさん
2008/07/02(水) 15:20:48ID:???<html>
<head>
<title>じゃんけんぽん!</title>
<script type="text/javascript" language="javascript">
<!--
function Janken()
{
alert("あなたの負けです!");
}
-->
</script>
</head>
<body>
<input type="button" value="グー!" onclick="Janken()" />
<input type="button" value="チョキ!" onclick="Janken()" />
<input type="button" value="パー!" onclick="Janken()" />
</body>
</html>
0266nobodyさん
2008/07/02(水) 15:32:33ID:???0268nobodyさん
2008/07/02(水) 16:06:21ID:???○アルゴニズム
0270nobodyさん
2008/07/02(水) 17:18:28ID:YKp2VoP0|
+-/admin <- 要認証
|
+-/form
|
form.php
こういうディレクトリ構造になっているところに、
/admin以下にBASIC認証やDigeset認証をかけました。
認証されていないform.phpから、認証がいるadminディレクトリ以下のファイルに書き込むことは可能ですか?
試してみるとOKだったのですが、もしかして事前に自分で認証してしまってそれで通ってしまったのかな?
と不安になったので質問しました。
0271nobodyさん
2008/07/02(水) 17:22:13ID:???影響するのはパーミッションですね。
0272nobodyさん
2008/07/02(水) 17:41:28ID:l+FlpTuRhttp://localhost/index.html
<img src="http://example.com/counter.php" />
PHP側でリファラを取得すると、リファラが「http://localhost/index.html」になってしまいます。
直接PHPを埋め込まないとダメなのでしょうか・・・?
0273nobodyさん
2008/07/02(水) 17:51:45ID:???これでどう?
<img src="http://example.com/counter.php?ref=$_SERVER['HTTP_REFERER']" />
0274nobodyさん
2008/07/02(水) 17:53:53ID:l+FlpTuRそれって「$_SERVER['HTTP_REFERER']」という文字列を渡してるから意味なくね?
0275nobodyさん
2008/07/02(水) 17:59:20ID:???0276nobodyさん
2008/07/02(水) 18:00:03ID:???0277nobodyさん
2008/07/02(水) 18:22:59ID:???∩___∩
| ノ ヽ/⌒)
/⌒) (゚) (゚) | .|
/ / ( _●_) ミ/
.( ヽ |∪| /
\ ヽノ /
/ /
| _つ /
| /UJ\ \
| / ) )
∪ ( \
\_)
0279nobodyさん
2008/07/02(水) 19:40:20ID:???phpなのか
0280nobodyさん
2008/07/02(水) 19:55:08ID:???JavaScriptが使える条件になるがJavaScriptで取って渡す。
0281nobodyさん
2008/07/02(水) 22:07:13ID:???データベースと接続して、文字列操作するだけの仕事に尽きるのですが、
phpというかwebの仕事って、みんなこんな単調な仕事なのでしょうか?
もっと、特許がとれる位のアルゴリズムを考えるのが、
プログラマーの仕事だと思っていたので、
仕事に対するマンネリ感が積もっています。
大学で専攻した知識もほとんど役に立ちませんし、がっかりです。
0282nobodyさん
2008/07/02(水) 22:08:42ID:???0284nobodyさん
2008/07/02(水) 22:28:36ID:???早く独立して会社おこしてphpで特許を取れるアルゴリズムを開発しなよ
仕事を貰ってる立場で、しかもどうせ自分で営業した案件じゃないんだろ?
それでがっかりとか、いい身分ですなあ
0285nobodyさん
2008/07/02(水) 22:29:16ID:???0286nobodyさん
2008/07/02(水) 22:31:07ID:???待って与えられた仕事してたら何時の間にか特許取れてたなんてことない
0287nobodyさん
2008/07/02(水) 22:34:58ID:???0288nobodyさん
2008/07/02(水) 22:35:57ID:???で、特許申請に金かかったが誰も使ってくれない。
0289nobodyさん
2008/07/02(水) 22:41:11ID:???0290nobodyさん
2008/07/02(水) 22:50:56ID:???うちの会社の上司と大して変わらないご意見ばかりでした。
思うに、言語のような言語の壁がなく、労働集約型のプログラマーの仕事は、
数年後にはほとんど安い外国の労働市場に持って行かれるのではないでしょうか?
職業としてプログラマーとして従事している方は、もう少し向学心をお持ちになられた方がいいと思います。
少なくても、生産資源が乏しく技術を売りするしか世界で存在価値を示せない日本が、
このような低付加価値の仕事ばかりをしていたら、ますます国力が衰えていくだけです。
0291nobodyさん
2008/07/02(水) 22:53:06ID:???0292nobodyさん
2008/07/02(水) 22:56:28ID:???スレ違いなので、というより板違いなので仕事の愚痴は別板でお願いします。
0293nobodyさん
2008/07/02(水) 22:57:41ID:???0295nobodyさん
2008/07/02(水) 23:09:19ID:???特許料もらえるまで赤字だから研究・特許なんてそうそう許可できん。
いい特許アイデアできたら上司と喧嘩してでも予算とれ
0296nobodyさん
2008/07/02(水) 23:09:19ID:???おチンチンびろーん
∩___∩
| ノ ヽ/⌒)
/⌒) (゚) (゚) | .|
/ / ( _●_) ミ/
.( ヽ |∪| /
\ ヽノ /
/ /
| _つ /
| /UJ\ \
| / ) )
∪ ( \
\_)
0297nobodyさん
2008/07/02(水) 23:10:36ID:???0298nobodyさん
2008/07/02(水) 23:30:38ID:???見てる世界狭すぎ。
え、あれ?釣りなの?w
0299nobodyさん
2008/07/02(水) 23:36:45ID:???0300nobodyさん
2008/07/03(木) 04:37:49ID:???当たり前だが営利企業は斬新だろうが普通だろうが金になる事が正義
0301nobodyさん
2008/07/03(木) 14:31:17ID:3X5/4UgX複数のディレクトリーがあってその中には複数のhtmlファイルが入っています。
複数のhtmlのそれぞれの更新日時を調べて更新日時順で
ファイル名・更新日時・ページタイトル を一覧で出すにはどんな流れで書いていけばいいんでしょうか?
全ファイルの一覧や上位10件とかもあればなお良いのですが。
0303nobodyさん
2008/07/03(木) 15:09:10ID:???readdir
ディレクトリだったら再帰
ファイルだったら必要な情報を調べる。配列にでも格納
次のファイルへ
全部調べたら好きなように加工
0304nobodyさん
2008/07/03(木) 15:16:00ID:3X5/4UgX各ファイルの更新日時・URL・ページタイトルなど必要な情報は個別に取得できていて
すでにsitemapとしてgoogleに登録してるのですが、
それを更新日時順に並べるのが出来ていない状況です。
更新日時とファイル名の関連付け?がどうすれば出来るのかって事でしょうか。
0305nobodyさん
2008/07/03(木) 15:17:34ID:???0306nobodyさん
2008/07/03(木) 15:30:45ID:???$dirurl[] = '../test2/';
foreach($dirurl as $key =>$value){
$dir = @opendir($value);
while($file = @readdir($dir)) {
if (!is_dir($file)){
@include_once($value.$file);
if($sitemap_ok != '1') continue;
$pegedata = explode("." , $value.$file);
$lastupdate = @date("Y-m-d\TH:i:s\+09:00",@filemtime($value.$file));
$sitemaps = <<<_EOD_
<url>
<loc>http://$SERVER_NAME$pegedata[2].html</loc>
<priority>$priority</priority>
<changefreq>$changefreq</changefreq>
<lastmod>$lastupdate</lastmod>
</url>
_EOD_;
echo $sitemaps;}}
closedir($dir);}
今こんな感じです。それぞれ必要な内容は取り出せているのですが、これを更新日時順で並ばせたいと思っています。
arsort($xxx,SORT_NUMERIC);などで更新日時順で並べれる事は分かるのですが、どこをどうすればいいのやら…
もう1ど最初から作り直した方がいいでのでしょうか。
0308nobodyさん
2008/07/03(木) 15:40:30ID:???DBすか!やっぱりその方がいいんでしょうね。
将来の事もあるのでsqlを少し勉強した方がよさそうですね。
あまり長くなるのも迷惑なので勉強して出直してきます。失礼しました。
0310nobodyさん
2008/07/03(木) 15:49:46ID:???たとえばarsort使いたいなら
$array_nanika[更新時間unix_time] = ファイル名;
みたいな配列を一度作って、arsort。
ただコレだと同じ時間に更新されたファイルがあるとダメだからもう一工夫は要るね。
なんにせよ一度配列に収めろってことです
0311nobodyさん
2008/07/03(木) 18:51:15ID:0wf3u7xU引数のチェックに失敗したときはクラスの作成自体を中止したい場合ってどうすればいいんですかね?
class hoge{
public function __construct($fuga){
if(!$fugaのちぇっく){
//ここで自分自身を破棄?
return false;
}
〜
}
みたいな
0312nobodyさん
2008/07/03(木) 19:05:16ID:???まあ例外投げるんじゃね
0313nobodyさん
2008/07/03(木) 19:22:00ID:NDuREgXX例えば、Apacheを80番と81番で平行運用することで負荷分散を図ることは可能でしょうか?
例えば、スクリプトAは80番で処理して、スクリプトBは81番で処理するということです。
これで、速度が倍になれば、Apacheを数十個起動して、速度を10倍位に上げたいと思います。
現在は、一ページ返却するのに10秒から15秒かかり、クライアントから遅すぎるのではないか、
と言われておりまして、これ以上クライアントに我慢してもらうことも難しくなっています。
0314nobodyさん
2008/07/03(木) 19:27:05ID:???0315nobodyさん
2008/07/03(木) 19:30:08ID:???0316nobodyさん
2008/07/03(木) 19:51:15ID:???スレ違い。ここはPHPスレ
君のような馬鹿が来るところじゃない。
まったくこれだからApache厨は馬鹿といわれる。
0317nobodyさん
2008/07/03(木) 20:11:30ID:???0318nobodyさん
2008/07/03(木) 20:32:43ID:???処理を依頼すれば、倍とはいかないまでも速くなるぞ
オススメ
0321nobodyさん
2008/07/04(金) 00:16:00ID:???∩___∩
| ノ ヽ/⌒)
/⌒) (゚) (゚) | .|
/ / ( _●_) ミ/
.( ヽ |∪| /
\ ヽノ /
/ /
| _つ /
| /UJ\ \
| / ) )
∪ ( \
\_)
0322nobodyさん
2008/07/04(金) 08:49:58ID:???0323nobodyさん
2008/07/04(金) 09:52:39ID:???1台じゃ意味ねー
0324nobodyさん
2008/07/04(金) 12:26:47ID:???原因も突き止めず対策しても・・・
0325nobodyさん
2008/07/04(金) 16:17:56ID:???$path = "xml_test.xml";//XMLパス(ファイル or URL)
$dom = new DOMDocument("1.0");
$dom->encoding = "UTF-8";
$dom->formatOutput = true;
$dom->load($path);
$dom->save($path);
で整形させようと思ったら出来ない。
$pathの中身が何も変ってないのは何故?
さくらインターネット、FreeBSD 6.1-RELEASE-p23 i386 、Apache/1.3.39 (Unix)、PHP 5.2.5
です
0328たまちゃん
2008/07/04(金) 17:36:17ID:DM0Om0jzPHPの正規表現を勉強しているのですが、どうもうまくいきません。今回は一番簡単な正規表現をつくったのですが、どうやったらよいのでしょうか。
$h = '(名前)様の会員IDは(abc12)で、(5)番目に偉い方です。';
とあったら、名前、会員ID、番号を抜き出すには、どのようにしたらよいのでしょうか?
実際に()は使用しません。
また、$1 や $2 などを使いたいのですが、解説までできればお願いしたいです。
一応自分なりに考えました。
preg_match('/^*.([a-zA-Z0-9]){2}([0-9]+)','名前$2.ID$1 $3 番目に偉い');
()を使えば、2つマッチさせたいときなどに分けることができるのでしょうか?
(名前)様は(数字)
例:太郎様は5
このとき太郎様という日本語の文字を取得するには/^(+.)([0-9])$/
ここで名前は$1になり、数字は$2になるのでしょうか?
どのような時に$1や$2がどっちがどっちなのかは、どのようにしたらわかるのでしょうか?
長々した質問すいません。わかるかた教えてください。
0329nobodyさん
2008/07/04(金) 18:28:40ID:???正規表現道場
http://pc11.2ch.net/test/read.cgi/php/1168450843/
0330nobodyさん
2008/07/04(金) 18:36:56ID:ya62/r1Y全く役に立ちませんでした。
phpやっている人の大半はApacheを利用していると思いますが、
Apacheを毛嫌いする理由がよくわかりませんし、
Apacheというより、phpの論点だと思ったので、ここで質問したのですが。
がっかりというか、呆れています。
0331nobodyさん
2008/07/04(金) 18:40:38ID:???0332nobodyさん
2008/07/04(金) 18:42:27ID:ya62/r1Yスレ違いというより、むしろあなたの勘違いです。
0333nobodyさん
2008/07/04(金) 18:47:04ID:???0334nobodyさん
2008/07/04(金) 18:48:38ID:???確認しましたがしっかり書けていました
ファイル名をフルパスでも試して見ましたが同じでした
うーん、formatOutputってあんま意味ないのか…
がっかり
0336nobodyさん
2008/07/04(金) 18:59:20ID:???数万行のファイル一つを読み込み表示させる方法と
数万行のファイルを分割して、それぞれ読み込み表示させる方法では速度に違いはでてきますか?
どちらが効率よいでしょうか。
0337nobodyさん
2008/07/04(金) 19:02:05ID:???0340nobodyさん
2008/07/04(金) 19:29:11ID:???と、いうことをやりたいです。
プログラム上でテキストファイルを指定し、表示させることまでは出来ました
ですが、『任意のファイルを選択』させることが出来ません
何か良い方法や考え方は無いでしょうか?
教科書など持っていないので、オススメの本やサイトがありましたら、紹介していただけるとうれしいです
0341nobodyさん
2008/07/04(金) 20:37:53ID:???0342nobodyさん
2008/07/04(金) 21:17:16ID:???ターゲットディレクトリ内に存在するファイルの個数を取得して、
その数だけの範囲を持つ整数の乱数=nを発生させて、
該当するn番目のファイルを開くようにすれば良いんじゃね?
0343nobodyさん
2008/07/04(金) 21:23:09ID:???これ、釣りじゃないの?
こんな知識、というか思考力で過負荷になるようなサイト構築できるのか?
信じられん。よほどサイトコンテンツが良いのか、サーバにMSXでも使って
いるんじゃないのか?
0345nobodyさん
2008/07/04(金) 22:53:21ID:zZLzuSUyhttp://news24.2ch.net/test/read.cgi/liveplus/1215164615/
0347nobodyさん
2008/07/05(土) 03:42:00ID:???0349nobodyさん
2008/07/05(土) 04:08:23ID:???0350nobodyさん
2008/07/05(土) 04:14:55ID:???なんのこといってんの?
0351nobodyさん
2008/07/05(土) 04:17:59ID:???ジョギングでも行ってこいよ。もう外は明るいぞ。
0352nobodyさん
2008/07/05(土) 04:19:18ID:???<head>
<score sort_no="2">
<score sort_no="1">
<score sort_no="3">
<score sort_no="4">
</head>
こんな感じのxmlファイルをsort_noでソートして保存しようと思って、simplexmlで読み込んで
usort、uasort、uksortやったけど全部ダメだった
まぁオブジェクトだから当然と言えばそうなんだけど、オブジェクトをforeachする時に出てくる順番を変える方法教えて下さい
php5です
0353nobodyさん
2008/07/05(土) 04:36:38ID:???foreach($dom->score as $value){
$dom2[]=$value;
}
uksort($dom2,"sort_list");
こんな感じで
リファレンスって難しいなあ
0354nobodyさん
2008/07/05(土) 04:53:16ID:???0355nobodyさん
2008/07/05(土) 04:55:12ID:FcvNsP010356nobodyさん
2008/07/05(土) 08:16:24ID:???とりあえず一回、「PHP 配列 メモリ」で検索してみたほうがいいんじゃない。
メモリ使用量はかっこいいぜ。
0357nobodyさん
2008/07/05(土) 09:02:09ID:???∩___∩
(ヽ | ノ ヽ /)
(((i ) / (゜) (゜) | ( i))) …なんちゃってねっ! チンポっ☆
/∠彡 ( _●_) |_ゝ \
( ___、 |∪| ,__ )
| ヽノ /´
| /
0358nobodyさん
2008/07/05(土) 11:33:06ID:oP1dT0fT0359nobodyさん
2008/07/05(土) 11:45:07ID:???0361nobodyさん
2008/07/05(土) 12:49:00ID:???適当なフレームワークのソース呼んで、ルーティング処理パクレ
例えば、
symfonyなら /index.php/1を
/index.php/hogeModule/hogeAction/no/1みたいにしてくれるのを設定ファイルでかけるから
0362358
2008/07/05(土) 13:01:14ID:oP1dT0fTありがとうございます。
参考にします。
0363nobodyさん
2008/07/05(土) 13:06:33ID:???0364nobodyさん
2008/07/05(土) 16:40:16ID:7nNiVjXj言葉が足りていても、私の時には全然回答もしてくれませんでしたが。
Apache複数起動で悩んでいる中年SEより。
0365nobodyさん
2008/07/05(土) 16:50:08ID:???0366nobodyさん
2008/07/05(土) 16:50:15ID:???回答あるだろ
0367nobodyさん
2008/07/05(土) 16:52:18ID:???0369nobodyさん
2008/07/05(土) 17:05:28ID:???たとえ2つPHP実行しても速くならないよ。
玉子焼き1000個同時に焼いても1秒で焼けない。1個と同じ時間かかる。
0370nobodyさん
2008/07/05(土) 17:05:53ID:???同一サーバーでの複数起動って意味だよね?何かあるんだろうか。
それとも日本語が不自由で考えてることをちゃんと文章化できていないのか。
てか、どっちにしろPHPとはまったく関係ないからスレ違いになるのか・・・
0371nobodyさん
2008/07/05(土) 17:09:04ID:???0372nobodyさん
2008/07/05(土) 17:13:56ID:7nNiVjXjスクリプトAは、2000行以上ありますが、0.1秒程度で終わりますが、
スクリプトBは、400行しかないのに、10秒前後もかかります。
そのことから、スクリプトAを80番ポートで動かし、
スクリプトBを10分割して、81〜90番ポートで動かせば1秒で終了するという見積もりです。
ただ、やり方がよくわかりません。
スクリプトBが遅いのも原因不明です。
phpがインタプリタ言語だから遅いって言ってしまえばそれまでですが、
だからといって10秒は遅すぎます。
負荷分散する方法としてこれ以外に思いつきません。
0373nobodyさん
2008/07/05(土) 17:16:26ID:7nNiVjXj平行処理ができると聞いています。phpの中だけで並行処理ができる方法があれば、それを教えて頂く方が簡単ですが。
0374nobodyさん
2008/07/05(土) 17:16:51ID:???0375nobodyさん
2008/07/05(土) 17:19:32ID:???ざっくり400行じゃなくて、遅い箇所があるとおもうけど。
0376nobodyさん
2008/07/05(土) 17:24:01ID:7nNiVjXjデータを取得して更新して、取得したデータをスクリプトBに返す処理しかやっていません。
MySQLは、処理速度が速いデーターベースと聞いておりますし、
それ以外では、文字列を編集する処理をやっていますが、それはデータベースにデータを渡す際の
エスケープ処理です。ソース全体を呼んでみましたが、特に遅いと思われる箇所もありませんでした。
0377nobodyさん
2008/07/05(土) 17:28:11ID:???0378nobodyさん
2008/07/05(土) 17:30:44ID:???とりあえずさぁ、そのスクリプトに時間計測するコードを入れて、
一番遅い所を一行に絞って、そのコードをココに貼ればわかるよ。
0379nobodyさん
2008/07/05(土) 17:42:07ID:???phpはインタプリタ言語だから遅くても仕方ないと
納得する発想がPGとしてありえないってw
てか最初からずっと同じこと言われてるじゃん。少しは質問の仕方も進歩してくれ。
0380nobodyさん
2008/07/05(土) 17:52:45ID:???キモイ。
0381nobodyさん
2008/07/05(土) 17:54:33ID:???マルチスレッドが知りたいのなら、「PHP マルチスレッド」でググリなよ。
ここで説明するより分かり易いところがいくつか見つかるよ。
Apache複数起動とかポートがどうとか、
PHPとは関係ないことを言うから、スレ違い、ネタだと判断されたんだよ。
「マルチスレッドを利用する方法を知りたい」だけでいいじゃん。
0382nobodyさん
2008/07/05(土) 18:04:06ID:???0383nobodyさん
2008/07/05(土) 18:05:40ID:???できない事はできないって言うのも仕事の内ですぜ
0384nobodyさん
2008/07/05(土) 18:06:06ID:???> データを取得して更新して、取得したデータをスクリプトBに返す処理しかやっていません。
えーと、ウェブアプリに限らずほとんどの処理は
データを取得して、更新して、取得したデータを何かに渡す物ですが?
その処理の内容で遅くないと判断できるわけが無いよね?
いいか、あんたがヘボだから、あんたが作ったソフトが重いんだ。
技術不足なんだよ。あんたは。
0385nobodyさん
2008/07/05(土) 18:12:56ID:???君には難しいことを言ってもわからないと思うから
技術者じゃなくてもわかることを聞くねw
サーバー費は月いくらかかってる?
0386nobodyさん
2008/07/05(土) 18:19:34ID:???0387nobodyさん
2008/07/05(土) 18:20:04ID:???できないって最初から言ってるのにどんどん小難しい案件が舞い込んできます。
当然やりますが。でも出来ませんっていつも言います。
0388nobodyさん
2008/07/05(土) 18:28:07ID:???でもDBサーバが先に悲鳴をあげるだろうから
レプリケーションもやっとけ
0391nobodyさん
2008/07/05(土) 18:55:18ID:???print"で<a href=〜>〜</a>
で、リンク生成は出来るんだが、
0392nobodyさん
2008/07/05(土) 18:58:30ID:???ここのページの様にフォームに入力してからボタンを押すと、各検索エンジンに飛ばしたいんだけど。
0393nobodyさん
2008/07/05(土) 19:00:32ID:???任せて自分はちょっとピンハネの方が顧客も自分も幸せだと思うぞ。
現在の技術うんぬんよりも、解決方法にたどり着く術が間違っているから。
0395nobodyさん
2008/07/05(土) 19:23:08ID:???0397nobodyさん
2008/07/05(土) 20:57:26ID:???0399nobodyさん
2008/07/05(土) 21:18:45ID:???0400nobodyさん
2008/07/05(土) 21:26:54ID:???なんだかPHPじゃなくてHTMLのformとinputの使い方の質問ぽい気がするんだが。
まあ俺には難しくてわかんないや。
>>398
わからないがあまり教えてほしいとは思わなかった。
0402nobodyさん
2008/07/05(土) 21:44:22ID:???>それです。
>HTMLとphpの組み合わせは対象外でしょうか?
え??
ごめん、あなたの質問は難しくて俺にも理解できないや
0403nobodyさん
2008/07/05(土) 21:45:19ID:???ここをよく読んでごらん
ttp://www.google.co.jp/intl/ja/searchcode.html
0404nobodyさん
2008/07/05(土) 21:45:21ID:???それコピペしてHTMLに貼っとけや
0405nobodyさん
2008/07/05(土) 21:45:38ID:???自分のサイトのフォームから外部検索エンジンで検索したいってことだから、
phpの範囲に含めても問題ないと思う。
ただ、検索サイトを見に行けばいいだけなのに
わざわざここで質問する意味もわからんが。
まぁ、>>394が答えを出してるから終了した質問だな。
0406nobodyさん
2008/07/05(土) 21:52:36ID:7nNiVjXj一つ一つコードを時間計測しましたが、
時間がかかっているところは、参照用のSQLを発行してデータを戻す関数が原因だとわかりました。
$rs = mysql_query($sql, $dblink);
このmysql_queryの実行だけに10秒かかっています。
ただ、これでは並行処理ができません。
mysql_queryを速くする方法はありますか?
0408nobodyさん
2008/07/05(土) 22:08:14ID:???その$sqlの文字列の中身が悪いんだろw
0409nobodyさん
2008/07/05(土) 22:09:26ID:???SQLのスレに逝ってください。ここにはもうレスしなくていいです。
誰も答えませんから。
0410nobodyさん
2008/07/05(土) 22:18:23ID:???Webシステムの経験が足りないんだから焦っても上手くいかないよ
基礎からちゃんと学んだほうがいいよ
それから質問者なんだから立場をわきまえて嫌味とか言わないようにね。社会でやってけないよ。
0411nobodyさん
2008/07/05(土) 22:24:03ID:???最初から意味無いって応え出て(馬鹿にして)たじゃん。
判りにくくて無視したのかもしれないが>>324が良回答だよ。
0412nobodyさん
2008/07/05(土) 22:25:31ID:???・mysqlデータベースのチューニング
・mysqlサーバを別のマシンに移す
解決手順
・他社に依頼
0413nobodyさん
2008/07/05(土) 22:36:20ID:???0414nobodyさん
2008/07/05(土) 22:46:55ID:7nNiVjXjMYSQLは今回初めてなので、よくわかりません。
通常は、DBチームがSQL文を作成したりDAOを作成するため、関与しないのですが、
今回は予算の関係で人が足りず、一人で作りました。
とりあえず、クライアントには、導入したMySQLの性能に問題があるということで理解を得たいと思います。
選定の際に、導入コストが安いMySQLを選んだクライアント側にも責任の一端はあるわけですから。
ここのスレは役に立つ情報も有ると思いますが、
雑音が多くて、せっかくの情報が埋もれてしまうのが残念です。
何かと問題が多い2chですから、それを承知で投稿させて頂きましたが、
使い方次第ですね。
とりあえず、感謝の気持ちは表しておきます。
ありがとうございました。
0416nobodyさん
2008/07/05(土) 22:53:13ID:???0418nobodyさん
2008/07/05(土) 22:55:35ID:???同僚でこんなのいたら最悪だなwww
0419nobodyさん
2008/07/05(土) 22:56:48ID:???0420nobodyさん
2008/07/05(土) 23:21:24ID:???0421nobodyさん
2008/07/05(土) 23:22:50ID:???0422nobodyさん
2008/07/05(土) 23:27:55ID:???0423nobodyさん
2008/07/05(土) 23:28:37ID:f4JIQhYU上記のとき、カラム名を [`]で囲む必要はあるのでしょうか?
[`]をつけないとエラーになるときがあり、その理由がわかりません。
0425nobodyさん
2008/07/05(土) 23:35:49ID:T4jgJP6eフォームの流れを、「入力→確認→完了」としているのですが、
画像を確認する為に、一度ファイルをアップロードして
確認画面で問題なければ正規のディレクトリに移動させています。
おそらく大多数の方がこのような確認方法をとっているのかと思いますが、
一度ファイルをアップロードして、再度ファイルをアップロードし直す時、
古いファイルが残ってしまいます。
これも一定時間置きに、確認ディレクトリ内を削除すると思うのですが、
どうも非効率だと思います。
そこで質問ですが、上記の方法以外にアップロードしたい画像を
確認する方法はないでしょうか?
0426nobodyさん
2008/07/05(土) 23:56:01ID:???回答に必要な情報が足りない。
$sql
$dblink
それぞれの内容及びdbのtable構成、レコード数
それ位は最低限必要。
0428nobodyさん
2008/07/06(日) 00:03:46ID:???DB板のMySQLのスレでDB構造とどんな感じのSQL発行してるか書いてみ
あとループ内で数1000件のSQL発行してるとかは無いよね?
DBチームが居てあまりSQLに精通してないなら
悲惨なSQLやDB構造になってる可能性が高い
0429nobodyさん
2008/07/06(日) 00:07:02ID:???0430nobodyさん
2008/07/06(日) 00:08:22ID:???同一人物がアップしてできるテンポラリのファイル名を
固定しちゃえば?
まぁどっちにしろゴミファイルを削除しないとだけど
0431nobodyさん
2008/07/06(日) 00:17:16ID:???セッションと組み合わせて、セッションがGCされるタイミングで
同じくコレクションするしかないんじゃないかな。
0432nobodyさん
2008/07/06(日) 00:27:04ID:???俺だと、tmpファイルか否かと、tmpファイルのライフタイムが分かるのを前提にして、
次回処理時にtmpディレクトリを走査していらないファイルは消すだな
0433nobodyさん
2008/07/06(日) 01:32:55ID:???を消すってやり方してるじょ。ちんぽちんぽ
0434nobodyさん
2008/07/06(日) 04:11:06ID:???10秒は異常。よくある話だけどね。
どんな遅くたって1秒以内に返るようにすることはできるが
キミがそのスキルが無いんじゃ無理かも。
普通に金取るならそんな問題瞬時に解決できるよ。
0435nobodyさん
2008/07/06(日) 05:18:10ID:Uta9DmJUこれは、「,」があるところで分割していますが、2種の分割条件を設定したい場合は
どのようにしたらいいんでしょうか?
たとえば「きょう、はれ。あしたは、くもり。」とあった場合に、「、」「。」と両方で区切りそれぞれ
変数に格納したいのですが。。よろしくお願いいたします。
0436nobodyさん
2008/07/06(日) 05:37:40ID:???0438nobodyさん
2008/07/06(日) 09:01:51ID:???Array([0]=>きょう,[2]=>はれ,[3]=>あしたは,[4]=>くもり)
Array(
[0]=>Array([0]=>きょう,[1]=>はれ),
[1]=>Array([0]=>あしたは,[1]=>くもり)
)
0439nobodyさん
2008/07/06(日) 12:07:03ID:???[。]の場合は三点リーダー(…)の変換しそこね[ 。。。]があるから単純に分割すると予期せぬ動きが出る。
「今日は。。。はれ。あしたは、くもり。」
Array(
[0]=>Array([0]=>きょう,は),
[1]=>Array([0]=>null),
[2]=>Array([0]=>null),
[3]=>>Array[0]=>あしたは,[1]くもり)
)
こんな感じ。
このような問題に大して対処する必要はあるの?
0440nobodyさん
2008/07/06(日) 15:32:22ID:???Eclipseというコンパイラを使いたいのですが、
プロジェクトを作成する際、「メモリ不足」というエラーが出てしまいます。
メモリを足して1024までふやしても、同じです。
このコンパイラを使えるようにするために他にできることは何がありますか。
0441nobodyさん
2008/07/06(日) 15:33:52ID:u0xbCZgfEclipseというコンパイラを使いたいのですが、
プロジェクトを作成する際、「メモリ不足」というエラーが出てしまいます。
メモリを足して1024までふやしても、同じです。
このコンパイラを使えるようにするために他にできることは何がありますか。
0442nobodyさん
2008/07/06(日) 16:24:51ID:???0443nobodyさん
2008/07/06(日) 18:59:55ID:kCPlCvkdCPUとかも。
あと一度再インストールを実行しましょう。
0444nobodyさん
2008/07/06(日) 19:57:34ID:???とりあえず、例外が発生しない前提だったら
$a = split('、|。', "きょう、はれ。あしたは、くもり。");
でいいんじゃない。
splitは正規表現使えるわけですし。
0445nobodyさん
2008/07/06(日) 20:04:43ID:OiP9S+tKcoreserverでphpからsendmailを使おうとすると
error 127っていうのがでます。
↓のを参考にしてMail::factoryをつかったのですが
http://www.s-memo.net/blog/2007/03/pearmail_1.php
これはどうすれば解決するのですか?
0447nobodyさん
2008/07/06(日) 21:37:13ID:???何を使えばいけるんでしょうか。
0448nobodyさん
2008/07/06(日) 21:37:54ID:7trC5Wsc0451nobodyさん
2008/07/06(日) 23:19:34ID:???0452nobodyさん
2008/07/06(日) 23:51:55ID:???0453nobodyさん
2008/07/06(日) 23:54:30ID:OiP9S+tKsmtpになげたら成功しました。
ありがとうございます。
0454nobodyさん
2008/07/07(月) 03:13:50ID:v4RGtv07Linux(ubuntu7.1)、PHP5で動かしています。
$tst = "select";
if ( preg_match( "/[text|textarea|file|pass]$/i", $tst ) ) print "hit - {$tst}<br />\n";
このような正規表現を書いた場合に、真となり、hit - select と出力してしまうのですが何故でしょうか?
動作としては、
$tst = "text";
$tst = "textarea";
$tst = "file";
$tst = "pass";
の場合のみ、プリント文を出力させたいのです。
正常に出力されないので私が間違っているとは思うのですが、正規表現ドキュメントを見たり、このコードと睨めっこしても間違いに気づくことが
できませんでした。
お力添え頂ければ幸いです。
宜しくお願い致します。
0455nobodyさん
2008/07/07(月) 03:16:37ID:???0456454
2008/07/07(月) 03:31:08ID:???レスありがとうございます。
ぇっ・・・これってpreg_matchもしくはphp特有のケースでしょうか?
それとも正規表現における私の完全な勘違い?
試してみると期待通りの動作を確認しました。
とても感謝なのですが、何か頭の中でモヤモヤが。()ってパターンマッチ変数を格納する為の符号だと思っていました。
もしよろしければ少し説明もしくは該当箇所についてのサイト、ドキュメント等ありましたご紹介頂けないでしょうか。
度々申し訳ありません。
宜しくお願い致します。
0457nobodyさん
2008/07/07(月) 03:56:00ID:???0458nobodyさん
2008/07/07(月) 04:00:55ID:???[]の中に置かれた文字のいずれかにマッチします。
よくある勘違い
[^foo]bar という正規表現は、「fooではない文字列に続いてbarという文字列が続くもの」 ではありません。
「fでもoでもない文字に続いてbarという文字列が続いたもの」です。
[]で囲んだものが表しているのは文字列ではなく文字の集合(その中に含まれる/含まれない文字のどれか) だということに注意してください。
http://www.kt.rim.or.jp/~kbk/regex/regex.html
0460nobodyさん
2008/07/07(月) 04:26:31ID:???私の運用能力による所もありますが、
400日も連続して働いてくれるサーバーの部品たちに感謝。
すぐ切れる子供が多いというのに、サーバーは全く切れない。
幼児教育のネタにしてほしいと思う今日この頃です。
明日は、燃料高騰とサーバー運営費との関係性についてお話します。
0462nobodyさん
2008/07/07(月) 07:53:27ID:???0463nobodyさん
2008/07/07(月) 08:02:12ID:???httpd.confには
Options FollowSymLinks ExecCGI IncludesNOEXEC
を指定しています。
htmlファイル内に
<!--#include virtual="/common/header.html" -->
が記述されていて、
ちゃんと、includeされて画面表示できます。
ここで、phpが使いたくなり、
phpをインストール・環境設定を
行い、phpinfo.phpは正しく表示されます。
htmlの拡張子でもphpを動かしたく、
httpd.confに
AddType application/x-httpd-php .php .html
を追記し、apacheを再起動しました。
その結果、
ブラウザ画面上には
an error occurred while processing this directive
とメッセージがでて、
apacheのログには、
unable to include potential exec "/common/header.html" in parsed file hoge
と出力され、正常に動作しません。
SSI使用及びPHPを拡張子htmlで実行したいのですが、
どこが間違っているか分かる方、ご教授ください。
0465nobodyさん
2008/07/07(月) 10:04:02ID:???枯れたkernelなら400日くらいの稼働もめずらしくないがな
daemonのアップデートなんて再起動は必要ないんだし
0466nobodyさん
2008/07/07(月) 10:04:21ID:???>>464
>>442はWindowsみたいにサーバ再起動を要求する
セキュリティフィックスばかりだと思うなって事だとオモ
0468nobodyさん
2008/07/07(月) 11:21:19ID:???0469nobodyさん
2008/07/07(月) 11:21:34ID:???アップデートぐらいあるだろ。常識で考えて。
0470nobodyさん
2008/07/07(月) 11:23:56ID:???0471nobodyさん
2008/07/07(月) 11:38:38ID:hqpY620v携帯サイトを構築してるのですが、画像のダウンロードボタンを
作成する場合、どのようにしたらいいのでしょうか?
ググったけど分からずに困っています・・・。
もしかして、携帯で画像の自動ダウンロードはできないのでしょうか?
PCサイトみたいにheaderで作成してもできませんでした。
よかったらご教授願います
0472nobodyさん
2008/07/07(月) 11:45:04ID:???0474nobodyさん
2008/07/07(月) 13:54:05ID:???pngやjpgはちゃんと真っ白(#ffffff)になります
gifでも真っ白にしたいのですがどうすればいいでしょうか?
ご教授ください
0475nobodyさん
2008/07/07(月) 13:58:47ID:hqpY620v表示されて、メニューから保存ではなく、
自動的にダウンロードされるようにしたいのですが
動画などは<a>タグや<input>で問題ないのですが
画像は別画面になるだけですので・・・
0477nobodyさん
2008/07/07(月) 14:07:07ID:hqpY620vphpのheaderで
header("Content-Disposition: attachment; filename=hoge.jpg");
これを指定してもだめでした
0478nobodyさん
2008/07/07(月) 14:11:36ID:???http://oshiete1.watch.impress.co.jp/qa3994529.html
http://oshiete1.goo.ne.jp/qa2511541.html?ans_count_asc=1
http://mwweb.cocolog-nifty.com/blog/2008/01/softbank3gp_7f43.html
キャリアにもよるんじゃね?
0479nobodyさん
2008/07/07(月) 14:19:14ID:???すでにリンクが赤くなってますw
.htaccessなども色々試したのですが、言われてる通り
キャリアによってできたりできなかったりしますね。
<object type="image/jpeg">などもやったのですが、
auだけ動いて、他のキャリアは動かなかったりとか・・・
headerの指定で、携帯用などがあるのであれば、
どなたかご存知の方がいるかなと思いレスさせていただきました
0480471
2008/07/07(月) 14:20:15ID:hqpY620v0481nobodyさん
2008/07/07(月) 14:23:35ID:???0482nobodyさん
2008/07/07(月) 14:23:57ID:???出来合いのカーネルならね。
>>465 は自前でリビルドしたやつ使ってるんでしょ。
セキュリティフィックスに該当する部分が
最初から入ってなければ、問題は出ない。
0483nobodyさん
2008/07/07(月) 16:25:04ID:???> 最初から入ってなければ、問題は出ない。
で、セキュリティフィックスに該当する部分を
最初っから入れないようにするにはどうするの?
0484nobodyさん
2008/07/07(月) 16:30:07ID:???0485nobodyさん
2008/07/07(月) 17:26:04ID:???いろいろ弄っていて気づいたのですが以下の場合ではcountが目的通り機能しません。
配列要素の最後の配列数を取得するような関数は御座いませんでしょうか?
$a[0] = "";
$a[1] = "1";
$a[3] = "3";
$count = count( $a );
print "{$count}<br />\n";
print_r( $a );
$countは3になり、print_rでも$a[2]は欠落した状態で表示されます。
事前に$a[2] = "2";と定義すれば$countも4となり、print_rでも$a[2]は空変数として表示されます。
このような配列を
$c = count( $a );
for( $i = 0; $i < $c; $i++ ) {
print "{$i} - {$a[$i]}<br />\n";
}
の式でループすると$iの配列ポインタが一致せずに
0 -
1 - 1
2 -
と表示されてしまいます。
0 -
1 - 1
2 -
3 - 3
と表示するようにしたいのです。
アドバイスの程、どうぞ宜しくお願い致します。
0486nobodyさん
2008/07/07(月) 17:28:59ID:???お客さんが勘違いしますし、日本語としても間違っています。
使うなら、「熟した技術」という言葉をお使い下さい。
お願いします。
0487nobodyさん
2008/07/07(月) 17:29:23ID:???0488nobodyさん
2008/07/07(月) 17:30:17ID:???0490nobodyさん
2008/07/07(月) 17:55:20ID:???枯れた女
大違いだ
0492nobodyさん
2008/07/07(月) 18:57:25ID:cOv9SSky<select name="color1">
<option value="白">ホワイト</option>
<option value="赤">レッド</option>
<option value="黄">イエロー</option>
<option value="青">ブルー</option>
<option value="緑">グリーン</option>
</select>
これで例えば黄を選んだとき300円
緑を選んだとき200円
といったnedanと言う値をPOST値に加える場合どうしたらいいんですかね
0493nobodyさん
2008/07/07(月) 19:12:27ID:YMIYH7F4// Singletonパターン
static function get_instance() { /* 略 */ }
function main() {$instance = self::get_instance(); $instance->exec()}
}
class Ex extends Base {
function exec() { /* 略 */ }
}
このとき、ある場所からEx::main()と呼び出したときに、"Ex"という継承クラスの名前を
Baseクラスで知ることができる方法がありましたら、ご教授お願いします。
もしあれば、継承クラスのget_instance()などをまとめて指定できて、すっきりできるのですが…。
0494nobodyさん
2008/07/07(月) 19:16:48ID:???POST値に加える必要ないだろ
サーバー側で黄→300円、緑→200円の変換をかけるんだ
HTMLに手を加えられて
0円とか、-100,000,000円とか
送られてきたらどうするんだよ
0495nobodyさん
2008/07/07(月) 19:17:00ID:???value=200,黄色
でなんとか出来たらいいよね。
0497492
2008/07/07(月) 19:22:20ID:cOv9SSkyOKなんですが、別鯖に送るときはきちんとデータを
送らないといけないんですよね>>494-496
自鯖内でもいっかいPOSTしてswitchするのが
一番ですかね。
0500nobodyさん
2008/07/07(月) 19:38:32ID:???0501492
2008/07/07(月) 19:42:00ID:cOv9SSkyどの変が分からないですか?
0502493
2008/07/07(月) 19:46:32ID:YMIYH7F4回答ありがとうございます。やはり無理でしたか…。
今のところは我慢して継承クラスに書くことにします。
0504nobodyさん
2008/07/07(月) 20:09:12ID:???俺も判らん。
突然別サーバの話とか出されても
先にどういうシステムか説明してよ。
自鯖内でもいっかいPOSTって何言ってんのさ。
正しい値で別サーバに送ればいいじゃん。
てか改ざんチェックして別サーバに送るなら
最初から200円とか面倒を起こす必要ない情報をPOSTしなければいい。
0505nobodyさん
2008/07/07(月) 20:16:38ID:PSaYvrzk日本語か?
0506nobodyさん
2008/07/07(月) 20:55:24ID:???0507nobodyさん
2008/07/07(月) 21:00:48ID:???ex. 大きなPHPのスクリプトはありますか
0508nobodyさん
2008/07/07(月) 21:01:07ID:???0509nobodyさん
2008/07/07(月) 21:05:18ID:???index.htmlからsub.phpを引数つきで呼び出したいのです。
例えば、
index.htmlで、
<?php
call "sub.php 3";
?>
というような感じで呼び出して、
sub.phpで2倍してechoするというような仕組みが作りたいです。
以下はsub.phpの例えです。
<?php
return (argv[1]*2);
?>
エスパー様、教えてください。
0510nobodyさん
2008/07/07(月) 21:07:48ID:???0511509
2008/07/07(月) 21:10:19ID:???0513nobodyさん
2008/07/07(月) 21:11:43ID:???0514509
2008/07/07(月) 21:14:04ID:???拡張子がhtmlでもphpは実行できますよね?
apacheのhttpd.confの
AddHandler application/x-httpd-php html
の指定で。
0516nobodyさん
2008/07/07(月) 21:18:16ID:???0517509
2008/07/07(月) 21:20:12ID:???0519nobodyさん
2008/07/07(月) 21:27:36ID:???0521nobodyさん
2008/07/07(月) 21:28:53ID:???0522nobodyさん
2008/07/07(月) 21:29:19ID:???0523nobodyさん
2008/07/07(月) 21:31:03ID:???0524509
2008/07/07(月) 21:31:54ID:???関数でもなんでもいいです。
ただ、index.html内にphpのコードを書くのではなく、
外部ファイルのphpに引数を渡してechoの戻りが
欲しいのです。
お願いします。
0525nobodyさん
2008/07/07(月) 21:41:47ID:???echo file_get_contents('http://hogehoge.jp/sub.php?arg=3');
?>
sub.php
<?php
if (isset($_GET['arg']) == false) {
exit;
}
$arg = $_GET['arg'];
echo $arg * 2;
?>
まぁsystemとかでphp -f使えとかいわれそうな気もするが
拡張子が.htmlの場合phpにするか
そのファイルだけphpにするという設定を.htaccessに書くかけば動くよ
0527nobodyさん
2008/07/07(月) 21:46:29ID:???0530やらたん
2008/07/07(月) 22:17:23ID:e8gC2p2T実際にFPには、穴があって、スクリプトを見るのに使えるらしいのですが、どうやるか知っていますか?
引数?idに、何か%00のような値を入力したら、バグってみれるそうです。ヌルバイト攻撃でしたっけ…
http://tool-1.net/index.cgi
それを使ってみたいのですが、どうやったらいいかわかりますか?
TELNETでは無理でした。
0531nobodyさん
2008/07/07(月) 22:34:31ID:???0532nobodyさん
2008/07/07(月) 23:03:44ID:???仕切りなおしさせてください。
昨日の書き込みはお見捨て置きください。
●PCスペック
XPPro Ver2002 / SP2 / HP Compaq dx7300 Slim Tower Intel(R)
Celeron(R) D CPU 3.46GHz
3.46GHz、488MB Ram
●症状
Eclipseというアプリで、プロジェクトを作成しようとすると、
Java heap spaceというエラーが出る。
●補足
この言葉をネットで検索すると「メモリの割り当てを増やすと解決する」
とあったので、348MBまで増やしたのですがそれでもダメでした。
再インストールしてもダメでした。
他に手はないでしょうか。先輩方、どうかよろしくおねがいもうしあげます。
0533やらたん
2008/07/07(月) 23:19:22ID:e8gC2p2T0535nobodyさん
2008/07/07(月) 23:30:44ID:0vUgsI9q0536nobodyさん
2008/07/07(月) 23:34:37ID:???0537nobodyさん
2008/07/08(火) 00:13:27ID:???0538nobodyさん
2008/07/08(火) 00:52:17ID:???なるほどそんな方法があったのね。
やってみたら見れたよ
教えてくれてありがとう。
自分のスクリプトにも対策を施しておこう。
0540nobodyさん
2008/07/08(火) 01:57:01ID:4wqeMBNv0542nobodyさん
2008/07/08(火) 02:36:00ID:???これが無いと動かないっていうモジュール以外をできる限り外して、
カーネルをリビルドして、バージョンを固定する。
該当するセキュリティホールが出たら、また、手動でリビルドする。
入っているモジュールが絞られているので、引っかかる可能性が
下がる。運がよければ2年くらいそのままで行けることもある。
2000年頃のサーバ関連の本だと、出来合いのカーネルは使わ
ないのが常識くらいに書いてあるよ。
0543nobodyさん
2008/07/08(火) 05:15:28ID:sA/0fAo90548nobodyさん
2008/07/08(火) 10:30:22ID:???htpasswd -b[cmdpsD] passwordfile username password
と、パスワードをコマンドライン上に書ける書式があるようなのだが。
0549nobodyさん
2008/07/08(火) 10:37:23ID:???0550nobodyさん
2008/07/08(火) 12:52:51ID:wHbZE3VJPHPの求人ってみんなどこで探してるの?Find Job!とインターネットハローワーク
くらいしか見てなくて、あんまりない。どこにPHPの求人情報があるサイトってあるんかな?
どこもあんまりないんだけど。。
0551nobodyさん
2008/07/08(火) 13:03:09ID:???ぐーぐるじゃないのか
http://www.google.co.jp/search?q=PHP%E3%81%AE%E6%B1%82%E4%BA%BA%E6%83%85%E5%A0%B1
0552nobodyさん
2008/07/08(火) 13:10:15ID:???なんでもできるようになっとけ
0553nobodyさん
2008/07/08(火) 13:55:08ID:???0554nobodyさん
2008/07/08(火) 13:57:17ID:???0555nobodyさん
2008/07/08(火) 14:05:36ID:???0556550
2008/07/08(火) 14:26:17ID:???ありがとう。
>> 皆様。
ありがとうございます。資格は一応持ってます。でも、求人情報がすくなく。。
他の言語はCとC++ができますが(Windowsプログラム)、これもあまり求人ないですし。
どうすりゃいいんだか。。
ありがとうございました。
0557nobodyさん
2008/07/08(火) 14:28:14ID:???0558nobodyさん
2008/07/08(火) 17:13:17ID:???そんなの無くても就職できるぞ
あとfind jobとかはたまにしか良いの無いし
新卒とかだともっと厳しい
0560nobodyさん
2008/07/08(火) 17:26:03ID:???0561nobodyさん
2008/07/08(火) 17:40:47ID:???0563nobodyさん
2008/07/08(火) 19:00:45ID:???0564nobodyさん
2008/07/08(火) 20:16:28ID:???金融系のシステムに従事していたときは、
残業代込みで税込み85万円でしたよ。
資格より経験値で値段が決まる世界だし。
あと、面接のアピールをうまくして好感度アップを。
0565nobodyさん
2008/07/08(火) 21:20:29ID:QzhvBmuWその節を色々アドバイスを頂きどうもありがとうございました。
無事解決しましたので、事後報告をさせて頂きたく投稿しました。
本日午前中に暇しているDBチームのメンバーがいたので、
見てもらったところ、MYSQLがおかしかったせいで、
遅かったみたいです。10秒かかっていたのが、0.2秒程度で処理できるようになりました。
クライアントにも喜んでもらえそうです。
MySQLは鬼門ですね。やはり、プロ用のOracleを無理にでもクライアントに呑ませるべきでした。
安物買いの銭失いを地でいくようなお話で、恥ずかしい限りです。
このスレには、たくさんのアドバイスを頂き、色々お世話になりました。
また、お騒がせしました。どうも、ありがとうございました。
0567nobodyさん
2008/07/08(火) 21:26:58ID:???やっとわかったのか。
0568nobodyさん
2008/07/08(火) 21:33:16ID:???0570nobodyさん
2008/07/08(火) 21:53:39ID:???中年SEはリストラするに限るなw
0571nobodyさん
2008/07/08(火) 22:48:38ID:???0572nobodyさん
2008/07/09(水) 01:22:14ID:vfd79F2Nttp://php.eweb-design.com/0206_di.php
のサイトのスクリプトを使ってみたんだけど、ファイル名に
スペースがあると404になってしまいます。
ファイル名を変えずに解決する方法はありますか?
0573nobodyさん
2008/07/09(水) 01:37:06ID:???0574nobodyさん
2008/07/09(水) 01:47:02ID:???0575nobodyさん
2008/07/09(水) 01:54:30ID:U9Y+NLIishine
0576nobodyさん
2008/07/09(水) 01:59:02ID:???0577nobodyさん
2008/07/09(水) 02:09:21ID:???0578nobodyさん
2008/07/09(水) 02:59:32ID:???0579nobodyさん
2008/07/09(水) 04:27:46ID:o++cyH1p$extention = array( 'html', 'htm', 'shtml', 'php', 'cgi' );
$files = array( 'index.cgi', 'index.php', 'index.html', 'index.htm', 'index.shtml' );
usort( $files, 'func' );
function func {};
usort処理後、
$files = array( 'index.html', 'index.htm', 'index.shtml', 'index.php', 'index.cgi' );
になるようにしたいのですが、func内にどう記載すればいいのか分かりかねています。
どなたかヒントを頂けませんでしょうか?
0581nobodyさん
2008/07/09(水) 07:25:33ID:???index.html
って言う文字列から
strpos()とかsubstr()使って
拡張子取り出す処理は書ける?
pathinfo()使ってもいいけど。
0582nobodyさん
2008/07/09(水) 07:59:56ID:???$str = "index.html";
substr( $str, strpos( $str, "." ) + 1 );
書けますが、その意図が分かりません。
0583nobodyさん
2008/07/09(水) 09:23:50ID:???$file = $_SERVER[PHP_SELF];
if( file_exists( $file ) ) {
print "{$file}は存在する";
} else {
# リンク切れ
print "{$file}は存在しない";
}
何度やっても、存在しないってなるんだけど、
PHP.INIかどこかがおかしいのかな?
自分自身のファイルを確認してるわけだから、存在しないわけないのに。
0585583
2008/07/09(水) 10:18:47ID:???ん? どういうことですか?
実行してるのは、Apache上です。
http://localhost/test/test.phpの出力結果です。
0586nobodyさん
2008/07/09(水) 10:31:34ID:???その場合、/test/test.php をチェックしてるんだろうが、
実際のファイルの場所は、(httpdで設定したドキュメントルート)/test/test.phpだろ
httpdで設定したドキュメントルートは、例えば何もいじってないApacheなら、/usr/local/apache2/htdocs とか
0587nobodyさん
2008/07/09(水) 11:06:24ID:???0588nobodyさん
2008/07/09(水) 12:13:23ID:???たとえば、fileupするときにどのようなクエリもらって処理しているのかなど
0591nobodyさん
2008/07/09(水) 12:32:03ID:???0592nobodyさん
2008/07/09(水) 12:35:54ID:???0593583
2008/07/09(水) 13:06:10ID:???$array2 = array( 'b', 'c' );
この時、
$array1 - $array2 のように差分を求める関数、または良い求め方はありますか?
この場合だと、array( 'a', 'd' ) が返ってきて欲しいのです。
0594583
2008/07/09(水) 13:08:30ID:???>>583については、
>>584, >>586氏の言った通りでした。
ドキュメントルートからファイル名を得ることで、正常に処理できるようになりました。
0599nobodyさん
2008/07/09(水) 13:47:00ID:???0600nobodyさん
2008/07/09(水) 13:52:55ID:???を表すコードを教えてくださいな。
0601nobodyさん
2008/07/09(水) 13:56:00ID:???ttp://www.carsensorlab.net/catalog/landrover/range_rover/
0602583
2008/07/09(水) 14:26:37ID:???他に>>579も質問していましたが、
array_search( substr( 'index.htm', strpos( 'index.htm', "." )+1 ), $extention );
の応用でほぼ解決しました。
0603nobodyさん
2008/07/09(水) 14:30:08ID:???0604nobodyさん
2008/07/09(水) 14:44:25ID:GllHLeeR「fatal error: cannot re-assign $this 〜」
というエラーが出るようになりました
電話で聞いたら
「PHPの動作モードが選べるので4に戻せば動きます
でもサポート終了なので自己責任ですよ」
と言われました。
それで今はとりあえずPHP4モードにしてエラーが出なくなりましたが
何か不安、でも一々修正箇所を探すの面倒
と言うわけで、一発でPHP5で問題のある箇所が分かる方法は無いでしょうか?
何かコマンド一発で出るとか、もしくは該当のエラーが出た場合、
そのファイル名と日時を記録とか通知するように出来ないでしょうか?
0605nobodyさん
2008/07/09(水) 14:45:41ID:???質問のレベルが下がると回答者は無能者ばかりになる。
役立たずスレここに極まれりだな。
0608nobodyさん
2008/07/09(水) 14:55:46ID:dvrZbz4Khttp://j.eztool.net/http://x.x/
http://j.eztool.net/
これに
index.phpがあるのはわかります。
http://j.eztool.net/index.php?url=http://x.x
しかし、
http://j.eztool.net/index.php/http://x.x/
じゃなく、
http://j.eztool.net/http://x.x/
これは、どういう仕組みなんですか?
0610nobodyさん
2008/07/09(水) 15:09:50ID:???0611nobodyさん
2008/07/09(水) 15:18:05ID:???>index.phpがあるのはわかります。
>http://j.eztool.net/index.php?url=http://x.x
なんで分かるの?
0612nobodyさん
2008/07/09(水) 15:26:21ID:???「http://example.jp/index.php」/http://example.com/
「http://example.jp」/http://example.com/
鯖で括弧内が等価になる設定にしてるだけ。PHPは関係ない
0613nobodyさん
2008/07/09(水) 15:36:07ID:???そういうことも分からないのにPHPなんて早すぎる。
まずはなんとかブリーダとか使ってなんちゃってサイト作ってみれば。
0614nobodyさん
2008/07/09(水) 15:50:35ID:???質問か高度かどうかはともかく、
「質問者」のレベルが低いとろくな回答はつかないだろう。
この場合のレベルとはPHPのスキルではなく、他人に物事を正確に伝える能力な。
抽象的過ぎて複数の解釈が出来る質問なら、トンチンカンな回答が含まれるのは当然だし
判断に必要な情報が足りなければ、エスパー以外は回答できないのも当たり前。
0615nobodyさん
2008/07/09(水) 15:55:15ID:n5MnIPD/はなかなかいい所を突いてる。
難易度の高い質問に答えられる回答者は、このスレ見てない。
自分のレベルでも答えられる回答を見つけると、勘違い回答者続出。
0616nobodyさん
2008/07/09(水) 15:57:17ID:???0617nobodyさん
2008/07/09(水) 15:59:38ID:???0618nobodyさん
2008/07/09(水) 16:04:03ID:???それとPATH_INFO を調べればいくらでも工夫できると思うよ。
0620604
2008/07/09(水) 17:35:51ID:GllHLeeR何となくピンと来ました
以前.htaccessで、ファイルが無い場合はエラーページへ飛ばす文を書いたことあるんで
それを応用してエラーが出たらエラー処理ページに飛ばして
ファイル名と日時を記録or通知sればOKですね。サンクスです
0621nobodyさん
2008/07/09(水) 17:49:00ID:???0623nobodyさん
2008/07/10(木) 01:02:35ID:g7ks3HVV0624nobodyさん
2008/07/10(木) 01:06:37ID:???0625nobodyさん
2008/07/10(木) 02:32:53ID:???$array = array( [4] => 'foo', [12] => 'bar' ); を
$array = array( [0] => 'foo', [1] => 'bar' ); に変える方法です。
現在、以下のような方法でやっています。少し不細工な気もしますが。
$array = array_merge( $array, array() );
ベストプラクティスがありましたら、ご教示下さい。
0626nobodyさん
2008/07/10(木) 02:34:21ID:???0628nobodyさん
2008/07/10(木) 03:57:07ID:???3ヶ月の研修期間が終わって、配属されました先がphpでプログラミングを担当する部署でした。
同期は、Javaやネットワークを扱った案件に回されているらしく、
どうして自分だけがと悩んでいます。
phpについてほとんど知識がありません。ただ、聞くところによるとルールが緩い言語で簡易言語だと教わりました。
このスレで聞くのもなんなんですが、私がこのような部署に回した会社の意図はどこにあるのでしょうか。
結構真剣に悩んでいます。批判でも結構ですので、アドバイスを下さい。
0629nobodyさん
2008/07/10(木) 05:25:31ID:???等号使っての式はできるが、
普通に計算式(和を求めたり)できないな
{if ($value + $value2) > 10}{/if}
0632nobodyさん
2008/07/10(木) 07:16:02ID:???俺人事部じゃないから知らん。
>結構真剣に悩んでいます。
気にしたら損。たとえ変な理由であることを後から知ることになっても。
何が不満なのか不安なのか知らんけど。
>会社の意図
お前の会社の人事が悪い意味での適当なのかイイ意味の適当なのか俺は知らん。
部署の要望 > 新入社員の希望
>どうして自分だけが
1人要望していた部署があったか、PHPを扱う部署が1つしかないんだろ。
1つの部署に必ず新人は2人以上なんて規則ないだろ。
PHPの仕事が増えれば来年の人事異動で同期が来るかもしれない。
>PHPについてほとんど知識がありません
すでにJavaとかが判るんだったらPHPできないなんてことはないよ。
0635nobodyさん
2008/07/10(木) 08:39:27ID:???早速のアドバイスどうもありがとうございます。
研修の半分はJavaでした。ただ、Javaは大学でもやったことがあり、
既に研修でしていることは、私にはわかりきっていることで退屈な位でした。
初日に同期がclasspathの設定で環境構築に苦しんでいる中、
一日で研修テキスト一冊目(150ページ)の最後の課題を終了したくらいです。
それが、phpに部門に配属されるという意味が分かりません。
人を見る目がない会社なら、将来が暗いと考えていまして、
第二新卒を狙って、他の会社に転職することも考えています。
0636nobodyさん
2008/07/10(木) 08:43:55ID:???ノートPCを閉じないといけません。
又、夕方来ます。宜しくお願いします。
0637nobodyさん
2008/07/10(木) 08:46:09ID:???0639nobodyさん
2008/07/10(木) 08:54:25ID:???既にJava出来るならPHPなんて楽勝でしょ。
即実践投入でサクサク銭稼げるようになってくれよ。
知識のない奴はOJTしつつJava習わせて、
適当なところでJava案件の常駐に行かせて稼がせよう。
2.知識はあっても…と何かorzされてる
ということで、PHPの部署以外引き取り手がなかった。
0641nobodyさん
2008/07/10(木) 10:08:25ID:???やめたほうがいいよ同期
0644nobodyさん
2008/07/10(木) 10:30:37ID:???phpの方が将来性あるから。
ぶっちゃけJavaはもうはやらんよ。
オープンソースのシステムなんかほとんどphpでしょ。
0647デフォルトの名無しさん
2008/07/10(木) 10:55:42ID:???CakePHP1.2,PHP5でviewにチェックボックスを表示しています。
デフォルトをチェックが入った状態にしたいのですが、以下のようにvalueを指定してもチェックが入りません。
どのように指定すればチェックが入るのでしょうか?
echo'<div>'.$form->checkbox('comset/admin',array('label'=>"",'value'=>1)).'管理者のみ表示</div>';
0648nobodyさん
2008/07/10(木) 10:57:42ID:???cakeスレの方が適切じゃね?
【PHP】フレームワーク CakePHP 4ホール目【v1.2】
http://pc11.2ch.net/test/read.cgi/php/1213892680/l50
0649nobodyさん
2008/07/10(木) 11:01:47ID:???PHPなんて一時的なもんだろ。
今のプロジェクトが終わったら次は.NETやるから3日でC#と基礎的なこと覚えろ。
って言われるのが仕事ってもんだ。
最初の仕事がたまたまPHPだっただけだろ?そんな嘆くようなことでもあるめえ。
それより仕事にいちいち反発持ってるゆとり全開な態度だとこの先大変だぞ?
会社の意向は絶対だ。不満があるからころころ転職するのは新卒だからといってそんな通用しない。
学部生時代面接の仕方とか教わっただろ?
意向しない部門へ所属することになっても平気ですか?ときかれたらハイ!と答えろって。
0651nobodyさん
2008/07/10(木) 11:24:51ID:???うちでは即採用してるよ。
0652nobodyさん
2008/07/10(木) 11:26:11ID:???0654nobodyさん
2008/07/10(木) 12:09:02ID:???中規模サイト対応レベルのCMSをフルスクラッチで開発してください。
実働10時間ってことですので、費用は5万もあれば十分でしょう?
0657nobodyさん
2008/07/10(木) 13:36:35ID:???使い物にならんだろ。
0658nobodyさん
2008/07/10(木) 13:58:21ID:???仕様にもよるけどな
0659nobodyさん
2008/07/10(木) 14:05:40ID:???∧,,∧∩ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
ミ ,,゚Д゚彡< キミフサイヨウ!
__ ミ ミ ミ .\___________
\,,ιミ~ ̄ ̄ ̄\
||ヽ||第1フサ ̄||
...||... ̄ ̄ ̄ ̄||
0660nobodyさん
2008/07/10(木) 14:08:12ID:???0661nobodyさん
2008/07/10(木) 14:28:48ID:???新人なら考えてなくてもいいけど、即戦力としてなら考慮してなきゃダメだろ
0662nobodyさん
2008/07/10(木) 15:10:16ID:???0663nobodyさん
2008/07/10(木) 15:27:21ID:???作ったことがあるかどうかにかかってくるんじゃ?
0664nobodyさん
2008/07/10(木) 15:31:51ID:???0666nobodyさん
2008/07/10(木) 15:43:46ID:???0667nobodyさん
2008/07/10(木) 15:46:17ID:???大雑把な要件でいいよ
0668nobodyさん
2008/07/10(木) 15:58:07ID:???0669nobodyさん
2008/07/10(木) 15:58:52ID:???0670nobodyさん
2008/07/10(木) 16:01:19ID:???0671nobodyさん
2008/07/10(木) 16:03:07ID:???すぐにばれるってこったw
>>651、嘘をつくのならもう少し現実味のあるうそにしとけよw
0673nobodyさん
2008/07/10(木) 16:32:59ID:???0674nobodyさん
2008/07/10(木) 16:50:24ID:???0675nobodyさん
2008/07/10(木) 16:51:56ID:???中規模かどうかは知らんが
・執筆者アカウント管理
・ページ作成編集
・インデックスシステム
・テンプレート編集
・ファイルアップロード&管理
・RSS生成
こんなもんじゃね?
これだったら10時間で(装飾とか抜きで)作れなくもない。
0676nobodyさん
2008/07/10(木) 17:01:32ID:fDpfFXNSどのようにすればいいのでしょうか?
どういう名称で探せばいいのか分からないので困っています。
0677nobodyさん
2008/07/10(木) 17:04:28ID:???0678nobodyさん
2008/07/10(木) 17:10:41ID:???中規模だと執筆者の権限を管理してワークフローが必要だろう
ページの公開管理や版管理も必要かもしれんな
まあそれ無しとしても10時間では俺にゃ無理だな
その要件を10時間で作れるなら大したものだ
0680nobodyさん
2008/07/10(木) 17:14:04ID:fDpfFXNSありがとうございます。
0681nobodyさん
2008/07/10(木) 17:16:02ID:???0683nobodyさん
2008/07/10(木) 17:29:33ID:???守れなくても当たり前。
0684nobodyさん
2008/07/10(木) 17:29:34ID:???0685nobodyさん
2008/07/10(木) 17:31:28ID:???作ってからいえという話。
0686nobodyさん
2008/07/10(木) 17:32:59ID:???0687nobodyさん
2008/07/10(木) 17:33:55ID:???0689nobodyさん
2008/07/10(木) 17:38:39ID:???「すげー、俺だったら△時間もかかっちまうよ」
とかいう会話が成り立つ時点でそいつの会社の程度って・・・
0690nobodyさん
2008/07/10(木) 17:43:59ID:???早く正確なものを作れて当然な世界だ
個々のプログラミングに対しての技量も作業を進める上で大事だが
それよりも重要なのはいかに用意されたものをうまく利用できるかということ
採用にあたっては個人で短期間ですごいプログラムを作ったから即採用なんてとこは危険
もともと方向性が1つにきまってる会社ならまだいいが(エロゲー専門とか)
多岐に渡る業務を会社していると特に(Webから組み込みまでとか)
>>635がいい例だがある程度実力があったりするとプライドが先行して会社にとって扱いにくくなる
何も知らないほうがまだ会社色に染めやすくて可愛いものだ
0691nobodyさん
2008/07/10(木) 17:47:53ID:???0692nobodyさん
2008/07/10(木) 18:35:37ID:???を読む限り実力を計る指標としてはありだろ、短時間で作るには
基礎は当然として効率的な設計・コーディング能力は必須だからな。
ドーマンセーマン
0694nobodyさん
2008/07/10(木) 20:18:25ID:???出すかも採用判断材料に面白いかもな
0695nobodyさん
2008/07/10(木) 20:28:59ID:???0696nobodyさん
2008/07/10(木) 20:43:40ID:???みんなも覚えておくように
0697nobodyさん
2008/07/10(木) 21:06:07ID:???0698nobodyさん
2008/07/10(木) 22:38:11ID:fDpfFXNS"ああああ"という文字列をstrlenとmb_strlenの関数に入れたところ
どちらも12と返ってきたのですが、
これは何が原因なのでしょうか?
0699nobodyさん
2008/07/10(木) 22:47:10ID:???0700nobodyさん
2008/07/10(木) 22:52:24ID:???0701nobodyさん
2008/07/10(木) 22:54:05ID:???0702nobodyさん
2008/07/10(木) 23:16:20ID:yMjtvAY/0703698
2008/07/10(木) 23:22:08ID:???このあたりの関数をうまく使うために設定が必要だったのであれば、やってないかもしれません。
どこの設定を変更すればいいのでしょうか?
0704nobodyさん
2008/07/10(木) 23:36:21ID:???としたらどうなる?
0705nobodyさん
2008/07/10(木) 23:36:30ID:???0706nobodyさん
2008/07/10(木) 23:55:49ID:???0707nobodyさん
2008/07/11(金) 00:00:15ID:???適切に設定すれば直るよ
0708nobodyさん
2008/07/11(金) 06:12:23ID:aaHf0NGLhttp://downloads.zend.com/pdt/server-debugger/
から落としてきた
5_2_x_comp\ZendDebugger.dll を
x:\PHP\ZendDebugger.dll にいれて
php.ini に以下を追加したのですが
[Zend]
zend_extension_ts="x:\PHP\ZendDebugger.dll"
zend_debugger.allow_hosts=localhost
zend_gger.expose_remotely=always
<?php phpinfo(); ?> をしてもZendに関する表示部分は
>Zend Engine v2.2.0, Copyright (c) 1998-2008 Zend Technologies
になってしまい、その下に出てきて欲しい
"with Zend Debugger ~" の表示が出てきてくれません
php.ini の
;report_zend_debug = 0
となっていたところを
report_zend_debug = 1
にしてみましたが結果は同じでした
何を調べていけばうまくインストールできるでしょうか?
0709nobodyさん
2008/07/11(金) 10:22:15ID:???0710nobodyさん
2008/07/11(金) 13:54:46ID:???0711nobodyさん
2008/07/11(金) 14:13:42ID:???俺たちも含めてな
0712nobodyさん
2008/07/11(金) 14:18:22ID:???くだらねえといってもスクリプト全般の質問じゃなきゃな
0714nobodyさん
2008/07/11(金) 14:38:45ID:???サポセン的なことをなぜここでやらないといかん
ということじゃね?
0715nobodyさん
2008/07/11(金) 14:50:54ID:???昔は技術は盗んで覚えろと言われたものだが、
こういう情報を共有する云々という人は、
世間でいわれるスイーツ脳ってことかな。
0716nobodyさん
2008/07/11(金) 15:00:27ID:???バカ
0717nobodyさん
2008/07/11(金) 15:04:46ID:???21世紀には不釣合いだ
0718nobodyさん
2008/07/11(金) 15:05:34ID:???そりゃ最低限の事は自分でやるべきだと思うが
トンデモな奴なんてどこにでもいるだろ
0719nobodyさん
2008/07/11(金) 15:20:36ID:???$str = mb_strimwidth($str,0,18,'...');
上記のように記述し$str(日本語文字列)を9文字で切りたいのですが、
$strにスペースや・が含まれていると7文字しか入らず、
最後に文字化けした文字が付きます。
なぜこのような現象が発生するのでしょうか。
また、どう記述すれば文字化けせずに表示されますか?
0722nobodyさん
2008/07/11(金) 15:35:55ID:???ありがとうございます。
encodingをすっとばしていたのが原因でした。
設定したところ文字化けもなく表示されました。
とても勉強になりました。
0729nobodyさん
2008/07/11(金) 17:05:35ID:???0731nobodyさん
2008/07/11(金) 17:18:56ID:???出来ないことは無いが、非常に手間がかかる。
ttp://d.hatena.ne.jp/masugata/20061011#p2
どんな処理をするのか知らんけど、他の方法で実装した方が良いと思うぜ?
0733nobodyさん
2008/07/11(金) 17:28:51ID:???0734nobodyさん
2008/07/11(金) 17:33:17ID:???__, ノ} _,
ヾミ、 ,イl| ,ィツ
ヾミ、 ノリlj'; ,ィ彡イ
〉ミミY杉ハ='杉彡"
'^".:.:.:.:.:.:.::.:`丶{
/:.:.:.:.:.:.:.:.:.:.:.:.:.:.::.:.:.ヾミ三ニ≡=-ッ-
/ :.:.:.:.:.:.:.:.:.:.'.彡''"´ ̄
r==〈r==≦ミ :.:.:.:.ヽ.:.:.}
{:.::::儿_:::::.:::.:}}≠======--、:}
弋彡'iゞr-=彡 f⌒ハ
レ;;公^;ヽ . : :.: :. r' リ <オマエには無理だろな
爪rェェ弍 . : :.: :.:::.r-イ
川ーニ´jj{ . : :.: :.:: : イ
巛爪z从} ∠ニ=ヘ
ゞ巛巛lリ _ _,∠二二、\
 ̄ {/ ̄ \ \
/ ヘ. ヘ
/ ∨ ,ハ
{ __ 「::レフ r::v‐ァ く::∨ '、
/(::c' |:::;〈 〉:::/ `ヘ |
{ヘ `¨└^¨ `¨´ Y' | |
/.ハ | | |
0735nobodyさん
2008/07/11(金) 17:36:38ID:???0737nobodyさん
2008/07/11(金) 18:13:19ID:???undefってのが内部的にどういう動作してるか知らないから憶測だけど
0738てんちゃん
2008/07/11(金) 19:29:55ID:Z3Uae7Hu80番ポートをたたいて
いるのですが、どうもHTMLソースしか抜けません。なんか方法ありますか?
telnet ホスト 80
GET /index.php
0739nobodyさん
2008/07/11(金) 19:37:20ID:???そろそろ夏休みだろ
9月になったら教えてやるから、
夏休み中にオライリーの本全部読んどけ
http://www.oreilly.co.jp/catalog/index.html
0740nobodyさん
2008/07/11(金) 19:42:20ID:???telnetで接続してhttpで取得してるんだからそりゃhtmlが返ってくるでしょうよ
どちらかというとunix板の話題なのでそちらへGO
0741nobodyさん
2008/07/11(金) 19:46:39ID:???0742てんちゃん
2008/07/11(金) 19:52:14ID:Z3Uae7Huおぉ(´・ω・`)さんくす
これ理解できたらPHPのソースコード抜けるかな〜
0743nobodyさん
2008/07/11(金) 19:56:42ID:???公開されていない他人のサイトのphpやらcgiのソース見たいとかいうやつ
0744nobodyさん
2008/07/11(金) 19:59:25ID:???0745nobodyさん
2008/07/11(金) 20:02:28ID:???セキュリティーが甘いサイトは、
phpソースを表示させる方法はあるけど、
本来表示することを意図していないページを意図的に表示要求をすることは、
アクセス禁止法に抵触するとした東京高裁の判決が去年出ているから、
逮捕されるぞ。
0746nobodyさん
2008/07/11(金) 20:04:30ID:???だとしたら抜けたらセキュリティーホールだろ
脆弱性をついてやると不正アクセスになるからやめなさい
0747てんちゃん
2008/07/11(金) 20:09:30ID:Z3Uae7Hu教えてほしいですな
自分のサイトパスクラされて、こんな挑戦受けたんですよ(´・ω・`)
FPはセキュリティホールがあるから簡単にソースが抜けてパスクラもできるらしいです。
パスワード返してくれない…
http://tool-4.net/?jsjsjs
0748nobodyさん
2008/07/11(金) 20:16:01ID:???0749nobodyさん
2008/07/11(金) 20:17:26ID:???その方法を教えて君が逮捕されたら、俺まで巻き添えを食うわけだが。
それなら、仕返しの方法は簡単。運営者に言えば、
向こうが相当面倒なことになるだけ。
俺のサーバーにもSSHの認証をランダム文字列でクラックしよういう馬鹿な奴がいるが、
日本にあるプロバイダーならログ提出して猛抗議して、契約解除させられている。
日本のメジャーなプロバイダーなら、今は結構積極的に対応してくれる。
あとは、pingとかポートスキャンしている奴のプロバイダーにも相当文句言っているが。
0750てんちゃん
2008/07/11(金) 20:30:42ID:Z3Uae7Huソフト使ってもいいです。ソフト名だけわかってもいいです。
WEBアプリケーションの脆弱性は結構勉強したので知っています
昔はヌルバイト攻撃も通じたし。XSSも通じました。なのに今は対策されています。
やりかたさえ教えてもらえればあとはググルので。
全部丸投げはしません。
やった奴のIPをアクセスログより確認して、アクセス禁止にしたいのです。
0751nobodyさん
2008/07/11(金) 20:35:09ID:???0752nobodyさん
2008/07/11(金) 20:36:58ID:???0754nobodyさん
2008/07/11(金) 20:39:51ID:???0755nobodyさん
2008/07/11(金) 20:40:14ID:???0758nobodyさん
2008/07/11(金) 20:49:16ID:???0759てんちゃん
2008/07/11(金) 20:51:03ID:Z3Uae7Huランダムに
$data = arrary(a,b,c,d,e,f…);
と、全てのアルファベットと全ての数字を配列に納め、配列からランダムに取り出して、
あらかじめ入手しといたHTMLのログインページの変数
?id=自分のID&pass=配列で作成したパスファイル&mode=logincheck
で、
whileで、見つかるまでループさせて、
file_get_contents
でファイルを取得し、ソースも取得し、そのソースに
"パスワードが違います";
以外の文字だったらパスワードとみなして、表示する。
というPHPを考えたのですが、どうでしょうか?
他鯖に負担がかかるかな…
0760nobodyさん
2008/07/11(金) 20:54:28ID:???0761nobodyさん
2008/07/11(金) 20:55:04ID:???>と、全てのアルファベットと全ての数字を配列に納め、配列からランダムに取り出して、
負担どうこう以前に一生見つかりませんね^^;;;;;;;;
0763nobodyさん
2008/07/11(金) 21:00:43ID:???>でファイルを取得し、ソースも取得し、そのソースに
なんつう突っ込みどころ満載wwwww
0764てんちゃん
2008/07/11(金) 21:03:06ID:Z3Uae7Hu一応通報はしときましたけど、対応はいつになるやら不安です
FPのセキュホってXSSですか?
0765nobodyさん
2008/07/11(金) 21:04:27ID:???0766nobodyさん
2008/07/11(金) 21:05:14ID:???話についていけなくて俺涙目
0767nobodyさん
2008/07/11(金) 21:05:47ID:RxUTiv/Sたとえば$hogeだったら文字列のhogeを取得する方法ってある?
0768てんちゃん
2008/07/11(金) 21:06:50ID:Z3Uae7Huうーん
やっぱりセキュリティホールなかなか見つからないですね
0769てんちゃん
2008/07/11(金) 21:09:48ID:Z3Uae7Hu訂正で
http://tool-6.net/edit.cgi?id=あなたのID&mode=logincheck&yourp=パスワード
だから、変数は
$_GET['id']
$_GET['yourp']
$_GET['mode'] ==logincheck
こういう意味です。
0771nobodyさん
2008/07/11(金) 21:13:15ID:???そういうことをやっていいのは自分のサーバーだけ
常識無さすぎだぞ・・・
0772nobodyさん
2008/07/11(金) 21:15:44ID:???このゲームcgiっぽい仕様を調べろとでもいってるのか?
0773てんちゃん
2008/07/11(金) 21:18:21ID:Z3Uae7Huhttp://tool-1.net/
0774nobodyさん
2008/07/11(金) 21:19:21ID:???そりゃわかんねーわw
ロリポやxreaとか有名どこならまだしもなぁ
0775nobodyさん
2008/07/11(金) 21:24:09ID:???パス変えられただけでしょ?
0778nobodyさん
2008/07/11(金) 21:57:26ID:7DrXvr8B実行速度が気になると思うんですが、みなさんはどうやって効率的な
速度の速いプログラムの書き方を身に着けましたか?
phpでそういうのを詳しく解説した本とかあるんでしょうか?
少なくともこういう処理は必須という「ノウハウ」があれば教えてください
環境はapache2/php5でお願いします 特にSQL処理関連について意見もらえれば嬉しいです
0779nobodyさん
2008/07/11(金) 22:03:23ID:???O/Rマッパ使うならそれに依存するし、
直にDBに投げるSQLならチューニング次第。
実行計画でも見ながらSQLチューニングしろ。
つかSQLだったらスレ違いだな。
0780nobodyさん
2008/07/11(金) 22:04:37ID:???もっと力をつけたら、実行速度はあまり気にしなくなるけどねw
全体で数秒かかっている処理の、数ミリ秒なんて気にしたってしょうがないし。
重要な部分が、問題になるくらい遅ければ手をつけるけど。
その次は開発速度を気にするようになる。
どれだけ何も書かないで作るか。
えっと、どうやって身に着けたかだっけ?
速いプログラムのアルゴリズムはどういう仕組みになっているか勉強することだね。
SQLというかRDBMSね。の場合だと、JOINはどういうアルゴリズムで
データを結び付けているかだとか、インデックスはどういう実装(B木とか)で
どういう理屈で早いのかとか。
0781nobodyさん
2008/07/11(金) 22:05:07ID:???0783nobodyさん
2008/07/11(金) 22:10:21ID:???0784nobodyさん
2008/07/11(金) 22:12:19ID:???言語に依存しないものだから。
言語に依存するやり方は、バッドノウハウでしかない。
言語やバージョンが変わると使い物にならない。応用力が身につかない。
0785708
2008/07/11(金) 22:19:48ID:???" を閉じ忘れていたのが原因でした。
0786nobodyさん
2008/07/11(金) 22:20:40ID:???いや、Javaはオブジェクト指向を取り入れた通常の開発をすれば、
間違いなく遅くなる。メモリーも食う。速度的には不利。
じゃ、言語に依存せずwebシステムにとって何が重要か?
早く開発する必要もないはないが、不十分。
webで特に求められているのは、全体の運用コストが安くなる開発。
その解の一つがオブジェクト指向なんだが。
>全体で数秒かかっている処理の、数ミリ秒なんて気にしたってしょうがないし。
そもそも、1reqestに数秒かかる処理が問題。
最適化すれば相当早くなるケースも相当ある。
それは、phpコードの最適化もそうだし、php以外の技術も使うが。
0787nobodyさん
2008/07/11(金) 22:24:16ID:???0788nobodyさん
2008/07/11(金) 22:27:21ID:???そういう奴が一番やっかい。
いわゆる秋葉系の部類だよ。
本人は、できる技術者って勘違いしているだから、たちが悪いわ。
0789nobodyさん
2008/07/11(金) 22:30:19ID:???数秒もかかる処理。それを大幅に縮めるには
ロジックそのものを変えないといけないことがほとんど、
そしてそのロジックはPHPに限ったものじゃないことがほとんど
0790nobodyさん
2008/07/11(金) 22:30:19ID:???それはテンプレート的な覚え方をしてるからだ。
「方法」ではなく、速度を上げる「理屈」を覚えれば、色々と応用は利くぞ。
0791nobodyさん
2008/07/11(金) 22:32:13ID:???うん。そしてその「理屈」はPHP限定のものじゃないよ。
どの言語でも使えるものだし、PHPでももちろん使えるもの。
速度アップにあまり言語ってものを意識することは無いんだよね。
0792786
2008/07/11(金) 22:34:22ID:???同意。
数学で、数式を覚えるのではなく、数式に至るまでの展開を覚える方が、
応用問題に対処できるのと一緒ってところか。
0793nobodyさん
2008/07/11(金) 22:35:15ID:???PHP限定のなら山ほどあるがな。
0795nobodyさん
2008/07/11(金) 22:36:38ID:???そういう話で、言語にこだわる人って、本質がわかっていないと思う。
漢数字じゃだめだよ。アラビア数字を使わなきゃ。みたいな。
0797てんちゃん
2008/07/11(金) 23:22:33ID:Z3Uae7Huさっきからずっと試しています。
21番ポートもダメでした
0798nobodyさん
2008/07/11(金) 23:41:16ID:???0799てん
2008/07/12(土) 00:25:37ID:xw9p7232これは普通には開けません。.htaccessで、.datのつくファイルをアクセス拒否しています。
このチェック機構すり抜けれますか?
0801nobodyさん
2008/07/12(土) 00:46:54ID:???0802nobodyさん
2008/07/12(土) 00:49:59ID:lql6772u0804nobodyさん
2008/07/12(土) 03:04:46ID:z/JSD44Zlist(,$val)のように書くとどのような動作をするんでしょうか
<?php
$arr = array ('one', 'two', 'three', 'four', 'stop', 'five');
while (list(, $val) = each ($arr)){
if ($val == 'stop'){ // stopの文字列あれば処理抜け
break;
}
echo "$val<br />\n";
}
?>
0805nobodyさん
2008/07/12(土) 03:39:00ID:???each()はarrayのkeyとvalueを返すのでlistでvalueのみ受け取ってるだけ
0806nobodyさん
2008/07/12(土) 03:50:27ID:GP2h4Bov処理的に高負荷で可読性の悪いことしてると思うけど
たぶんPHP初期のころの素人の書いたコードだろうな
keyとvalがとりたければ
foreach ( $arr as $key => $val )
とすればいいだけ
無意味な処理だ
0807nobodyさん
2008/07/12(土) 04:58:27ID:???PHP/FIまでforeach構文はなかった。
ついでに言うと、$array as $key=>$val と list($key, $val)=each($array) のパフォーマンス上の違いはほとんどない。
実際に計測してみればよく分かる。
0808nobodyさん
2008/07/12(土) 05:50:41ID:???0809nobodyさん
2008/07/12(土) 08:11:12ID:GP2h4Bovstep数で考えると
list($key, $val)=each($array)の方がstep数が多くなる
パフォーマンスに違いが無いなら
可読性がよくてstep数が短い方がいい
ちがうんか?ワレぼけ
0810nobodyさん
2008/07/12(土) 08:18:16ID:GP2h4Bov今どき使ってる化石みたいやついるの?
foreachさえあれば何でも出来るのによお
0811nobodyさん
2008/07/12(土) 12:05:30ID:???ここのベンチマーク結果だと、5倍くらい差があるね
0812nobodyさん
2008/07/12(土) 12:36:02ID:lql6772u0814nobodyさん
2008/07/12(土) 12:45:36ID:???0815nobodyさん
2008/07/12(土) 13:18:11ID:???0818nobodyさん
2008/07/12(土) 15:21:32ID:???0819nobodyさん
2008/07/12(土) 18:22:09ID:m/I4pXMk0821nobodyさん
2008/07/12(土) 19:25:21ID:???$str = "index.html";
list($filename, $extension) = split("", $str);
0822nobodyさん
2008/07/12(土) 20:05:52ID:???0824nobodyさん
2008/07/12(土) 23:12:48ID:mrNymcfjそれともベタ書き?
0825nobodyさん
2008/07/12(土) 23:14:33ID:???0826nobodyさん
2008/07/12(土) 23:35:07ID:???0827nobodyさん
2008/07/12(土) 23:54:12ID:mrNymcfj0828nobodyさん
2008/07/13(日) 00:15:54ID:???好きにすればいいと思う
0830824
2008/07/13(日) 01:13:33ID:???ぁぃ、好きにしまふ
>>829
フレームワークやテンプレートエンジンを使おうと思う前に作った、
一人で開発してる携帯サイトだから
0831nobodyさん
2008/07/13(日) 01:16:44ID:???<rss version="2.0"
xmlns:hoge="http://purl.org/rss/1.0/modules/content/"
>
<channel>
<title>あ</title>
<link>http://example.net/</link>
<description>ほげ</description>
<hoge:fuga>aaaa</hoge:fuga>
</channel>
</rss>
こんなようなXMLを出力したいんですけどDOMだとうまくいきません
どうやったら出来ますか?
0832831
2008/07/13(日) 01:21:08ID:???new DOMElement('hoge:fuga')
とやると例外が発生してしまいます
0833nobodyさん
2008/07/13(日) 01:33:48ID:???使え
>>832
どううまくいかないのか書いてくれたのは素晴らしいことだけど
例外は何が例外だったのかちゃんと教えてくれているはずだが?
0834nobodyさん
2008/07/13(日) 04:22:28ID:???基礎からのPHPで勉強していざブログアプリケーション
を作ろうと思ったのですが、このサンプルlinuxでは動かないと
担当者に言われました。
2ちゃんの方や自分でadmin.phpなどは動くようにしたのですが
index.phpとsideBar.phpとentryView.phpと
loginform.phpの部分とかがおかしいみたいで
だめでした。
誰か動くようになんとかできませんか?
ソースは
http://gichioka.web.fc2.com/blog.rar
です。
もう基礎からシリーズは絶対買いません
0836nobodyさん
2008/07/13(日) 07:25:20ID:???2.フレームワークを使える環境が整っていない
loginform.php
<FORM method="post" action="<?= $_SERVER['REQUEST_URI'] ?>">
↑自分にPOSTしてんのにloginform.phpにスクリプトが書かれていない
技術屋に丸投げしたほうが楽だよー
0837nobodyさん
2008/07/13(日) 08:23:20ID:???0838831
2008/07/13(日) 13:54:05ID:???echo '<pre>';
try {
$doc = new DOMDocument('1.0', 'UTF-8');
$doc->formatOutput = true;
$root = $doc->appendChild(new DOMElement('rss'));
$root->setAttributeNode(new DOMAttr('version', '2.0'));
$root->setAttributeNode(new DOMAttr('xmlns:hoge', 'http://xxxx'));
$channel = $root->appendChild(new DOMElement('channel'));
$channel->appendChild(new DOMElement('title', 'あ'));
$channel->appendChild(new DOMElement('hoge:fuga', 'aaaa'));
} catch (Exception $e) {
echo sprintf("Caught exception %s\n", $e->getMessage()) . $e->getTraceAsString();
}
echo "\n" . htmlspecialchars( $doc->saveXML() );
?>
ソースはこんな感じで実行すると
Caught exception Namespace Error
#0 test.php(11): DOMElement->__construct('hoge:fuga', 'aaaa')
#1 {main}
と出ます。
$channel->appendChild(new DOMElement('hoge:fuga', 'aaaa', 'http://xxxx'));
とやればうまくいくのは分かっているのですがhoge:fugaに毎回 xmlns:hoge="http://xxxx" が追加されるのが嫌なので何とかしたいのですがうまい方法はありますか?
0839ひろき
2008/07/14(月) 01:22:49ID:iw+5oFKv@./のディレクトリに.cgiのファイルがあるかないかチェック
Aファイルがあれば、ファイル名.cgiを呼び出す
ですが、$_GET['file']に%00を付加されれば、チェックを擦り抜けられました。
<?php
$file = $_GET['file'];
echo "file test<br>";
echo "How do it?<br>";
if(!file_exists($file.".cgi")) { echo "file not found<br>"; } else { echo "file found<br>"; }
$x = file_get_contents('./'.$file.'.cgi');
echo $x; ?>
上の場合、チェック機構を擦り抜けられてしまったので、下のように書き加えました。
<?php
function check($arr){ if (is_array($arr)){ return array_map('check',$arr );} return str_replace("\0","",$arr );}
$_GET = check($_GET);
$file = $_GET['file'];
echo "read test<br>"; if(!file_exists($file.".cgi")){ echo "file not found<br>"; }else{ echo "file found<br>"; }
$x = file_get_contents('./'.$file.'.cgi');
echo $x;
?>
しかし、まだセキュリティホールがあると、指摘され、詳細がわからずに困っています。誰か教えてください
0840nobodyさん
2008/07/14(月) 02:31:00ID:???0841841
2008/07/14(月) 04:20:33ID:kV2rLyybフレーム以外の方法でそのままhtml言語として元ページに融合させたいです。
0842nobodyさん
2008/07/14(月) 04:26:54ID:???日本語でおk
ちょっと意味がよくわかんないので意図したものになるかはわからないが
a.php
<?php
echo "Hello";
?>
b.php
<html>
<head></head>
<body>
<p><?php include_once("a.php"); ?></p>
</body>
</html>
こういうことか?
外部php(この場合a.php)で最終的にecho(出力)するphp作って
それをb.phpでinclude(require)する
0843841
2008/07/14(月) 04:27:21ID:kV2rLyybframeで呼び出した場合、参照元が変わってしまうので不便で・・・
0844841
2008/07/14(月) 04:31:31ID:kV2rLyybお、こんな朝早くにありがとうございます。
すみません、ちょっと大事なこといい忘れてしまいました。
なるほど、対応している場合は、こういう風に使うんですか。勉強になります。
842さんの説明で言うところのa.phpを呼び出すほうのb.phpにあたる側のサーバーがphpに対応していなくて・・。
0845nobodyさん
2008/07/14(月) 05:00:09ID:???たとえ使えても他サーバのを呼び出すってのはセキュリティ上無理があるね
JavaScriptは外部サイトのでも呼び出せるし
サーバ側で特別な環境が必要のないクライアントサイドの言語なので
PHPが使えるほうでPHPが使えない外部サイト用に
PHPで出力する内容と対応したJavaScriptを生成してそれを外部から呼び出すとか
他にもトリッキーなやりかたがいくつか思い浮かぶけど
JavaScriptでどうこうするのが現実的でないかと
0846nobodyさん
2008/07/14(月) 05:58:45ID:???スレ違いな気がするが……
0847841
2008/07/14(月) 05:59:38ID:kV2rLyyb<script language="JavaScript">
<!--
document.write ("\<script type='text/javascript' src='data.php?key=dada1', uri, '' charset='UTF-8'\>','\</script\>');
// -->
</script>
こんな感じで呼び出せるでしょうか?
具体的にどんな感じのphpを書いたらいいか教えていただけないでしょうか?
<?php
echo 'document.write("Hello");'
?>
なぜかうまくいかない・・
0848nobodyさん
2008/07/14(月) 06:45:20ID:???0849ひろき
2008/07/14(月) 06:50:07ID:iw+5oFKvの質問誰か答えてください(〇>_<)
よろしくお願いします
0850nobodyさん
2008/07/14(月) 08:26:50ID:???document.write ("\<script type='text/javascript' src='data.php?key=dada1', uri, '' charset='UTF-8'\>','\</script\>');
これってする必要ないんじゃ?
<script type="text/javascript" src="data.php?key=data"></script>
と直接呼出せば良いような
0851nobodyさん
2008/07/14(月) 11:16:52ID:tNLuR7u30854nobodyさん
2008/07/14(月) 11:55:31ID:???0855nobodyさん
2008/07/14(月) 14:30:36ID:???includeはhttp://〜略〜count.phpと入力するとエラーになってしまいます。
それならばと../www.hoge.com/count.phpとするとドメインより上にはいけないみたいで。
サーバーはxreaを利用しています。
FTPでの見た目上ではすぐ隣のフォルダにあるからアクセスできそうな気はするんですけどね…。
www.hoge.com ディレクトリ
├index.php
└count.php
sub.hoge.com ディレクトリ
└index.php (www.hoge.comにあるcount.phpをincludeしたい。)
0857855
2008/07/14(月) 14:47:01ID:???サーバーによると思うけど、そのhtmlをSSIで動作させれるなら簡単だよ。
<!--#include virtual="外部.php"-->
これでPHPの動作をさせた後にhtmlにそのデータを書き込んでくれる。
俺はこれで昔のshtmlのままカウンターやらアクセス解析やら色々延命させてる。
0859nobodyさん
2008/07/14(月) 14:54:13ID:???カウンタ処理簡単なんだから
サブドメインのほうはcount.phpは使わないで
count.phpが使用しているカウント用のファイルなりdbなりに
アクセスがあったら+1する処理をして
そのファイルなりdbなりを読みこんでカウンター表示するとか
ロックを忘れずに
public_html
|-count.php
|-www.hoge.com
|-index.php
|-sub.hoge.com
|-index.php
こういう構造でもだめ?
再現できる環境がないので全部憶測だけど
0860nobodyさん
2008/07/14(月) 14:55:32ID:???0861nobodyさん
2008/07/14(月) 15:22:39ID:???AJAX経由でのPOSTの値を受け取れなくて困っています。
全てUTF8保存で他言語ではAjax経験済みです。主要部分のみざっと書きます。
index.php
--------------------------
<button onClick="post();">post</button>
ajax.js
--------------------------
xmlhttp.open('POST','./ajax.php',true);
xmlhttp.setRequestHeader("content-type", "application/x-www-form-urlencoded;charset=UTF-8");
xmlhttp.send('type=test');
ajax.php
--------------------------
<?
if(isset($_POST['type'])){
echo 'ok';
}else{
echo 'null';
}
?>
といった感じです。'null'はちゃんと返ってきます。
どなたかアドバイスお願いします。
0862ひろき
2008/07/14(月) 15:44:15ID:iw+5oFKv本当にこの質問答えてください(〇>_<)
よろしくお願いします。
0863nobodyさん
2008/07/14(月) 15:58:00ID:???もっと他人が読みやすいソースを書け
0864nobodyさん
2008/07/14(月) 16:46:45ID:/EKuYqCm読み込まれる方
neko.php
<?php
print "ねこ";
}
inu.php
<?php
print "いぬ";
}
読み込む方
index.php ねこと出したい
<?php
include 'neko.php';
}
index2.php いぬと出したい
<?php
include 'inu.php';
}
続きます。
0865nobodyさん
2008/07/14(月) 16:47:45ID:???読み込まれる方
hoge.php
<?php
if($hoge == "1"){
print "ねこ";
}
if($hoge == "2"){
print "いぬ";
}
?>
読み込む方 ねこと出したい
index.php
<?php
$hoge = "1";
include 'hoge.php';
?>
index2.php いぬと出したい
<?php
$hoge = "2";
include 'hoge.php';
?>
この場合hoge.phpが読み込んだ時すでに処理されてしまっていて、うまくいきません。
phpのinclude関連のページを読んでいったのですが、まったくこういう考え方が出てきません。
基本的に間違っていると思うのですが、何の関数を使ったら外部のファイルをphpの部品のように読み込めるんでしょうか?
まったく手がかりが無くって検索ができません。
ヒントだけでも教えていただけないでしょうか。
0866nobodyさん
2008/07/14(月) 16:53:44ID:???hoge.phpの中身をfunctionにしたら?
hoge.php
<?php
function response_msg($hoge){
if($hoge == "1"){
return "ねこ";
}
if($hoge == "2"){
return "いぬ";
}
?>
index.php
<?php
$hoge = "1";
include 'hoge.php';
echo response_msg($hoge);
?>
index2.php
<?php
$hoge = "2";
include 'hoge.php';
echo response_msg($hoge);
?>
0867nobodyさん
2008/07/14(月) 16:54:48ID:???別サーバのをHTTPを通して呼んでね?
0868nobodyさん
2008/07/14(月) 16:59:16ID:???ただ読み込むファイルの階層がバラバラなので絶対パスで読んでます。
0870nobodyさん
2008/07/14(月) 17:00:49ID:???ねこ
inu.txt
いぬ
いぬと出したい
<?php
readfile 'inu.txt';
?>
ねこと出したい
<?php
readfile 'neko.txt';
?>
そもそもの話になるんだが、>>865の考え方は
「楽に」はなってないんじゃないか?
0871nobodyさん
2008/07/14(月) 17:00:50ID:???http://example.com/aaa/hoge.phpって?
0873864
2008/07/14(月) 17:08:33ID:???それだと最初のファイル分割状態と変わらないので、すいません。
ねこ とか いぬ とか書きましたが、メニューなので本当はリストタグ<li>とかが書いてあります。
一つのファイルだと一気に変更できるので楽になるのです。
今の状態だと、一つ一つファイルを開いて、修正を全部のファイルでしないといけませんので。
0874nobodyさん
2008/07/14(月) 17:12:49ID:???URLの絶対パスかよ・・・
サーバのファイルシステムの絶対パスを使え
たとえば
/home/www/aaa/hoge.php
0876nobodyさん
2008/07/14(月) 17:19:36ID:???コードをincludeしたいならサーバ内のパスでやらないと無理。
http〜は普通絶対パスとは言わない。単なるURL(URI)。
includeするとスクリプトのコードではなく実行結果が返されるよ。
0877864
2008/07/14(月) 17:34:47ID:???うまくいきました。本当にありがとうございます。
>includeするとスクリプトのコードではなく実行結果が返されるよ。
そうなんです。ためしにhoge.phpの<?php ?>はずしてみたら結果だったので、phpの状態で読み込まれていないなぁと思っていたのです。
とても基本的なことだったので、どこのサイトにも書いてなかったのですね。
>>866
せっかく書いてくださったのに、申し訳有りません。
試す前に解決してしまいました。
今回はありがとうございました。
0878nobodyさん
2008/07/14(月) 17:38:37ID:???http://jp2.php.net/include/
ファイルが読み込まれるときには、読み込まれるファイルの先頭で PHPモードを抜けてHTMLモードになり、
最後に再びPHPモードに戻ります。 このため、読み込むファイル中のPHPコードとして実行する必要があるコードは、
有効なPHPの開始タグおよび終了タグで括る必要があります。
"URL fopenラッパー"が 有効になっている場合(デフォルト設定では有効です)、ローカルなパス名 の代わりに
URL(HTTP経由)を用いて読み込むファイルを指定することが可能です。 URLで指定されたサーバがファイルを
PHPコードとして解釈することが 出来る場合には、HTTP GETを使用してURLリクエストに引数を指定することが
出来ます。これはファイルの読み込み云々やスコープの継承とは関係なく、 ただ単純にスクリプトがリモートの
サーバで実行されて結果がローカルの スクリプトに読み込まれる、というだけのことです。
0879864
2008/07/14(月) 17:45:54ID:???そのページ見ていました。
最初読んだ時、何のことやらさっぱり意味が分からなかったんですよね。
今だと、なんとなく分かります。
その記述の少し上の「基本的なinclude()の例」で例題として、うまく行っている例が出てるんですね。
だから「考え方は間違ってない。何かやり方が間違っているんだろう。」と漠然と思っていました。
0880nobodyさん
2008/07/14(月) 17:47:53ID:???0881nobodyさん
2008/07/14(月) 17:58:50ID:???>URLで指定されたサーバがファイルをPHPコードとして解釈することが 出来る場合には、
>HTTP GETを使用してURLリクエストに引数を指定することが 出来ます。
.phpをPHPとしてパースするサーバならば「GETで変数を渡せる」というだけ。
そのスクリプトのコードを読み込めるわけではない。
逆に言うとそれができるなら、その自分が公開しているアプリや、yahooやgoogleなんかのコードも
外部に丸見えになるってことだぞ。
0882nobodyさん
2008/07/14(月) 20:37:04ID:cWY3QFlwImageMagickを使ってGIF画像をトリミングしようとしています。(画像の上下から一定の高さ分ずつ削った画像を作ろうとしています)
最初Imagickエクステンション(というのでしょうか)を使って
----------------------------------------------------------
$im = new Imagick(画像ファイル);
$im->chopImage(0,削りたい高さ,0,0);
$im->chopImage(0,削りたい高さ,0,残したい高さ);
$im -> setImageExtent($im->getImageWidth(),残したい高さ);//※1
---------------------------------------------------------
のような感じで行って、上手く行きました。
まず、画像の上下を削り、トリミングをしたときに残る、画像の余白を、※1の処理で、削除する作業を行っています。
さて。ロリポップ上で、上記の処理を行う必要があるため、
コマンドで処理を行う必要があり、上記のプログラムを書き直す必要が出てきました。
そこで、下記のような感じで行ってみたのですが、
-----------------------------------------------------------
convert -gravity center -crop 横x縦+0+0 元画像ファイル 出力画像ファイル
-----------------------------------------------------------
Imagickエクステンションの時に行っていたのと同様に、
画像に余白が出来ます。
しかし、その余白を消す方法が見つかりません。
-geometry (縮小されてしまう)
-trim (変化無し)
-resize (縮小されてしまう)
など、いろいろ試してみたのですが、
使い方が悪いのかもしれませんが、上手く行きません。
よい方法はありませんでしょうか。よろしくお願いします。
0883nobodyさん
2008/07/14(月) 20:39:15ID:???0885882
2008/07/14(月) 20:50:15ID:cWY3QFlw早速教えていただきありがとうございます。
ぐだぐだで失礼しました。
環境ですが
サーバーは、前述のとおりロリポップを予定していますが、
現在はまだ自前のWinXpSP2+xampp(16.6a)で動作させております。
PHPは5.2.5
ImageMagickは6.4.1-Q16
となっております。
0886nobodyさん
2008/07/14(月) 22:10:07ID:???0887nobodyさん
2008/07/14(月) 22:15:08ID:???0888nobodyさん
2008/07/14(月) 22:20:10ID:???0889nobodyさん
2008/07/14(月) 22:57:34ID:???http://ja.wikipedia.org/wiki/ImageMagick
0890nobodyさん
2008/07/14(月) 23:07:40ID:BjvrU7ewPHP5を使っています。
PHPの正規表現関数を使ってデータを取得しようと思っているのですが上手くいきません
<INPUT maxLength=20 name=id value="">
このような文字列を対象に、文字列「type」が含まれていない場合、後方の「maxLength=20 name=id value=""」
を取得したいのです。
全文に対して繰り返し取得したいのでpreg_match_allを使っています。
preg_match_all( "/<input (^type)[^<](.*?)>/is", $data, $matchs )
このように書いたのですがヒットしてくれません。
ドキュメントを見ると、特定文字に関しては[^a-z]のような書き方で対応できるのですが
文字列に関してはどのようにすればよいのでしょうか?
アドバイス頂ければ幸いです。
宜しくお願い致します。
0893nobodyさん
2008/07/15(火) 02:56:06ID:???0894nobodyさん
2008/07/15(火) 08:53:55ID:3TGKEqvg適切なスレがありましたら、ご誘導下さい。
httpsは、httpに比べてデータが暗号化されてパイプを流れると聞いたのですが、
それは本当でしょうか?
httpsから始まるサイトを閲覧して、ブラウザのソースを表示を押したところ、
ソースが丸見えでした。ソースというのは、htmoソースのことです。
そのサイトのセキュリティーのせいなのか、それとも暗号化されるのは別のデータなのか?
そこがよく分かりません。
ご教授下さい。
0895nobodyさん
2008/07/15(火) 08:55:35ID:???サーバからブラウザまでの通信経路において暗号化してるだけで、
ブラウザがユーザーに向けて表示する際には復号化されてるから、
ソースを見たら平文になってるだけだよ。。
パケットキャプチャして調べてみなよ。
0896nobodyさん
2008/07/15(火) 09:39:58ID:3TGKEqvgありがとうございます。
ということは、ブラウザが暗号化するソフトで、
私が見たのはブラウザの外の部分を見ていたので、平文だったけど、
ブラウザの内側は暗号化されているということなんですね。
得心しました。ありがとうございました。
0897リュ.マヴジュダ.レァュビゥ.ジィゥヴ
2008/07/15(火) 12:57:39ID:???は
\0 で テキストで打てば%00ですよね?
\x00 って何に変換されるんですか?
0898nobodyさん
2008/07/15(火) 13:02:29ID:???0899nobodyさん
2008/07/15(火) 13:34:15ID:???0900X
2008/07/15(火) 14:33:07ID:???<?php
$x = '12345678';
$data = crypt($x,'dc');
echo $data;
?>
これでクリプトさせたデータを複合化したいです。
0903nobodyさん
2008/07/15(火) 15:35:30ID:???0904nobodyさん
2008/07/15(火) 20:04:35ID:l2rQTsjGOS: CentOS 5 Linux
PHP: PHP 5.1.6 (cli) (built: May 24 2008 14:07:53)
Apache: Apache/2.2.3 Server built: Jan 15 2008 20:33:30
今までmod_phpでApacheのモジュールとして動かしていたPHPプログラムを、
レンタルサーバを使う関係でやむを得ずCGIとして動かすことにしました。
まずはテスト環境を本番サイトに合わせて変更。
LoadModule php5_module modules/libphp5.so
AddHandler php5-script .php
AddType text/html .php
をコメントアウトしてモジュールとして動作するのをやめ、新たに
Options ExecCGI
AddHandler cgi-script .php
らを追加してApacheを再起動。
ソースコードの冒頭に #!/usr/bin/php を追加して、実行権限も与え、アクセスしてみると
ちゃんと表示できたので、楽勝楽勝なんて思っていたらここからドツボへ。
プログラム中でフォームからPOSTで受け取ったユーザ名とパスワードを使ってサービスに
ログインさせる部分があるのですが、ちゃんとフォームに入力してPOSTしているのに
$_POST["key"] が null となっていてちゃんと処理が進んでいません。
(長いので続きます・・)
0905904
2008/07/15(火) 20:05:12ID:l2rQTsjGサンプルプログラムとして、
#!/usr/bin/php
<?php
if(isset($_POST["posttest"])){
printf($_POST["posttest"]);
} else {
printf("null");
}
<html><body>
<?php
<form action="post.php" method="post">
<input type="text" name="posttest"><input type="submit" value="submit">
</form>
</body></html>
ここまで単純なプログラムを書いても、どうやっても null です。
超長文でほんとお恥ずかしいですが、アドバイスお願いします。
0906nobodyさん
2008/07/15(火) 20:27:23ID:???<?php
0907904
2008/07/15(火) 20:52:14ID:???実プログラムはちゃんと正しい閉じ括弧になっています。どうかスルーしてください。
文法エラーなど、ログに明らかな原因の出る状況ではありません。
手がかりが無く困っています。
PHPの本家のマニュアルで、CGIとして動作させる場合の説明も何度も読み直しましたが
禁忌をおかしているようには見えません。
0908nobodyさん
2008/07/15(火) 20:55:59ID:???再現できない状態のコードを投稿するなよ
書き込む前にちょっと確認するだけじゃないか
そんな事もできないからロクに(ry
0909nobodyさん
2008/07/15(火) 21:01:12ID:???意図どおり動かないソースを、改変せずそのままコピペするのを勧める。
じゃないと検証しようもないよ
0910nobodyさん
2008/07/15(火) 21:04:10ID:???cgiが使えるxreaで検証してみたが別に問題ないけど?
エラーでてる様子がないから>>907のコードコピペしたときの
全角スペースによる問題ではないと思うけど
0912nobodyさん
2008/07/15(火) 22:05:53ID:???FTP関数を使おうとすると そんなのねぇよ的なエラーになってしまいました。
おそらくPHP をインストールする際に --enable-ftp をしなかったせいだと思うのですが、
既にインストールされている環境でFTPを有効できるのでしょうか?
もし再インストールが必要であれば、
phpinfoで見れるConfigure Commandに--enable-ftpを追加したコマンドでインストールすれば大丈夫でしょうか?
また、php.iniやhttpd.confは上書きされてしまうのでしょうか?
よろしくおねがいします。
0913nobodyさん
2008/07/15(火) 22:52:37ID:???Apache、PHPがどうするかはシラネ
設定ファイルだけバックアップとって自分でやってみれよ
ていうかcygwinでやるぐらいならVM入れてlinuxでも入れとけって話ですね
0914nobodyさん
2008/07/15(火) 23:03:03ID:tej4dQ8Yapache経由でpostgresに接続することができません。
すみませんが手元に実機がないため設定等すぐに確認できません。
centos4.5
apache2.0.52 デフォルトで入れてました。
postgresバージョン忘れてしまいました。ソースからインストール。
perl5.8.5 デフォルトで入れてました
DBI使用
apacheとpostgresは同一機上で動作しています
症状
・サーバ機内で直接スクリプトを実行した場合はDB接続できます
・PCブラウザ等のリクエストを受け取った場合、以下の2通りの現象が起こります
1.apachectlからの起動ではDB接続に失敗
2.httpdからの起動ではDB接続に成功
ahacheのerror.logには、「Refused permission」(だったかな?)という
権限が無いと思われる内容とDB接続を行っている行番号が残っています。
httpd.confのUserやGroupをpostgresやスクリプト所有者に設定してみましたが、症状は変わりませんでした。
ps -auxに出る実行ユーザはどちらもhttpd.confで設定したユーザとなっています(親プロセスはroot)。
apachectlで起動しているhttpdのフルパスは、検証に使用しているhttpdを指しています。
このため同じものだと思うのですが、動作結果が異なるのはどうしてだろうと悩んでいます。
またDB接続時の関数の直後にor dieやprint出力を書いても、接続に失敗した場合は出力されません(ファイル出力も同様)。
アドバイスや手がかりになりそうな情報がありましたら宜しくお願いします。
0916nobodyさん
2008/07/15(火) 23:06:12ID:tej4dQ8Y0917nobodyさん
2008/07/16(水) 00:15:27ID:sBFLtzFGphp-4.2.2-17.2jaがRPMでインストールされているのですが、
バージョンアップをしなければいけなくなりました。
手順ですが
rpm -e でphpを削除して、php4.4.6をconfigure → make → make install
しても大丈夫でしょうか?
今、動いているphpプログラムが動かなくなるか不安です。
0918nobodyさん
2008/07/16(水) 00:39:17ID:???あとlinuxのエスパースレで聞いたほうがいいと思います
0919nobodyさん
2008/07/16(水) 00:45:45ID:sBFLtzFGサンクス湖
0920nobodyさん
2008/07/16(水) 01:21:22ID:gY/N3cCH(設定一覧:http://manual.xwd.jp/timezones.html)
たとえば、この設定が「Africa/Abidjan」と設定されていると、time関数の戻り値が日本時間(Asia/Tokyo)より9時間ずれてしまいますので、日時を表示する際に不都合が生じてしまいます。
time()+9時間
として現在対応しておりますが、それだと「Asia/Tokyo」や「Antarctica/Casey」と設定されている際に不都合(日時のずれ)が生じてしまいます。
if(ini_get('date.timezone') =='Asia/Tokyo'){
$time = time();
}elseif(ini_get('date.timezone') =='Africa/Abidjan'){
$time = time() + 9時間;
}elseif(ini_get('date.timezone') =='省略'){
〜以下、省略〜
というように対応するしかないのでしょうか・・・・orz.
php.iniの設定「date.timezone」の影響を受けない日時を返す関数などありますでしょうか?
ご教授よろしくお願いいたします。
0921nobodyさん
2008/07/16(水) 02:19:26ID:???0923202
2008/07/16(水) 11:15:04ID:zBMhaK5C本当にすみません。
以下はいま動作確認に使ったものを一切改変せずそのままコピペしました。
なんとGETもちゃんと扱えていませんでした。ファイル名はpost.phpです。アドバイスください。
#!/usr/bin/php
<?php
print "Method is " . $_SERVER['REQUEST_METHOD'] . "<br />";
if(isset($_POST["test"])){
print $_POST["test"];
}elseif(isset($_GET["test"])){
print $_GET["test"];
}else{
print "both null" . "<br />";
}
?>
<html>
<body>
<hr />
<?php
print "POST: " . count($_POST) . "<br />";
print "GET: " . count($_GET) . "<br />";
?>
<hr />
<!--<form action="post.php" method="post">-->
<form action="post.php" method="get">
<input type="text" name="test">
<input type="submit" value="submit">
</form>
</body>
</html>
0924923
2008/07/16(水) 11:18:34ID:zBMhaK5C>>923=>>904です。
>>910さんが、PHPをCGIとして動かせるサーバで動作確認できたということですので
わたしが>>904でやった、PHPをCGIとして動かすためのサーバ設定に不備があるのかも
知れません。
PHPをCGIとして動作させるためのサーバ設定はおそらく、このスレの範疇外ですよ・・ね・・
0925nobodyさん
2008/07/16(水) 11:38:24ID:???解決してないが似たような。
0926nobodyさん
2008/07/16(水) 11:41:47ID:???0927923
2008/07/16(水) 13:45:18ID:zBMhaK5Cvariables_order => EGPCS => EGPCS
となっています。環境変数もPOSTもGETもCookieも有効ですよねコレ・・
http://paruo.net/php_cgi_test/phpinfo.txt
にテストサーバのphpinfoの全出力をアップしてみました。
ちなみに、Fedora9で動作しているサーバ(phpinfo.txtを置いたサーバ)で試してみても、
テストサーバ(CentOS5)と同じくPOSTもGETも使えていないようです。
http://paruo.net/php_cgi_test/phpinfo.php
はFedora9サーバのphpinfo
http://paruo.net/php_cgi_test/post.php
はFedora9サーバに置いてみたpost.phpです。
やはりどうも私がPHPをCGIとして動作させるために行った設定に問題があるのでしょうか
0928nb
2008/07/16(水) 14:30:26ID:D6JBW3d6プログラムを作っているけど、何が間違っているか教えてケロ☆
/* kadai2.c */
#include <stdio.h>
main()
{
int seisu, gokei, handan;
gokei=0;
printf("整数を入力して下さい\n");
scanf("&d", &seisu);
handan=seisu%3;
if(handan=0)
for(seisu=1; seisu<=10;)
{
seisu=seisu+3;
gokei=seisu+gokei;
printf("合計=%d\n",gokei);
}
else
printf("できません\n");
return 0;
}
0929nobodyさん
2008/07/16(水) 14:30:48ID:???ついでに$_SERVER['REQUEST_URI']も表示させてみてよ。
0931nobodyさん
2008/07/16(水) 14:41:41ID:???ちょっと環境作ってみたよ。
phpはよく知らないんだが、
php -v で
PHP 5.x.x (cli) と出てないか?
うちでビルドしたら(cli)版と(cgi)版ができて、cgi版のほうだと普通に$_POSTもセットされてる。
0932nobodyさん
2008/07/16(水) 14:49:37ID:???ってまあ、これtext/plainだからcli版なんだろうな。
0933923
2008/07/16(水) 15:08:14ID:zBMhaK5Chttp://paruo.net/php_cgi_test/post.php
に
print '$_REQUEST[\'REQUEST_URI\']: ' . $_REQUEST['REQUEST_URI'];
を追加して確認してみましたが、空のようです。
>>931-932
904にも書いてみましたが、
php -v
PHP: PHP 5.1.6 (cli) (built: May 24 2008 14:07:53)
で、ご指摘の通り(cli)です。なんと、まさかバイナリが違っていたということでしょうか。
いまからCLIについてググります。
このバイナリはRPMで導入したもので、PHPのバイナリに色々種類があるというのは
不勉強のためまったく知りませんでした。
0934nobodyさん
2008/07/16(水) 15:52:07ID:???Server API => Command Line Interface
これじゃ無理だな。
0935nobodyさん
2008/07/16(水) 16:00:45ID:???0936923
2008/07/16(水) 17:04:40ID:zBMhaK5C同じ道を通るかもしれない私のような初心者への道標として簡単に報告します。
Cent OS 5でデフォルトで提供されるPHPのRPMにもCGI用のバイナリは含まれていました。
なければ自分でビルドするつもりでしたがその必要もなかったようです。
# rpm -ql php-cli | grep -i cgi
/usr/bin/php-cgi
# /usr/bin/php-cgi -v
PHP 5.1.6 (cgi-fcgi) (built: May 24 2008 14:03:19)
次にPHPスクリプト中のパスをphp-cgiに書き換えて実行すると、今度は
Security Alert! The PHP CGI cannot be accessed directly.
のような警告が出ましたが、それは
php.ini を cgi.force_redirect = 0 のように変えて解決しました。
このオプション自体はどうもApacheでは推奨されないようですが、
これでともかく動作確認ができます。
ほんとうに、ありがとうございました。勉強になりました。
0937nobodyさん
2008/07/16(水) 21:35:19ID:5rxq4nnT区点コードから実際の文字に自動で変換したいのですが、なにか良い方法はないでしょうか?
区点コードは4ケタの数字です。
よろしくお願いします!
0938nobodyさん
2008/07/16(水) 21:57:12ID:???http://www.google.com/search?hl=ja&safe=off&q=%E5%8C%BA%E7%82%B9%E3%82%B3%E3%83%BC%E3%83%89+%E5%A4%89%E6%8F%9B&lr=
0939937
2008/07/16(水) 22:04:49ID:5rxq4nnTレスありがとうございます。
ですが、PHPから利用できるライブラリや関数を教えていただきたいのですが・・・
わかりずらい質問で申し訳ありません。
0940nobodyさん
2008/07/16(水) 22:08:26ID:???http://www.google.com/search?hl=ja&safe=off&q=%E5%8C%BA%E7%82%B9%E3%82%B3%E3%83%BC%E3%83%89+%E5%A4%89%E6%8F%9B+php&lr=
0941nobodyさん
2008/07/16(水) 22:58:09ID:???0942937
2008/07/16(水) 23:37:35ID:5rxq4nnTいろいろ調べてみたのですが、
http://oshiete1.goo.ne.jp/qa2053815.html?ans_count_asc=2
こちらで、
「Unicode⇔JIS区点コード間は必ずなんらかの変換表が必要になります。」
とあるのですが、
やはりテーブルが必要なのでしょうか?
また、そうであれば、そのテーブルはどこから入手できるのでしょうか?
何度も申し訳ありませんが、よろしくお願いします。
0943nobodyさん
2008/07/17(木) 07:21:02ID:???0944nobodyさん
2008/07/17(木) 08:52:06ID:???>こちらで、
>「Unicode⇔JIS区点コード間は必ずなんらかの変換表が必要になります。」
>とあるのですが、
どっちなんだよ
0945nobodyさん
2008/07/17(木) 09:46:42ID:???JISがつくコード体系同士なら(EUC含む)計算だけでできる
JIS系からunicodeへは表が必要だが、通常OSやライブラリが持ってるからいらん。
0946937
2008/07/17(木) 10:10:00ID:XimHmCfsどうも自分のやりたいことが整理できていなかったみたいで・・・
自分のやりたいことは、たとえば、「1601」から「亜」に変換するということです。
開発環境はWindowsなのですが、
これを実現するには、どうすればよいでしょうか?
何度もすみませんが、よろしくお願いします。
0947nobodyさん
2008/07/17(木) 10:35:30ID:???0x2020 足してやりゃJISになるよ
亜が1601 なら、16区01点で
(区 + 0x20) * 0x100 + 点 + 0x20 → 0x3021
JISになればあとはどうにでもなるだろ
0948nobodyさん
2008/07/17(木) 12:22:17ID:???$KOUT = "\x1b\x28\x42";
$n = 1601; // 区点コードの「亜」
$s = pack("C2", (int)($n / 100) + 0x20, $n % 100 + 0x20);
print mb_convert_encoding($KIN.$s.$KOUT, "SJIS", "JIS"); // SJISで「亜」
やりたいことがよくわからんから適当に。
こっから自分の都合で取り込んでみて。
0949nobodyさん
2008/07/17(木) 12:24:13ID:tFuEM5BxCSVファイル(エクセルから吐き出されたもの)を読み込んで
trim(mb_convert_encoding($list[$i], "UTF-8", "SJIS-win,SJIS"));
で変換後に表示させるとマルチバイトの一部が文字化けしてしまい
どうすれば良いのか分らないので教えてもらえないでしょうか?
ちなみにCSVの読み取り処理をする前にCSVの文字コードをエディタで
UTF-8に変え、mb_convert_encodingさせない場合は文字化けしません。
0950nobodyさん
2008/07/17(木) 12:26:24ID:???0951949
2008/07/17(木) 12:35:30ID:tFuEM5Bx例えばCSV上で 北区田端 という住所の部分を
mb_convert_encodingかけPHP出力すると k区田端 と表示されます
0952nobodyさん
2008/07/17(木) 12:44:00ID:???最終的にSJISになってるの?
0953nobodyさん
2008/07/17(木) 12:45:03ID:???0954949
2008/07/17(木) 12:56:53ID:tFuEM5Bx最終的にはUTF-8です
>>953
どうやらそうのようです
先ほど気がついたのですが、マルチバイト文字すべての先頭文字が
削られているような感じになっています。
(例)
フッサール → tッサール
1キョウ → Pキョウ
0955nobodyさん
2008/07/17(木) 12:59:31ID:???0956949
2008/07/17(木) 13:13:24ID:tFuEM5Bxあたりのようです
var_dumpすると表示されているマルチバイト数+3になっていました
0957nobodyさん
2008/07/17(木) 13:18:01ID:???CSVの読み取りがきちんとできてない可能性と
trim(mb_convert_encoding($list[$i], "UTF-8", "SJIS-win,SJIS"));
の処理でおかしくなっている可能性があるので、
まずは$list[$i]の中身がどうなってるか確認するもんだろ。
0958nobodyさん
2008/07/17(木) 14:11:21ID:tZP0UVf1ロックする必要がないのでしょうか?
$fp = fopen("aaa.txt", "r");
flock($filepointer, LOCK_EX);←必要?
複数人に使われるサイトを想定しております。
OS : CentOS4
PHP4.1.13
0959nobodyさん
2008/07/17(木) 14:15:40ID:???0960nobodyさん
2008/07/17(木) 14:17:12ID:???書き込み途中の半端な状態のファイルを読みたくなければロック必要。
LOCK_EXはやりすぎでLOCK_SHで十分。
0961nobodyさん
2008/07/17(木) 14:20:21ID:tZP0UVf1ありがとうございました。
書き込まれない静的なファイルを読み込むだけなので
ロックせずに実装します。
助かりました
0962nobodyさん
2008/07/17(木) 14:38:39ID:???$query = "select * from table";
$res = mysql_query($sql);
で返ってきた$resから列名(id, name, addressなど)を取得したいのですが、どうすればよいのでしょうか?
0964nobodyさん
2008/07/17(木) 14:43:35ID:???SELECTとかする前に何かのクエリ送っとくなりなんなりしておかないと
いけなかったはず
0965nobodyさん
2008/07/17(木) 14:44:51ID:???0967962
2008/07/17(木) 15:05:52ID:???ありがとうございます!
そのままググったられ日本語例文付サイトに辿り着きまして順調に進みそうです!
>>963
いえいえ、教えてあげようと気持ちだけでもありがたやです。
ありがとうございます。
イ`
0968nobodyさん
2008/07/17(木) 17:33:15ID:???以下みたいな記述なら実行されるんだけど、
echo @file_get_contents("http://localhost/cgi-bin/sub.php");
http://localhostを省略すると実行されない。
phpで、他のディレクトリの共通サブルーチンは
読めないの?
0969nobodyさん
2008/07/17(木) 17:44:00ID:???0970nobodyさん
2008/07/17(木) 17:46:16ID:???目的によっては別の手段使うほうがいいかも。
何がしたいのかな?
0972nobodyさん
2008/07/17(木) 19:35:32ID:???この「今日の日付」を YYYY-MM-DD形式にできないでしょうか?!?!
day=求めるスクリプト
<?php echo . $day. ?> とか色々やったのですが
そのまんま表示されちゃうです orz
index.htmlなんですけど 1からphpで書き直した方が早いでしょうかね?
0974nobodyさん
2008/07/17(木) 19:48:44ID:???http://pc11.2ch.net/test/read.cgi/php/1216291372/
0975nobodyさん
2008/07/17(木) 19:54:58ID:???何がしたいのか意味がわからないが
拡張子htmlをたんにphpにかえてphpにコード埋め込めばいいんじゃね
<input type="text" name="hoge" value="<?php echo date("Y-m-d"); ?>">
みたいに
0976nobodyさん
2008/07/18(金) 09:41:09ID:???いろいろなディレクトリに散らばっているhtmlから
ひとつのディレクトリにあるphpを引数付きで
呼び出したいのです。
手段として、
echo @file_get_contents("http://localhost/cgi-bin/sub.php?q=1");
みたいな書き方しか出来ないのでしょうか?
include 'path/sub.php?q=1';
というような呼び出しかたは
無理ですよね?
0977nobodyさん
2008/07/18(金) 09:49:25ID:???httpd経由で実行するなら、http://localhost/〜が必須なのは当然。
0978976
2008/07/18(金) 10:01:33ID:???system関数は、phpで記述されたプログラムを引数付きで実行し出力結果を貰うことは可能ですか?
もう少しやりたいことを正確に説明します。
windowsのapache環境です。
apacheの設定でcgi-binデレクトリは
c:\apache\cgi-binとして設定してあります。
htdocsのデレクトリはc:\apache\htdocsとして
設定してあります。
http://localhost/a/a.htmlや
http://localhost/b/b.htmlの記述に
/cgi-bin/sub.php?q=1というように
書いてsub.php?q=1の出力結果を
a.htmlやb.htmlの出力に埋め込みたいのです。
こういう場合でスマートな方法というは、
どういう感じで行えばいいのか
よく分からないのです。
0979nobodyさん
2008/07/18(金) 10:17:11ID:???0981976
2008/07/18(金) 13:55:49ID:???うまくいきそうなのですが、
sub.phpの中身を以下の
ように記述したのですが、
帰ってきた内容が
falseってなってしまいます。
なんでだろ???
引数は渡せないのでしょうか?
<?php
if (isset($_GET['q']) == false) {
echo 'false';
exit;
}
$arg = $_GET['q'];
echo $arg * 2;
?>
0982nobodyさん
2008/07/18(金) 13:57:50ID:???0983976
2008/07/18(金) 14:19:35ID:???0984nobodyさん
2008/07/18(金) 14:22:53ID:???0985976
2008/07/18(金) 14:28:42ID:???0986976
2008/07/18(金) 14:41:58ID:???呼び出し元
<?php
virtual("/cgi-bin/sub.php?1");
?>
sub.phpの内容
<?php
if (isset($_SERVER["QUERY_STRING"]) == false) {
echo "false\n";
exit;
}
echo $_SERVER["QUERY_STRING"] * 2;
?>
0987nobodyさん
2008/07/18(金) 15:18:00ID:???0988nobodyさん
2008/07/18(金) 17:08:48ID:euBIoVPkリンクの部分のタグが、
<a href=\"?year=$year1&month=$month1\">".$month1."月</a>";
(上記)のようになっていますが、?yearの『?』の意味はなんでしょうか?
初心者で勉強不足です。お願いします。
0989nobodyさん
2008/07/18(金) 17:14:46ID:???getで値渡す
index.php?a=1&b=2
とかだとindex.phpの
変数aに1を変数bに2をgetで渡している
0990nobodyさん
2008/07/18(金) 17:17:19ID:euBIoVPkありがとうございました。
0991nobodyさん
2008/07/18(金) 18:24:32ID:???0992nobodyさん
2008/07/18(金) 18:45:30ID:???参照渡しかどうかということなんでしょうけど、この違いは何故生まれてくるんですか?
0993nobodyさん
2008/07/18(金) 18:49:46ID:???0994nobodyさん
2008/07/18(金) 20:47:42ID:???0995nobodyさん
2008/07/18(金) 21:05:35ID:???バッファーオーバーフローするぞwww
0996nobodyさん
2008/07/19(土) 13:22:03ID:???0997nobodyさん
2008/07/19(土) 21:17:36ID:???0998nobodyさん
2008/07/19(土) 21:51:02ID:???http://pc11.2ch.net/test/read.cgi/php/1216291372/
0999nobodyさん
2008/07/19(土) 21:51:33ID:???10011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。