トップページ⇒php
1001コメント314KB

【PHP】下らねぇ質問はここに書き込みやがれ 56

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2007/10/11(木) 17:55:41ID:uObe69hr
まず読め→【PHP マニュアル】http://www.php.net/manual/ja/
PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り

◆前スレ
【PHP】下らねぇ質問はここに書き込みやがれ 55
http://pc11.2ch.net/test/read.cgi/php/1191058556/

◆質問する時の注意
・ sage進行(メール欄にsageと記入すること)「sage進行」とはスレを目立つ上部に上げないことによって、荒らしが発見できないようにすることです
・ サーバーのOS(Linux、Windows他)、WebサーバーとPHPの種類やバージョン等を明記すること。
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
・ 書き込むときには、「公式マニュアル、リファレンス本は読みました」と明記すること
(でないと、公式マニュアル読めと煽られます)

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

◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。
・質問者が「公式マニュアル読んだ」と書いていないからといって、
公式マニュアルに書いてもいないのに、公式マニュアルよめと適当なことを言わないこと。
質問者は公式マニュアルを読んでいるかもしれない。

【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで
0268nobodyさん2007/10/15(月) 19:53:28ID:???
>>267
どの時点で変更するの? 代入時? 代入後?
$array["いいい"] = "";だとダメ?
0269nobodyさん2007/10/15(月) 19:53:37ID:???
>>267
array_search
0270nobodyさん2007/10/15(月) 20:05:29ID:???
>>267
一体何をしたいかサパーリわからんからみんな困ってるよ
0271nobodyさん2007/10/15(月) 20:41:07ID:???
>>267
$array[1] = "";
0272nobodyさん2007/10/15(月) 21:01:56ID:???
みなさんクッキーにデータ保存するときどうしてますか?
生データ入れてる?
0273nobodyさん2007/10/15(月) 21:19:19ID:???
生データもあればハッシュ値もあったり
場面場面によって違う
0274nobodyさん2007/10/15(月) 21:20:44ID:???
>>273
普通の掲示板、例えば2chの名前とE-mailのデータを入れたい場合はどうしますか?
0275nobodyさん2007/10/15(月) 21:31:55ID:???
>>274
md5でok
0276nobodyさん2007/10/15(月) 21:46:53ID:???
>>275
ありがとう!いい人だ。
0277nobodyさん2007/10/15(月) 21:52:35ID:???
md5は不可逆(md5した値から元のデータを取り出せない)だが、いいのか?
0278nobodyさん2007/10/15(月) 22:11:18ID:???
mcrypt
0279nobodyさん2007/10/15(月) 23:11:35ID:PdW9cMRB
くだらない質問ですがよろしくお願いします。

今現在CSVファイルのデータをもとにフリー検索できるようにしてるのですが、
サイズが膨大すぎて時々上手く作動しません。

データは  $Data=file("datacsv"); こんな感じで読み込んでます。
そこで質問なんですが、特定の列だけを対象に読み込ませることは可能でしょうか?

例えばCSVのデータの縦列6行目の商品名のみを対象にとか

お願いします。
0280nobodyさん2007/10/15(月) 23:12:50ID:???
>>277
そうなんですか?

>>275
嘘教えないでください
0281nobodyさん2007/10/15(月) 23:18:35ID:???
>>279
$array = split(',',$Data['5']);# 6列目
print $array[2];# 前から3番目に商品名が入ってるとして

こんなんでどう?
ていうか、サイズが膨大すぎて時々上手く動作しませんってのはおかしい
0282nobodyさん2007/10/15(月) 23:21:34ID:???
>>280
>>278使えば可逆できるみたいよ。
(mcryptのマニュアル見たけど難しくて理解できなかったけど)

