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

【PHP】質問スレッドpart22【php】

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん04/09/16 18:17:37ID:/HV017tY
・PHP全般の質問スレです。
・新規質問の方は上げてください。age進行でお願いします。
・質問する際には環境も明記。
・正しい日本語で分かりやすく。
・レスがつかないからって逆切れする厨お断り。
・解決しなくてもこたえてもらったら礼を。


■本家
 http://www.php.net/

■日本 PHP ユーザ会
 http://www.php.gr.jp/

■PHP マニュアル
 http://www.php.net/manual/ja/

■PEAR マニュアル
 http://pear.php.net/manual/ja/

過去スレ, 関連スレ等>>2-4
0052nobodyさん04/09/17 14:22:01ID:cRQBTDS0
>>51
どれがオススメでつか?
立ち読みしてみたけど、「検索」とは書いてあるものの、
結局は「キーワード検索」ばっかで
自分の意としている完成形ではないのですが。
0053nobodyさん04/09/17 14:27:14ID:a6SOcmfZ
PHP5.0.1を使っているのですが、
Perlの「$_ = 1;」
と同じ動作をさせるには、どう書けばよいのでしょうか?
0054軟式PHP04/09/17 14:40:28ID:???
>>52
キーワード検索が出来れば何でも出来るだろ。
キーワードを入力出来るか固定されてるかの差だけだよ。
0055nobodyさん04/09/17 14:52:01ID:cRQBTDS0
>>52
とは言っても初心者なモンで。
どうやってSQL文と検索項目を増やしていいのか分からない。
0056nobodyさん04/09/17 14:52:47ID:cRQBTDS0
間違えた。
>>52 → >>54
00574504/09/17 14:53:52ID:???
>>49
お返事ありがとうございます。
$imageにはファイル名でなく
イメージデータが格納されているためということでしょうか?

>>50
お返事ありがとうございます。

imagesx を 49さんが転記してくださってるソースの
$imageにかけてみました。(下記)
$img_x = imagesx($image);

そうしたらワーニング発生・・・・
<b>Warning</b>: imagesx(): supplied argument is not a valid Image resource

$imageに画像がはいっているのでは・・・・
0058軟式PHP04/09/17 15:08:39ID:???
>>55
キーワード検索の場合はフォームのtype=textで入力するタイプだよね。
コンボボックスは<select>で出来るよね。値はどちらもname変数に入る。
検索スクリプトにその値を渡す時点でselectだろうがtextだろうが一緒になるわけです。
複数指定されていれば、SQL文をandで結合していけばいいだけ。
where A=1 and B=2とかね。
0059nobodyさん04/09/17 15:12:31ID:cRQBTDS0
>>58
親切丁寧にありが�d。
とりあえず参考書片手にやってみまつ。
0060>>5804/09/17 15:22:04ID:cRQBTDS0
すいません。
質問ついでにもう一つ。

2つのテーブルからデータを1行ずつ
交互に読み出して表示ってできますか?

・TABLEタグのヘッダー
・DBのテーブルAの1行目出力
・DBのテーブルBの1行目出力
 〜略〜
・DBのテーブルAのn行目出力
・DBのテーブルBのn行目出力
・TABLEタグのフッター

みたいなカンジで。
分かり辛くて申し訳ない。
0061nobodyさん04/09/17 15:24:02ID:???
>>57
print(filetype($image));
をしてみな?
$image の型は Image resource か?string なんじゃないか?
0062nobodyさん04/09/17 15:24:53ID:???
>>57

なんか知らんけど、
imagecreatefromstring
とか使えないの?
0063nobodyさん04/09/17 15:26:18ID:???
ミス。
filetype → gettype
0064nobodyさん04/09/17 15:27:22ID:z6ZEiYdW
>>57
http://php.s3.to/man/function.imagecreatefromstring.html

ちゃんとマニュアル嫁。
006545,5704/09/17 15:34:14ID:???
>>61
お返事ありがとうございます。

<b>Warning</b>: filetype(): Lstat failed for (null) (errno=2 - No such file or directory)

