トップページ⇒php
982コメント345KB

△▲ WebProg 初心者の質問 Part11 ▼▽

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん04/11/28 18:58:29ID:???
2ちゃんねるは初めて。 WebProg 板は初めて。
質問したいけど、どうしたら良いか分からない。

そんなときは、ここに書き込んでください。
板の住人や、その他が、けなしながら、厳しく教えてくれるかも。

質問する前に、まずはここを読んでね。
【注意事項】
・質問する前にGoogleで検索してみましょう
http://www.google.co.jp/
・環境(ソフトウェアのバージョンなど)は、必ず書いてください。できるだけ詳しく。
 後から情報を書き足す、いわゆる情報の小出しは極力避けてください。
・何がしたくて、何ができて何ができないのかを書きましょう
・マルチポスト(複数のスレッドで質問する行為)は絶対に禁止です。
・過去ログは必ず読みましょう。あなたと同じ質問をしてる人がいるかも知れません。

2ch 総合ガイド
http://www.2ch.net/guide/

お願い。
適切な、板、スレ、を発見した場合、誘導してあげましょう。
スレの性質上 age 進行でお願いします。

関連情報は
>>2-3

前スレ
△▲ WebProg 初心者の質問 Part10 ▼▽
http://pc5.2ch.net/test/read.cgi/php/1095633323/
0002nobodyさん04/11/28 18:58:59ID:???
過去スレ

△▲ WebProg 初心者の質問 Part9 ▼▽
http://pc5.2ch.net/test/read.cgi/php/1086715675/
△▲ WebProg 初心者の質問 Part8 ▼▽
http://pc5.2ch.net/test/read.cgi/php/1078568723/
△▲ WebProg 初心者の質問 Part7 ▼▽
http://pc2.2ch.net/test/read.cgi/php/1073460282/
△▲ WebProg 初心者の質問 Part6 ▼▽
http://pc2.2ch.net/test/read.cgi/php/1066318233/
△▲ WebProg 初心者の質問 Part5 ▼▽
http://pc2.2ch.net/php/kako/1060/10602/1060263267.html
△▲ WebProg 初心者の質問 Part4 ▼▽
http://pc2.2ch.net/php/kako/1056/10560/1056078605.html
WebProg 初心者の質問 Part3
http://pc2.2ch.net/php/kako/1045/10450/1045091733.html
△▲ WebProg 初心者の質問 Part2 ▼▽
http://pc2.2ch.net/php/kako/1037/10372/1037222063.html
△▲ WebProg 初心者の質問 ▼▽
http://pc.2ch.net/php/kako/1030/10301/1030151932.html
0003nobodyさん04/11/28 19:25:31ID:???

欲しいCGIが見つからないならこっちへGo!!

【CGI】こんなCGI探してますver.15
http://pc5.2ch.net/test/read.cgi/hp/1097762828/
0004nobodyさん04/11/28 19:26:38ID:4LpllYnM
CGI設置について質問
http://pc5.2ch.net/test/read.cgi/php/1054216089/