掲示板の名前やメアドくらいなら生でもいいんじゃいの? またはhttps使うとか
md5はDB使ってて照合する場合(認証等)ならいいと思います。
0283nobodyさん2007/10/15(月) 23:44:35ID:???
>>279
特定列(行?)だけを対象ってのは関数自作しないとダメと思う。
$Data=file("datacsv")だとファイル丸ごと読み込んでるから重いんだと思う。
1行ごと読み込んで必要な列だけ別配列に移しファイル閉じてから配列ぶん回して検索すればどう?
02842792007/10/15(月) 23:54:30ID:???
>281
ありがとうございます。試してみましたが、なかなか上手くいきません・・・
スキル不足でしょうか・・

>283
そうなんです。ファイルが膨大なため上手く読み込めなくて文字化けしたり、挙動がたまにおきます。
問題はピンスポットで検索できず、余計なものまで読み込んでることにあります。
商品名だけ検索対象にしたいのですが・・・

おっしゃってることは理解できるのですが、関数が簡単に自作できないもんで・・・
0285nobodyさん2007/10/15(月) 23:59:44ID:???
>>284

勉強してからきてね♪

0286nobodyさん2007/10/16(火) 00:04:24ID:???
>>284
ファイルが膨大ってどれぐらいのサイズ?
郵便局のH.P.で配布されてる郵便番号のデータ読み込んで
住所の一部から郵便番号とか、郵便番号から住所とか検索するの作ったけど
データファイルが10MB以上あるけどちゃんと動くよ?
差し支えなけりゃそのデータファイルうpよろ
プログラムに原因があるんじゃなくデータファイルに原因あるかも
0287nobodyさん2007/10/16(火) 00:10:56ID:???
300MBに10ペリカ
0288nobodyさん2007/10/16(火) 00:16:15ID:???
技術ないくせに技術とかWebを語るやつはよく挙動がおかしいというな。お前がおかしい(スキルが低い)と(ry
0289nobodyさん2007/10/16(火) 00:17:07ID:???
>>284
努力を見せてくれ
話はそれからだ
02902832007/10/16(火) 00:26:41ID:???
こんなのはどう? うまく動くかは知らんが。

$csvfile = "data.csv";
$search_field = 6; # n番目の列を検索(1スタート)
$search_word = "xxx";

function search_csv($csvfile, $search_word, $search_field){
 $row = 0;
 $field = $search_field - 1 ;
 $handle = fopen($csvfile, "r");
 while (($data = fgetcsv($handle, 1000)) !== FALSE) {
  if((strpos($data[$field],$search_word)) === true){ # 検索処理
   $hit[$row++] = $data[$field];
  }
 }
 return $hit;
}

実際の検索処理はstrposじゃダメだと思うけど。
もし検索対象列以外の情報も欲しいならその列番号を引数($field_id)にして
 $hit[$row][0] = $data[$field_id - 1];
 $hit[$row++][1] = $data[$field];
とでもして。
0291nobodyさん2007/10/16(火) 00:37:31ID:???
DB使えばいいのにと思ってしまう
02922792007/10/16(火) 00:43:26ID:???
>>290

ありがとうございます。
今日じっくり試してみます。

>>291

DBがベストですね。 CSVをmySQLにインポートしてから・・・ も最終的には
考えています。

みなさんありがとう。またきます。
0293nobodyさん2007/10/16(火) 00:51:29ID:???
>>292
>>CSVをmySQLにインポートしてから・・・ も最終的には考えています。

処理重いなら最初に考えてくれ
そしたら対象列のみの検索関数なんていらないのに。(DB使えない事情あるのかと思ってたよ)
0294nobodyさん2007/10/16(火) 12:42:40ID:???
昨日は、アドバイス頂きましてどうもありがとうございました。
頂いたアドバイスは大して役に立たなかったのですが、
自分でその後色々試してみてできるようになりました。

ただ、アドバイス頂いたことをキッカケで解決の糸口になったので、
その点については感謝します。どうもありがとうございました。
0295nobodyさん2007/10/16(火) 13:00:30ID:???

       , - ,----、 
      (U(    ) 
      | |∨T∨
      (__)_) お役に立てなくて本当に申し訳ありませんでした。
0296nobodyさん2007/10/16(火) 13:03:14ID:???

             / ) / ̄ ̄ ̄ ̄ ̄ ̄ ̄
            ./ / | もう来るなよ!>>294
           / /  \          / ̄ ̄ ̄
           / /     ̄|/ ̄ ̄ ̄ ̄|  ウワアアン!
         ./ /       , -つ     \       
         / / `Д´)  ./__ノ        ̄∨ ̄ ̄ ̄ ̄
        /    \ / /   ⊂_ヽ、
        .|    へ/ /      .\\ 
        |    レ'  /、二つ       \ ( `Д´)
        |     /.          . >  ⌒ヽ
       /   /             /    へ \
       /  /               /    /   \\
      /  /               レ  ノ     ヽ_つ
     / ノ               /  /
   _/ /                /  /|
  ノ /                 ( ( 、
⊂ -'                    |  |、 \
                     .  | / \ ⌒l
                       | |   ) /
                      ノ  )   し'
                     (_/
0297nobodyさん2007/10/16(火) 13:10:49ID:???
>頂いたアドバイスは大して役に立たなかったのですが、
>自分でその後色々試してみてできるようになりました。
>
>ただ、アドバイス頂いたことをキッカケで解決の糸口になったので、
>その点については感謝します。どうもありがとうございました。


なにこの糞厨房?
自分の技術のなさとやりたいことを伝える能力のなさを棚に上げて何言ってんの?


0298nobodyさん2007/10/16(火) 13:47:35ID:???
>>296>>297
は?何、キモイレスしてんの?
ワザワザ時間を使ってお礼のレスを書いているのに、お前こそ何様?
そもそも、お前がアドバイスしてくれた本人じゃないだろ。
お前が消えろ。
0299nobodyさん2007/10/16(火) 13:57:58ID:???
うるさいっすよ( ^ω^)
0300nobodyさん2007/10/16(火) 13:59:55ID:???
>>294=>>298

ウザ厨房は早く消えろ
もうくるなよ
0301nobodyさん2007/10/16(火) 14:00:27ID:???

ここは気持ちの綺麗な初心者がくだらねえ質問を書くスレであって、くだらねえ性格の持ち主が来る場所じゃない
よって、お前はもう来るなよ!
0302nobodyさん2007/10/16(火) 14:44:20ID:???
>>294,298 = >>279だよね?
では大して役に立たなかったアドバイスをした私(>>283,290)から一言、

             / ) / ̄ ̄ ̄ ̄ ̄ ̄ ̄
            ./ / | もう来るなよ!>>294 >>298
           / /  \          / ̄ ̄ ̄
           / /     ̄|/ ̄ ̄ ̄ ̄|  ウワアアン!
         ./ /       , -つ     \       
         / / `Д?)  ./__ノ        ̄? ̄ ̄ ̄ ̄
        /    \ / /   ?_ヽ、
        .|    へ/ /      .\\ 
        |    レ'  /、二つ       \ ( `Д?)
        |     /.          . >  ⌒ヽ
       /   /             /    へ \
       /  /               /    /   \\
      /  /               レ  ノ     ヽ_つ
     / ノ               /  /
   _/ /                /  /|
  ノ /                 ( ( 、
? -'                    |  |、 \
                     .  | / \ ⌒l
                       | |   ) /
                      ノ  )   し'
                     (_/
0303nobodyさん2007/10/16(火) 14:53:41ID:???
  /::::::::::::::::::::::::::\〜プーン
  /:::::::::::::::::::::::::::::::::::::::\〜プーン
  |:::::::::::::;;;;;;|_|_|_|_|〜プーン
  |;;;;;;;;;;ノ∪  \,) ,,/ ヽ〜
  |::( 6∪ ー─◎─◎ )〜        
  |ノ  (∵∴ ( o o)∴)〜      
  | ∪< ∵∵   3 ∵> <は?何、キモイレスしてんの? 
  \        ⌒ ノ_____
    \_____/ |  | ̄ ̄\ \