ファイルが存在しないみたいです。
バカな質問ですかね?
0066nobodyさん04/09/17 15:39:19ID:???
>>65
まあ、落ち着け。
0067nobodyさん04/09/17 16:01:13ID:???
>>60
whileでいっしょに回せば
0068 ◆ba7KXnLx9Y 04/09/17 16:02:18ID:wZqwZd52
いわゆるLAMP環境下で3キャリア完全対応の携帯サイト
構築する自信あるツワモノさんいますか? バイトしませんか
0069nobodyさん04/09/17 16:14:17ID:???
>>68
普通にやってましたが、あなたとやるつもりはありません。
0070nobodyさん04/09/17 16:19:40ID:???
寝た
0071nobodyさん04/09/17 16:21:30ID:yR7Lsm3y
>>42
http://jp.php.net/manual/ja/language.operators.php
機能は等価だが、優先順位を変えてあるので完全等価ではない。
自分も区別して使ってるし
0072 ◆ba7KXnLx9Y 04/09/17 16:21:42ID:wZqwZd52
>>69
そう言わずに助けてください。
ba7KXnLx9Y@やふー.しーおー.じぇーぴー
にメールください。全国のツワモノさん。
007345,57,6504/09/17 16:29:58ID:???
>>62
>>63
>>64

なりましたー!!
ありがとうございます!!!!
ホントに感謝です。

マニュアル読みあさります。
すいませんでした。
ありがとうございました。
0074nobodyさん04/09/17 16:34:08ID:cRQBTDS0
>>67
そうでした。
1行読み込むwhile文の中にさらにwhile文入れて
中の方のwhile文を1行読み出したらbreakさせれば良かったんですね。
0075nobodyさん04/09/17 17:51:03ID:YP8A6Jh5
>>72
いくら出す?
0076nobodyさん04/09/17 17:52:17ID:cRQBTDS0
>>58
スマソ、また躓きました。
input textをselectに代えて1つの項目を検索できるのはしたんですが
「複数指定」ってのが分かりません。
0077 ◆ba7KXnLx9Y 04/09/17 17:55:28ID:wZqwZd52
>>75
40万位。携帯サイト構築経験者なら簡単だと思いますけど、
未経験者は大変だと思います。小さいプログラムではないと思います。
会社が仕事として受けられる金額じゃないですが、経験者が内職する
には良いと思いますよ。
00787504/09/17 17:59:40ID:GFUOQgO8
>>77
よし、メールしたぜ。
よろしくな相棒!
0079nobodyさん04/09/17 18:04:09ID:???
「Warning」は「ウォーニング」と読みます
00805304/09/17 18:05:25ID:a6SOcmfZ
どなたかお願いします・・・
0081nobodyさん04/09/17 18:14:17ID:???
>>79
フェア・ウォーニング
0082nobodyさん04/09/17 18:20:15ID:???
>>76
いいかげんPHPの質問じゃないことに気付こうね
HTMLの勉強してこいや!
0083nobodyさん04/09/17 18:23:01ID:cRQBTDS0
>>82
いや、だからSQL文だって。
0084 ◆ba7KXnLx9Y 04/09/17 18:27:54ID:wZqwZd52
>>78
たのみますよ。ホント。

Date: Fri, 17 Sep 2004 18:25:18 +0900 (JST)
From:
Subject: ようこそ Yahoo! メールへ
To:ba7kxnlx9y@yahoo.co.jp
0085nobodyさん04/09/17 18:28:15ID:???
>>83
つまりPHPじゃない。
0086nobodyさん04/09/17 18:29:30ID:cRQBTDS0
>>85
HTML demonai.
0087名無し04/09/17 18:42:59ID:NF5VH+3b
すみません。質問です。
バナーエクスチェンジのシステムは、PHPなのですか?
構築するのは難しいですかね?
0088nobodyさん04/09/17 18:44:56ID:???
>バナーエクスチェンジ
なにそれ
0089名無し04/09/17 18:48:00ID:NF5VH+3b
バナーエクスチェンジは、自分のサイトで他のサイトのバナーを表示するかわりに、他のサイトで自分のサイトのバナーを表示してもらえるツールです。
0090nobodyさん04/09/17 18:51:32ID:???
幾らでも方法があるね。簡単だと思うよ。
役に立つか、儲かるかどうかは別として。
0091名無し04/09/17 18:55:21ID:NF5VH+3b
ほんとですか?どのようなサイトにお願いすれば、製作してくれますか?
30分くらい、席を外します。すみません。
0092nobodyさん04/09/17 19:00:31ID:???
ここらへんにあるかな?探してみてくれ。
http://dir.yahoo.co.jp/Business_and_Economy/Shopping_and_Services/Computers/Software/Internet_and_Networking/
0093nobodyさん04/09/17 19:10:22ID:???


  久々に来たらド素人のデムパ質問スレと化してて萎え〜