これも
0005nobodyさん04/11/28 22:07:11ID:???
>>1-4
スレ立て乙
0006nobodyさん04/11/30 01:29:46ID:uRjVZ5Dd
ちと、ここで聞いていいものかどうかわかりませんが、
サーバーのどこかのディレクトリに山ほど(1000個単位で)
ファイルを置くのはまずいでしょうか?
2chなんかはdatが数百個同じフォルダに収まっているので
1000個くらいまでは問題なさそうですが…
無駄にサーバーに負担がかかったりしないか心配です。
0007nobodyさん04/11/30 02:12:04ID:???
おくだけなら負荷はない。操作するなら設計やり直し。
0008604/11/30 02:20:39ID:???
ΣΣ(´Д`;ズガーン
やっぱりそうですか…
いくつかに分けることにします。
0009nobodyさん04/11/30 02:31:01ID:???
>>6
サーバによりけりなので、本来ならサーバ管理者に問い合わせるのが筋。

例えば、Linux系サーバではよく ext2 形式というファイルシステムが使われているのだが、
このファイルシステムは1ディレクトリのファイル数が多くなると読み書き性能が下がり、
だいたい10,000個ぐらいから目に見えて劣化すると言われている。

また、1人が10,000個のファイルを作るだけならまだいいが、
ext2だとディスク全体で作れるファイルの数に上限があって(inode数)、
例えば俺の管理してるサーバの場合は9,338,880個なんだが、
ここに1000人のユーザがやってきて全員10,000個ずつファイルを作ると溢れる。
Maildir形式の spool を持つサーバの場合はそっちで既にかなり食われてたりするので注意せよ。

まあ結局はサーバ次第なので問い合わせるのが筋だと思う。
ReiserFSとかXFSとかNTFSとかなら大丈夫なのかもしれんし。
しかし多くのサーバ管理者は、実際には余力があっても大事をとって「ダメ」と言いそうな。
0010nobodyさん04/11/30 02:44:16ID:???
大体そんなシステム作る前にもっと違う方法考えるだろ普通。
0011604/11/30 03:07:43ID:???
>>9
むほー。
詳しい説明ありがとうございます。

一応、それほど同じディレクトリにまとめるメリットはないので
いくつかにわけてみます。

ディスク全体で作れるファイル数の上限なんてあったんですね…
0012nobodyさん04/11/30 10:12:02ID:???
.htaccessの質問はここでOKですか?
0013nobodyさん04/11/30 10:14:04ID:???
>12
.htaccess質問コーナー Part2
http://pc5.2ch.net/test/read.cgi/hp/1084861566/
0014nobodyさん04/12/01 00:34:44ID:???
    i<´   }\   , - 、
   ヽ.._\./  .ンく r-兮、 __
    ∠`ヽ.! /   ヾニEヲぐ ,ゝ->   
   /_`シ'K-───‐-、l∠ イ      さすがゴッグだ
   l´__,/l\、_ ̄0¨0)゙@Yヘ, -┤     Inodeなんて溢れても何ともないぜ    
.    l'___|⌒ヾ''ー==、ーr='イ i二|    
0015nobodyさん04/12/01 12:29:38ID:Wf8RfwFF
どこに質問していいのかわからなかったので、ここにさせていただきます。
CGIROOMで配布されているツリー型の掲示板を使用したいと考えているのですが、
スクリプトがダウンロードできません。
作者の方が配布を中止しているのかどうかも不明なのですが、ご存知の方いらっしゃいますでしょうか。
0016nobodyさん04/12/01 13:04:53ID:???

- - - - - ここまで釣り - - - - -
0017nobodyさん04/12/01 13:27:23ID:pSmKoJZK
>>6

ディレクトリの中のファイル数は10000個とありますが、
ディレクトリの中に多数のディレクトリを設置する場合はどうなのでしょう?
やはり重くなったりするのでしょうか?
0018nobodyさん04/12/01 14:09:54ID:???
>>17
ローカルで負荷計測してみれば?
1000コのそれぞれディレクトリの中に1000コのファイルがあって全部読むとかやったら死にそうだけど。
0019nobodyさん04/12/01 14:26:33ID:pSmKoJZK
>>17です。
例えば掲示板レンタルなどで、
下記の様にした場合はどうなのでしょう?
log
┣各user
┃┗log.txt
>>9さんの話ではlog.txtが10000個だと劣化するとありますが、
上記例の場合、logディレクトリにディレクトリが無数に
作成されてしまうのですが、こちらも数が多いと支障がでるのでしょうか?
0020nobodyさん04/12/01 14:30:59ID:???
昔はデータ領域を広げるためにinodeの領域を削るなんて事もあったなぁ。
って何時の話だ。
0021nobodyさん04/12/01 14:38:53ID:???
>>19

18 名前:nobodyさん 投稿日:04/12/01 14:09:54 ID:???
>>17
ローカルで負荷計測してみれば?
0022nobodyさん04/12/01 14:44:54ID:???
>>18,21
ローカルで計測しても
サーバ環境とローカル環境でファイルシステムが違えば意味を為さんよ

>>19
というわけなのでサーバの環境がわからないと答えようがない

>>20
懐かしい
0023nobodyさん04/12/01 18:47:50ID:fk0CtBo/
環境@linux + perl5

system("whoami > $whoami");
みたいなことやりたいのですが、システムから受け取った内容を
変数に格納するにはどうしたらよいですか?
0024nobodyさん04/12/01 20:14:51ID:???
$cmd = '/usr/bin/whoami';
$pid = open(IN, "-|");
if(!defined($pid)){die "fork failed.";}
elsif ($pid == 0) {
exec($cmd) || die $cmd;
}
$iam = <IN>;

環境はcygwin(Perl5.8)。どうでしょ。
0025nobodyさん04/12/01 20:21:33ID:???
あ、結果が複数行になる場合は<IN>をwhileで回すなりして取ってね。
Cのパイプと同じ感覚。
0026nobodyさん04/12/01 21:16:59ID:???
えらく大げさだなぁ。。。
0027nobodyさん04/12/01 21:26:53ID:???
まあ、whoamiするだけならopen一発でやってもいいけどさ。
入力データを引数にしたコマンドを実行することもあるだろうと思って。
0028nobodyさん04/12/01 21:38:36ID:???
>>24が大袈裟か?
パラメータなしでも、システムコマンド叩く場合はより安全な方法を書いとくのが当たり前と思うが。
0029nobodyさん04/12/01 22:29:04ID:0yYdTWvL
こんばんわ。

Movable Type 3.11-ja についての質問です。
エントリー本文の一部に太字を使うとき、表示がタグと合わないので困っています。
Bのボタンを押すと<strong></strong>タグで太字にしたい部分が囲まれ、
エントリーの確認で見るとちゃんと太字になっているのですが
保存にしてエントリーを反映させると、太字にした部分が太字下線になっています。

自分で<B></B>で囲んでみましたが、太字になりませんでした。

これはどこがおかしいのでしょうか? 
スタイルシートも各種テンプレート(HIHAGATA)もいじっているので
その過程でどこかに間違えて手を加えてしまったのかもしれません。

よろしくおねがいします。
00302904/12/01 22:30:35ID:???
誤:
スタイルシートも各種テンプレート(HIHAGATA)もいじっているので
正:
スタイルシートも各種テンプレート(HINAGATA)もいじっているので
0031nobodyさん04/12/01 23:06:42ID:???
>>26は、>>24,>>27-28の意味を分かってないに100ペソ
00322904/12/01 23:13:01ID:???
解決です。
なにをとち狂ったのか
==========================
strong, b {
font-weight: bold;
border-bottom: 2px solid #fff;
}
===========================
border-bottom: 2px solid #fff; こんなものが挟まってました('A`)