___/      \   |  |    | ̄ ̄|
|:::::::/  \___ | \|  |    |__|
|:::::::| \____|つ⊂|__|__/ /
|:::::/        | ̄ ̄ ̄ ̄|  〔 ̄ ̄〕

顔真っ赤な>>298氏
0304nobodyさん2007/10/16(火) 16:08:57ID:6XgRK9pl
東京都港区芝公園4-2-8
を

都道府県
市区町村
○○丁目
○番地

のように解析するようなライブラリとかありませんか?
0305nobodyさん2007/10/16(火) 16:10:33ID:???
質問なんですけど
クラスでmysqlを使うときに
$this->mysqli->query("show tables")
みたいに書いても動かないんですけど
やっぱり->が二つ以上あるのはだめなんですか?
クラスでmysql使うにはどうしたらいいんでしょうか?
やっぱり、手続き型ですか?
03063052007/10/16(火) 16:12:44ID:???
->はオブジェクトのみだったんですね
自己解決しました。
0307nobodyさん2007/10/16(火) 16:16:36ID:???
PHP4.3系+MySQL4.0でデータの変更フォームを作っています。

変更フォーム画面にアクセスした時、
既に登録されているデータをフォーム内に配置したいと思っています。

テキストボックスの値やテキストエリアの値は変数をそのまま出力するだけで簡単でしたが、
セレクトメニューの項目の場合、皆さんはどういう風に登録値を当て嵌めてますか?
03083052007/10/16(火) 16:17:07ID:???
解決していません;;
03093072007/10/16(火) 16:19:13ID:???
キーワードごとに条件分担すればできました。
解決しました。
0310nobodyさん2007/10/16(火) 16:28:14ID:???
>>307
嵌めてるだなんて…イヤラシイ
0311nobodyさん2007/10/16(火) 17:25:19ID:???
>>309
ちょ・・・>>307俺なんだけど・・
0312nobodyさん2007/10/16(火) 17:29:04ID:???
>>304
その話は、確か1週間前に荒れた話題・・・
0313nobodyさん2007/10/16(火) 17:31:08ID:HcNoY8tx
classの質問です。

