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

【PHP】質問スレッド Part7

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん03/02/06 05:56ID:???
■ 本家
 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-10あたりに
072071103/03/22 03:18ID:ezlaWtaq
(ウェブ)ブラウザからファイルを選択というのは、
ファイル選択のためのブラウザからローカルフォルダの
ファイルを選択するということです。

フォームを使って、ファイルを選択すると、フルパスが得られますが、
そのまま、file_get_contents()に引き渡していいのでしょうか?
0721 ◆Kiss.FX29M 03/03/22 03:25ID:???
>>719
まぁね。
先程MLにも HELP! と書かれた投稿があったけど、
なんかかまってクレクレ金正日的瀬戸際投稿みたいだしなぁ。(w
0722commiter03/03/22 03:29ID:???
>719
それをnobodyで書く香具師も同じレベルだ罠
0723nobodyさん03/03/22 03:35ID:???
>720
>ファイル選択のためのブラウザからローカルフォルダの
「ファイル選択のためのブラウザ」って?

>そのまま、file_get_contents()に引き渡していいのでしょうか?
やってミレ、どうなる?phpがどういう場面で使われる言語かを理解し
ていれば聞くまでもない質問と思われ。
0724nobodyさん03/03/22 04:00ID:???
phpでスレッド使うにはどうすれば良いのでしょうか?
fsockopenが妙に遅いので並列化したいのですけれど。
072571103/03/22 04:02ID:ezlaWtaq
>「ファイル選択のためのブラウザ」って?
うまく言えませんが、たとえば、フォームで、
<input type="file" name="doc_file"/>
とすることによって、ファイルを選択できるようにすることです。
0726nobodyさん03/03/22 04:29ID:???
>725
$_FILES['doc_file']['name']でアップロードされたファイル名が取得できるから
それにphp.iniで設定してるテンポラリパスでフルパス保管してfile_get_contents()に渡せばok。
0727nobodyさん03/03/22 09:41ID:???
>>724
http://itb-tech.itboost.co.jp/phptips/view.php?fCID=21#71
こんなんでいいかな
0728PHP長所新車03/03/22 11:18ID:p2AmiiWs
昨日はどうもです。
さて、昨日はあれから上手くできて非常にハッピー気分で
家路についたのですが、
今日、またバイト先でテンヤわんやになっています。

はっきり言います。
.forwardを自動作成するスクリプトを作ろうと思っていました。

んで、昨日の方法で.forwardを自動作成するのには成功しました。
ただ、それをホームディレクトリに移すのに非常に困っています。

単純にパーミッションを777にすりゃいいやと思っていましたが、
ホームディレクトリを777にするのはセキュリティとかの面から非常に厳しいものなんでしょうか?
そこらへんの概念がまだよく分からなくて。

スクリプトの流れを説明すると、
フォーム入力(メールアドレス)
↓
ファイルオープン
↓
ファイル書き込み(フォームで入力したメールアドレス)
↓
ファイル閉じ
↓
ファイルを.forwardという名でコピー

こんな感じで考えてたんですが、
みなさんから見て、このスクリプトはどうなんでしょう。
クソなのは自分でも分かりますが汗

だれかご返答お願いします。
072968203/03/22 11:35ID:crW9s9K2
>726
ありがとうございます。成功しました。

$_FILES['doc_file']['name']を全く知りませんでした。
勉強不足ですね。
0730nobodyさん03/03/22 12:10ID:???
>>728
なぁ、PHPって誰の権限で動いてるの? 
0731PHP長所新車03/03/22 12:22ID:p2AmiiWs
>>730
私です
0732nobodyさん03/03/22 12:23ID:???
>>731
・・・何でそんなみょうちくりんな設定に?
0733PHP長所新車03/03/22 12:28ID:p2AmiiWs
>>732
すんません、質問の意味はきちがえてるかもしれません。
ていうか質問の意味がよくわからなかったりするような気がします。
いや、マジ初心者ですんません。」
0734PHP長所新車03/03/22 12:38ID:p2AmiiWs
権限てなんでしょう汗
0735nobodyさん03/03/22 12:39ID:???
phpinfoで調べれ。
0736nobodyさん03/03/22 12:52ID:???
PHP/CGIでsuEXECにすれば安全です
0737PHP長所新車03/03/22 13:01ID:p2AmiiWs
phpinfoのどこを見ればいいんでしょう。聞いてばかりですんません
0738PHP長所新車03/03/22 13:37ID:p2AmiiWs
>>736
お〜〜これつかったらいけそうですね。
0739nobodyさん03/03/22 13:39ID:???
>>734
PHP以前の話。LinuxなりUNIX関係の資料読んで出直して来い。
0740PHP長所新車03/03/22 14:19ID:p2AmiiWs
>>739
権限の意味はもち分かるよ。
ただ、>>730の権限の意味がわからそ
0741PHP長所新車03/03/22 14:24ID:p2AmiiWs
.forwardをホームディレクトリに作ろうとしたら、
ホームディレクトリのパーミッションを変更するしかないですよね?
0742PHP長所新車03/03/22 14:28ID:p2AmiiWs
でもレンタルサーバなんかの場合はホームディレクトリの
パーミッション変更できない場合も多々ありますよね。
そこんところどうなんでしょう。
0743nobodyさん03/03/22 15:34ID:???
あらかじめ、.forwardを作っておき、書き込み宣言を与えていればいいじゃんか。
0744PHP長所新車03/03/22 15:41ID:p2AmiiWs
>>743
なるへそ!!
頭イイ!!
0745PHP長所新車03/03/22 15:44ID:p2AmiiWs
てことは
ディレクトリのパーティションが700でも
その下のファイルが777だったら
そのファイルを書き換えることができるのですか?
0746PHP長所新車03/03/22 15:45ID:p2AmiiWs
間違えた恥
パーティション→パーミッション
0747nobodyさん03/03/22 15:45ID:???
>>743
なぁ、otherに書き込み権限のある.forwardなんて怖すぎないか?
0748PHP長所新車03/03/22 15:47ID:p2AmiiWs
>>743
それもそうじゃん!!ってか俺はあぽですか?
0749nobodyさん03/03/22 15:49ID:???
こんちわっす、2ch学園web板幼稚園の質問ですけど
教えて下さい。たのんまっす!
no int, hougaku varchar
テーブル名 hoge
no|hougaku
--|------
10|higasi
20|nisi
30|minami
40|kita
こんなテーブルがあったとします。
$houi = "kita"←仮にテーブルにある文字を設定します。
$sql = "select hougaku from hoge where hougaku = 'houi' ;";
$result = pg_query($sql) ;
if num_rows($result) !=1{
print ("そんな方角はありません。") ;
}
ここまで、$houi に代入された文字がテーブルに有るか無いか分かると思います
もしここで正しく$houiにkitaという文字がセットされたとしたら
noの40という数字が導きたいのだがどうしたらいいかわかりません。
続きのプログラムはどう書いていいのか分かりません。
教えて下さい。

0750nobodyさん03/03/22 15:53ID:???
こんちわっす、2ch学園web板幼稚園の質問ですけど
こんちわっす、2ch学園web板幼稚園の質問ですけど
こんちわっす、2ch学園web板幼稚園の質問ですけど
こんちわっす、2ch学園web板幼稚園の質問ですけど
こんちわっす、2ch学園web板幼稚園の質問ですけど
こんちわっす、2ch学園web板幼稚園の質問ですけど
こんちわっす、2ch学園web板幼稚園の質問ですけど
こんちわっす、2ch学園web板幼稚園の質問ですけど
こんちわっす、2ch学園web板幼稚園の質問ですけど
こんちわっす、2ch学園web板幼稚園の質問ですけど
0751nobodyさん03/03/22 15:54ID:???
$sql = "select hougaku from hoge where hougaku = '$houi' ;";
ですた,すまそ。
0752nobodyさん03/03/22 15:56ID:???
>>749
select id,hougaku from hoge where hougaku = 'houi'
0753nobodyさん03/03/22 15:57ID:???
>>749
マルチしてんじゃねえよ
SQLの問題。
select no,hougaku from hoge where hougaku = 'houi'
>>750
ウザイ
0754nobodyさん03/03/22 16:01ID:???
PHPの処理内に

書き込み宣言を与える
.forwardの編集
書き込み宣言をなくす

でいいような。
chmodが使えればだけど…
0755nobodyさん03/03/22 16:02ID:???
>>754
なぁ、パーミッションを誰でもほいほい書き換えられるならパーミッションの意味はないわけで。
0756nobodyさん03/03/22 16:09ID:???
>752ありがと
select id,ってのがちょっと分かんないんだけど?
Ssql = (" select no,hougaku from hoge where hougaku = 'houi'");
こうでいいっすか?
0757PHP長所新車03/03/22 16:14ID:p2AmiiWs
>>754
それだ!!!!!












>>755
それもそうだ・・・。鬱だ・・・。
0758nobodyさん03/03/22 16:16ID:A41eVY2R
★男はココを見るべし★女と金とサンプルムービー★
↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
http://www.pink-angel.jp/betu/linkvp2/linkvp.html
0759nobodyさん03/03/22 16:23ID:vlHFEXy6
初心者質問で悪いんですが
フォームタグや直接URLに付加したパラメータを取得して表示できません。
printでもechoでも駄目だったんですがどうしてなんでしょう?
取得して表示は単にprint $test; てな1行でいいんですよね?
anHttpdと組み合わせています。
0760nobodyさん03/03/22 16:23ID:???
できましたありあがと
0761PHP長所新車03/03/22 16:25ID:p2AmiiWs
今、ちょっと思ったんですけど、
.forwardって空白にしておいたら転送はされずに
.forwardファイルがない状態として扱われるんですかね?
0762nobodyさん03/03/22 16:26ID:???
>>759
質問の意味がわからんが、$_GET[test]、$_POST[test] じゃ、あかんの?
0763nobodyさん03/03/22 16:28ID:???
>>759
とりあえずその古い本なりサイトなりを見るのはやめるべきかと。
0764nobodyさん03/03/22 17:10ID:???
そうか、もう春休みだからか・・・
0765nobodyさん03/03/22 17:11ID:???
>>764
はいはい、おめでとう。
0766nobodyさん03/03/22 18:45ID:???
春厨がいっぱい
0767nobodyさん03/03/23 11:57ID:???
>>761
大抵の実装はそう。だけどそれはPHPの質問ではニャイ
0768nobodyさん03/03/23 15:23ID:Cga2txVh
PHP-4.2.1 を cgi モードを使ってるのですが、 header() が動作しません。
#!/usr/bin/php を削除して
$ php index.php
だときちんと HTTP ヘッダを書き出してくれるのですが。
何が問題なのでしょうか?
0769nobodyさん03/03/23 16:38ID:y8MzfBLq
最近PHPをはじめた者ですが、質問があります。
C++とかのクラスだと、privateなどの制限された空間があるから
インターフェースであるメンバ関数の実装の必要性はあると思います。
一方でPHPは保護された空間がクラスには存在しないので、
メンバ関数の必要性はC++などよりも薄まるような気がします。
ここにおられる方はかなりPHPを使ってらっしゃると思いますが、
クラスにメンバ関数を実装するポリシーはどのように持ってますか?
メンバ変数への単純な代入にもメンバ関数を実装しますか?
それとも一定の操作を行った後にメンバ変数に代入を行う必要がある場合のみ、
メンバ関数を実装しますか?
自分は少し悩んでたりします。
今後の参考にしたいので、ご意見をお聞かせください。

マニュアルを読んだ限りクラスにprivateなどの保護が無かったようなので、こんな質問です。
もしかしたらクラスに保護の概念はありますか…?
あったら、全くもって見当違いの質問です。スミマセン。
0770nobodyさん03/03/23 18:19ID:???
>>769
ぼちぼちと。
0771nobodyさん03/03/23 18:24ID:YYgYrLyX
mb_convert_encodingの"EUC-JP"との"UTF-8"との変換がうまくいきません。
変換したい文字は「連邦」です。
困ってます。
0772nobodyさん03/03/23 18:25ID:???
>>771
>変換したい文字は「連邦」です。

SJISと。
0773nobodyさん03/03/23 18:26ID:???
>>772
くだらねぇこと言ってんじゃねぇよ。
0774nobodyさん03/03/23 18:28ID:???
>>773
>>771さん、見苦しいです。
0775nobodyさん03/03/23 20:19ID:???
>>771
関係ないけど、GoogleAPIの人?
077677303/03/23 20:23ID:YYgYrLyX
>>772さん
SJISがどう関係してくるのですか?

「表」(UTF-8)がクエリで来て、
$query = mb_convert_encoding($query, "eucjp-win", "UTF-8");
結果は「表」(UTF-8)のままです。

「表示」だと文字化けせずに「表示」(EUC-JP)と変換されます。

しくしく。
0777nobodyさん03/03/23 20:30ID:YYgYrLyX
776は771です。スマソ
0778nobodyさん03/03/23 20:36ID:YYgYrLyX
>>775
こんにちは。

SOAPが原因じゃなくてmb_convert_encodingに何かあるんじゃないかと。

ひょっとして私は激しく既出な質問をしているのでしょうか。。。

mb_detect_encodingが判定をミスってるということもあるのかもしれませんが…
0779nobodyさん03/03/23 21:52ID:???
>>769
PHP5待ちの為、クセをつける為に使ってますが何か?
0780nobodyさん03/03/23 22:02ID:???
($query, "eucjp-win", "UTF-8")ここがちがう
0781nobodyさん03/03/24 00:16ID:???
mb_internal_encoding("UTF-8");
とかしてみたら?
0782nobodyさん03/03/24 01:36ID:x7gONe4m
>>780

1.UTF-8 → eucjp-win → UTF-8
2.UTF-8 → EUC-JP → UTF-8
3.ISO-8859-1 → eucjp-win → ISO-8859-1
4.ISO-8859-1 → EUC-JP → ISO-8859-1
5.mb_internal_encoding("UTF-8");エンコードなし

あいうえお
1.オケ
2.オケ
3.ダメ
4.ダメ
5.オケ

連邦
1.ダメ
2.ダメ
3.ダメ
4.ダメ
5.オケ

何か根本的に見忘れがある予感。。。

>>781
たしかにいいんですが、
DBがEUCだった場合同じ問題に出くわすはめになるです。

もう寝よ。
0783 ◆Kiss.FX29M 03/03/25 01:31ID:???
PHP-users ML ネタですが、スレ立て依頼出したら立っちゃった。
しかし、意外(?)と延びないのでこちらにも貼っておきます。

【特許】今では一般的なCookieによるセッション管理に関する特許が成立していた
http://book.2ch.net/test/read.cgi/bizplus/1048507777/
0784nobodyさん03/03/25 13:24ID:???
cookie&フレーム気持ち悪くて、使う気がしない厨キタ━━(゚∀゚)━━!!
0785nobodyさん03/03/25 13:37ID:CVcoKJbJ
>>769
>クラスにメンバ関数を実装するポリシーはどのように持ってますか?
>メンバ変数への単純な代入にもメンバ関数を実装しますか?

インターフェースになるメンバ関数とは getter, setter メソッドのことでいいのかな?
自分の場合ですが、(他の言語でもそうなのだけど)
そのクラスを利用する人がメンバ変数を参照する必要があるかどうかを基準に判断しています。

public なメンバ変数へのアクセスのみ実装しています。
クラスのインスタンスから直接メンバ変数にアクセスするようなコードはさけるため。
private なメンバ変数へは、外部から参照する機会少ないはずなので、
実装するメリットはあまりないと思います。

0786nobodyさん03/03/25 14:34ID:???
スレッドを切らないで&全角なら全角でごちゃ混ぜはやめて厨キタ━━(゚∀゚)━━!!
0787nobodyさん03/03/25 14:46ID:???
で、そんだけ偉そうなこと書いておいてそんな厨な質問でつか…
0788nobodyさん03/03/25 18:37ID:???
え〜と
hogehoge.php?a=0123
とすると
$aに0123がセットされますよね
某所で
hogehoge.php?=0123
となっているのを発見したのですが
0123は何処にセットされるのですか?
0789nobodyさん03/03/25 18:39ID:???
>>788
>$aに0123がセットされますよね
それ以前に古い知識です。それ。

$_GET[""]とかじゃないの?しらんけど。
0790nobodyさん03/03/25 22:21ID:uCxA2hMQ
プロバイダに間借りしてサーバサイドプログラムを
書きたいのですが、PHPをサポートしているプロバイダを
教えていただきたいと思います。
(プロバイダとの契約は個人ではなく企業向け契約です)

よろしくお願いします。
0791nobodyさん03/03/25 22:23ID:???
>>788
$_SERVER["QUERY_STRING"]

#うーん、自前でパースしないで済むので最近のプログラマは恵まれとるのぅ
もともとGETでURLに続けて送った文字列はサーバの環境変数(QUERY_STRING)に
そのまま放り込まれ、スクリプトの変数とかに代入したかったら自前で
パースするしかなかったんよ。
それがPHPとかは、Webプログラミング向きに変数への代入が楽なように
システム側が面倒見てくれるようになっている。
件の例だと$_SERVER["QUERY_STRING"]に、=0123という文字列が入ってる。
phpinfoを出力するスクリプト書いて、phpinfo.php?=0&a=1&b=2 とかして
どうなってるか見てみそ。
0792nobodyさん03/03/25 22:25ID:???
>>791
POSTで送ったXMLいじられて泣きそうになったこともあったけどな。
0793nobodyさん03/03/25 22:29ID:???
ISPでPHPSupportしてるとこってあったっけか?
0794nobodyさん03/03/25 22:36ID:???
>>793
ありますよ。
0795nobodyさん03/03/25 23:25ID:H32QaIGh
POST データを $_POST['name'] で参照する際に、
name に ' が含まれていると \' に変換されてしまいます。
これって去れないようにできないんでしょうか?
0796nobodyさん03/03/25 23:31ID:???
できます。
けど、' を含めないようにするべきかと。
079779503/03/25 23:37ID:???
すみません。
<input type = "text" name = "name" value = "hoge'hoge">
というときに $_POST['name'] に含まれている ' のことです。
実際に避けるにはどうしたらよいのでしょうか?
0798nobodyさん03/03/25 23:41ID:???
>>797
magic_quoteで検索すればなぜそうなるか分かるよ。
て調べてみたら、なんだか少ない... 綴り間違ってる!?
079979503/03/25 23:46ID:???
php.ini ですね。
ありがとうございました。
0800●かろりーたさん ◆JwU5Ac6TK2 03/03/25 23:47ID:BTZxooJl
800get
0801nobodyさん03/03/26 00:58ID:+RBAHMCa
>>795
正に同じところでぶつかったのでちょっと調べてみた。
php.iniのmagic_quotes_gpcをonにしてると自動的にそうなる。
元に戻すにはstripslashesでok。
0802nobodyさん03/03/26 01:46ID:???
>>796
POSTでもGET渡しでも、確かに要URLエンコードだけど
POSTなら多くの場合(大抵は797とかhiddenのパターンで、UAも普通のWebブラウザ)
は勝手にエンコードしてる筈だから、そこは余り気にしないでも良いかと。
技術者ならば裏の動作は知っとけ、には同意
0803nobodyさん03/03/26 02:22ID:???
>>785
回答、ありがとうございます。
>>private なメンバ変数へは、外部から参照する機会少ないはず
確かにそうですね。
言われてみればそういう機会はなかなか無いですね…。
0804nobodyさん03/03/26 06:09ID:tPbaW3mF
すれ違いだったらすいません。
PERL→PHPみたいに変換できるソフトやサイトありませんか?
そもそもPERLにできてPHPにできないなどそういったことがあるのはわかるんですが
アル程度できるものあったら教えてください、お願いします。
0805nobodyさん03/03/26 06:33ID:l1CVp/e0
>> ISPでPHPSupportしてるとこってあったっけか?
> ありますよ。

どこがPHP使えるのでつか?
0806nobodyさん03/03/26 07:18ID:???
>>804
Perl2phpで検索しる。
たしかRubyで書かれてるはず
0807nobodyさん03/03/26 07:39ID:tPbaW3mF
>>806
ぐぐってみたんだけどみつからないでつ。。。
0808nobodyさん03/03/26 07:59ID:???
>>807
当然海外も検索したよな?
0809nobodyさん03/03/26 09:06ID:???
>>805
plala 使えなかったっけ
0810nobodyさん03/03/26 09:59ID:???
いいかげん ML で qmail の話すんのやめてくれ…
0811nobodyさん03/03/26 12:26ID:tPbaW3mF
>>808
はい。
それらしきとこは404じゃないでつか?
0812nobodyさん03/03/26 22:06ID:???
・・・
0813nobodyさん03/03/27 00:38ID:???
>809
あとWebARENAとか。
法人契約といっても客に勧めるもんじゃなくて、自分で使うところなら
ちゃんと探せばいくらでもあるでよ。
0814nobodyさん03/03/27 04:12ID:???
>>809
ぷららはCGIサーバで使えるけど、サポート外。
0815nobodyさん03/03/27 04:22ID:Ya09dI5I
zru2.hoge.com
zru17.hoge.com
このような文字列があります。それを
zru2d.hoge.com
zru17d.hoge.com
このように数字の後ろにdをつけるにはどうすればよいのでしょうか?
0816nobodyさん03/03/27 04:36ID:???
hoge.comが固定だとしたら、
.hoge.com を d.hoge.com に置き換え。いっつしんぷる
0817nobodyさん03/03/27 04:49ID:Ya09dI5I
>>816
言われてみれば確かに
0818nobodyさん03/03/27 09:48ID:Ya09dI5I
>816
$server = preg_replace(".hoge.com","d.hoge.com",$server);

なんかうまくいかない。
Warning: Unknown modifier 'n'
0819nobodyさん03/03/27 09:57ID:???
>>818
$server = preg_replace("/.hoge.com/","d.hoge.com",$server);
0820nobodyさん03/03/27 10:27ID:???
スレ違いならごめんなさい。
Yahoo!メールと同様のwebブラウザで複数ユーザーが
メール(添付ファイル)を操作できるPHPスクリプトを
考えております。

サンプルスクリプト等から有る程度考えているのですが、
添付ファイルの操作と、メールの削除等が難しい・・・

なんか、良いものご存じでしたら、(サンプルスクリプト等)
ご指導ご鞭撻お願いできますでしょうか。
すいません。
■ このスレッドは過去ログ倉庫に格納されています