貴重な3レスを無駄に消費してごめんなさい。
00332304/12/02 08:54:19ID:???
>>24
ありがとうございました。m(_ _)m
リダイレクトでopenして取得する方法は思いついたのですが、
こんな方法があったんですね。^^
勉強になりました、ありがとうございました。
0034nobodyさん04/12/02 10:48:57ID:???
CGIでログファイルを<TEXTAREA>に読み込んで表示させて直接編集できるものがあるのですが、
ログファイル内に<TEXTAREA>を閉じる</TEXTAREA>という文字列があると、
ログファイルの</TEXTAREA>の直前までしか表示されず、その後の部分はHTML部分にベタに出力されてしまいます。
これを回避したいのですが、何かいい方法は無いでしょうか。
また、ログファイルを読み込む際にタグの<>&"などの記号を変換するというのは無しでお願いします。
ログファイルを読み込んで、それをさらに上書き保存する機能があるので、変換して表示してしまうと、
変更しなかった部分のタグの記号なども変換されてしまうので。
0035nobodyさん04/12/02 10:52:05ID:???
保存時にエンティティを逆変換しとけ
0036nobodyさん04/12/02 11:02:47ID:???
サニタイズしてない文字列を出力するCGIスクリプトはWebでは失格。
そもそもTextareaってPCDATA領域だろ。<や"は含めないぞ。
0037nobodyさん04/12/02 11:09:19ID:???
テキストエリアはPcdataだけど、タグ付けできないと定義されてるからね
0038nobodyさん04/12/02 11:28:44ID:???
>>34
HTMLに関して根本的な勘違いをしてるな。
0039nobodyさん04/12/02 11:29:37ID:???
なっちが鉄格子の中からこっちを見ているな。
0040nobodyさん04/12/02 11:37:27ID:???
>>34
ログファイルを展開する時に、<TEXTAREA>があった場合にフラグ立てて、
フラグあれば注意書きで「TEXTAREAのタグを変換してるから、見直してから保存しれ」とでも書けばいいじゃん
0041nobodyさん04/12/02 11:43:08ID:???
>>34 が意味不明なんですが
0042nobodyさん04/12/02 12:19:36ID:???
普通に特殊記号をエスケープ&アンエスケープする処理をすれば
何の問題もない話だ。
0043nobodyさん04/12/02 12:30:32ID:???
全部やっちまうと、>>34の例だと、例えばそのログファイルだとかがHTMLファイルだとして、
通常のタグまで置換されたらやっかいだと思われ。