$func = 'Test';
$this->'user'.$func.'Warp'();
こんな形で
userTestWarpファンクションを通過させたいのですがうまく行きません。
どのような書き方でうまく動作するでしょうか?
宜しくお願いします
0314nobodyさん2007/10/16(火) 17:34:15ID:6XgRK9pl
>>312
そうなのですか、すみませんでした。
住所を検索して位置情報を取得したいのですが、
Geocoding使う以外に何か方法はないものかと思っていたら
国土交通省に各住所と位置情報のデータベースがあったので、
そこから検索しようと思い入力された住所を解析しようと思いました。
0315nobodyさん2007/10/16(火) 17:36:57ID:???
>>313
$this->{'user'.$func.'Warp'}();
$this->{"user{$func}Warp"}();
など。
0316nobodyさん2007/10/16(火) 17:37:16ID:???
>>311
ちょww俺だっつーのwww
0317nobodyさん2007/10/16(火) 17:42:49ID:???
当スレではID表示は強制ではないが、ID非表示=回答は無くても構わない
という意思表示とみなされます。
0318nobodyさん2007/10/16(火) 17:45:25ID:???
ってか何でテンプレ変えたの?
0319nobodyさん2007/10/16(火) 17:56:42ID:???
荒れるからでしょ。

ID出さずに自滅するのは質問者の勝手、ってことにすれば
喧嘩は質問者とその騙りだけで閉じて回答者は参加しなくなるから。
0320nobodyさん2007/10/16(火) 18:40:10ID:NYdItq6K
天皇には、民事裁判権は及ばないとのことですが、
皇后についてはどうでしょうか?