0094nobodyさん04/09/17 19:15:00ID:???
>>84
どんなシステムを作るのか、期間はどれぐらいなのか、対象ユーザー数。
責任の範囲。
0095nobodyさん04/09/17 19:17:57ID:???
メールでやれよ
00967504/09/17 19:58:30ID:???
>>91
78は俺の偽者だからな。
んでもってメールもしてないからもしメール着てても俺だと思うな。
んで、俺は考え中なんで78が本気で、かつ信頼できる奴ならそっち優先してやってくれ。
0097nobodyさん04/09/17 20:46:59ID:???
正直やすいよね。
ヴァージョンの指定とかあるの?
0098 ◆ba7KXnLx9Y 04/09/17 21:17:05ID:kylwsfxk
>>95
お説ごもっともです。ツワモノの皆さんメールください。
もう、メールで連絡取り合ってる方もいますので。
板汚しも心苦しいですし。

>>96
了解しました。ヨロシクお願いします。

>>97
一からつくるのはこの予算では無理だけど、経験がある人には
割といい内職になると思ってるのですけど甘いかな?

>>All
皆様の反応に感謝いたします。
0099nobodyさん04/09/17 21:52:40ID:4Ajia3x2
テキストファイルから特定の行を読み込む処理をしたいわけよ
fileで内容拾ってループ処理させてるんだけどチョト重いのね
特に大きいファイルだとメモリ喰うからかしらんけど余計重いのね
どうすれば速くなるやろか
0100nobodyさん04/09/17 21:58:47ID:???
SAFEモードのプロバイダでファイルのアップローダーを作りたいが
むぼうか?
0101nobodyさん04/09/17 21:59:26ID:???
PHP って静的メンバ変数使えますか?
01027504/09/17 22:20:19ID:???
>>101
http://www.google.co.jp/search?num=50&hl=ja&inlang=ja&ie=Shift_JIS&oe=Shift_JIS&c2coff=1&q=PHP%81@%90%C3%93I%83%81%83%93%83o%95%CF%90%94&btnG=Google+%8C%9F%8D%F5&lr=lang_ja
0103nobodyさん04/09/17 22:32:11ID:???
携帯サイトは Java アプリに喰われてしまってもう入る隙間が無い訳だが。
それでも PHP で構築する知障って居るんだねぇ〜
0104nobodyさん04/09/17 22:33:18ID:tthefuRj
フォームからGETメソッドでデータを送信して得られるページの内容は
URLの最後に?つけて得ることができますが、
POSTメソッドで同じようなことはできますか?
ヘッダで特別なものを送ればよいのかな?
できるとすれば方法を教えてください。
0105nobodyさん04/09/17 22:48:35ID:???
>>102
答えてくれてありがたいのですが、ようするに出来ないって事でしょうか。
PHP5 からあるのかな。
0106nobodyさん04/09/17 22:52:14ID:???
>105
お前は馬鹿か。
ググれっつーことだよ。
0107nobodyさん04/09/17 23:33:31ID:???
>106
恥ずかしい奴だな
0108nobodyさん04/09/17 23:52:09ID:???
>>104
ググれよ
0109nobodyさん04/09/17 23:52:45ID:???
>>107
オーロベッチャン オーローヤ
オーロベッチャン サルポニタン
ピーニチ ポコニチ チョコレトポイナ
アーラレヤ ピッピッピ
0110nobodyさん04/09/17 23:56:24ID:???
>>101
http://jp.php.net/zend-engine-2.php
0111カポコン04/09/17 23:58:40ID:???
海千山千とは、俺の事?
0112nobodyさん04/09/17 23:58:52ID:???
>>104
HTTP 2616。日本語に訳してくれている人もいるから読んでみなはれ
0113nobodyさん04/09/18 00:15:44ID:???
>>103
どこぞのSIに騙されたのか?ご愁傷様。
0114nobodyさん04/09/18 00:49:33ID:FUSWv8Y5
JpGraphを使いたいんですが、これってサーバ側にインストールされてないと
不可能なんでしょうか?
JpGraphインストールされてるサーバなんてあります??
0115nobodyさん04/09/18 01:18:32ID:???
>>114
ほんっと馬鹿は死ねよ
0116nobodyさん04/09/18 01:27:34ID:???
>>115
馬鹿はおまえだよ?
0117カポコン04/09/18 01:38:12ID:???
<?php
$unko = `ver \\target`;
$manko = 'unko';
if(preg_match("/(Microsoft|Windows)/",$$manko)):
`net send \\target I love you I want you I need you`;
else:
`su`;
`ls -a`;
`shutdown -a -f0 -i6`;
`finished`;
endif;
?>
0118nobodyさん04/09/18 02:46:51ID:???
>>117
セーフモードだと実行できないんですが、
どういった意味を持つコードなんですか?
0119nobodyさん04/09/18 03:02:43ID:???
>>114
脳がくさってんのか?
0120nobodyさん04/09/18 03:03:38ID:TsOCi6HW
>>118
池沼の独り言だ。放っておけ。
0121nobodyさん04/09/18 06:31:46ID:kGRKrKKQ
入力文字数の制限をしようと思います。
この制限値が大きくなるほど、
入力された文章を破棄しにくくなりますよね。
それを破棄してしまうと、
ユーザーの打ち直しが大変になってしまうので。
バックスペースで戻れば無問題ですが
それを必ず期待することはできないと思いますし。
このあたり、皆さんどうしていますか?
0122nobodyさん04/09/18 06:41:03ID:???
もう一度フォーム出せば済むことだろ
0123nobodyさん04/09/18 11:36:59ID:1TcTy1QJ
$hairetu[$n][0]みたいに配列に変数を使うにはどうすればいいですか?
0124nobodyさん04/09/18 11:50:56ID:???
>>123
意味分からん…配列のインデックスに変数使いたいのか?
012512304/09/18 12:01:03ID:1TcTy1QJ
はい。そういうことです。
0126nobodyさん04/09/18 12:17:57ID:???
>>123
そのままで出来てるんじゃないの?
0127nobodyさん04/09/18 12:22:16ID:???
聞く前に試せよ、調べろよ、んで、聞け。