>>34
読み出す際に、</TEXTAREA>がある行だけを変換するのはどうよ。
んで、書き込む際に</TEXTAREA>がある行だけまた変換するとか。
00444304/12/02 12:47:17ID:???
TEXTAREA内に&lt;とかって文字を出力すると、<って表示されるのか。
初めて知った。
0045nobodyさん04/12/02 12:56:28ID:???
おいちょっとまてw
0046nobodyさん04/12/02 13:21:21ID:???
>>44
ワラタ
0047nobodyさん04/12/02 13:24:32ID:???
>>44
ものすごく頭の悪い発言してください その3
http://pc5.2ch.net/test/read.cgi/hp/1092941001/
00483404/12/02 13:36:23ID:???
みなさんレスありがとうございます。
とりあえず、読み出したファイルに</TEXTAREA>があった場合、
if ($_ =~ /\/TEXTAREA/i) {
 $_ =~ s/<\/textarea>/<\/TEXTAREA>/i;
}
として、<TEXTAREA>が閉じないようにしてみました。
0049nobodyさん04/12/02 13:46:41ID:???
素直にサイニタイズしろ
0050nobodyさん04/12/02 13:48:03ID:???
画像掲示板に本文のプレビュー機能を付けようと思っているのですが、
プレビューする時に画像は送信したくありません。
純粋に入力された本文のみのプレビューにしたいと思っています。
(独自タグで強調やインデントができるので、投稿前に確認したい。)
formをネストさせるわけには行かないし、何かいいアイデアないでしょうか?
0051nobodyさん04/12/02 14:20:39ID:???
javascriptで送信したい要素だけ拾い上げてゴニョゴニョするとか。
0052nobodyさん04/12/02 14:26:22ID:???
それじゃさっぱりわかりません。
どうしたらいいのか書いてください。
00535004/12/02 14:31:54ID:???
>>51
そのゴニョゴニョが良く分からないのですが、イメージ的には
getElementByIdなりで必要な要素だけ取り出して、document.write()なりで新たにform作って
そのformのsubmitまで自動でやるって感じでしょうか?
何か馬鹿なこと書いてる気もしますが、あくまでもイメージですが・・・。
0054nobodyさん04/12/02 14:39:07ID:vSUS9d6+
1,WindowsNT+MSSQL
2,Linux+Perl5+PostgreSQL+unixODBC

2のサーバー上にUPしたperlプログラムから1のサーバーのMSSQLの
データベースにアクセスしたいのですが、うまく接続できません。
かなりの確立で自分のプログラムミスだと思うのですが、どこをどう
いった具合に修正すればよいのかよくわかりません。

use DBI;
# use DBD::ODBC;
$dsn = 'DBI:ODBC:hostname=192.168.1.5;port=1433;dsn=syanai';
$user = 'hoge';
$pass = 'passwd';

$dbh = DBI->connect($dsn,$user,$pass);

ちなみにWindowsXPpro+Cygwin にてDBD::ODBCでやったときには接続できました。
LAN接続なのでiptablesは動作させておりません。

ぐぐってもなかなか実例がなく、use unixODBC;とか間抜けなことやってみたり
したのですが、ダメダメ君のようです。
とにかく接続したいのですが、unixODBCを使用した実例とかおしえてくkださい。m(_ _)m
0055nobodyさん04/12/02 14:46:44ID:???
>>53
>getElementByIdなりで必要な要素だけ取り出して
それじゃ入力中のvalueは拾えないだろ。
0056nobodyさん04/12/02 14:53:23ID:???
要するに画像が送信されちゃう事が問題なら、ENCTYPE="multipart/form-data"
を動的に付与する・しないができればいいんじゃねーの?
00575004/12/02 15:57:55ID:???
いろいろありがとうございます。
いくつかヒントになるアイデアを出して頂いたので、頑張ってみます。
■ このスレッドは過去ログ倉庫に格納されています