例えば、天皇皇后が終戦記念日の祝典に出たときに、
皇后が何もお言葉を述べなかったのは、
戦没者を不当に軽視するもので、精神的な苦痛を受けたとして、
皇后を被告に民事裁判を申し立てることはできますか?
0321nobodyさん2007/10/16(火) 18:41:33ID:???
なんでしゃべらんだけで訴えられなきゃいかんのだ
0322nobodyさん2007/10/16(火) 18:41:56ID:???
さきほどPHPの教書みながらオナニーしました。 つい・・・

0323nobodyさん2007/10/16(火) 18:43:35ID:???
PHPってよく見るとおっぱいみたいだよね
03243202007/10/16(火) 18:44:51ID:NYdItq6K
失礼、ミスしました。無視して下さい。
0325nobodyさん2007/10/16(火) 18:53:29ID:???
>>320
皇后さまがカワイソっす。
0326nobodyさん2007/10/16(火) 18:57:31ID:CHj8ujM0
配列をcookieに保存する方法を教えてください。
setcookieを配列の数実行したらいいのでしょうか?
0327nobodyさん2007/10/16(火) 19:09:25ID:???
シリアライズして格納すれば?
0328nobodyさん2007/10/16(火) 21:27:56ID:CHj8ujM0
$a = '山田';
$b = '山本';
これをシリアライズしてcookieに保存する方法をおしえてください。
0329nobodyさん2007/10/16(火) 21:33:25ID:???
マニュアル見れ
0330nobodyさん2007/10/16(火) 22:09:57ID:???
>>328
シリアライズする必要ないじゃん。そのまま格納しれ。
0331nobodyさん2007/10/16(火) 22:32:03ID:opvWCKV/
mysqlリソースを一行ずつ処理する関数はありますが、
リソースを一工程で連想配列として扱う方法はありますか?
0332nobodyさん2007/10/16(火) 22:42:05ID:???
>>331
なんでまた連想配列?
ちなみにそれ、配列のキーは何になるの。
0333nobodyさん2007/10/16(火) 23:50:39ID:opvWCKV/
すみません、連想配列じゃなくて二次元配列でした、
返ってきた結果を色々弄るのにリソースより配列にする
方が楽なので(今は自作関数で処理してます)。
0334nobodyさん2007/10/17(水) 00:10:09ID:???
何をさせたいのか知らんが多次元なら再帰関数にすればいいのでは
0335nobodyさん2007/10/17(水) 00:17:42ID:???
>>333
何かライブラリ使うぐらいしか無いんじゃないかな
1つの関数で一発でとってきたいってことでしょ?
0336nobodyさん2007/10/17(水) 00:26:04ID:???
>>333
データ件数が多すぎるときに破綻するから
そういうやり方はあんまやらん方がいいと思うけどね。
0337nobodyさん2007/10/17(水) 01:41:10ID:???
$tmp = array();
とするべき所を
$tmp = NULL;
と間違って初期化してしまったために、
array_pushのコードの箇所でエラーが発生して、今日業務が止まってしまったのですが、
素直に上司に報告したところ、笑って許してくれました。

これも普段からの人徳からなのかもしれない。
普通の人だったら首になってもおかしくないですから。
0338nobodyさん2007/10/17(水) 01:48:29ID:???
業務内容にもよるかな
0339nobodyさん2007/10/17(水) 02:09:07ID:???
その分上司が責任ひっかぶってくれてんだよ
0340nobodyさん2007/10/17(水) 07:48:12ID:pDVA8Q4W
普段はEUCでコードを書いているのですが、携帯サイトの場合にShift-JIS
にしたところ、PHPの関数ファイルなどがすべて文字化けしました。