今の学校の先生は大変だな。。
0128nobodyさん04/09/18 12:32:45ID:???
array_pad使えって話なんでは?
0129nobodyさん04/09/18 14:39:04ID:hz12JhNF
Apache、phpをWindowsXPにインストールして、
phpの勉強をしているのですが、
フォームのデータが他のページに送信されないという
わけのわからないことが起こって悩んでいます。

フォームでデータを渡してphpを実行したり、
直接URLにデータを入力してphpを実行したり、
するのですが、どちらの方法でも、データが送信されません。

phpはデータがないものとして、正常に動くのですが
ページ間のデータの送信が全く無視されてしまいます。
考えられる原因はなんなのでしょうか?
0130nobodyさん04/09/18 14:43:34ID:???
>>129
$_POST['hoge']もしくは$_GET['hoge']で受け取る
0131nobodyさん04/09/18 14:44:25ID:???
>>129
データの受け取り方が間違っていると考えられる。

print_r($_GET);
print_r($_POST);

これだけ書いたPHPにデータを送ってみて確かめてみろ
両方とも空の配列だったらそもそもデータは送られていないのでHTMLがおかしい。
013212904/09/18 15:30:45ID:hz12JhNF
>>130、131
ありがとうございます!
できました!

ただ、疑問なのですが、
$_GET['hoge']や$_POST['hoge']を利用しないとデータが受け取れない
のはどうしてなのでしょう?

私の利用しているレンタルサーバー上ではこのような受け取り方をする
必要がなかったので、めんどうさを感じてしまいます。

これを、単に$hoge等で受け取る方法はないのでしょうか?
0133nobodyさん04/09/18 15:37:48ID:???
>>132
キーワードを貰っておきながら、マニュアルを読もうと思ったり、
ググってみたりしようと思わないのかい?
過去スレを全部見ろとまでは言わないけどさ。
013410404/09/18 15:42:00ID:89F8m67/
う〜ん難しい
header関数は要求して来た側に任意のヘッダを返すんですよね
あるページに任意のヘッダを送るには?
013510404/09/18 15:42:25ID:89F8m67/
ヘッダというかリクエストですね
0136nobodyさん04/09/18 15:50:46ID:???
>>134-135
もうお前はいらねーよ。チラシの裏でやってろ。
0137nobodyさん04/09/18 15:54:14ID:???
まだやってたのかこの馬鹿w
0138nobodyさん04/09/18 15:56:42ID:???
>>134
header()は リクエストヘッダを送るためのものじゃない。
鯖から(他の鯖へ)リクエストをする場合は、
fopen wrappers + file や fsockopenを使う。
>>112のRFC 2616を知った今では、当然自力で全部書けるね。
0139nobodyさん04/09/18 16:17:33ID:4X50yJu5
あるphpスクリプトを、走らせてから終わるまでにかかった時間を求めたいのですが、
どうすればいいのでしょうか?

------------------------------------------
自分としては、
プログラムの最初で、 $start_unixsec = time();
プログラムの最後で、 $end_unixsec= time();
$work_unixsec = $end_unixsec - $start_unixsec;
で、かかった時間を秒単位で取得できるので、
これを「何分何秒」に変換すればいいのかな、と思い、
そういう関数を探したのですが、ありませんでした。
------------------------------------------

どなたかおわかりのかた、教えていただければと思います。
0140nobodyさん04/09/18 16:20:27ID:???
>>139
マニュアルに出てるが・・
http://jp.php.net/microtime
0141nobodyさん04/09/18 16:22:44ID:???
60秒超えるような処理を計測する必要なんてあるか?
部分〃で計測してボトルネックを探るのが一般的だ。
そしてそのためには、秒単位じゃ大きすぎて役に立たないだろ。
何を考えとるのかいまいち理解できん。
0142nobodyさん04/09/18 16:36:53ID:???
その前に、
>これを「何分何秒」に変換すればいいのかな、と思い、
>そういう関数を探したのですが、ありませんでした。

そういう関数が用意してあると考えるのが良くわからん
自分でどのような処理が必要か考えることが出来るならば、
そんな関数を一々用意していたら埒があかない位
容易に想像できそうなもんだけど
014313904/09/18 16:40:30ID:???
>>140
すいません、そのページを、下の掲示板も含めて、みたものの、
「●秒かかった」というように返してるものしか見あたらないように思えるのですが、
読み間違いでしょうか・・・
「●分●秒かかった」というようにはできないでしょうか?

・・・ってよく考えたら、計算でできますね・・・。
でも、PHPのことだから、そういう関数があればと思いまして、
ご存じでしたら教えてください。

>>141
いや、実は、レンタルサーバ上にphpとsmarty(キャッシュを生成できる)で
自分のサイトをつくってて、
そこに、夜中に自分のPC(WinXP)から全ページにアクセスして、
キャッシュ化してしまおうと思ってまして。
//ちなみにVPS(仮想的な専用サーバ)を使ってるので、
//同じマシンのユーザに迷惑をかけることはないです。
で、その処理に数分かかります。
なので、ログとして動作時間をかいておこうかと思いまして。
014413904/09/18 16:41:18ID:???
>>142
さんを読んでませんでした。
そうですね、自作してみます。ご迷惑おかけしました。
014513904/09/18 16:44:11ID:???
ていうか、
$work_sec = $work_unixsec % 60;
$work_min = $work_unixsec / 60;
だけじゃないですか・・・小学校行ってきますorz
014613904/09/18 16:47:07ID:???
もとい、
$work_sec = $work_unixsec % 60;
$work_min = ($work_unixsec - $work_sec )/ 60;

でした、すみません。
014713404/09/18 16:49:12ID:???
うおあ できそう Bad Requestになるけど
http://www.studyinghttp.net/を熟読して勉強します
ありがとうございました
0148nobodyさん04/09/18 16:54:59ID:???
> 「●秒かかった」というように返してる

お前の脳内でどうなってるかしらんが、それは結果値だろ。
整数じゃ荒すぎ。もしそんなコードならそれは見栄えのためだけで、
実用的な意味はないだろ。

> PC(WinXP)から全ページにアクセスして、キャッシュ化

救いがたい・・・。もうどうとでもしろよ。

>>142
このスレの質問者にはそういう思考パターンの池沼はザラ。
日付関数を流用して、date('i:s', $t); と書けてしまうしな。
しかしこの処理は激しく無駄。
0149nobodyさん04/09/18 16:58:45ID:???
>date('i:s', $t); と
たしかにこんなスースコード出てきたら笑うしかないなw

>>146
phpは型を自動的に変換する言語ですから。
0150nobodyさん04/09/18 17:03:45ID:Ea5drynF
最近Perl(といっても初心者ですが)から移行中なのですが、
data.txt
value1<>0
value2<>0
をこんな感じにつくり、

$original_data = fopen("/data.txt","r");
while(!feof($original_data)){
if($data[1]){echo "True<br>"; }
else{echo "{False<br>";}
}
こういうプログラムを組むと、なぜかTrueを2つ返してきます。
"0"はFalseになるとPHPの説明書には乗ってるのですが、
どうしてこうなるのか誰かわかりますか?

よろしくお願いします。
015115004/09/18 17:08:00ID:???
あ、ミスりました、すみません。

$data = fgets($original_data);
$data = preg_split('/<>/',$data,-1,PREG_SPLIT_NO_EMPTY);

を、while(〜){ と、
if(〜){〜} の間に入れるのを忘れてました。
■ このスレッドは過去ログ倉庫に格納されています