こういう用途の場合、どうやって文字化け回避したらよいのでしょうか?
一括で出来る方法を教えて下さい。
(ちなみに、サーバもEUCです)
0341nobodyさん2007/10/17(水) 07:54:03ID:???
>>340
HTML出力をSJIS変換すればいい。
プログラムまでSJISにする必要なんてない。
03423402007/10/17(水) 07:58:09ID:???
>>341
表示ページ→Shift-JIS
関数ファイル→EUC-JP

で、表示ページにrequireで関数ファイルを読み込んでいるのですが、
どの部分に変換すればいいのでしょうか?
また、mb_convart_encodingではないですよね?
0343nobodyさん2007/10/17(水) 08:17:59ID:???
>>341
無知乙

まぁ、内部コードがSJISなのはありえないけどな
0344nobodyさん2007/10/17(水) 08:51:53ID:???
実は携帯ページはEUC-JPでも問題ない
0345nobodyさん2007/10/17(水) 10:23:44ID:???
>>337
その程度でクビってどこのブラックだよ
0346nobodyさん2007/10/17(水) 11:00:32ID:Y8aoqXAI
md5について質問です
指定したファイルのmd5を取得したくて下のようにしました
しかし ./test.jpg が渡されていてファイルのmd5が取得できませんでした

$target = "./test.jpg";
$md5_name = md5($target);
print "md5 $md5_name";

次にこのようにしてファイルを読み込ませて、それを元にmd5を得ようと思いましたが
でてきた結果が空白でこれも失敗しました

$target = file("./test.jpg");
$md5_name = md5($target);
print "md5 $md5_name";

ファイルのmd5はどうやったら取得できるのでしょうか?
0347nobodyさん2007/10/17(水) 11:04:50ID:???
>>346
マニュアル見れ
0348nobodyさん2007/10/17(水) 11:14:29ID:Y8aoqXAI
>>347
http://jp.php.net/manual/ja/function.md5.php
ここですよね?
文字列からのは理解できましたがファイルからのが理解できなかったんです
0349nobodyさん2007/10/17(水) 11:18:29ID:???
文字列関数のページを見れ
あるいは左の関数一覧を見れ
0350nobodyさん2007/10/17(水) 11:26:48ID:Y8aoqXAI
>>349
うほっ、関数あったw
ありがとうございました
0351nobodyさん2007/10/17(水) 12:00:23ID:???
md5_file
0352nobodyさん2007/10/17(水) 17:21:33ID:???


  マニュアル見れ坊しね

0353nobodyさん2007/10/17(水) 17:26:54ID:Y7gFjXGG
いろんな入力フォームについてですが
jsのヒストリーバックや、ブラウザのバックを使うと
修正しようと戻ると、入力欄が空白になる場合があります。
毎回ならわかるのですが、何故なんでしょう?

ヒストリーバックなボタンは使わず
hiddenで変数を埋め込んだ方がいいのでしょうか?
0354nobodyさん2007/10/17(水) 18:07:47ID:???
hiddenじゃなくてセッションの方が簡単
0355nobodyさん2007/10/17(水) 18:16:25ID:???
PHP4での質問です。
$a[0][0] = 1;
$a[0][1] = 2;
$a[0][2] = 1;
という多次元配列を作っておいて、
$a[0][0] の値と $a[0][2] の値を if 文で比較処理したいと思っています。
そこで
if ( $a[0][0] == $a[0][2] ) {
処理内容
}
と書いても評価してくれません。
そこで「{$a[0][0]}」のように波括弧で囲まないと
希望の挙動にならないのかとも思ったのですが、
if ( {$a[0][0]} == {$a[0][2]} ){ ……
とすると文法エラーになってしまいます。
if の条件文の中で、直接に多次元配列の値を比較するには
どのようにすればいいのでしょうか?
よろしくご教示ください。
0356nobodyさん2007/10/17(水) 18:18:12ID:???
>>353
ブラウザの一時メモリキャッシュが残ってるかどうかじゃないのかな。
ヒストリーバックに頼るのは良くないと思うよ。
>>354
セッションは簡単だけど2画面開かれたときにおかしな挙動になることもあるからTPOで。
0357nobodyさん2007/10/17(水) 18:20:15ID:???
>>355
$a[0][0] = 1;
$a[0][1] = 2;
$a[0][2] = 1;
if ( $a[0][0] == $a[0][2] ) {
 echo "一致した\n";
}
実行結果:
一致した

普通に動いてると思うんだが確認方法をどっか間違ってないか?
0358nobodyさん2007/10/17(水) 18:58:54ID:???
test
03593552007/10/17(水) 19:01:12ID:???
>>357
すみません。おっしゃっられた通り、確認方法を間違えていました。
きちんと動作します。
わざわざ検証していただいてありがとうございました。

// ああ、こんなことに3時間も悩んで、俺はバカだ orz
0360nobodyさん2007/10/17(水) 19:10:49ID:Y7gFjXGG
>>356 >>354

ありがとうございます。
hiddenで対応しました。今まで入力項目が少なくて
校正のない者ばかりだったので気が付きませんでした。
そして新たに発覚したのが送信者、本分内の旧字の名前が?に化けるのですが…
UTF-8→ISO-2022-JP MINE→アウトルック

どの時点でおかしくなっているのでしょうか…
0361nobodyさん2007/10/17(水) 19:28:20ID:???
>>359>>355
どこがどうバカだったかを書いといた方が他のバカを作らず親切かと思うんだが
0362nobodyさん2007/10/17(水) 19:40:39ID:bsL4C361
第三者が編集可能なリンク集を作っています。
登録用ページ(A.php)と、登録したものを表示するページ(B.php)と、
リンク先を確認&表示するページ(C.php)の3つがあります。(2chのime.nuのようなもの)
A.phpでURLをエンコードしたものをデータにいれ、
C.phpにGETでエンコード済みURLを渡すリンクをB.phpに表示し、、
C.phpで、受け取ったエンコード済みURLをデコードしたものを表示しようと思っています。
携帯対応のページなのでリファラが使えないので、
C.phpでのXSS対策の1つとして、
GETで受け取ったデータがエンコード済みのURLかどうかをチェックしたいのですが、
何か良い方法ありませんでしょうか?

それともう1つ質問なんですが、
URL登録が日本語ドメインだった場合、文字コードを考えないといけなくなるので面倒になります。
日本語ドメイン(2バイト文字ドメイン)自体使ってる人はあまりいないと思うのですが、
切り捨てるべきだと思いますか?
0363nobodyさん2007/10/17(水) 19:57:19ID:???
別にGETで渡す必要もないんじゃ?
SESSION使えば解決な気がしなくもない
03643622007/10/17(水) 20:33:44ID:bsL4C361
>>363
レスありがとうございます。
セッションは使ったことないので思いつきませんでした。
今からセッションについて調べてみたいと思います。
0365nobodyさん2007/10/17(水) 21:30:56ID:???
array_searchを使うメリットってなんなんだ?
0366nobodyさん2007/10/17(水) 21:57:34ID:???
>>365
簡単かつ高速に検索できる。
組み込み関数のメリットはそれに尽きると思うけど。
0367nobodyさん2007/10/17(水) 22:39:24ID:DjVZ7nbd
ご教授お願いします。
PHPで、ログファイルを開き、特定の文字列が含まれる
行番号を取得したいと考えています。
以下の記述で、サイズの小さいログファイルでは
正常に行番号が取得出来ましたが、ログファイルが大きくなると
ファイルの読み込み自体が出来ていないようでした。
fopen関数で大きなサイズのファイルを扱うにはどのようにすれば
良いでしょうか。よろしくお願いいたします。

$file = fopen("log", "r");

$i = 1;
while( $i < 10000 ) {

$line[$i] = fgets($file);

if ($line[$i] == $str) {
$start = $i;
} else {
}


if ($line[$i] == $str2) {
$end = $i;
} else {
}

$i++;
}
■ このスレッドは過去ログ倉庫に格納されています