4 :
nobodyさん :03/02/06 13:43 ID:pBmoRp6A
>>1 乙
PHP Accelerator使ってるヤシ居る?
おめ
6 :
nobodyさん :03/02/06 14:47 ID:Bs52Enxq
>>1 オツカレー
>>4 使ってるよ。体感的にも少し速くなるYO!
7 :
nobodyさん :03/02/06 17:50 ID:dlnHMTPR
PHPのUPロダを、サーバーにUPしたのですが、 いざ、ファイルをUPしても、UPされません。 考えられる理由はなんでしょうか?エラー表示は一切ありません。 よろしくお願いします。
>>7 自作だったらエラー処理を入れる。
他作だったらエラー処理を入れる。
9 :
nobodyさん :03/02/06 18:15 ID:VfZ4UWPV
携帯を使って検索をするサイトを作っているのですが、 PHPで変数を保持したままブラウザの戻ると 同じ処理をさせるためにはどうすればいいでしょうか? よろしくお願いします。
10 :
nobodyさん :03/02/06 18:18 ID:dlnHMTPR
>>8 エラー処理は入ってます。
で、ページもちゃんと表示されるんですが、
何事もなかったかのように。
うpされないのです。
>>8 PHPというよりHTMLの基本かな。
textだと<input type="text" name="hage" value="atama">で
atamaが初期値として表示される。他は調べてね。
>>9 そのスクリプトが間違ってると考えたことはありますか?
12 :
nobodyさん :03/02/06 18:43 ID:dlnHMTPR
>>11 変な文章だと思ったら、あなたのアンカーは間違っていますね。
スクリプトはLET’S PHPだが
13 :
nobodyさん :03/02/06 18:49 ID:oduZ5YC4
>>12 最新ヴァージョンですか
動かないときはとか見ましたか
14 :
nobodyさん :03/02/06 18:59 ID:dlnHMTPR
15 :
nobodyさん :03/02/06 19:03 ID:dlnHMTPR
更新が1月25日でしたので、すでにスクリプト事態が対処済みと 思っていじってませんが。
16 :
11 :03/02/06 19:08 ID:???
あ。ゴメン。ずれてるね。 画像の扱いのところしか見てないけど、ちゃんとエラー処理してあるみたいだね。 だとするとエラーが出てるのに表示されてないってことかも。 で、サーバの設定をエラー表示なしにしてみたら、画像Upしても完了したっぽく表示された。 でも実際にはアップされていないっと。 その可能性は? 事態->自体と返してみる。
17 :
nobodyさん :03/02/06 19:18 ID:dlnHMTPR
>>16 サーバーは、ぶっとびねっとです。
ですね。
18 :
nobodyさん :03/02/06 19:30 ID:oduZ5YC4
スクリプトの中の /* PHP4.1.0以上で動作しない方はこの行と↓の*/を消してください の事なんだが
ぶっとびのPHPはPOSTがだめぽ
20 :
nobodyさん :03/02/06 22:35 ID:dlnHMTPR
べただが、ホントにぶっとんでるぽ
Let'sだから動く、と考えるのはどうかな? SJISのソースだから海外のサイトでそのままで動かないなど、中身をいじれる人以外はお勧めしない。 ところで、ファイルのアップロードは禁止されているところも多いが、ぶっ飛びはどうなのだろう? その他に拡張子で弾く鯖もあるでよ(知っているところでは、サイズ0のファイルが出来る)。
つーかソースとphpinfoの結果ぐらい晒しとけ
23 :
nobodyさん :03/02/06 23:41 ID:JTyq7Q2u
>>23 は、はーどこあに飛んでしまう罠になってます(笑
>>24 激しくわろた。
さて。
いまだにregister_globalsなんて使ってる
>>23 がいるのはこのスレですか?
マジレスする気になりませんな。
>>23 GETの他にQUERY_STRINGってのもあるんです
?以降の文字列が入ります
記念カキコ
>>7 書き込まれていないのか、実際には保存されているけど読めないのか...
そのPHPがCGI版で、SuEXECで動いている場合、UPされたファイルが600とかになっていると
読めなかったりするわけで、そういうことだったりはしません?
30 :
23 :03/02/07 03:19 ID:???
>27なるほど、ありがとうございました。 しかもセキュリティ的には推奨されないのですね。 わたしはいまだにregister_globals=onを使ってます…。
>>30 >しかもセキュリティ的には推奨されないのですね。
って言うかそれ以前に普通に困る訳で。
32 :
nobodyさん :03/02/07 15:21 ID:QIpINAOJ
perlのjcode.plのように、 半角←→全角、ある文字コード←→別の文字コード と処理できるプログラムはありますでしょうか。
>>33 禿同
使ったことないけど、jcode.phpってのもあったんじゃなかったけ?
35 :
nobodyさん :03/02/07 18:19 ID:S3kEvKo0
>>33 ごめんなさい。
拡張モジュールをインストールしなければならないということは、
入っていない鯖だと使えないと言うことでいいんでしょうか。
36 :
nobodyさん :03/02/07 18:28 ID:07Ear52G
>>35 ええ。Windows版はphp.iniいじるだけで有効になりますけどね。
>35 せめて使っているPHPのバージョンと phpinfo()の結果書いてください。 phpinfoを表示して、mbstringという文字列があれば マルチバイト関連の関数使えます。
39 :
35 :03/02/07 18:49 ID:QIpINAOJ
ご助言ありがとうございます。 phpinfo() の結果、mbstringは使えないようでした。 コード自分で書いてみます。 お騒がせしました。
>39 自分で作るよりは>34さんが言ってるjcode.php使った方が。 場所はgoogleですぐに見つかる。
42 :
35 :03/02/07 20:48 ID:???
>>40 わざわざありがとうございます。
phpは初学なので、練習を兼ねて自作したいと思います。
jcode.phpも参考にさせて頂きます。
ありがとうございました。
43 :
nobodyさん :03/02/08 00:30 ID:T6cadMUH
winxpとphp4でmbstring使おうとしたんだけどphpinfo()でmstringがでなくて使えないよぉ [Windows extension] extension=php_mbstring.dll [mbstring] mbstring.language = Japanese mbstring.internal_encoding = EUC-JP mbstring.http_input = auto mbstring.http_output = SJIS mbstring.encoding_translation = On mbstring.detect_order = auto mbstring.func_overload =7 ini-distにこういう設定したんだけどダメなのかい?
>>43 >ini-distにこういう設定したんだけどダメなのかい?
php.iniにリネームして%WINDIR%へ。
ふーん。設定されてない変数を参照しようとするとUndefined index って出るみたいだね。 てか、検索したら前スレがヒットした(w
48 :
46 :03/02/08 02:06 ID:???
error_reporting をE_ALL & ~E_NOTICEにしたら表示されなくなりましたが こんな対処の方法で良いんでしょうか
49 :
nobodyさん :03/02/08 03:00 ID:T6cadMUH
>>44 >>45 extensiondir に extenstions フォルダを直接指定
ini-dist を ini にリネームして winフォルダに入れてアパッチョ再起動させたて phpinfo()みたら
見事mbstring表示されて使えるようになりました!
ありがとうございました
>>48 実を言うと板違いに近いスレ違いなんだな。
>>46 を見てPHP初心者スレが出来ているのを思い出したよ。
PHPの場合は設定されていない変数は数値なら0扱いされると思うけど、
Cを少しでも齧っていたら恐ろしくてそんな事はしないだろうな。
で、作者が適当に初期化されることを前提に作っていて、問題なく
動くのならそれでいいんじゃないの?
不安だったら作者に聞いてくれ。
51 :
49 :03/02/08 04:48 ID:T6cadMUH
mbstring使えるようになったのはいいんだけど mbstring系関数がことごとく失敗するんよ //半角文字を全角文字に変換 $text="モトノテキストハハンカクデス"; $a = mb_convert_kana($text, "KV"); echo $a; 結果: モトノテキストハハンカクデ .//半角文字が全角に直ってない & 最後の1文字がかけている ほかの関数も挙動がおかしいです こんなもん?
>>51 どうせ、php.iniの[mbstring]辺りの設定をまったく触ってないんだろ。
少しはマニュアル嫁よ
>>54 おっと...失礼。
じゃ、スクリプトがSJISになっているに1票
ついでに53の分も加えれ。
56 :
51 :03/02/08 20:24 ID:2eI5VkdS
ini ファイルを以下のように変更
[mbstring]
mbstring.language = Japanese
mbstring.internal_encoding = eucjp-win
mbstring.http_input = auto
mbstring.http_output = eucjp-win
mbstring.encoding_translation = On
mbstring.detect_order = auto
&スクリプトを EUC で保存
でうまくいきました
元テキスト モトノテキストハハンカクデス
結果 モトノテキストハハンカクデス
>>52 >>53 >>54 ありがとうございました
ハァ ・・・ 昨日から寝てません 寝させてください・・・・
57 :
nobodyさん :03/02/09 00:41 ID:oxfaG69f
phpって普通にCGIとしても使用できると聞いたのですが、
php使えないサーバーで、phpをcgiみたいに使うことは可能なのでしょうか?
それと、海外で見つけたphpのスクリプトのreadme見たら、
Send a mail to
[email protected] , and tell me where you are using the script (url)
って書いてあったんですけど、メール送らなきゃいけないんですよね〜〜。
いやだな〜〜。
裁判国だから、ちょっとでもスクリプト利用でミスあったら
(copyright消しちゃったとか)
訴えられそうな気がするのは僕だけですか?
59 :
57 :03/02/09 00:46 ID:oxfaG69f
無理ですか…。 あと、PHPってMySQLとセットになって配布されているのをよく見かける んですが、MySQLについてのある程度の知識ないと、 そのPHPを利用するのって厳しいですか?
60 :
nobodyさん :03/02/09 00:49 ID:xKN3ALI7
>>57 CGI版のPHPが入っているか、自分で入れれば使える。
あと、報告したくないなら、使わないことだぁね...
61 :
57 :03/02/09 00:57 ID:oxfaG69f
>>60 共用サーバでは無理と考えてよろしいでつか?
62 :
nobodyさん :03/02/09 00:59 ID:xKN3ALI7
>>61 shellが使えてコンパイル環境があれば可能
>>62 問題はどうやって呼び出すかだ。シェルスクリプトでも書きますか。
64 :
62 :03/02/09 01:01 ID:xKN3ALI7
あ、あとは、その共用サーバーと同じ環境でコンパイルしたものをアップするとか...
65 :
nobodyさん :03/02/09 01:02 ID:xKN3ALI7
>>63 ふつうに#!/home/hoge/bin/phpとかで呼び出せばよいのでわ...
>>65 あら、phpも#コメントつかるんだ。勉強になった。
>>66 コメントじゃなくて、CGIとして動かす場合に必要なパス指定だと思うが…。
>>67 そんなunixのご都合な記述があってもシェルスクリプトやPerlスクリプトがエラーなしに動くのは
#が行コメント開始文字に他ならないからじゃん。
よって#以降はスクリプトにはただのコメントにしか見えないと。
>>67 >CGIとして動かす場合に必要な
誤解がありそうなので言っておくと
#!〜
はWindowsの関連付けのようなもの。「私を実行ファイルとして実行しようとした際は、#!で示したプログラムに私を渡してくださいね。」の意。
UNIXでネイティブコードとスクリプト言語の差がないと言われるのはこの機能のおかげに他ならない。
#がコメントなのはいいんですが、phpが#コメントを使えるというのはちゃいます。 あくまで、CGIスクリプトで#をコメントとして使えるにすぎません。 で、#!でphpに渡してしまえばそれ以降はphpに渡されるので、#はコメントとしては認識されません。
知ったかがいるな
PHP は # もコメントと認識すると思ったが・・・
>>73 phpスクリプトの部分(<?php ?>で囲まれた部分)では認識するね...
その外ではhtmlだから認識しない...だから
#!/usr/bin/php
# php script ←こんな感じではコメントになってくれない
という意味で。
ユーザーフォルダでphpを使われるのを抑制するにはどうしたらよいのでしょうか。 httpd.confでphp利用可能なディレクトリを制限したいのです。
77 :
nobodyさん :03/02/09 22:10 ID:0o/ef1ba
web上からホームページを更新するシステムを 考えています。 ユーザーの認証にlinux用の認証IDとPassを利用したいのですが、 見当もつきません。。。 (passの変更もweb上から行いたいです) ご存じの方がいらっしゃいましたら、ご教授願います。 ちなみに環境は、赤帽7.3にApache+PHP4です。
webStudioって使ってる人いる?
>>77 DAVじゃだめダブ?そういうのじゃない?
>>76 php.ini のengine off
>>78 マニュアルみてもそれっぽいのが見つからなかった。興味あるのでポインタを教えて。
>>79 使ってるよ
>>79 使ってる。でもローカルデバッグでしか使ってない。
83 :
77 :03/02/10 01:33 ID:qOpouPwX
>>77 crypt 過去ログに俺が書いたのがあるからみれば?
85 :
nobodyさん :03/02/10 21:05 ID:4/n3nhGu
VS.Netで動くVisualPerlのようなVisualPHPってないですか? ZendStudio買ったがクソでした。
86 :
nobodyさん :03/02/10 23:35 ID:qOpouPwX
>>84 criptは暗号関数なんですね。
これからじっくり逝こうと思います。
ただ、システムのpasswdを変更するのは無いのですね・・・
ショボーッm
>>87 ショボーッm = ショボーンのミスです。
失礼しました。
ショボーッm
90 :
nobodyさん :03/02/11 09:06 ID:0/ucRW2t
PHPにはPerlのmap(配列やスカラへの一時的な処理)みたいな 関数ってありますか?
関数作ったから金くれる?
>>91 foreachとコールバック関数で何とかなりそうだな。
ショボーッm 気に入った(・∀・)
>>92 ファイルオープンしてあげるしかないでしょ。
root権限で。
なので、
# cp /usr/local/bin/php /var/tmp/php
# chmod 4511 /var/tmp/php
として、スクリプトの最初の行に
#!/var/tmp/php
としてあげないとだめでない?
php4.3.0でsuExecってどうなの?できるようになったんでしょ?
ショボーッm カックイイ
>94 suExecを勉強してから出直せ
PHPで作成した自作スクリプトをGPLで配布する上で気をつけることはなんですか? すれ違いならすんません。
>>97 自分の著作物もしくはGPLになっているコード以外が一切混入されていないこと。
99 :
nobodyさん :03/02/12 18:56 ID:jx2NZW7Q
PHP4.3.0でバンドルされているGDを利用したいんだけど、configureすると下記エラーが表示されます。 PHPをconfigureする前に、jpegとかpngのライブラリをごにょごにょっと作成する必要があるのでせぅか? ご指導下さいませ。 □configure ./configure --enable-memory-limit --with-pgsql=/usr/local/pgsql/ --with-apxs=/usr/local/apache/bin/apxs --enable-trans-sid --enable-mbregex --enable-mbstring --enable-mailparse --with-gd --enable-zend-multibyte □エラー If configure fails try --with-jpeg-dir=<DIR> configure: error: PNG support requires ZLIB. Use --with-zlib-dir=<DIR> □環境 Redhat7.2+Apache1.3.27+PostgreSQL7.3.1+PHP4.3.0
100 :
nobodyさん :03/02/12 19:00 ID:HLDH7cxU
101 :
ど素人です :03/02/12 19:42 ID:7ngtwjn2
すいません。 CSVやtxtファイルの内容を、PHPで表示する時に日本語が 文字化けするのですが、何故なのでしょう。 PHPはshift_jisにしています。 euc-jpにした場合も化けました。
>>99 RHL7.3だと
--with-jpeg-dir=/usr/lib --with-zlib
の追加でよかったよ。
MySQLを使わないなら、--without-mysql も追加しとけ。
>>101 コード書く前に南南西のほうを向いてお祈りした?
慣れないうちは信心が足りなくて、よく化けるよな。
それから、csvやtxtファイルの文字コードは何なの?
104 :
101 :03/02/12 19:55 ID:7ngtwjn2
>>103 お祈り忘れてました…。
PHPとテキストファイル、共に、
シフトjisか、eucで保存の両方を試してみました。
保存時に、改行コードをCR、LF、CR+LFのどれかを
指定可能なエディターだったので色々試してみましたが、
駄目で、分けわからなくなりました。
>>104 外部ファイルを読んだときだけ化けるの?
例えば
print "化けないでください";
は化けないの?
108 :
nobodyさん :03/02/12 21:13 ID:bqUNAH+9
addr.datに利用者のIPを入れ、 同じIPが以前に書きこまれていた場合は書きこまない別の処理をやりたいのですが、 ファイルの中身に同じモノがあるかをチェックするにはどうすればよいでしょう。 $ip = $_ENV{'REMOTE_ADDR'}; if (!in_array($ip,file("addr.dat"))){ } としたのですが、うまくいきません。 同じようにarray_searchを利用してもうまくいきません。 どうすれば、良いでしょうか。
109 :
99 :03/02/12 21:14 ID:jx2NZW7Q
>>102 多謝!無事に configure できました!
早速 GD であそんでみまする。
>>109 夢壊して悪いが言うほどたいしたことも出来ないのでそのつもりで。
>すいません。 >CSVやtxtファイルの内容を、PHPで表示する時に日本語が >文字化けするのですが、何故なのでしょう。 ブラウザで開くといつも文字化けするのは、文字コードの指定をしてないと思われ。 HTMLのメタタグでいいから指定してやって。 または、スクリプトのコードとテキストデータのコードが異なると、 片方を正常に表示させるために、もう片方が化けるという罠。
>>108 ファイルオープンして変数にぶち込んで比較ってのが確実と思われ。
>>108 これでもだめ?
$ip = $_ENV{'REMOTE_ADDR'};
$iplist = file(file("addr.dat");
if (!in_array($ip,$iplist)){
}
まあ、仕様の問題だけど、漏れは
ファイル形式をIPアドレス,最終書き込み時刻 とかにしといて
IPアドレスをキーに最終書き込み時間を値にしてやれば、
結構いいような気もする。
$fp=fopen(...)
while(list($key,$value)=fgetcsv($fp,1024)){
$iplist[$key]=$value;
}
$ip=...
// リストに名前がない、または3600*5経過してたら
if( !isset($iplist[$ip]) || ($iplist[$ip] < 3600*5)){
write
}else{
だめー
}
こなかんじ
>>108 file()って改行記号が付いたままだから一致しないんでねぇの。
116 :
108 :03/02/13 00:06 ID:???
>>113 thanxです。
fgetcsvでやります。
ありがとうございました。
117 :
101=104 :03/02/13 00:28 ID:qFqQzGYD
>>103 >>105 >>106 >>107 レスありがとうございました。
PHP、csv,txt全てのファイルをEUCで保存して、
改行コードをLFにしたら、日本語表示できました。
どうもファイルうp時に、バイナリモードにして
いなかったのが原因のようです。信心が足りませんですたw
>>105 さん
コードは、PHPマニュアルのサンプルコードを
まんま真似して書きましたw
>>106 echoやprintで表示した場合も化けたり化けなかったりでした。
>>107 さん
やってみたら面白かったです。色々練習します。
>>117 テストはローカルでおねげぇします...
DBに登録させる文字で、セキュリティ上問題になりそうな文字を 自分でリストを作って変換させようと思うんですが どういう文字をリストに加えればいいのでしょうか? またその変換後の文字自体を入力されると戻すときに困るのですが 変換後の文字はどういったものがいいのでしょうか?
120 :
へたれ :03/02/13 13:06 ID:EMswGLUv
ただいまPHP勉強中「へたれ」と申します。 お知恵をお貸しいただけたら助かります。 マルチパート(ENCTYPE="multipart/form-data")のフォームから 画像のアップロードとテキストフィールドに入れた文字を サブミット後確認画面を出し、確認。 その後、そのデータをHTMLで保存するプログラム作成中です。 確認画面で画像の確認は出来たんですが、テキストフィールドに入れた日本語が表示されません。 マルチパートでテキストデータを扱うには何か特別な処理をしないといけないのでしょうか? お助けください。
>>120 mbstring とかが自動でやってくれるとこを自分でやらんといかんです。
>>119 DBに登録するのにセキュリティ上問題になるような文字なんてものは存在しないと思いますよ
123 :
へたれ :03/02/13 13:54 ID:EMswGLUv
>>121 早速レスありがとうございます。
>mbstring とかが自動でやってくれるとこ
とは、mb_convert_encodingで
文字コードを変換しないといけないということでしょうか?
>>122 え?そうなんですか?
例えば掲示板での投稿をチェックなしにDBに入れても大丈夫なんですか?
ブラクラとかデザインが崩れるとかは置いといて。
125 :
nobodyさん :03/02/13 14:57 ID:E3277Fmx
>>124 DBとは関係ない。
htmlspecialcharsとかいう長い名前の関数を使え
127 :
nobodyさん :03/02/13 15:36 ID:KY1XuPBn
チェック無しで問題ないわけねー 入力された文字は徹底的にチェック&エスケープ
\とか%とかマズかったんじゃなかったっけ?
普通に ; もマズイと思うんだがどうよ?
>>133 見たつもりだったんですが、書いてありますね気づきませんでした。
どうもありがとうございます。
>- mysql_escape_string calls MySQL's library function of the same name,
> which prepends slashes to the following characters:
> NUL (\x00), \n, \r, \, ', " and \x1a.
あとmagic_quotes_gpcがonのときはstripslashesした後に
上のを置き換えればSQL的には安心ですね。
\x1aってのは初耳です。
135 :
nobodyさん :03/02/13 18:53 ID:oTbfkKXC
SESIONってPHP4が利用出来る 無料スペースのサーバでもなかなか使えないですか。 サービス概要やFAQあたりを見ても 特に書いていないところが多いですが 今すぐ、使えるかどうかが判別出来る方法はあるのでしょうか。
136 :
nobodyさん :03/02/13 18:53 ID:oTbfkKXC
SESSIONってPHP4が利用出来る 無料スペースのサーバでもなかなか使えないですか。 サービス概要やFAQあたりを見ても 特に書いていないところが多いですが 今すぐ、使えるかどうかが判別出来る方法はあるのでしょうか。
DBに入れるのはなんでもいいわな^^;;; って、それはともかくとして、SQLインジェクションとかで検索すれば概ね調べられると思われ
>134 またライブラリ厨とか言われそうだけど(苦笑 PEAR DB使ってるならSQLにつっこむ変数を $quote_user_id = $db->quote($userid); として $sql = "SELECT * FROM userdata WHERE userid = $quote_user_id"; としてもいいと思う。 使ってるDBにあわせてクォートしてくれるよ。
PHP4.2.3 RedHat7.3 PostgreSQL7.2.3 でmb_send_mailでDBから本文を取ってメールを配信しています。 配信の際に改行を\nで送っていましたが、一部のメーラで改行されないとの 事だったので、本文の改行を\r\nに変更しました。 ですが、今度は改行が2回されるものがでてきました。 この問題が解決できないなら派遣を今月できるとおどされています。 どなたか助けてください。 首になったら家族が…。
141 :
140 :03/02/14 08:44 ID:???
$data[message] = ereg_replace("\n","\r\n",$data[message]); で変換しています。
元文(DB内本文)で改行が\r\nの奴が混じっているとか?
143 :
140 :03/02/14 11:09 ID:???
>>142 では
$data[message] = str_replace("\r", "\n", str_replace("\r\n", "\n", $data[message]));
こうすればOKでしょうか?
144 :
nobodyさん :03/02/14 11:10 ID:cWyUFhz/
>142 だとすると、先に改行コードを統一すればいいのかな? >140 がんばれ。 人ごとに聞こえないし応援してる(苦笑>今月できる
$data[message] = preg_replace("/[^\r]\n/","\r\n",$data[message]); こんなんは?
147 :
140 :03/02/14 13:59 ID:???
改行コード統一してみました。 手元にあるOutlookも全て試してみました。 あとは配信をまつのみです。 皆さんありがとうございました。 配信終わったら、戻ってきます。
148 :
b :03/02/14 14:31 ID:???
★あなたのお悩み解決致します!!
●浮気素行調査
彼氏、彼女、妻、夫の浮気を調査致します!!
●盗聴器盗撮機発見
あなたの部屋に誰かが仕掛けているかも!!
●行方調査
行方不明になっている家族の消息を調査致します!!
●電話番号から住所割り出し
一般電話、携帯から住所を割り出し致します!!
●ストーカー対策
社会問題ともなっているストーカーを撃退致します!!
その他人生相談からどんなお悩みでも解決いたします!!
24時間受付 090−8505−3086
URL
http://www.h5.dion.ne.jp/~grobal/ メール
[email protected] グローバル探偵事務局
149 :
nobodyさん :03/02/14 15:36 ID:BhC5+mMz
昔どっかで拾ってきたPerlのスクリプト、file.htmlの中の 『%_(変数名)_%』を$(変数名)に変換して、その変数の値を 反映して出力するものなんだけど、簡易テンプレートスク リプトとしてかなり重宝してた。でも、勉強不足でその構造 はわからずじまい。 open FI, "file.html"; foreach(<FI>) { s/%_(\w+)_%/${$1}/eg; print; } close FI; ・・と、これをPHPにしたいんだけど、なんとかならない だろうか?
150 :
超初心者 :03/02/14 15:59 ID:b6/Y7U2L
HTMLとPHPを別にしてCGIのテキストカウンターの様に使いたいのですが HTMLのソースにどの様に記述すれば良いのでしょうか? 上手く表示できなくて困ってます。 PHP単体にアクセスすると動いているのでPHPには問題ないのですが… お願いします。
151 :
nobodyさん :03/02/14 16:23 ID:ShDZP0Vn
>>150 AddType application/x-httpd-php .html
152 :
超初心者 :03/02/14 16:27 ID:b6/Y7U2L
>>151 さん
それはヘッダーに記述すればよいのですか?
153 :
nobodyさん :03/02/14 16:40 ID:ShDZP0Vn
154 :
nobodyさん :03/02/14 16:43 ID:mrfczmhq
>>150 <?php
require_once("counter.php");
?>
今日のヒット数は<?php print(getcount()); ?>です。
カウンタの仕様は知らんけどな。
156 :
超初心者 :03/02/14 17:18 ID:b6/Y7U2L
>>151 さん
有難う御座いました。
お陰で使える様になりました。
>>149 <?
$FI = file ("file.html");
foreach($FI as $line) {
$line = preg_replace("/%_(\w+)_%/e", "$$1", $line);
echo $line;
}
?>
/eがポイント
158 :
nobodyさん :03/02/14 18:31 ID:BhC5+mMz
>>157 いった!。ありがとう!
こういうやり方って一般的なのかしらん?
160 :
nobodyさん :03/02/14 19:05 ID:BhC5+mMz
>>157 なるほどぉ、/eっていうのは、preg_replace()のみに使える
PHPコードとして評価させる修飾子だったんですね。
これで例えば配列とかも置換できちゃうだろうか?
%_ARRAY[TEST]_%とか・・・。
試してみよう・・・正規表現かぁ。
161 :
nobodyさん :03/02/14 19:41 ID:QRPnIrmq
>>159 1と2両方でphpinfo()して
sessionの項目を見比べる。
>>161 見比べました。
一点だけ違いがありました。
不具合のある方のphpinfoには、
HTTP_CACHE_CONTROL max-age=0
てのがありました。
関係あるのですか?
163 :
nobodyさん :03/02/17 21:44 ID:xAesCnLV
GDで東風フォントを使って日本語を描画したいのだけれど、文字が化けるサイズと そうでないサイズがあります。 (例えば10,11,12,13ポイントだと化けて、14ポイントだと綺麗に表示されるとか) なにが原因なのでしょうか? OSはFreeBSD5.0で、PHP,GD,FreeTypeともに現状の最新バージョンです。
>>163 化けるって?
文字化けって言うのは文字コードの違いによって意図しているのと違う文字が表示されてしまうことだけれど。
165 :
163 :03/02/17 22:50 ID:xAesCnLV
>>164 失礼しました、化けるという表現はおかしいですね。
文字の原型をとどめない意味不明な画像が表示されてしまいます。
最近PHPの勉強を始め、その中で下記のようなものを良く見かけるのですが、 $hoge->hoge(); 見た感じ、Perlでの矢印演算子やパッケージ内の関数指定とは 微妙に違うっぽいのですが、これは一体何をやっているんでしょうか。 簡単な例とかでも良いのでよろしくおながいしますです。
参照。
>>166 インスタンスのメソッド呼んでる。C++の->と似たようなもの。(感覚的には
function tashizan( $a, $b ){ return $a + $b; } function hikizan( $a, $b ){ return $a - $b; } $tasu = $this->tashizan( 10, 5 ); $hiku = $this->hikizan( 10, 5 );
>>169 > $tasu = $this->tashizan( 10, 5 );
> $hiku = $this->hikizan( 10, 5 );
$tasu = tashizan( 10, 5 );
$hiku = hikizan( 10, 5 );
これとどうちがうの?
171 :
166 :03/02/18 05:20 ID:???
みなさん親切に有難うございます、これでゆっくり眠れそうです。
>>170 と、言うかコンパイルエラーでそうだけど。
173 :
nobodyさん :03/02/18 14:47 ID:2X2nTsk2
セッション勉強中のものです. PHP Version4.2.2では動くんですが4.0.6では動きません. ------------------------------- <?php ini_set('session.use_cookies', 0); session_start(); if (isset($HTTP_SESSION_VARS['count'])) { $HTTP_SESSION_VARS['count']++; } else { $HTTP_SESSION_VARS['count'] = 1; } ?> <a href='<?php echo $HTTP_SERVER_VARS['PHP_SELF'] ."?" . SID?>'> <?php echo $HTTP_SESSION_VARS['count'] ?> </a> -------------------------------
174 :
173 :03/02/18 14:48 ID:2X2nTsk2
どこがいけないのでしょうか?PHPの設定はこんな感じです? ------------------------------- Session Support:enabled session.auto_start:Off session.cache_expire:180 session.cache_limiter:nocache session.cookie_domain:no value session.cookie_lifetime:0 session.cookie_path:/ session.cookie_secure:Off session.entropy_file:no value session.entropy_length:0 session.gc_maxlifetime:1440 session.gc_probability:1 session.name:PHPSESSID session.referer_check:no value session.save_handler:files session.save_path:/tmp session.serialize_handler:php session.use_cookies:Off ------------------------------- よろしくお願いします.m(_ _)m
>>174 <a href='<?php echo $HTTP_SERVER_VARS['PHP_SELF'] ."?" . SID?>'>
session.name:PHPSESSID
SIDとPHPSESSIDどちらかに統一してみれ。
176 :
nobodyさん :03/02/18 16:16 ID:TGuboxDy
すごく、初心者な質問なんですが <form action="test.php" method="post"> <input type="hidden" name="action" value="regist"> <input type="submit" name="submit" value="regist"> </form> <?php if ($action == regist){ print("<p>hoge</p>\n"); } ?> と記述したtest.phpのSUBMITボタンを押しても<p>hoge</p>が出てきません。 なにが足りないのでしょうか?
>>176 if($_POST["action"] == "regist")
178 :
176 :03/02/18 16:36 ID:???
ありがとうです。すっかり忘れていました。 PHPって楽しいでふ。
179 :
173 :03/02/18 18:47 ID:2X2nTsk2
>>175 さんどうも!
<?php
ini_set('session.use_cookies', 0);
session_start();
if (isset($HTTP_SESSION_VARS['count']))
{
$HTTP_SESSION_VARS['count']++;
}
else
{
$HTTP_SESSION_VARS['count'] = 1;
}
?>
<a href='<?php echo $HTTP_SERVER_VARS['PHP_SELF'] ."?PHPSESSID=" . $PHPSESSID ?>'>
<?php echo $HTTP_SESSION_VARS['count'] ?>
</a>
と変えたんですがリンク先が[test.php?PHPSESSID=]と空になります…
$PHPSESSIDでいいんですよね?
なんもでないのでSIDにしてみました.
スクリプト自体に間違いはないんでしょうか?
またおねがします.
>>179 すまん、最近そこら辺り使わないので、間違いや。
確か、定数SIDには"PHPSESSID=............"が入ってるはずだ。
それと定数PHPSESSIDにセッションIDが入る。
ので、
<a href='<?php echo $HTTP_SERVER_VARS['PHP_SELF'] ."?" . SID?>'>
でOKの筈なんだけど、定義済み定数ってなんとなく不安定?
<a href='<?php echo $HTTP_SERVER_VARS['PHP_SELF'] ."?PHPSESSID=" . $PHPSESSID ?>'>
$PHPSESSIDじゃなくてPHPSESSID ($無し)
ショートタグが可能なら、
<a href="<?=$HTTP_SERVER_VARS['PHP_SELF']?>?PHPSESSID=<?=PHPSESSID?>">
と書いて味噌。
<a href="<?=$HTTP_SERVER_VARS['PHP_SELF']?>?<?=SID?>">
うーん、こんな書き方してたっけかなぁ...
181 :
173 :03/02/19 01:04 ID:oUZRirLt
>>180 さんご返事ありがとうございます!
PHPSESSID($無し)だと?PHPSESSID=PHPSESSIDと
もろそのままに出ちゃうんですよ.
んで,SIDのほうはちゃんと
?PHPSESSID=b31b5948f0a507ac51f24b944d130d07
というIDが生成されるんですが全然カウンターが増えないんですよ…
IDが生成されるのにcountが取得できないってことは
$HTTP_SESSION_VARS['count']あたりが違うのでしょうか?
Version 4.0.6なので$_sessionは使えないようですし…
だれか助けて〜…
それ以前にさ・・・ 変数初期化した? $HTTP_SESSION_VARS['count'] = 0; とか NULLな変数をインクリメントしても値は増えんぜよ。 で、うちは --enable-trans-sid してるのに何時の間にかSIDが使えねぇ・・・ 何故、_| ̄|○ <ぬるぽ〜
183 :
182 :03/02/19 02:08 ID:???
ごめん寝ぼけてた。 session_start(); if (!isset($_SESSION['test'])){ $count = 0; $HTTP_SESSION_VARS['count'] = $count; } else $count++; でどうよ?
184 :
173 :03/02/19 02:44 ID:oUZRirLt
>>182 さんどーもです.
だめです…
たぶんスクリプト自体はPHP4.2.2で動いてるので
問題ないと思うんですよ… PHP4.0.6で動かない…
ん〜なんでだー…? (;_;)<HELP!
コンフィギュアとかphp.iniとかは?
あぁーもう $_SESSIONになれちゃってなぁー。(w 4.0.6の時代って$HTTP_SESSION_VARSに代入するだけで登録できるんだっけか? PHPSESSIDに何も入っていないのは何でだろ。 それが妖しいが、やけくそで、 session_id($HTTP_GET_VARS['PHPSESSID']); session_start(); 以下同じ。 でどよ。
<?php if (!session_is_registered('count')) { session_register("count"); $count = 0; } else { $count++; } ?> は?
188 :
173 :03/02/19 13:27 ID:pmHLZySe
>>186 , 187さんどーもです!
結論からいうと187さんのソースで動きました!!激感謝!
ちなみに186さんの方法だとセッションIDが空になってしまい
ダメでした.でもアドバイスありがとうございます.
結局のところ$HTTP_SESSION_VARSのセッション変数(?)
が使えない設定ということなんですかねぇ?
コンフィギュアってのはなんでしょ?php.iniとは別なんでしょうか?
とりあえず解決しました.ありがとうございます!m(_ _)m
今回の肝はsession_register()な。 ていうかchm版PHPマニュアル(日本語)をPHP日本ユーザ会から落としてこれば解決していたと思われ。 セッション関数の項を読んでみれ。 コンフィギュアってconfigureのことじゃね?
とある文字列から日本語だけ削除したいときってどうすればいいっすかね $a = "abc日本語defです"; $b = 日本語削除関数($a); echo "$a ⇒ $b"; とやったときに abc日本語defです ⇒ abcdef と出力されて欲すぃんですが。
>>190 preg_replace("/[A-Za-z0-9\s記号スタート-記号終了]/g"."",$str);
じゃダメだな・・・寝よっと。
たしか文字コードで尚且つ範囲指定して削除とかできる関数なかったっけ?
EUCなら s/[\x80-\xff]//g こんなんかw
逆の発想でアルファベットと半角記号だけ取り出すってしたらいいんじゃないかな?
日本語削除関数をどういった用途に使用するのか知りたいな。
PC板から飛ばされてきました。
JavaScriptを勉強中なんですが、大きな壁にぶち当たりました・・。
下のアドレスからソースコード見てみて、何がおかしいのか、なぜ動かないか
教えていただけませんか?
チェックボックスの飲み物の値段*数量が一番右のテキストボックスに表示され、
下の”ShowTotalHere”の所に合計の値段が出るようにしたいのですが。
どなたか教えてください。お願いします。
ttp://gladstone.uoregon.edu/~shasegaw/example.html
>>197 わざわざ来てもらって悪いけど、JavaScriptはWeb制作板のほうへ。
199 :
nobodyさん :03/02/20 10:43 ID:FSsqjxuf
すみません。 PHP3からオラクルのストアドファンクションの引数に 配列を送る方法を教えてください。 よろしくお願いします。
200 :
「タ」 :03/02/20 13:03 ID:6m4cOImb
EUCなら $s=~ s/([\xa1-\xfe\x8F].)//g ; Shift_jisなら $s =~ s/([\x80-\x9f\xe0-\xff].)//g; ですね。
201 :
「タ」 :03/02/20 13:04 ID:6m4cOImb
あ、perlスレじゃなかったか。こりゃまた失礼
>>198 すみませんでした。Web製作板に行ってきます。
しかしPC板住人もいい加減だな(w
205 :
[PhP] :03/02/22 18:44 ID:Wnbg1x3x
smarty 最新バージョン smarty2.4.2 を使ってwebサイトを構築しております。 前のバージョンから、アップグレードしたら、朝の3時頃になると決まって次のエラー を吐くようになりました。 Warning: chmod failed: Operation not permitted in /xxx//Smarty.class.php on line 1995 Warning: utime failed: Operation not permitted in /xxx/Smarty.class.php on line 1285 Smarty.class.php の該当行を見てみると、以下のfunctionを呼んでいると思われます。 function _get_microtime() { $mtime = microtime(); $mtime = explode(" ", $mtime); $mtime = (double)($mtime[1]) + (double)($mtime[0]); return ($mtime); } 時間関係の問題と思うのですが、なぜエラーが出るのかわかりません。 ちなみに、サーバは日本のレンタルサーバで時刻は合ってると思っています。 (前のバージョンでは大丈夫だったため)ちなみにuse_subdirはfalseです。 他のXOOPS2でもこんな問題が出ていなかったので、私だけの特殊な問題のように 思います。 何かわかりましたら、ご教授お願いします。
>>207 /xxx/
ルート直下にディレクトリなんて作れるの?
209 :
nobodyさん :03/02/23 05:59 ID:2piid1+Y
>>208 例としてのディレクトリです。実際はホームの下です。
/home/user/public_html/... のような感じです。
>>207 エラーメッセージを見ると時間関係じゃないように思えるが。
smartyなんて使ったことないからよくわからんが、
操作しようとしているファイルかディレクトリが存在しないか、
操作する権限がないんじゃねぇの?
#初心者コーナースレはそこそこ盛り上がっているが、その分
#こっちが廃れてきたな。
#それともYBBがアク禁になっているせいか(w
>>210 レスさんくす。
確かに言われてみれば時間関係でないような…
でも、毎日朝3時にエラーが出始めるのは、全く意味がわからなく…
#ちなみにYBBですが、書き込みできています。
PEARのDB::quote()を使うと、' が '' のようにクォートされる。 ってか、初めて知った。(つД`) 'Don''t call ''厨房''' 紛らわしくね?
>212 接続先DBによって挙動かわるね。 print $db->quote("'hoge'"); PostgreSQL ''hoge'' MySQL \'hoge\'
違う。 一番外側のシングルクォーテーションもつくわけだから PostgreSQL '''hoge''' MySQL '\'hoge\'' か…
>>213 あ、俺はpgsqlって書くの忘れてた。DBによってエスケープ文字が変わるのは想像できました。
しかし、pgsqlは\でもいいんだよな。
pg_escape_stringって関数が4.2.0より出来ててそれも'だた。
>>214 の外側に付けるのってちょっとお節介な気がしね?
せめてオプションで外側を括るかどうか選択できればよかったのにな。
>215 あー、そういうことか。 確かにpgsqlは\でも良いから'使ってる理由はいまいちだなぁ。 外側に'つけるのは中に入ってるのが文字なのか数字なのかを 利用者が意識する必要が無くなるように、だろうけど。 /* $qHoge = $db->quote($Hoge); $sql = "select * from table where hage = $qHoge" としておけば、$Hogeが文字の時は外側にシングルクォートついて 数字ならつかない、みたいな。 */ 知らないと事故ることありそうだね・・・。
217 :
chmod :03/02/24 19:37 ID:FUX1UJsu
超初心者ですいません、 サーバーがIISいれてて、フリーのPHPのカウンターを動かそうとしてみたところ 一緒にUPするcounter.txtの属性を変えろといわれたのですが、 FFFTPで属性変更としても変わってくれないです。 どうやればIIS上での属性の変更を解決できるのでしょうか? よろしくおねがいします。
218 :
chmod :03/02/24 19:57 ID:FUX1UJsu
あ、ごめんなさい 初心者版と間違えました。 すいません、ゆるしてたも。
>>217-218 初心者スレで答えてもらえてよかったな。
といっても、Windowsでも属性はあることはあるんだけんどよ(w
220 :
chmod :03/02/24 20:42 ID:FUX1UJsu
どもありがとございます、できないのでふて寝します
フォームメール作ってて 書き込んだ相手にコピーメールを送るのは出来たんだけど 肝心の自分のところにメールが来ないの。 これって何が原因だと思う?と同時にどうしたらよいのでしょ? mb_sendmail_mailに割り当てるとは思うんだけど・・・
222 :
nobodyさん :03/02/25 00:25 ID:1J+jqOQy
mb_send_mailでした。 $to ="REQUEST["VALUE_MAIL"]" ."自分のメールアドレス"; とかしても上手く行かないです。。
224 :
nobodyさん :03/02/25 00:37 ID:1J+jqOQy
>>223 どうやって書けばいいんですか?
&bcc ="自分のメールアドレス";
mb_send_mail( "$bcc" );
じゃないですよね?
>>221 言ってる意味がわからんが
2回送信処理するだけではないの?
★あなたのお悩み解決致します!!
●浮気素行調査
彼氏、彼女、妻、夫の浮気を調査致します!!
●盗聴器盗撮機発見
あなたの部屋に誰かが仕掛けているかも!!
●行方調査
行方不明になっている家族の消息を調査致します!!
●電話番号から住所割り出し
一般電話、携帯から住所を割り出し致します!!
●ストーカー対策
社会問題ともなっているストーカーを撃退致します!!
その他人生相談からどんなお悩みでも解決いたします!!
直通 090−8505−3086
URL
http://www.h5.dion.ne.jp/~grobal/ メール
[email protected] グローバル探偵事務局
[ここ壊れてます]
>>221 初心者スレで散々祭られてたヤシだろ。
初心者スレのみんなも答えは簡単なんだが、どう考えてもそれ以前の問題なんで、
こたえる気がしないんよ。マジで。
マルチポスト,CC,BCC等など今までやったことねぇのか?
>>230 そんな祭りあったの?てか見たけど違う人なんじゃない?
一応、スクリプトも書いてるし(違うけど
てか暇なんだね(w
ある意味素直なレスがぶら下がったな。
壊れても再取得の面倒なこのソフトフェア
234 :
nobodyさん :03/02/25 02:21 ID:B2WvDxUx
>>230 違いますよーccかbccを使うのは知ってたし。
225とかのマニュアルもちゃんと見ました。
でも
$header = "bcc:
[email protected] ";
mb_send_mail($header)
みたいにしても送れないんですよ。だから他に方法があるのか
関数を新たに作るのか、どうすればいいのか?と思って
質問にきたわけで、、、。
まあなんにしても解決してよかったな。
236 :
nobodyさん :03/02/25 13:52 ID:jo4MhSz6
CGIの掲示板によくある昇進機能をPHPで作っているのですが、 どうも発言ランキング表示で発言回数順にソートする方法がわかりませぬ。 発言回数のログは「名前<>発言回数」のように記録しています。 sort関係の説明見たけど…いまいち。
237 :
nobodyさん :03/02/25 14:35 ID:B6vdBkox
アマゾンのレビューみたいに長い文章の最初の方だけを 表示させて、「続きを読む」を次のページにというようなこと をやってるんですが、半角が混ざってると、最後の文字が 文字化けしてしまったりで上手くいかないのですが、なにか いい方法はないでしょうか? できれば本文を全て全角にする以外の方法がよいのですが・・・
238 :
nobodyさん :03/02/25 16:52 ID:CxsOVHsX
phpってリファレンスないのですか。 値渡しですか。
>>237 mb_substr() じゃだめなん?
>237 文字数で切るならいいけど、バイト数だと面倒そうだね・・・。 処理速度考えないならmb_substrで一文字ごとに配列につっこんで 頑張ったりするしかないのかな。 もっと良さそうな処理ありそうだけど。
>>239 リファレンスがあるのか書いてないようですが。
ポインタがあるのは知らなかった。
perlと同じじゃないんだ。
これでphpでの$マークはいらないのではと思った人は多くいたと思います
>>237 mb_strwidth()があるけど、引数にちょっと癖あるから気をつけな。
>>243 Cのポインタを期待するとがっくりするよ。
移動ができないのかなと予想。 リファレンスの違う書き方というのだろうか。
>>245 は
mb_strimwidthの間違い。スマソ
>247 mb_strimwidthって知らなかった…。 自分も使ってみよう。
>>243 そのものズバリ、リファレンス、つか参照代入の話が展開されていた訳ですが。
後、Cのようなポインタがある訳ではないです。ポインタをかじっていれば理解し易いという話なだけで。
250 :
nobodyさん :03/02/26 10:41 ID:pgTq4yym
特定のIPの特定のポートがオープンされてるかどうかをチェックする際、 一番確実な方法は何でしょうか。 今fsockopen()でチェックしてるけどこれだけで本当に正確にチェックできてるのか不安
251 :
nobodyさん :03/02/26 12:53 ID:NokKVj0c
perlの下のコードをPHPで書ける? #==================================== ${'test'} = "ゴルァ!"; print $test; #==================================== (結果) ゴルァ!
252 :
nobodyさん :03/02/26 12:55 ID:NokKVj0c
ごめんなさぃいぃ。そのままででけた。
(;´Д`)ハァハァ
スレッド掲示板を作ろうと思っています。 下記のデータをDBから引っ張り number returnnumber 1 0 2 1 3 1 4 3 5 1 6 4 7 3 8 2 9 4 10 8 11 8 ------------------- これを 1 0 2 1 8 2 10 8 11 8 3 1 4 3 6 4 9 4 7 3 5 1 のように並べ替えたいと思います。 5 1の場合はnumberは5で、1に対しての返信となっています。 どなたかお知恵を貸してください。 僕の頭では無理そうなので…。
255 :
254 :03/02/26 14:35 ID:???
醜かったので書き直しました。 1 0 2 1 8 2 10 8 11 8 3 1 4 3 6 4 9 4 7 3 5 1
スレッド形式の掲示板は自作済みなんだが、さてどうやって説明しようかな。
257 :
254 :03/02/26 14:52 ID:???
>>256 先生!教えてください。
DBの設計がいけないのでしょうか?
メッセージNOと返信する先のメッセージNOをいれておけばいいと
思ったのですが…。
再帰コールを使う。 だけじゃダメ...だろうな。 メインスクリプトの絡みで無駄が出るかもしれないけど、参考ということで、 function msgview($number,$nest){ $nest++; $sql="SELECT number,returnnumber FROM table1 WHERE returnnumber=$number"; クエリ実行 while(1行取得){ echo str_repeat(" ",$nest) . $number . " " . $returnnumber; msgview($number,$nest); } } かな? スレッド先頭のメッセージは表示しないので、呼び出し側(メインスクリプト?) で表示しれ。 あと、接続リソースも関数内で必要なので、グローバル変数に格納しておくか、 引数を増やしておけ。
追記 while内で、取得したnumberとreturnnumberを$number,$returnnumberに 代入してから表示(echo文)な。
260 :
254 :03/02/26 15:23 ID:???
function msgview($number,$nest,$con){ $nest++; $sql="SELECT * FROM bbs_table WHERE returnnumber=$number"; $res = pg_exec($con,$sql); while($row = pg_fetch_array($res)){ echo str_repeat(" ",$nest) . $number . " " . $row[returnnumber]; } } こんなかんじでしょうか? $nestとは?
261 :
nobodyさん :03/02/26 15:31 ID:4C6IIdnn
違うところだけ。 echo str_repeat(" ",$nest) . $row[number] . " " . $row[returnnumber]; msgview($row[number],$nest,$con); $nestは字下げ用
あと、sqlにはORDER BY number も付加した方がいいかな。 それとブラウザに表示する場合は" "(空白)の変わりに な
がーん 空白の変わりに だ!
265 :
254 :03/02/26 15:36 ID:???
できました! でも、なぜ余分に表示されるのかが、まだりかいできないです。
(゚Д゚)∩<先生!それをSQL文だけで実現できませんか?
267 :
254 :03/02/26 15:49 ID:???
>>266 たしかに!
それをSQLでできればすごい。
でも、再帰コール検索してもでてこない。難しい。
269 :
266 :03/02/26 15:57 ID:???
同じ事悩んでたけどできるだけPHP側で処理させるのイヤだったからここ3年ほど頓挫してたりw 仮想テーブルを作るか関数を作るかすりゃいいんだけどうまくいかね。
270 :
254 :03/02/26 16:00 ID:???
$sql = "select * from bbs_table order by number"; $res = pg_exec($con,$sql); $num = pg_num_rows($res); for($i=1;$i<$num;$i++){ msgview($i,$nest,$con); } function msgview($number,$nest,$con){ $nest++; $sql="SELECT * FROM bbs_table WHERE returnnumber=$number"; $res = pg_exec($con,$sql); while($row = pg_fetch_array($res)){ echo str_repeat(" ",$nest) . $row[number] . " " . $row[returnnumber]."<BR>"; msgview($row[number],$nest,$con); } }
271 :
254 :03/02/26 16:01 ID:???
2 1 8 2 10 8 11 8 3 1 4 3 6 4 9 4 7 3 5 1 8 2 10 8 11 8 4 3 6 4 9 4 7 3 6 4 9 4 10 8 11 8 と出ます。
>>270 そらそだろ。
スレッド先頭メッセージの場合returnnumberが0という約束なら、
$sql = "select * from bbs_table where returnnumber=0 order by number";
だが、本当ならNULLとしておくべきだろうな。
$sql = "select * from bbs_table where returnnumber is NULL order by number";
で、forループ内でmsgviewを呼び出す前に先頭を表示しておけ。
273 :
254 :03/02/26 16:09 ID:???
for($i=1;$i<$num;$i++){ msgview($i,$nest,$con); } ではなく、 $i=1; msgview($i,$nest,$con); でした。 ごめんなさい。
>>273 1スレッドのみの表示ならそれでもいいか。
メインスクリプトから呼び出しは
msgview($i,定数,$con);としておいたほうがいいな。
とりあえず定数=0 だけど、まお好みで。
275 :
254 :03/02/26 16:19 ID:???
$nestの終端 (スレッドの最後)を取ることもできるのでしょうか? 上記で言うなら、2のレスの終端は8と10になると思います。
>>275 出来る。
あるメッセージが終端かどうかを判断するのは簡単だろ。
DBから終端のメッセージを抽出するにはサブクエリが必要かな。
ま、がんがれ。
277 :
254 :03/02/26 16:30 ID:???
そうですね。僕ばかです。
いつのまにか、教えて君になってました…。
ありがとうございました!
>>276
ちと質問なんですが、 PHP4.1.2のアンインストールしたいんです。 Win2kでコンパネからできないんですよ。 そーゆー時ってどうすりゃいいでしょうか。 ちなみに先にApacheとSQLServerを アンインストールしたんですが…。
279 :
nobodyさん :03/02/26 17:21 ID:20q9A6at
PHPとPERLで、hello worldをローカルでテストしました。 PHPが3倍速かった。感動。 鯖に上げた。 PHPの方が遅かった。 PHPはレンタルサーバーではこんなもんなのですか。
>>279 間違い。
hello worldじゃなく、ロック無しでファイルのカウントアップです。
>>280 ちなみにローカルでのmod_perlはperlより遅かった80%
>>283 鯖を所有していないとPHPもCGIとしてしか使えないから
mod_perlも小さいファイルには有効でないのかな
レン鯖で手っ取り早くmod_phpかどうか見分ける方法は何でしょうか
286 :
nobodyさん :03/02/26 21:13 ID:cWnqGJTn
>>285 mod_phpやmod_perlはまず使えない。
簡単に鯖落ちるから。
調べる必要もない。
phpがperlより速いというのは嘘。
巧妙に違う条件でテストしてるだけ。
>>285 1. 鯖管に聞く。
2. 鯖のスペックシートの類をサイトから探す。
ていうか他に手が?
>>286 少なくともxreaではmod_phpを導入してるわけだが。
で、後者のSourceキボンヌ。
289 :
nobodyさん :03/02/26 21:19 ID:KtOwWiPw
290 :
nobodyさん :03/02/26 22:38 ID:E2cHSJ0m
>>290 CGIの話と、perlの話と、PHPの話は、
条件をきちんと出してから語ろうな。
292 :
285 :03/02/27 00:25 ID:???
うーんそうなのか… とりあえずg--z.comとkagoyaはmod_phpらしかった
293 :
nobodyさん :03/02/27 00:43 ID:Audw+m+F
>>292 mod_phpは新しいごまかし方法と思います。
以前phpがperlよりはるかに速いと宣伝していたのと同様に。
mod_phpでもただCGIのように動かせるだけという設定になっていると思われます。
phpを速いと宣伝すれば、
ユーザーが増え、本を多く買ってもらえる。
WEB業者はphpはこんなにすごいですよと説明して単価を上げられる。
PHPは悪い選択ではないけど。
∧∧ ミ ._ サクッ ( ,,)┌─┴┴─┐ / つ.キチガイ警報| 〜′ /´ └─┬┬─┘ ∪ ∪ ││ _ε3 ゛゛゛'゛゛'゛゛'゛'゛゛'゛'゛゛゛゛'゛゛゛'゛゛
どこから突っ込んだらいいのやら・・・ Perl/CGIより早いと言っているわけでmod_perlより早いとはかいてないべや。 どうしてPerlより早いなんて斜め読みができるのか・・・ あと、mod_phpとCGI版(ぶっちゃけCUI版な訳だが)のphpは別物と考えたほうが良いと思われ。 どうもCGIを勘違いしてる人が居るような気がする。
296 :
nobodyさん :03/02/27 04:06 ID:WAmVWf1A
>>295 どれへのレスかわからんし。
cgiperlよりはるかに速いっていうならmod_phpでしょ。
mod_phpとcgiperlを比べておきながら、phpはperlよりはるかに速いはないんじゃ。
mod_phpがcgiphpと同じなんてことどこに書いてないようですが。
>>290 Perl/CGIって明記してるのにmod_perlを比較対象に出してるのが(゚A゚)イクナイ。
どうも負けず嫌いなPerl信者に見えるんだよなぁ・・・
http://www.php.gr.jp/ > PHPについて
> PHPは、 HTMLファイル内に記述するタイプのスクリプト言語です。
> 通常のCGIとして使用できますが、PHPモジュールをApacheサーバーに組み込むことにより、 Perl/CGIと比較して処理速度の高速化、サーバー負荷の低減が可能です。
>>296 で、
>phpはperlよりはるかに速いはないんじゃ。
が何処にも書いてないわけで。
>>293 珍 ちーん! まだ、そんな事いってる人がいるのか・・・。 恥ずかしくないのかな?
299 :
nobodyさん :03/02/27 06:41 ID:NrttmTPU
どっちが優れてるとかじゃなくて、 結局はどう使うかだと思うんだけどね……。 ところで、Smarty使ってる人いる? これってsafe_mode使ってると使えないのかな。 users ML検索してみたら同じこと聞いてる人がいたけど 誰も答えてなかったよ…。
今朝急に $_GET[**] でとれなくて、 $_GET['**']じゃないととれなくなりました。 エラー内容は、parse error, expecting `'('' in ありえない、んだけど…。 <?php echo $_GET[test]; ?> としても同じエラー。 なんででしょうか?
つーか、Javaの前にはPHPもPerlも屑。 あ、ビジネス上の話ね。
303 :
301 :03/02/27 11:04 ID:???
まじ助けて下さい。 サイトが…。
Java=コボラの失業対策事業
>>303 元々シングルクォートで囲むのが仕様じゃなかったっけ。
>>304 まぁいろんな意見あると思うけど案件の数と報酬額の高さで比べたらJavaは圧倒的やね。
>>305 あ、シングルじゃなくてもええんやけど、とりあえず囲めっちゅーことで。
307 :
301 :03/02/27 11:48 ID:???
>>306 でも、なぜ急にエラーになったのかが不思議なのです…。
すいません、質問させてください。 <? include( "../../../com/common.dat" ); include( "../../../com/db.func" ); include( "../../../com/err.func" ); include( "../../../com/agent.func" ); include( "../../../com/member/member.func" ); // DB接続 $conn = db_conecting( ); // メンバー認証 $mid = CheckMember( $id, $pass ); // 接続媒体確認 $agent = GetAgent( ); // メンバー情報獲得 include( "../../../com/member/_getdata.txt" ); // BBSセット include( "../../../com/member/_setbbs.txt" ); // BBS読込 include( "../../../com/member/_readbbs.txt" ); // DBクローズ pg_close( $conn ); 下へ続く
?> <html> <head> <title><? echo $ttl; ?> -<? echo $C_sitename; ?></title> </head> <body <? echo $C_body; ?>><TABLE> <TBODY> <TR> <TD width="589"><tt> <center> <? echo $pic; ?> <? echo $ttl; ?> <? echo $pic; ?> <br><? echo $top; ?> </center> <br><? echo $top2; ?> <br><a href = ./toukou.php?bbsid=<? echo $bbsid; ?> &mid=<? echo $mid; ?>&id=<? echo $id; ?>&pass=<? echo $pass; ?> &bbs=1&s_name=<? echo $s_name ?>&s_area=<? echo $s_area; ?>&s_f_10=<? echo $s_f_10; ?>&s_f_01=<? echo $s_f_01; ?>&s_t_10=<? echo $s_t_10; ?> &s_t_01=<? echo $s_t_01; ?> accesskey=1><? echo $PIC_1; ?>書込</a> <a href = ./index.php?bbsid=<? echo $bbsid; ?>&mid=<? echo $mid; ?>&id=<? echo $id; ?>&pass=<? echo $pass; ?> accesskey=2><? echo $PIC_2; ?>検索</a> <div align = right><? echo $PIC_MAIL; ?>:メール送信</div> <hr> 下へ
<? for( $i = $start; $i < $last; $i++ ) { ?> <? echo $PIC_MAN[$disp_sex]; ?> <? echo $nm[$i]; ?>(<? echo $age[$i]; ?>)[<? echo $area[$i]; ?>]<a href = ../mail/make.php?mid=<? echo $mid; ?>&id=<? echo $id; ?> &pass=<? echo $pass; ?>&to=<? echo $to[$i]; ?>&bbsid=<? echo $bbsid; ?>&bsid=<? echo $bid[$i]; ?>> <? echo $PIC_MAIL; ?></a> <br><? echo $dt[$i]; ?> <br><? echo $dcom[$i]; ?> <hr> <? } ?> <center> <? if( $prev != -1 ) { ?> <a href = ./bbs.php?bbsid=<? echo $bbsid; ?>&mid=<? echo $mid; ?>&id=<? echo $id; ?>&pass=<? echo $pass; ?>&start=<? echo $prev; ?> &s_name=<? echo $s_name ?>&s_area=<? echo $s_area; ?>&s_f_10=<? echo $s_f_10; ?>&s_f_01=<? echo $s_f_01; ?>&s_t_10=<? echo $s_t_10; ?>&s_t_01=<? echo $s_t_01; ?>> <? echo $PIC_PREV; ?></a> <? } if( $next != -1 ) { ?> 下へ
312 :
nobodyさん :03/02/27 12:11 ID:joh0nav9
>>297 今はね
いろいろなところで、
それはもうすごい宣伝だったよ。
http://www.php.gr.jp/ > PHPについて
> PHPは、 HTMLファイル内に記述するタイプのスクリプト言語です。
> 通常のCGIとして使用できますが、PHPモジュールをApacheサーバーに組み込むことにより、 Perl/CGIと比較して処理速度の高速化、サーバー負荷の低減が可能です。
>>296 で、
>phpはperlよりはるかに速いはないんじゃ。
が何処にも書いてないわけで。
<a href = ./bbs.php?bbsid=<? echo $bbsid; ?>&mid=<? echo $mid; ?>&id=<? echo $id; ?>&pass=<? echo $pass; ?>&start=<? echo $next; ?>&s_name=<? echo $s_name ?>&s_area=<? echo $s_area; ?> &s_f_10=<? echo $s_f_10; ?>&s_f_01=<? echo $s_f_01; ?> &s_t_10=<? echo $s_t_10; ?>&s_t_01=<? echo $s_t_01; ?>><? echo $PIC_NEXT; ?></a> <? } if( $prev != -1 || $next != -1 ) { ?> <hr> <? } ?> <!----- フッター -----> <center> <a href = ../menu.php?mid=<? echo $mid; ?>&id=<? echo $id; ?>&pass=<? echo $pass; ?> accesskey = 0><? echo $PIC_0; ?>MENU</a> <a href = ../../ accesskey = #><? echo $PIC_SHARP; ?>TOP</a> </center> <hr> <div align = right><? echo $C_cp; ?></div> </tt></TABLE> </TBODY> </TR> </TD></body> </html> このプログラムに時間表示を追加したいんですが どうすれば良いでしょうか? どなたかご教授下さい。
echo がうざい! せめて<?=にしてけろ
315 :
nobodyさん :03/02/27 12:52 ID:hiSdT165
PHPの型キャストって、使用するメリットってあるのでしょうか? また、どんなケースで使用するのでしょうか?
>>313 まず、長文ウザイ。どっかのサイトにあげろよ
あと、環境をちゃんと書け
そして、「時間表示」とは具体的にどういう表示にしたいのか書け
最後に、(σ゚д゚)σゲッツ
>>315 保険...かな。
数値入力を期待するところで、数値以外だったら0扱いって時は、
$val = (int)$_POST["val"];
みたいな。
>300 の自己レス $smarty->use_sub_dirs = false; でいけるようになった。 日本で使ってる人少ないのかな…。
<?= って書くんだね。べんきょになった。
>319 shout_open_tag = On になってないと使えないから注意
<?= さらに試してみた結果。いろいろ問題あり。 素直に echo にしたほうが良い事に気付きますた。(w <?= の必要性は何なんだ?
>>318 Smartyどころか、テンプレート類一切使ったこと無し!
おかげで醜いスクリプトばかりになっちまった。
PEAR::HTML_Template_IT 誰か解説しねぇ?
>>320 XML絡みがあってかなんとなく推奨してないですよね。 > ショートタグ
HTMLにちょこっと埋め込むには、<?= ... >は見た目スマートで好きなんだが。
>>321 スマート
ついでに、register_globals = Off 希望
>>324 サンクス!
あー、でもダメ。もうとしだな。
本腰入れて時間をかけて理解しないと、ウマーな状態になれそうにない。
phpを始めて知ってときみたいな、トキメキにはなれないっすねぇ。(w
326 :
nobodyさん :03/02/27 15:46 ID:hiSdT165
>>317 なるほど。
つー事はさほど気をつけて使用することは無いッてことですね
<?= 必要性はスマート。逆に読みにくい場合もある。
328 :
へたれ :03/02/27 16:50 ID:V+dgiH8M
Basic認証についての質問です。 .htaccessのあるフォルダにブラウザからIDとPW入力で入った後の PHPによるユーザの切り替えは可能でしょうか? たとえば最初はID:usr01、PW:pass01で入ったが、 途中でID:usr02、PW:pass02に切り替える。 (フォーム内のボタンクリック等で) お分かりになる方いらっしゃいましたら、ご教授お願いいたします。 当方の環境:OS:Linux、PHP4.3(Apacheモジュール)
329 :
nobodyさん :03/02/27 17:04 ID:3wwIaVv1
apache1.3.27 PHP4.2.2 (藤本氏版) --enable-zend-multibyte --enable-mbstring --enable-mbstr-enc-trans --with-apxs=/usr/local/apache/bin/apxs --enable-trans-sid [php.ini] register_globals = On mbstring.internal_encoding = SJIS mbstring.http_input = auto mbstring.http_output = SJIS mbstring.detect_order = auto mbstring.substitute_character = none; mbstring.script_encoding =auto 続く
330 :
329 :03/02/27 17:05 ID:3wwIaVv1
続き こんな感じの環境で、↓のファイルアップロードのスクリプトで、3つの変数の値$imagefile_name、$imagefile_size、$imagefile_typeが取得できません。。また、phpinfo()内に「$_FILES」が無いのですが。。。 どうすれば良いでしょうか。 ---image_test_1.php------------------------------------ <?php echo<<<EOF <form action="image_test_2.php" method="POST"> <INPUT TYPE="hidden" NAME="MAX_FILE_SIZE" VALUE="300000"> <INPUT TYPE="file" NAME="image" SIZE="30"> <input type="submit"> </form> EOF; ?> ------------------------------------------------------- ---image_test_2.php------------------------------------ <?php echo<<<EOF <PRE> \$imagefile = $image \$imagefile_name = $image_name \$imagefile_size = $image_size \$imagefile_type = $image_type </PRE> EOF; phpinfo(); ?> -------------------------------------------------------
331 :
330 :03/02/27 17:09 ID:3wwIaVv1
訂正 変数表示部分が微妙に書き間違えてましたが、動作しない事にはかわりありません。。 ---image_test_2.php------------------------------------ <?php echo<<<EOF <PRE> \$image = $image \$image_name = $image_name \$image_size = $image_size \$image_type = $image_type </PRE> EOF; phpinfo(); ?> -------------------------------------------------------
332 :
331 :03/02/27 17:25 ID:???
ごめんなさい。 formタグ内を、↓にすれば取得できました。 <form name="test" action="image_test_2.php" method="POST" enctype="multipart/form-data"> アップロードするファイルを何も選択せずにPOSTすると <?php echo "\$image = $image"; ?> ↓ 以前は、 $image = none 現在は $image = と異なります。 以前はphp4.1.2、現在はphp4.2.2です。 何か仕様が変更になったのでしょうか?
>>326 『ことですね』と念を押されても困るんだが...(w
初期化されていない変数はNULLで、数値としてなら0が代入されている。
というのを前提にスクリプトを平気で書けるのならいい...?
たぶん、そんな事を気にする俺が古いんだろう。
336 :
nobodyさん :03/02/27 17:35 ID:kBatdLw+
337 :
へたれ :03/02/27 17:44 ID:V+dgiH8M
>>334 レスさんくすです。
こんなことが・・・!?
一度やってみます。ありがとうございます。
>>337 あ、実際やったことないからな。
結果報告よろしこ。
今のところ必要性は感じないのだけどな。
339 :
へたれ :03/02/27 17:54 ID:V+dgiH8M
340 :
へたれ :03/02/27 17:57 ID:V+dgiH8M
>>338 >今のところ必要性は感じないのだけどな。
ログインしなおさずに別ユーザになりすましたいわけで・・・
ユーザー数が多いといちいちログインしなおすのが面倒な訳です。
他の方法があればまたご教授下さい。
341 :
nobodyさん :03/02/27 19:29 ID:vEcDqB9h
PHP 4.3.1 をインストールしたところ、pear ディレクトリ以下に PECL が見あたりません。 kakasi, namazu モジュールを使いたいのですが、どうやって (PHP 4.3.1で使える)両モジュールをインストールすれば いいのでしょうか? PECL は、pear list-all コマンドでも現れませんでした。
>325 自分も昔ほどの気力はわかないなぁ…。 面白そうな技術があると、もの凄い勢いで飛びついたものだが。 >342 今のところ、CVSでげとするしかないんじゃ? 自分はそうしてる。 家に帰ればメモがあるんだけど、今電車の中なんでw
PHP+PostgreSQLで認証するソースいいのない? でしょうか?
PearのAuth
347 :
342 :03/02/28 02:04 ID:???
>>343 なるほど、、、CVS の使い方調べなくちゃ・・(汗
ともあれ、ありがとうございました。
>347
ってことで。方法。
/usr/local/src/php4
にソースがあるとして
cd /usr/local/src/php4
cvs -d :pserver:
[email protected] :/repository login
cvs -d :pserver:
[email protected] :/repository co pear/PECL
たぶん、これでいけるはず。
cvsでPHPのソースとってくる方法は公式サイトにも書いてあるから
そっちも参考にしてくれ。
>>339 うーん、無理だったか。スマソ。
で、ちょっと試してみたんだが、IEだと
>>344 のようにフルパスでもダメだったが、
KDEのコンカラだとうまく出来たよ。
ってことで、ブラウザ依存だな。別のに替えてミソ。
mb_convert_case() 相当の処理を他の関数で実装ってできますかね? #諸般の事情で4.3.0が使えないのです。 hello world! を Hello World! になるように変換したいのですが。
>>350 ([^a-z])([a-z])/$1
で、$2にいくつか足せば
>>350 それくらい数行だから関数かけば
function my_case_folding($str, $mode = 'CASE_UPPER')
{
switch($mode) {
case 'CASE_UPPER':
return strtoupper($str);
case 'CASE_LOWER':
return strtolower($str);
case 'CASE_TITLE':
$retval = array();
$words = split(' ', $str);
foreach ($words as $word) {
$retval[] = strtoupper(substr($word, 0, 1)) . substr($word, 1);
}
return join($retval, ' ');
default:
return FALSE;
}
}
353 :
nobodyさん :03/02/28 12:48 ID:ybZkxx6m
>>353 不可能!
そんなこと出来たらスゲーページができちまう、
>>353 自分でhtmlをパースする気があるなら出来る。
>>353 ページの構造が変わらないのを祈りつつ、ひたすら正規表現で
抽出すれば可能。
てか、先日そゆ仕事をやったばかり。
357 :
353 :03/02/28 17:05 ID:ybZkxx6m
>>356 まじですか?もしよかったらどんな風にやればいいか
教えて頂けませんか?
出来たら簡単なテーブルからでもいいので
やっていただけませんか?
>>357 自分でやれよ…。
と思ったのは漏れだけではないはず。
>>358 禿同
正規表現を使うと言われてわからんのなら諦めれ。
>356 HTML関連は大変だね…。 最近自分もそういう仕事だけど。 だんだんと HTMLの適当さが許せない ↓ IEが適当なHTMLでも適当に表示出来るから 適当なHTMLが普及した ↓ ゲイツ許すまじ と、逆恨みするようになりますた。 IEで見ると画像表示されてるのに、imgタグがうまく抜き出せないと思ったら <img src="hogehoge.png" alt="ほげ" ←最後の>がない なんだもん(苦笑 >357 preg_match / preg_match_all あたりのヘルプ見て とりあえず自分で頑張るしか。
正規表現を使えるだけでもありがたいと思え
>>360 そうそう、htlmlの適当さにどれだけ余計な気を配らないといけないのかとおもう。
のと同時に valid-html401 を取れるようにhtmlを書いている自分がバカらしくなる。
>>357 念為言っとくが、正規表現無しでも抽出出来なくもない。
但し説明はかんべん。面倒&飯のタネ(w
>>360 >>362 時代は既にhtmlにそんなもんは求めてないよ。そのためのXMLな訳でWebサービスな訳だ。
>363 時代が求めて無くとも、実際に解析対象になるのは 世に溢れてる腐ったHTMLなのよ。 自分が喰っていくためだから仕方なく。 って、スレの趣旨に反してる会話っぽい。 スマソ。
いかにしてフレーム問題を解消するかが問題ですな。ってそうじゃなくて、、 もしも転向する勇気があるなら、Perlで、HTML::*を使え。とっても簡単。 自前で正規表現を考えるのは時間の無駄。勉強目的ならいいけど。
>>365 たった一つのライブラリのために根本的に設計を変更することもな。
モバイルを対象に作ったPHPページで、 PC,i-modeだとエラーが出ないんだが、 auだとエラーが出る。 504エラーとか。 これはPHPのプログラムが原因? それともモバイルが原因?
369 :
nobodyさん :03/03/02 06:26 ID:Ohkwqiqg
あー、 string fgets ( int fp [, int length]) の [, int length] を実現するにはどうすればいいんすか? function fgets($fp,[length]) じゃないでしょうし。
372 :
nobodyさん :03/03/02 07:19 ID:L99j8QKU
373 :
369 :03/03/02 07:28 ID:Ohkwqiqg
>>370 OKパパ。
>可変長引数リスト
明日はホームランだ。
>>370 っていうかeval使わなくてもこんな機能あるんだね。
hotmailのようなWEBMAILを作ったんですが、 outlookでメールを見れる機能の資料が見つかりません。 どこかに情報ありませんでしょうか?
376 :
nobodyさん :03/03/02 10:12 ID:y/b+02sA
377 :
nobodyさん :03/03/02 11:00 ID:vIn8CkpB
javaのAPIをPHPから実行するときに、VMに割り当てる メモリの値を指定することはできますか? Xms等のオプション使えるのかな?
378 :
nobodyさん :03/03/02 11:26 ID:34JjEEoB
最近ソースの見られないHPが多いのですが どうやったら見られるように出来ますか?
PHP スレですよ〜
今日からPHPの勉強をはじめましたド素人です。 借りているサーバーのPHPのバージョンは4.0.6なのですが register_globalsのon/offを調べる方法はありますか? 私の借りている会社は質問の返事が遅いのでできれば自分で調べたいです。
あ!間違えました。ここじゃないですね。 初心者スレにいってきます。ごめんなさい。
>>381 POSTかGETで適当にパラメータを送る。
同名の変数がNULLか否かで判断できる。
ってそれくらい思いつけよ。
385 :
nobodyさん :03/03/04 23:05 ID:EJ3Hcn+S
初心者スレでリアクションなかったんで
こちらでわかる方がいらっしゃったら教えてください。
PHPのxml_parse()でRDFファイルをパースしてるんだけど、
<link>
http://www.hoge.com?foo=1 &amp;bar=2</link>
(&amp;は半角)をパースするとセミコロン以下の
bar=2しかとれないんだけど・・・誰かおせぇ〜て。
実際のパースはxml_set_character_data_handler()で指定した
関数内で行ってます。
>>385 >初心者スレでリアクションなかったんで
普通にみんないろいろ答えだしてくれてたと記憶。
自分が理解できない回答は無視か・・・。
>>386 おいおい、
>>385 の質問には誰も答えてないぞ。よく見ろ
ちょっと初心者スレでは難しすぎたか・・・
ちなみに俺も&がらみで悩んでる。
スラッシュドットが読めないんだよ。
仕方ないから Bulknews のRSS使ってるけど・・・
388 :
385 :03/03/04 23:30 ID:EJ3Hcn+S
>387 フォローサンクス(w 自分もRSS生成スクリプトとRSSパーサ作成中で Bulknewsとかrss-jp.netのRSSは読めたんだけど 自分の生成スクリプトで吐くRSSが自分のRSSパーサで読めない・・。 回避方法も思いつかないんで、誰かヘルプミー!
389 :
nobodyさん :03/03/06 16:02 ID:E4DTVLrl
期待age
390 :
nobodyさん :03/03/06 19:10 ID:lDHR920p
>>383 それでもこと足りるが、スマートじゃない(汎用性が少ない)よ。
折角関数あるんだから使わないと。
echo ini_get("register_globals") ? "On" : "Off";
な感じで。
register_globalsの場合は状態が、0か1とstringで返ってくるけど
他のパラメータでは、値がstringで返ってくるものもあります。
元の質問の意図を汲み取ると、単に「phpinfo()で該当の項目を見ろ」で良かった悪寒…
392 :
nobodyさん :03/03/06 20:20 ID:lDHR920p
>>385 XMLパーザの使い方は良く知らんのだけど、試してみたら
別に支障なくcharacter_data_handlerの関数が呼ばれたけど。
でもCDATAが「
http://www.hoge.com?foo=1 &amp;bar=2」だと、
CDATA handlerの関数は、
1.「
http://www.hoge.com?foo=1 」
2.「&」
3.「bar=2」
と複数回に分けて呼び出されるでしょ。&が切れ目と判断されるので。
あと空白(半角スペース)とかでも分割される。
その辺、handlerで指定している関数の処理で考慮足らなくない?
後、これは関係ないと思うけど、以前XMLパーザエンジンのターゲット
エンコーディングの指定間違いで意図しない動作になったことあった>私
394 :
nobodyさん :03/03/06 21:47 ID:h/KaZ1MQ
XHTML1.0 strictで作ったHTMLファイルの 任意の場所にupdate.phpというphpファイル(外部)を挿入したい場合 <body> 任意の場所に、<?include("update.php");?> </body> といれればいいのでしょうか?相対パスで<?include("../../php/update.php");?> としても動くのでしょうか? 何回やっても呼び出せず、同じフォルダの中にいれないと動いてくれなかったの ですが外部ファイルを挿入するときの注意というのはあるのでしょうか?
396 :
385 :03/03/07 07:26 ID:JRpfToFn
>392 >複数回に分けて呼び出されるでしょ。&が切れ目と判断されるので。 おお!知らなかった!&が切れ目で複数回呼ばれるから 最後に呼ばれた「bar=2」が保持されてるように見えるわけね。 ちょっと試してみる。ありがと。
397 :
nobodyさん :03/03/07 08:01 ID:enfkacF8
398 :
385 :03/03/07 17:00 ID:JRpfToFn
>392 サンキュ!でけた。
php4.1.2とSSI同時使用で mbstring.http_output = SJIS してるんだけどページがeucで出力されちゃうYO httpd.conf AddType application/x-httpd-php .php .php4 AddType text/html .shtml .html AddHandler server-parsed .shtml .html php.ini output_buffering = On output_handler = mb_output_handler default_charset = "Shift_JIS" mbstring.internal_encoding = EUC-JP mbstring.http_input = auto mbstring.http_output = SJIS mbstring.detect_order = auto SSIのAddHandlerを指定しなければちゃんとSJISで表示されるのに ・゜・(ノД`)・゜・ 誰か教えてください。
400 :
:03/03/07 18:46 ID:c/VpYaG2
う〜ん どうもうまくいかん。 ANHTTPDにPHPをぶちこんで ローカルテストをしてるけど うまく動かん 初期HTML画面ははきだすが フォーム送信をすると error404がでてしまう。 う〜ん どうしたもんでしょう・・・
402 :
nobodyさん :03/03/07 18:54 ID:x1G5YRRJ
403 :
400 :03/03/07 18:56 ID:???
>>401 そうなんだよなあ
でも同じディレクトリにファイルがある場合
呼び出す方のファイルは./(ファイル名)でいいんでしょ?
>>403 いいね。でも、404ってことは実行以前にファイルが見つかってないってことなわけで。
恐らくformのactionが変なんだと思うけれど。
あんたも404
406 :
400 :03/03/07 19:27 ID:???
function HTML_BODY(){ global $PHP_SELF; echo "<FORM ACTION=$PHP_SELF METHOD=POST ENCTYPE=application/x-www-form-urlencoded>\n"; echo "<INPUT TYPE=HIDDEN NAME=action VALUE=post>\n"; こういうふうになっててね。
407 :
400 :03/03/07 19:34 ID:???
phpが動いてるのは確かなんだ。 簡単なecho文はきちんとはきだすんだがな〜
>>406 で、それから生成されたHTMLは見たのかな?
410 :
400 :03/03/07 20:03 ID:???
>>408 いや入力して送信すると404になる
406のつづき
echo "<CENTER><P><FONT SIZE=6 COLOR='green'>ログイン</FONT></P>\n";
echo "<P><HR ALIGN=CENTER></P>\n";
echo "<P><TABLE BORDER=0 WIDTH=27%>\n";
echo "<TR><TD WIDTH=50% BGCOLOR=#CCFFCC><P ALIGN=CENTER>ユーザーID</TD>\n";
echo "<TD WIDTH=50%><INPUT TYPE=TEXT NAME=u_id SIZE=12></TD></TR>\n";
echo "<TR><TD WIDTH=50% BGCOLOR=#CCFFCC><P ALIGN=CENTER>パスワード</TD>\n";
echo "<TD WIDTH=50%><INPUT TYPE=TEXT NAME=passwd SIZE=12></TD></TR>\n";
echo "<TR><TD COLSPAN=2><CENTER><P><INPUT TYPE=SUBMIT NAME=Submit VALUE=送信></CENTER></TD></TR></TABLE></P>\n";
411 :
400 :03/03/07 20:06 ID:???
そしてdataファイルは同じディレクトリ
>>410 いやだから送信する以前に送信元のページが意図したとおりに生成されているのかチェックしたのかと。
>413 はき出されたHTMLの action=??? の???のところはどうなってる? それをコピー&ペーストしてほしいんだけど。 と、>412は言いたいのだろうけど。
415 :
400 :03/03/07 20:41 ID:???
>>414 ああそういうことか。わかった。
ちょっと待ってて
416 :
400 :03/03/07 20:45 ID:???
ANHTTPD上ではきだされたHTMLは以下 <FORM ACTION= METHOD=POST ENCTYPE=application/x-www-form-urlencoded> <INPUT TYPE=HIDDEN NAME=action VALUE=post> <CENTER><P><FONT SIZE=6 COLOR='green'>ログイン</FONT></P> <P><HR ALIGN=CENTER></P> <P><TABLE BORDER=0 WIDTH=27%> <TR><TD WIDTH=50% BGCOLOR=#CCFFCC><P ALIGN=CENTER>ユーザーID</TD> <TD WIDTH=50%><INPUT TYPE=TEXT NAME=u_id SIZE=12></TD></TR> <TR><TD WIDTH=50% BGCOLOR=#CCFFCC><P ALIGN=CENTER>パスワード</TD> <TD WIDTH=50%><INPUT TYPE=TEXT NAME=passwd SIZE=12></TD></TR> <TR><TD COLSPAN=2><CENTER><P><INPUT TYPE=SUBMIT NAME=Submit VALUE=送信></CENTER></TD></TR></TABLE></P> あれ?なんかへん?
>>416 ><FORM ACTION= METHOD=POST ENCTYPE=application/x-www-form-urlencoded>
激しく変
もういちどPHPファイルEmeditorで見てみるわ なんでだろ〜なんでだろ〜w
419 :
400 :03/03/07 21:06 ID:???
おかしいなあ〜 ファイルでは echo "<FORM ACTION=$PHP_SELF METHOD=POST ENCTYPE=application/x-www-form-urlencoded>\n"; となってるのに ANHTTPD上のHTMLソースは <FORM ACTION= METHOD=POST ENCTYPE=application/x-www-form-urlencoded> になっちゃうよ どうなってんだあ?
>>419 なぁ、$_SERVER["PHP_SELF"]とかじゃないの?
421 :
400 :03/03/07 21:11 ID:???
422 :
400 :03/03/07 21:17 ID:???
だめだあ エラーがでちゃうよ Parse error: parse error, unexpected '"', expecting T_STRING or T_VARIABLE or T_NUM_STRING なんでだろ〜なんでだろ〜w
アホすぎ
424 :
240 :03/03/07 21:46 ID:???
>>396 Expatの動作についての良い説明が見つからなかったんだけど、
(付属のドキョメントがない=即ちソース追えってことなんだろうけど)
同じExpatをベースにした、PerlのXML::Parserの解説で
http://standards.ieee.org/resources/spasystem/twig/perl_xml/perl_xml.html >the strings it receives may be split arbitrarily,
それ(character handlerのこと)が受ける文字列は任意に分けられるかもしれなくて、
>ie the content of a single element can cause
>several successive calls to the character handler
>each with a part of the complete string,
言い換えれば単独要素のコンテントが、ひと揃えの文字列の部分毎に
いくつかの連続したcharacter handlerの呼び出しを引き起こす場合があります。
>especially when the string includes entities.
特に文字列がエンティティを含んでいる場合は
エンティティで区切りがつくらしい。「プロフェッショナルPHPプログラミング」の
P.386にもイベントの発生条件には言及していないが似たような事が書いてあった。
どれも、maybeとか「ことがある/こともある」とか全然断定的な書き方じゃなくて
言葉濁してるのが、また(笑)。
Webで見かけるコードは考慮して出力をスタックしてるものもあれば、
知らないか、分断されないコンテントしか入らないので考慮しないものもある感じ。
コードはともかく書籍の説明では一言触れても良いと思うのだか>その他の本
取り合えず勉強になったよ
425 :
400 :03/03/07 21:59 ID:???
やっぱ初心者スレがいいかなオレ
428 :
394 :03/03/07 22:15 ID:zvlfISdL
>>395 だめでした。絶対パスでやってもできん・・・(TT
同じディレクトリに置くとできるんだけど。
レッツPHPさんのスクリプトいただいてるんですけど、どっか設定いじらないと
呼び出せないってことはないですよね?
あとXHTML1.0だとなんかできないんですけど、そんなことはない?
429 :
400 :03/03/07 22:21 ID:???
>>426 おお!
こんなゲストブックのスレがあったのか!
なんだよPHP_SELFは使えないのか・・・
情報ありがとう
やっぱApacheでテストした方がいいのかなあ
Apacheって設定がなあ
Unixの知識いるんでしょ?
>400 素直にactionにファイル名書けばいいだけな気もするんですが。
431 :
426 :03/03/07 22:50 ID:???
>427 そっすね。デーモン自体はUNIX系で、 Windows-NT(除くCygwin)系は呼び名は"サービス"かな。 別にそこまで拘って使った訳じゃなくて、UNIX由来のものはhttpdとかftpd等と そのままプロダクト名(ex.AN-httpd)や種類名に定着しているので、 そのhttpサーバの意味合いの種類名で使いました。
432 :
426 :03/03/07 23:04 ID:???
>>432 >本来どっちも"簡単じゃない"と思います。
問題外です。
>>414 スマソ。あれだけで判ってくれると思ってたんで。
で、$_SERVER["PHP_SELF"]が使えないことに対する予想される落ち。
echo "<FORM ACTION=$_SERVER["PHP_SELF"] METHOD=POST ENCTYPE=application/x-www-form-urlencoded>\n";
これのどこがまずいのか判らなかったら初心者逝きでFAだと思う。
因みに答えは echo "<FORM ACTION=". $_SERVER["PHP_SELF"] .">\n";
追記:
>>406 >>410 のような書き方するなら
<?
function HTML_BODY(){
?>
<FORM ACTION=<? print $_SERVER["PHP_SELF"]; ?> METHOD=POST ENCTYPE=application/x-www-form-urlencoded>
<INPUT TYPE=HIDDEN NAME=action VALUE=post>
<CENTER><P><FONT SIZE=6 COLOR='green'>ログイン</FONT></P>
<P><HR ALIGN=CENTER></P>
<P><TABLE BORDER=0 WIDTH=27%>
<TR><TD WIDTH=50% BGCOLOR=#CCFFCC><P ALIGN=CENTER>ユーザーID</TD>
<TD WIDTH=50%><INPUT TYPE=TEXT NAME=u_id SIZE=12></TD></TR>
<TR><TD WIDTH=50% BGCOLOR=#CCFFCC><P ALIGN=CENTER>パスワード</TD>
<TD WIDTH=50%><INPUT TYPE=TEXT NAME=passwd SIZE=12></TD></TR>
<TR><TD COLSPAN=2><CENTER><P><INPUT TYPE=SUBMIT NAME=Submit VALUE=送信></CENTER></TD></TR></TABLE></P>
<?
}
?>
なんてので代用できたりする。
435 :
400 :03/03/07 23:33 ID:???
みなさん ありがとうございます がんばります
PHP で吐き出したクッキーってどうやって取得するのでしょうか? $HTTP_COOKIE_VARS 使ってもさっぱりできません。
$_COOKIEは? ていうか皆さんPHPのversionかきませう。
439 :
nobodyさん :03/03/08 05:56 ID:CI2+9VSL
PHP のエラー処理についての質問なのですが、C 等でいう errno に当たるも のを取得するにはどうすればいいでしょうか?例えば、ディスクへの書き込み が失敗した時、ディスク容量の不足かどうかを判定する場合を考えています。 perl なら $! ですが、php ではエラーハンドラの引数から取得するしか無い のでしょうか?
441 :
439 :03/03/08 07:16 ID:CI2+9VSL
また質問なのですが、PHP に安定(stable)なソートは無いのでしょうか? # usort のドキュメントに「安定でない」と注記して欲しいと思いました。
442 :
nobodyさん :03/03/08 07:55 ID:2Y4AuOip
444 :
441 :03/03/08 11:30 ID:???
ほいっと。 1:INFO_GENERAL 2:INFO_CREDITS 4:INFO_CONFIGURATION 8:INFO_MODULES 16:INFO_ENVIRONMENT 32:INFO_VARIABLES 64:INFO_LICENSE -1:INFO_ALL
>>445 ありがとう。倍数なんだね。
他の番号でも変化するね。
>>446 じゃないとorで繋げて複数指定とかできない。
448 :
nobodyさん :03/03/08 15:44 ID:VEDbJ1LO
Windows2000からWindowsXPへAPACHE+PHP+MySQL環境を移行 APACHE 2.0.44 PHP 4.3.1 MySQL3.23.55 基本的にはうまく動いていますが、何故か文字化け。 APACHE2\htdocs 下に作成した.phpを置いてIEでみると日本語が文字化けします。 IEで何度日本語(sjis)にエンコードしてやっても設定がヨーロッパ(ISO) になってしまいうまくいきません。 php.iniなどでデフォルトの文字コードを設定する個所があるのでしょうか? 誰か教えてくださいな。 宜しく
あぱっちのでふぉるときゃらせっとをかえる。 でどう?
>>448 あとphpスクリプトに
・header()で、HTTPヘッダに正しいcharsetを出力。
・出力しているhtmlのmetaでも正しいcharsetの記述を加える
の2点を抑えれば大抵のWebブラウザで問題なく自動判別される筈。
#駄目なやつもあるが
>>450 がいうみたいに、apache1.3以降からAddDefaultCharsetが使えるから
変えてみたら?というよりデフォルトの設定でISO-8859になってるんじゃ?
PHPでタイムアウト処理って可能? 具体的には、別のサーバーにあるファイルをfopen()で読み込みたいんだけど、 たとえば任意の時間(1分間とか)反応がなかったらエラー文を表示させるとかって可能?
455 :
nobodyさん :03/03/09 07:53 ID:yH3m/QY1
windowsなんですけどPHPつかえますか?
456 :
nobodyさん :03/03/09 09:22 ID:vbBiEB0U
>>455 http://www.php.net/downloads.php のWindows Binariesの項で"PHP 4.3.1 zip package"という方を取ってくる。
下の"PHP 4.3.1 installer"の方は一緒に入っているDLL関係が少ないので初めてだとハマる。
Windowsへのインストール方法やそれに沿った解説をしている初心者本が出版されているので、
それを併用しながら覚えていくのが良いでしょう。日本語用の設定もしないと駄目だしね。
458 :
nobodyさん :03/03/09 17:46 ID:0jalCBaQ
PHPのsocketに串を刺したいんですけど、どうすればいいのでしょうか? PHPProxyは作りました。PHPProxyに串を刺すわけです。 串サーバとやりとりするデータの内容とかがわかればいいのかな? 説明しているサイトなどあれば教えてください。 よろしくお願いします。
>>458 >串サーバとやりとりするデータの内容とかがわかればいいのかな?
パスがhttpから始まる位の違い。
460 :
458 :03/03/09 18:17 ID:???
461 :
nobodyさん :03/03/09 21:13 ID:LycIaIFJ
簡単すぎることだと思うのですが、うまい解決策がわからないので教えてください。
XHTMLで書いていて、phpというものを使おうと思ってサイト巡ってスクリプトを
DLしてきたのはよかったのですが、
<? 〜 ?>;
というPHPを埋め込んでもエラーが出てしまいます。
どうも<?xml version="1.0" encoding="Shift_JIS"?>この宣言がまずいらしく、
HTML4.01なら問題ありませんでした。
Shift_JISを使う以上、この宣言をはずすことができないらしく、悩んでいます。
どうやったらXHTMLのままで、phpをエラーなく埋め込むことができるでしょうか?
<?php 〜 ?>としてphpを埋め込んでみてもだめでした。
どうかおひとつ教えてください。
>>394 さんとは似てて違うと思うので・・・
echo "<?xml version=\"1.0\" encoding=\"Shift_JIS\"?>\n";
463 :
461 :03/03/09 21:41 ID:LycIaIFJ
>>462 え〜と、<?xml version="1.0" encoding="Shift_JIS"?>を
<?php echo '<?xml version="1.0" encoding="Shift_JIS"?>'."\n" ?>
もしくは
<?='<?xml version="1.0" encoding="Shift_JIS"?>'."\n"?>
にすればいいのでしょうか?
そのあとは、普通に <?php ?>を書いても大丈夫ってことでいいでしょうか。
465 :
461 :03/03/09 21:59 ID:???
>>463 まだまだ不勉強なので申し訳ないです。
教えていただいた方法でやってみます。
ありがとうございました
466 :
439 :03/03/10 01:51 ID:???
別にいい加減じゃないだろ
>>466 short_open_tagはOnがデフォルトなんだし、それを変更できない環境もあるのだから、
offとするのが筋、いい加減な回答が多いと言う方が筋違いだな。
>468 実はshort_open_tagの(推奨)デフォルト値はOffに何度かなってる。 実際にリリースバージョンでは結局Onで出てるけどね。 #register_globalsの件が頭をよぎったに違いない。 折れも(少なくてもディレクトリ単位の)ディレクティブの設定で 設定して使うのが「筋」だとは思う(個人的なスタイルと違うため)のだが、 IISでISAPI版使ってたりするとメインのiniでしか設定できなかったり、.htaccessで設定が出来ない (はっきり言うと「そんなトコやめちゃえ」なのだが、人それぞれの都合もあるだろうしね) 環境もあるし、echoで出力するのはマニュアルでも書いてある方法なんで "いい加減"は確かに間違いかと。
471 :
nobodyさん :03/03/10 21:56 ID:kQW/LqS/
>>470 php{p}パーソナル{h}ホーム{p}ページ
472 :
nobodyさん :03/03/10 22:14 ID:Y+FtpZSs
474 :
nobodyさん :03/03/11 00:21 ID:UVuXybIb
日付関連で、入力した生年月日が1950年(1970年より前の生年月日で) より前かとの判定簡単に出来ませんか?
>>474 if(生年<1950)
でなんか問題あるのか?
mktimeで戻ってる値を調べれば?
477 :
nobodyさん :03/03/11 00:53 ID:UVuXybIb
フォームから1940-june-02とかで入ってくるんです。 初期設定で条件を$aに代入して日にちまで比較したいのです。 mktime < unix timeだと1970まででは?
479 :
478 :03/03/11 01:00 ID:???
すまん。
>>478 のコードだと4桁のみだね。
3桁に対応させようとすると、
最初の-までのところまでの文字列を取り出せばOKかな。
482 :
nobodyさん :03/03/11 08:56 ID:6kC5wvS4
PEARですか やや苦手。まず負の数でやってみます ありがとうございました
483 :
nobodyさん :03/03/11 09:15 ID:KzRFFkn3
ユーザ関数内で二次元配列をグローバル変数として使いたいのですが、 以下のようにしても、グローバル変数として扱うことが出来ないようです。 for($y = 1 ;$y < 9 ;$y++ ) { for($x = 1 ;$x < 9 ;$x++ ) { global $board[$x][$y]; } } この場合は以下のようにユーザ関数に$boardを引数として渡すことで解決したのですが、 どうにかしてグローバル変数として使う方法はないのでしょうか? function board (&$board) { hogehoge }
484 :
bloom :03/03/11 09:17 ID:BKppFwug
>>483 ヲイヲイ、なんでforの中にglobalがあるんだ?
どうにかして、って普通に
global $board;
じゃだめなのか?
今、メール送信のスクリプト組んでるんですが、 mb_language("Japanese"); mb_send_mail($to,$subject,$body,$header); でやってみると 「糖尿病の予\防や治療につながる可能\性があるという。」 になってしまいます このバックスラッシュを外すにはどうしたらいいのでしょうか EUC-JP使う以外に上手いこと出来る方法があれば・・・
>>486 って言うかメールはJIS(ISO-2022)で送れや。
>>488 ヘッダー見ると
Content-Type: text/plain; charset=ISO-2022-JP
Content-Transfer-Encoding: 7bit
X-UIDL: 7e##!8YD"!??]"!gaA!!
になってますがいけないんでしょうか・・・
なんせ2日前に始めたばかりなもので
もうちょっと厨に付き合ってください
>>487 >>489 マニュアルで stripslashes見つけたので使ってみまつ
492 :
nobodyさん :03/03/11 15:52 ID:adKq/xnz
配列データを固定長で保存したい場合の適当な関数ってありますか? 文字列だと空白で埋めたいのですが・・・
494 :
nobodyさん :03/03/11 16:01 ID:adKq/xnz
>>493 レスありがとう御座います。
sprintfの関数で固定長のNULL「ASCII(0)」はどう表現すればいいのですか。
STR_PAD の連結のパターンもかんがえたのですが。
ちょうどsprintfの話題なんで質問でつ。 PHPの4.2.1なんだけど、 $str = 'test';printf("%010s\n", $str); だと『000000test』ってちゃんと出てくるんだけど $str = 'test';printf("% 10s\n", $str); だと『test』のみ 本当はドットで埋めたいので $str = 'test';printf("%.10s\n", $str); だとやっぱり『test』のみ アレ?なんか根本的に間違ってますか?
>>495 いろいろやり方があると思うが、
substr(str_repeat("."文字数).$str,-文字数);
で、どよ。
カンマ抜け substr(str_repeat(".",文字数).$str,-文字数);
>>495 そこでなぜ
10.10
に頭がまわらない?
ちと困ったので質問。 preg_replace_callbackってclassの中で 第二引数(replaceするルールを作る関数を指定)に classのメソッドを指定する方法って無い? 何をしたいかというと、 ルール作る関数に正規表現でひっかかった以外の 値を持たせたいんだけど、globalにする以外の方法 無いかなぁ・・・と思って。
>>502 マニュアルのNotesに
preg_replace_callback(pattern, array($this, 'method_name'), subject)
ってあるけど、これじゃダメの?
>503 うわ、見落としてた。 助かりました。 PHPBuilderで同じ事を聞いてる人がいるなぁ と、変なところばかり探してWeb版マニュアル見てなかったよ。 ありがとー。
505 :
nobodyさん :03/03/12 10:26 ID:h4TV2949
Win2000とApache1.3.27とPHP4.3.1(CGI版じゃない方)で、 たとえばクライアントが 直接www.hoge.com/hoge.phpにアクセスできなくして、 www.hoge.com/indexというURLにアクセスすると 内部的にwww.hoge.com/hoge.phpにアクセスするようには どうすればよいのでしょうか。 Tomcatならばweb.xmlでマッピングができたのですが。。。
>505 どっちかというと、それはapacheの設定。シンボリックリンクでやる手も。 phpでhoge.phpでリダイレクトかけて云々という方法が取れなくもないが、 hoge.phpもindexも実体がいるし、hoge.phpにアクセスしないと駄目だしね。 hoge.phpからの出力はHTTPヘッダのリダイレクションだけだとしても。
507 :
nobodyさん :03/03/12 11:51 ID:h4TV2949
う〜ん、ちょっとしたことなんですけどねぇ。。。 レンタルの専用鯖だとapacheの設定いじれるんでしょうか…。 あと2chで気になるのはread.cgi/phpとなっていることろです。 read.cgi?phpじゃないんですね。 これどうやってるんでせう…
508 :
nobodyさん :03/03/12 11:57 ID:63/Zc0OA
PHPでUUID取得したいんですが、 何か方法は無いですか? linuxRedHat+Apatch+PHP3
509 :
nobodyさん :03/03/12 13:42 ID:Spo6B9sQ
Parse error: parse error, unexpected '<' in /home/apache/XXXXXXX.com/index.php on line 94398 こんなサイトあったんですが、ネタですかね。 1ファイルで9万行も・・・ ソース拝見したい。。
素晴らしく美しいソースなんだろうな。 じゃないとメンテナンスできないだろ, 9万行超のソースなんか。
>>511 そんなことできたらドキュメントルートなんてバカらしい概念な訳で。
phpをcgiとして使用した場合は phpのメリットは無いんでしょうか?
>>509 関数もオブジェクトも変数もループも知らずに書いた
phpをcgiとして使用した場合は ・Perl/CGIと比較して処理速度の高速化 ・サーバー負荷の低減 これらのメリットは無くなるということですか?
>>507 apacheならmod_rewriteが組み込まれていたらできる。
>>511 alias設定で出来るんじゃなかな。やったことないけど。
詳しくはapacheスレで聞いてくれ。
>>516 cgiとした場合のオーバヘッドが気になるような人気サイトを構築
出来た時点で考えればいいじゃん。
519 :
508 :03/03/13 09:21 ID:???
522 :
508 :03/03/13 15:15 ID:EJo9Pen2
>>520 ありがとうございます。
頑張ってみます。
523 :
nobodyさん :03/03/13 15:34 ID:2CD/32yZ
524 :
nobodyさん :03/03/13 21:09 ID:Am3iEG5g
Zend Optimazer 使うと速くなるってよく聞く。 けど、実行速度は速くなるけど、コンパイルに時間がかかるので 逆に遅くなる場合があると思うんだけど、どうかな?
526 :
nobodyさん :03/03/13 21:26 ID:P49/jdlZ
CCさくらの呪い
529 :
nobodyさん :03/03/13 21:35 ID:sXZYIvtY
こんばんわ、ちょいと本筋にははずれてるかもしれないけどお願いね Emacs21.2.1でPHPのプログラムを書くのにphp-mode.elってのをみつけたんだけど .emacsの設定が見当たらなくて探してます古いものなら出てくるんだけどだれか使える設定知ってたら教えて。
こんばんわ、ちょいと本筋にははずれてるかもしれないけどお願いねEmacs21.2.1でPHPのプログラムを書くのにphp-mode.elってのをみつけたんだけど.emacsの設定が見当たらなくて探してます古いものなら出てくるんだけどだれか使える設定知ってたら教えて。 句読点
531 :
nobodyさん :03/03/13 21:56 ID:BWH/3M/3
>>101 スクリプト(PHPファイル)をEUC+LFで保存し直してみるとか。
532 :
nobodyさん :03/03/13 22:00 ID:BWH/3M/3
すいません、誤爆です。 全読み出来ない時間帯なの忘れてたので最新投稿と勘違いしました。
>>524 そんなこたーない。
ソースコード晒せ。
534 :
525 :03/03/13 23:12 ID:???
535 :
nobodyさん :03/03/13 23:43 ID:9xZX2ID2
<a href=hogehoge?KEY=hhh&ggg>hohoho</a> で、$i = $_GET["KEY"]; などして受け取りたいのですが、うまくいきません。 どうやら、$i = hhhとなっているみたいです。 これを、$i = hhh&gggとするにはどのようにすればいいのでしょうか? アドバイスなどいただけますと幸いです。
>>535 register_globalsをいじる。いじれる権限なら。
538 :
nobodyさん :03/03/14 00:10 ID:boeLlmSC
早速のレス、有難うございます! 試してみます。
>>535 $str = $HTTP_RAW_GET_DATA;
541 :
sage :03/03/14 23:23 ID:FIrcVUHx
>>534 実際にやりとりをするのはEという罠(藁
なんで2chのPHPユーザーって狂信者が多いんでしょうか。 他の言語の話が出て来ると、けなしまくり。(特にPerlが天敵らしい) マナーが悪いと言うか、なんと言うか…。 自分PHPユーザーなんで、見ててこっちが恥ずかしくなる。
>542 ま、余り気にするな。 「○○ vs ××」なんてスレ見てるから そういうのが目に付くだけだから。 仕事でPerlを使わざるを得なかった愚痴とかかもね。 自分の肌に合う合わない言語というのは、やはりあるから。
544 :
nobodyさん :03/03/15 23:23 ID:SKWNhqCY
質問です。 for ($i = 0; $i < 100; $i++) { //ここに10や20などの10の倍数の時に処理をしたいのですが } どうしたらいいのでしょうか?よろしくお願いします。
>>544 $i++を$+=10にしちゃだめなのか?
だめならif(!($i%10))で。
546 :
544 :03/03/15 23:26 ID:???
×://ここに10や20などの10の倍数の時に処理をしたいのですが ○://ここに$iの値が10や20などの10の倍数の時に処理をしたいのですが
if(ereg("0$",$i)){echo"$i<br>";}
548 :
544 :03/03/15 23:55 ID:???
できました。 ありがとうございました。
549 :
の :03/03/16 01:40 ID:Vfoay5Mn
意味的/効率的には if (($i%10)==0){echo"$i<br>";} の方が吉でしょう。
すみません。質問です。 ファイルのアップロードが出来ません。 設定はこんな感じです。 register_globals Off file_uploads On upload_max_filesize 2M post_max_size 8M 以下のようなスクリプトで確認してみたのですが、$_FILES["userfile"]["name"]とか全部空っぽです。 また、phpinfo()内に「$_FILES」に関するような項目がありません。 <form enctype="multipart/form-data" action="upload.php" method="post"> <input type="hidden" name="MAX_FILE_SIZE" value="1000"> Send this file: <input name="userfile" type="file"> <input type="submit" value="Send File"> </form> <? echo "File name " . $_FILES["userfile"]["name"] . "<br> \n" ."File type " . $_FILES["userfile"]["type"] . "<br> \n" ."File tmp_name " . $_FILES["userfile"]["tmp_name"] . "<br> \n" ."File size " . $_FILES["userfile"]["size"] . "<br> \n"; phpinfo(); ?> register_globals Onにして $userfile_name とか見るようにしてもでもだめでした。 PHPのバージョンは4.3.1です。 いったいどうすれば…
551 :
nobodyさん :03/03/16 02:01 ID:hHXJleNM
javaの事についておながいします…。 あるリンクをクリックした時にウィンドウを開きたいのですが、 普通のウィンドウではなく、 ブラウザ機能のついていないウィンドウ(サブウィンドウ?)にしたいのです。 また、開くウィンドウには画像を表示させるのですが、 (リンクが)いくつもあるので、ターゲットの指定もさせたいです。 ご存知の方お願い致します。
java ? script ? スレチガイタチガイ だと思われます。
553 :
nobodyさん :03/03/16 10:07 ID:atBcCAsV
safe_modeがonのサーバで、BASIC認証ができなくなるのですが、バグですか? offにするとちゃんと動きます。当方apache2+PHP4.3.1という環境です。
554 :
553 :03/03/16 10:21 ID:???
正確にはPHP内でBASIC認証による環境変数が受け取れないのです。
4.3.0のchangeに Make PHP_AUTH_* variables not available in safe mode under Apache when an external basic auth mechanism is used. って書いてあったから、できないんじゃないの? 4.3.1は4.3.0にCGI sapiのセキュリティパッチを付けたもの。 BASIC認証を使ってなくて良かった..... というわけで、スクリプトの「バグ」ということになりますた
PHPでバイナリファイル読めますか?
AN HTTPDを使ってPHPの練習をしてるんですが、 $a = 10; print "変数aの値は$aです"; これを実行すると、 Notice: Undefined variable: aです in C:\usr\local\sample.php on line 14 と表示されました。14行目はprint "変数aの値は$aです";なのですが なにが間違っているのでしょうか? print "$a";にするとちゃんと表示されるので'変数a'というのが 問題なのでしょうか?perlでは普通に表示されてたんですが。。
>>558 日本語が悪さをしてるんでしょうかね。素直に.で連結した方が良いかと。
561 :
nobodyさん :03/03/16 22:17 ID:atBcCAsV
>
>>555 やっぱり。。。別の解決策を模索します。。
562 :
nobodyさん :03/03/16 23:04 ID:0EPmf9MB
>>555 てか、バグか??
もともとPHP_AUTHに入っていること自体が気持ち悪かったよ。
$_SERVER[REMOTE_USER]からとるべし。
563 :
558 :03/03/16 23:16 ID:???
>>559 やっぱり聞いておきたいんですが、この現象はどの環境でも起こることなんでしょうか?
それともたまたま自分の環境だとエラーがでただけなんでしょうか?
>>563 $です = "a";
print "$です";
>>558 わかんないって素直に聞いたほがいいよ。
$a = 10;
print "変数aの値は".$a."です"; .で連結ね。
566 :
558 :03/03/17 00:03 ID:???
>>564 それはなんなんでしょうか?
>>565 何を分からないって聞くのですか?連結の仕方は知ってます。
上のようなコードを書いた場合、どのような環境でもエラーがでるのか。
ということが知りたいのです。
少し英語が読めればこんなことにはならないのに。。
漏れの言いたい事は。 $a = 10; print "変数aの値は{$a}です";
スレ違いかもしれませんが他に適当なところが 見あたらなかったのでここで質問させてください。 WEB上で動作する家計簿でオススメのものはありますか?
ネタですか?
ネタじゃないですが・・・ ダウンロード板に行った方がいいのかな? 向こうに行って聞いてみます
576 :
558 :03/03/17 06:46 ID:???
あーなるほど。PHPの場合「変数の値は$aです」とやると「$aです」というように 「です」まで変数の名前と判断されてエラーが出てしまうということですね。 Perlではこのやり方でちゃんと$aだけを代入してくれたんですがPHPは判断してくれないんですか?
>>576 つか、エラーメッセージそうでてるやん。アフォか。
>>576 わがままちゅうか、頭が固いというか。
これはPHPの仕様。
[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*
マニュアル嫁
>>576 そこまで言うとは思わなかった。
${a}です。
ぐらいは書けるやろ?PerlはPerl。PHPはPHP。
580 :
558 :03/03/17 08:52 ID:???
だからやり方は分かってるって。仕様か仕様じゃないかを聞いたの。
558は女か?
つまり、PHPでは日本語も変数名に使える。
「perlでは」とかいい加減なことを言ってるとそのうちはまるぞ。
ちわっす、PHPからメールクライアントって呼び出せますか? 今PHPとPstgreSQLでプログラム書いているんだけど 入力フォームで名前とかメールアドレスを記入してApache経由PostgreSQL 行で、データ登録までは出来たんだけど登録されたメールアドレスにメールを 送りたいんですがPHPからsendmailデーモンを起動したり操作できるんでしょうか教えてちょうだい。
>>558 こんな基本的な所で引っかかるのか?
やり方がわかって仕様が分かってるなら意味わかるだろ?
バカかPerl中毒症のどっちかだね。
おまえは素直になるかPerl使い続けたほうがいいよ。
586 :
nobodyさん :03/03/17 15:55 ID:htdRXdVF
誰か知恵を貸して下さい。 Web上で複数のIDとパスワードを設定ファイルに持たせておき 1つのIDとパスワードを入力して、プルダウンからサイトを選択すると IDとパスワードが個々のサイトのものに変換され ログインするプログラムを作成しています。 変換したIDとパスワードをPOSTするところまでは問題なく出来たのですが POSTするのがブラウザではなく、プログラム側になるので どうやらセッション関係でエラーが発生する感じになっています。 プログラムが送るPOST情報を、ユーザのブラウザが送ったように 見せかけるにはどのようにすればよいのでしょうか?
>586 自分自身にpostメソッドを撃てばいいじゃん <form action="<?php print($_SERVER["PHP_SELF"])?>" method="POST"> ボタンを押した時に起動させたかったら if (isset($_POST["sbmt"])) { なんて感じで加えていけばいいし。
558の解析結果。 回答者を怒らせていいことは絶対にない、ということが理解できていない点から、 1. いつも、周りのやつにほいほいと何でも聞いて、幸せに暮らしていた。 口調が、〜わよ。という点から、 2. 年齢は23〜29歳、性格は荒い。 こんな改造が必要になる物として考えられるのは、 3. 掲示板、チャットなど、デザインが命の物。 以上、1.2.3から、偉そうな女で、自己中サイトの管理人であるということがわかる。
変数に使える文字を把握しておくのはスクリプトの基本でしょう。
マニュアル見れば
>>578 が書いてあるのに
まぁ558についてはもういいじゃないですか。逆切れされても何だし。 それより藻前ら、クラスメソッドを動的に定義する方法知りませんか? クラス変数が動的に追加できるならメソッドだって動的に追加できるはず!
>>591 >動的に追加できるはず!
100歩譲って関数ポインタってとこだろうか?
>>584 mail()とかmb_send_mail()で、って話じゃないのか?
>>586 cURL関数でいける。
594 :
591 :03/03/17 20:57 ID:???
>>592 あ、なるへそ。いいヒントいただきました。ありがとう。
>>576 >Perlではこのやり方でちゃんと$aだけを代入してくれたんですが
"ちゃんと"と書いてるけど、それPerlでもパースが上手くいかないことないか。
最近のUnicodeに対応したperlでは、仕様上もOKになったの?
>>558 printf ('変数aの値は'.%d.'です',$a);
普通はこうじゃないか・・・?
>593 584ですやっぱPHPでメール関係のコマンドもあったんですね 今PHPマニュアルで確認しやしたわりと簡単につかえそうだね サンクス使い方は自分でしらべまふ。
598 :
558 :03/03/18 08:19 ID:???
>>595 ごくまれにあったかもしんないけどPerlでは{}でくくらなくても出来ましたよ。
599 :
591 :03/03/18 10:13 ID:???
>>599 じゃあ俺は普通に一票。
文字列の中の変数名が評価される言語なんてな・・・。
>>600 printf文でわざわざ変換指定子を追い出してたら、意味ないやん。
それなら echo '変数aの値は'.$a.'です'; でええやろ。
>>601 ああ、printfか、そりゃすまんかった。
"'変数aの値は$aです"
だと思ってたYO!
確かに変すぎだ。
603 :
nobodyさん :03/03/18 11:07 ID:s+XgHl7g
perlのインターネットゲームはいっぱいあるのに、なんでphpのインターネットゲームってないの? こっちのほうが低負荷なら絶対こっちのほうが無料鯖の負担とかも少ないし良いとおもうんだけど。
605 :
nobodyさん :03/03/18 11:40 ID:keYRNXEB
少しずつPHP版のWebゲームもできてはいるね。 >無料鯖の負担とかも少ないし良いとおもうんだけど。 そもそもiswebやtripodなどPHPに対応していない無料鯖が まだまだ多いのが現状。
と、言うか劇的に負荷が軽減されるわけで無し。
>>606 CGIであるかないかの差は劇的だと思うぞ。
>>607 「ならばmod_perlを。」
とかいわれるオチ。
まぁPHPのがPerlに比べて使われてきた期間がみじかいからねぇ。
>>607 Apache のメモリの喰い方すごいよね。
CGI版萌え〜 モジュール版萎え〜
perlはいろいろ使い道がある phpはWebプログラムにしかつかえん・・・ この差はでかい。 perlで遅い遅いっていう香具師は mod_perl使えないへぼプログラマ まぁレンタルサーバもmod_perl入ってないところが多いのがちと名残惜しいが 自鯖もてるのならんなの関係ない
>>610 >perlはいろいろ使い道がある
>phpはWebプログラムにしかつかえん・・・
そしてここはWebProg板。
いろいろって言ってもちょっと高機能なシェルスクリプト位だからなぁ・・・。
別にルビーでもパイソンでも良いわけで。
>>611 まぁね
最近PHP厨がうざいからちょっと言って見たまでさ
PHPをCGIとして使ってる香具師っているか?
友達がPerlは時代遅れ 今やるのならPHPって言ってたんですけど どっちがいいんでしょうか?
>>613 Perlに比べてPHPのが書きやすいからお勧めっていったらお勧め。
時代は関係ない。
そういやCGI版としてPHPを入れたらコンソールでも扱えるんだっけか。
616 :
ページの有効期限切れ :03/03/18 18:47 ID:frl1VUIP
Apahe1.3.27とPHP4.3.1で作ったアプリなんだけど FORMでブラウザの『戻る』するとFORMの内容が消えち ゃいます。 んで、『進む』すると「警告 : ページの有効期限切れ」 が表示されてしまう。 同じスクリプトでPHPの4.2.1だとそんな問題は起こらないので PHPの設定でこうなっていると思うんだけど? わかる方いますか?
>>615 stdoutはともかくとしてstdinはどうするの?
RAWPOSTDATAとかが書き換わるのかしらん?
PHPをCGIとして扱うってなに?PHPって掲示板とか作るためにあるんじゃないの?
620 :
616 :03/03/18 19:07 ID:???
自己れすです。php.iniの session.cache_limiterをprivateにすれば直るんですね。 お騒がせすますた。
Ruby! Ruby!! Ruby!!!
>>622 そのままの意味だと思うけど。
PHPの場合、Apacheにモジュールとして組み込んで使っている人が多いでしょ。
624 :
nobodyさん :03/03/18 20:40 ID:Jzir57v5
>>622 は、掲示板は全てCGIと思ってるんですか?
PHPの通常使用はapacheのモジュールとして動作するから
通常使用がCGI経由で動作するPerlより、PHPは高速なんだって。
>>625 >CGI経由で
これも不思議な言い回しだけどな。
CGIとPHPはどう違う? PHPは通常のCGIとしても使用できますが、PHPモジュールをApache サーバに組み込むことにより、Perl/CGIと比較して処理速度の高速化、 サーバ負荷の低減を実現することができます
>CGIとPHPはどう違う? プログラムと各種情報をやりとりするためのインターフェース規約とスクリプト言語
│モジュール. │ CGI │ ──┼─────┼─────┤ Perl │ mod_perl │ Perl/CGI .| ──┼─────┼─────┤ PHP. | mod_php .| PHP/CGI │ ──┴─────┴─────┘
WEBサーバープログラム書いてるんだけど 会員登録のときに、いたずらを避けるために 仮登録(メアド、名前くらい)して、そのメアドに本登録するときに必要なパスワードをメッセージに書いて送りたいんだけど、もし無効なアドレスであれば マニュアル読んだらmail()関数の5番目のパラメータで additional_parameter は、MTA のコマンドラ インパラメータです。sendmailを使用する場合に正しいReturn-Pathを設 定する場合に便利です。 成功時にTRUE、その他の場合 FALSEを返します。 っていうのがあるんだけど、これってReturn-Pathに設定したアドレスに TRUEとかFALSEって書いたメールが届くってことなのか? なんか違うきがするんだけど、知ってたらおせーて。
mod_php まさに今最も注目されいるのがこれ。 mod_perl 実はmod_phpよりも速いのだが、セーフモードみたいのがないから 実用的じゃないらしい。 Perl/CGI かつての王者。数年後には死んでいるのが見えます。 PHP/CGI 使うアフォはいないだろう。
>>632 PHPの言語仕様がPerlより好きなので使ってますが。CGI
>>631 試せばわかると思うが、
普通にリレー先からエラーメッセージが帰ってくる。
>635 サンクス ためしてみぃよーっと^^
>>634 CGI版だとコンソールから使えたりまさしくスクリプトとしても使えるのですよ。
またPerl叩きか。 PHPユーザーは他の言語叩くのがお得意ですね。
PHPをApacheのモジュールとして使うには自鯖にするかそういうのを許可してる 有料サーバじゃないと無理だよね?
PHP/CGIとPerl/CGIではどっちが速いの?同じくらい?
>>640 同等の動作環境ならperlの方が一般に早い。
PHPのメリットは、デザイナにぶつを投げられる点だと思う。
perlだとどうしてもデザイナとこちとらでファイルがぐるぐる回りになる。
(IISだと何かあるらしいが、使ったことがない)
>>641 だうと。それ相応のライブラリを使えば充分可能。
素人がいい加減なこと言うものじゃないよ。
要は適材適所&顧客の都合(w
掲示板とかを作って配布してるんですがこの程度だったら PHPでもPerlでもどっちで作っても同じようなもんですよね? PHPはHTMLの中にちょこっと記述することが出来て結構気に入ってるんですが
>>642 そういうならPHPと同等以上に分離可能なperlのmodule名を挙げてみろよ。
おれはもともとperlのほうがありがたい。
>>644 お客さんにもよるけど HTML::Template とかはいかがでつか。
逆にPHPで HTML::Template 並に分離可能で軽いライブラリを教えて欲すぃ。
Smarty はちょっと重いと思う。
重い重いっていったい何kgなんだよ!!
>>645 HTML::Templateを使ったことあるなら、あれをGoliveやDreamweaverで
デザイナにいじらせるのは無理だということはわかってるはず。
あんたのレスはただのまぜっかえしにしかみえない。
648 :
nobodyさん :03/03/19 11:09 ID:CrnUAM4A
>>645 HTML::Template も Smarty も使ってるけど、Smarty が重いとは思えないけどな。
>>588 今更ですが別の解決策。
print "変数aの値は$a です。";
変数名の後に半角スペースを付けると解決できる罠。
但し表示にもスペースが反映されるのが問題だが。
考えたの俺じゃないけどね。
>>649 PHPって${a}
こういう書き方出来ないの?
652 :
651 :03/03/19 12:28 ID:???
653 :
nobodyさん :03/03/19 12:51 ID:8OO+f4X+
>>650 いや、普通にできるよ。${a}
>>645 簡単なテンプレを自作しる。
これで十分なんじゃないか?
$templateファイルに記述されている%_変数名_%がその変数名の値に
置き換わってグログロと出力メモリも苦ワン。
$TPL = fopen($template,'r');
while(!feof($TPL)){
$line = fgets($TPL);
$line = preg_replace("/%_(\w+)_%/e","$$1",$line);
print $line;
}
fclose($TPL);
>>653 そうだよなぁ 何で半角スペース入れたり .で連結したりとか
言ってるのもいるしよくわからんな・・
$a = 10;
echo "変数aの値は${a}です。";
printf ("変数のaの値は%dです",$a);
特に問題ないのだが PHPのバージョンによって
動作が違うのか?
>>654 {}の使い方知らなかったPHP厨ばかりだったんじゃないの?sage
656 :
nobodyさん :03/03/19 16:55 ID:D5YXXQfR
PHPでPerlでいうところのグローバルマッチをしたいのですが、可能でしょうか? Perlでは while($text =~ /($mail_regex)/go){ push(@data,$1); } とすると@dataに$mail_regexにマッチするデーターが一括して入りますがこれと同じことをPHPでしたいのです。
PHPをはじめようと思うのですが大丈夫でしょうか? パソコンの知識はギリギリ2ちゃんねるに来れたぐらいです。
658 :
nobodyさん :03/03/19 17:29 ID:D5YXXQfR
preg_match_all
659 :
nobodyさん :03/03/19 17:29 ID:D5YXXQfR
ですね
>ギリギリ2ちゃんねるに来れたぐらいです。 ギリギリってどんな状態だ(w
ギリギリ
>>643 データベースと連携して使えばPHPが楽。
665 :
nobodyさん :03/03/20 20:26 ID:4HfAvm7S
cURLに関して質問です。
例えば、www.hoge.com/curl.php にアクセスして以下のスクリプトを実行させると
<?php
$ch = curl_init();
curl_setopt ($ch, CURLOPT_URL, "
http://www.google.co.jp/ ");
curl_setopt ($ch, CURLOPT_HEADER, 0);
curl_exec ($ch);
curl_close ($ch);
?>
画像が相対指定の場合表示されなくなるんだけど
相対指定の場合でも、うまく表示させる方法ってありますか?
666 :
nobodyさん :03/03/20 22:29 ID:I/iiqEJg
PHP覚えたいんだけど、どれくらい期間かかるでしょうか? もちろん人によると思うけど、平均的に。
10日で
>>666 マジレス
他の言語をどれくらい知っているかによるんじゃない?
Perlとか知っていると早い。似てるから。
>666 私は元々Perlが出来たので、 1日程度で掲示板ぐらいは作れるようになりました。 DBはまだ勉強中だけど。
672 :
nobodyさん :03/03/21 01:27 ID:WHiz79q/
file_get_contents('hogehoge.txt'); でファイルの読み込みをしているのですが、ファイル名をブラウザから任意に 選択可能にしたいと考えています。 ブラウザからパスをポストして、$hogehogeに格納して、 file_get_contents($hogehoge); としてもうまくいきません。 file_get_contentsの使い方を調べてみたのですが、 file_get_contents(string filename [, int use_include_path])の int以下の記述の仕方がよくわかりません。 素人な質問で恐縮ですが、アドバイスなどいただけますと幸いです。
taint!
>>672 何が「どうもうまく」いかないのか書けよ。
ちなみにこの関数はPHP4.3.0以降でないと使えんよ。
use_include_path は 1にすると、include pathも検索するようになる。
675 :
nobodyさん :03/03/21 13:31 ID:sQQisTRy
以下のようにして、条件にあったデータの検索をしたいのですが、 --- $query = "select * from tb_bibliography where \'$search_c\' like \'$search_t\'"; $result = mysql_query($query); $num = mysql_num_rows($result); ---- 次のような、エラーが出てしまいます。 Warning: mysql_num_rows(): supplied argument is not a valid MySQL おそらく、$queryの書き方がまずいと思うのですが、どのように 修正すればいいのでしょうか?また、「%」をつかった場合は どのように記述すればいいのでしょうか? 質問ばかりで恐縮ですが、よろしくお願いいたします。
>675 なんか微妙に勘違いしてるっぽい…。 $query = "select * from tablename where fieldname like '%search%'"; こんな感じかと。 テーブルやフィールドの名前がmysqlの予約語に含まれてるなら `tablename` みたいにする。
半角スペースを↓ $str = str_replace(" ", " ",$str); に変換すると同じように ダブルクォーテーションを文字コードに変換したいのですが、 $str = str_replace(""", "?",$str); だとエラーが出ます。どう記述したらいいのでしょうか?
679 :
nobodyさん :03/03/21 14:11 ID:sQQisTRy
ありがとうございます。 $query = "select * from tablename where $fieldname like '%$search%'"; fieldnameとsearchを変数にして試せあせていただいたのですが、やはりエラーがでます。 まだ、どこか間違っているのでしょうか?
しかし、なんだな。
>>675 のエスケープさせる必要のない""内の'をエスケープさせているヤシが居ると思えば、
>>678 の"""と3つ並べて平気なヤシもいる。
682 :
nobodyさん :03/03/21 15:00 ID:sQQisTRy
勉強不足ですみません。 $query = "select * from tablename where $fieldname like '%$search%'"; やはり、これでもだめなんでしょうか。。
>>652 ぱっと見期待できそうだ。でも次の仕事にゃ間に合わないなあ。
匿名で情報の交換ができるという意味では
ここはなかなかいい場所だと思うんだが、
いかんせんおれにはノイズがきつすぎる。
撤退することにするよ。
>>683 まぁ、懲りずにまたおいで。なんか最近高校や中学校が休みに入ったみたいでさ。また4月以降きてくれよ。
どうして単発スレッドを立てたんですか?その理由を教えてください。 返答次第では私が開発した全30種類の「ポニーちゃんの大冒険ライブラリ」すべてのスレッドを立てる所存です。
>680
あー、フォローサンクス。
実行部分気にしてなかった(苦笑
あらかじめmysql_select_dbしていれば指定いらないんだっけ?
最近の小発見。
PHP4.3.0で
var_dump(parse_url("
http://example.jp?hoge=ayaya "));
としたら
["host"] => "example.jp?hoge=ayaya"
だったのがcvs版だとちゃんと
["host"] => "example.jp"
["query"] => "hoge=ayaya"
になってた。
この違い(バグ?)に気がつかず、かなり長時間はまっちゃったよ…。
>>681 VBから入ってくるとそうなる。>"""
この間ASP(VBS)で作る羽目になったが、細かい部分の違いの方が気になって
ちょっと体質に合わんな。JScriptだとそうでもないかも知れんが。
件の部分はエスケープは「¥」ということだけだが、
678は他でもポカすると思われるので、マニュアルをちゃんと読むこと。
ああ、VBだとしても""""だな
>>686 >あらかじめmysql_select_dbしていれば指定いらないんだっけ?
>>687 VBから入ってくるとそうなる。>"""
ふたつまとめて
へ ー そ ー な ん だ ! (^^;
しかし、"""してなんともおもわないのなら、諦めた方がいいと思うよ。
で、'"'もありだよ。
>>682 sql的には間違っていない。
>>688 かぶりんこ。
ま、俺は一生VBに関わらないと誓いました。
691 :
メンテのし易さ :03/03/21 17:27 ID:pOguTMzc
私Perl使いなのですが、最近新しいWebProg作成の案件があって、 PHPでやろうか検討中です。 処理速度や言語の学習時間は気にしません。 また、PHPでもDB接続やアプリケーションセッションの管理、表示処理と ビジネスロジックの分離はできるものと思っています(違うかな?) 開発工数の短縮と出来上がったコードのメンテのし易さ(スクリプト の可読性)を主眼に、PerlとPHPの良し悪しを教えてください。
692 :
682 :03/03/21 17:56 ID:sQQisTRy
すみませんでした。 本題とは関係のない私のミスでした。おかげさまで、動くようになりました。
694 :
PHP長所新車 :03/03/21 18:34 ID:F7U+UqHW
質問です。だれか教えてください。お願いします。 フォームにTESTという文字を入力して決定ボタンを押したら、 内容がTESTと書いてあるnantoka.txtというtxtファイルを 作成するPHPはどのように作ればいいのでしょうか? 説明めちゃくちゃ下手糞でごめんなさい。 要はフォームに「なんじゃこりゃ」と入力したら nantoka.txtが作られ、それを開くと「なんじゃこりゃ」 と書いてあるようにしたいんです。 まじでだれか教えてください。 なんかわけのわからない質問ですいません。
>>694 どこまで作ってどこで詰まったのか書くよろし。
1. フォームデータ受け取り
2. ファイルオープン
3. ファイル書き込み
4. ファイルクローズ
5. 画面表示
>>694 意味はわかるがそれくらい自分で勉強できないでプログラムを趣味や仕事にするのは危険だと思われ。
安易に答えを提示する「初心者つぶし」からの回答でも待ってください。
697 :
PHP長所新車 :03/03/21 19:03 ID:F7U+UqHW
>>695-696 正直言うと、694自身も今作成中のスクリプトの一部で
これに関してはまったく作ってないです。
3が特に分からないです。
PHPをかいてるのが今日が初めてなんで、
695さん696さんが思っている以上にかなりの知識のなさです。
コンピュータ関係のバイトで、あるスクリプトを作って
くるように言われてて、試行錯誤いろいろ調べ、本も見たのですが、
上記の部分は現時点ではどうすればいいのか結局
わからなかったので、ここに書かせていただきました。
∧_∧ ( ´;^;ё;^;)<これからも僕を殺して下さいね( ´;^;ё;^;)。 =〔~∪ ̄ ̄〕 = ◎――◎ デブおた山崎渉
699 :
PHP長所新車 :03/03/21 19:19 ID:F7U+UqHW
どんな関数を使うかだけでも教えていただけないでしょうか?
703 :
702 :03/03/21 19:29 ID:???
>697 >694自身も今作成中のスクリプトの一部で その書き方だとニヤッとする香具師が折り以外にも多数いると思う(笑 まあ、さっきの関数の使い方を調べて見れ
>>699 fairu_kakikomi("hoge");
705 :
PHP長所新車 :03/03/21 19:32 ID:F7U+UqHW
>>700-702 なるほど。丁寧にありがとうございます。
おっしゃもうひとふん張りするか。
本当にどうもでした!!
>>703 なんででしょ?
706 :
nobodyさん :03/03/21 19:41 ID:5jNBqUYZ
.netに負けるな!
708 :
nobodyさん :03/03/21 20:39 ID:wEEgu7v2
$tmplの中の<loop>***</loop>で囲まれた値を取り出したい。 Perlではこんな風にやってたんだけど、PHPではどないにするんだ? $tmpl =~m[<loop>(.*?)</loop>]si; $head = $`; $loop = $1; $foot = $';
710 :
初心者 :03/03/21 23:26 ID:???
mb_ereg_replace()関数で \0 で置換する文字列を 加工する事ってできる? $msg = "結果:test1"; $msg = mb_ereg_replace(':test[^<>[:space:]]+[[:alnum:]]{0,2}',"<a href=\"\\0\">\\0</a>",$msg); print($msg); 結果<a href=":test1">:test1</a> 本当は以下の様にしたい。 結果<a href="1">:test1</a>
711 :
nobodyさん :03/03/22 02:08 ID:ezlaWtaq
ブラウザからローカルディスク内のテキストファイルを任意に選択でき、 そのファイル全体を文字列に格納するにはどのようにすればいいのでしょうか?
>711 普通にuploadしたファイルを開いて読んで変数に代入してください。 んなもん質問する事ではないよ。
714 :
初心者 :03/03/22 02:30 ID:???
ereg_replace()の中で$1や$2の使い方を
分かりやすく説明出来る方います?
http://www.php.net/manual/ja/function.ereg-replace.php >例 1ereg_replace()の例
>$string = "This is a test";
>echo ereg_replace (" is", " was", $string);
>echo ereg_replace ("( )is", "\\1was", $string);
>echo ereg_replace ("(( )is)", "\\2was", $string);
これじゃ訳わかんねーよ(´・ω・`)ショボーン。
>>710 なぜ故に\0なのか? なんか勘違いしていないかい。
もう少しマニュアルを嫁
$msg = mb_ereg_replace(':test[^<>[:space:]]+([[:alnum:]]{0,2})',"<a href=\"\\1\">\\0</a>",$msg);
これでいける筈。
いつからここが初心者スレになったのかと(ry
なんか最近かぶりギミー
>>716 要点が絞られていれば、俺的には許せる範囲なんだけどな。
>>715 よくみりゃ間違っている。マッチさせる意図がいまいち不明なのだが、
$msg = mb_ereg_replace(':test([^<>[:space:]]+[[:alnum:]]{0,2})',"<a href=\"\\1\">\\0</a>",$msg);
かな。
>>717 でも、名前欄に初心者と書くのは許せんな。
初心者なら初心者のスレが用意されているというのに…。
720 :
711 :03/03/22 03:18 ID:ezlaWtaq
(ウェブ)ブラウザからファイルを選択というのは、 ファイル選択のためのブラウザからローカルフォルダの ファイルを選択するということです。 フォームを使って、ファイルを選択すると、フルパスが得られますが、 そのまま、file_get_contents()に引き渡していいのでしょうか?
>>719 まぁね。
先程MLにも HELP! と書かれた投稿があったけど、
なんかかまってクレクレ金正日的瀬戸際投稿みたいだしなぁ。(w
>719 それをnobodyで書く香具師も同じレベルだ罠
>720 >ファイル選択のためのブラウザからローカルフォルダの 「ファイル選択のためのブラウザ」って? >そのまま、file_get_contents()に引き渡していいのでしょうか? やってミレ、どうなる?phpがどういう場面で使われる言語かを理解し ていれば聞くまでもない質問と思われ。
phpでスレッド使うにはどうすれば良いのでしょうか? fsockopenが妙に遅いので並列化したいのですけれど。
725 :
711 :03/03/22 04:02 ID:ezlaWtaq
>「ファイル選択のためのブラウザ」って? うまく言えませんが、たとえば、フォームで、 <input type="file" name="doc_file"/> とすることによって、ファイルを選択できるようにすることです。
>725 $_FILES['doc_file']['name']でアップロードされたファイル名が取得できるから それにphp.iniで設定してるテンポラリパスでフルパス保管してfile_get_contents()に渡せばok。
728 :
PHP長所新車 :03/03/22 11:18 ID:p2AmiiWs
昨日はどうもです。 さて、昨日はあれから上手くできて非常にハッピー気分で 家路についたのですが、 今日、またバイト先でテンヤわんやになっています。 はっきり言います。 .forwardを自動作成するスクリプトを作ろうと思っていました。 んで、昨日の方法で.forwardを自動作成するのには成功しました。 ただ、それをホームディレクトリに移すのに非常に困っています。 単純にパーミッションを777にすりゃいいやと思っていましたが、 ホームディレクトリを777にするのはセキュリティとかの面から非常に厳しいものなんでしょうか? そこらへんの概念がまだよく分からなくて。 スクリプトの流れを説明すると、 フォーム入力(メールアドレス) ↓ ファイルオープン ↓ ファイル書き込み(フォームで入力したメールアドレス) ↓ ファイル閉じ ↓ ファイルを.forwardという名でコピー こんな感じで考えてたんですが、 みなさんから見て、このスクリプトはどうなんでしょう。 クソなのは自分でも分かりますが汗 だれかご返答お願いします。
729 :
682 :03/03/22 11:35 ID:crW9s9K2
>726 ありがとうございます。成功しました。 $_FILES['doc_file']['name']を全く知りませんでした。 勉強不足ですね。
>>728 なぁ、PHPって誰の権限で動いてるの?
731 :
PHP長所新車 :03/03/22 12:22 ID:p2AmiiWs
>>731 ・・・何でそんなみょうちくりんな設定に?
733 :
PHP長所新車 :03/03/22 12:28 ID:p2AmiiWs
>>732 すんません、質問の意味はきちがえてるかもしれません。
ていうか質問の意味がよくわからなかったりするような気がします。
いや、マジ初心者ですんません。」
734 :
PHP長所新車 :03/03/22 12:38 ID:p2AmiiWs
権限てなんでしょう汗
phpinfoで調べれ。
PHP/CGIでsuEXECにすれば安全です
737 :
PHP長所新車 :03/03/22 13:01 ID:p2AmiiWs
phpinfoのどこを見ればいいんでしょう。聞いてばかりですんません
738 :
PHP長所新車 :03/03/22 13:37 ID:p2AmiiWs
>>734 PHP以前の話。LinuxなりUNIX関係の資料読んで出直して来い。
740 :
PHP長所新車 :03/03/22 14:19 ID:p2AmiiWs
741 :
PHP長所新車 :03/03/22 14:24 ID:p2AmiiWs
.forwardをホームディレクトリに作ろうとしたら、 ホームディレクトリのパーミッションを変更するしかないですよね?
742 :
PHP長所新車 :03/03/22 14:28 ID:p2AmiiWs
でもレンタルサーバなんかの場合はホームディレクトリの パーミッション変更できない場合も多々ありますよね。 そこんところどうなんでしょう。
あらかじめ、.forwardを作っておき、書き込み宣言を与えていればいいじゃんか。
744 :
PHP長所新車 :03/03/22 15:41 ID:p2AmiiWs
745 :
PHP長所新車 :03/03/22 15:44 ID:p2AmiiWs
てことは ディレクトリのパーティションが700でも その下のファイルが777だったら そのファイルを書き換えることができるのですか?
746 :
PHP長所新車 :03/03/22 15:45 ID:p2AmiiWs
間違えた恥 パーティション→パーミッション
>>743 なぁ、otherに書き込み権限のある.forwardなんて怖すぎないか?
748 :
PHP長所新車 :03/03/22 15:47 ID:p2AmiiWs
>>743 それもそうじゃん!!ってか俺はあぽですか?
こんちわっす、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という数字が導きたいのだがどうしたらいいかわかりません。 続きのプログラムはどう書いていいのか分かりません。 教えて下さい。
こんちわっす、2ch学園web板幼稚園の質問ですけど こんちわっす、2ch学園web板幼稚園の質問ですけど こんちわっす、2ch学園web板幼稚園の質問ですけど こんちわっす、2ch学園web板幼稚園の質問ですけど こんちわっす、2ch学園web板幼稚園の質問ですけど こんちわっす、2ch学園web板幼稚園の質問ですけど こんちわっす、2ch学園web板幼稚園の質問ですけど こんちわっす、2ch学園web板幼稚園の質問ですけど こんちわっす、2ch学園web板幼稚園の質問ですけど こんちわっす、2ch学園web板幼稚園の質問ですけど
$sql = "select hougaku from hoge where hougaku = '$houi' ;"; ですた,すまそ。
>>749 select id,hougaku from hoge where hougaku = 'houi'
>>749 マルチしてんじゃねえよ
SQLの問題。
select no,hougaku from hoge where hougaku = 'houi'
>>750 ウザイ
PHPの処理内に 書き込み宣言を与える .forwardの編集 書き込み宣言をなくす でいいような。 chmodが使えればだけど…
>>754 なぁ、パーミッションを誰でもほいほい書き換えられるならパーミッションの意味はないわけで。
>752ありがと select id,ってのがちょっと分かんないんだけど? Ssql = (" select no,hougaku from hoge where hougaku = 'houi'"); こうでいいっすか?
757 :
PHP長所新車 :03/03/22 16:14 ID:p2AmiiWs
758 :
nobodyさん :03/03/22 16:16 ID:A41eVY2R
759 :
nobodyさん :03/03/22 16:23 ID:vlHFEXy6
初心者質問で悪いんですが フォームタグや直接URLに付加したパラメータを取得して表示できません。 printでもechoでも駄目だったんですがどうしてなんでしょう? 取得して表示は単にprint $test; てな1行でいいんですよね? anHttpdと組み合わせています。
できましたありあがと
761 :
PHP長所新車 :03/03/22 16:25 ID:p2AmiiWs
今、ちょっと思ったんですけど、 .forwardって空白にしておいたら転送はされずに .forwardファイルがない状態として扱われるんですかね?
>>759 質問の意味がわからんが、$_GET[test]、$_POST[test] じゃ、あかんの?
>>759 とりあえずその古い本なりサイトなりを見るのはやめるべきかと。
そうか、もう春休みだからか・・・
春厨がいっぱい
>>761 大抵の実装はそう。だけどそれはPHPの質問ではニャイ
768 :
nobodyさん :03/03/23 15:23 ID:Cga2txVh
PHP-4.2.1 を cgi モードを使ってるのですが、 header() が動作しません。 #!/usr/bin/php を削除して $ php index.php だときちんと HTTP ヘッダを書き出してくれるのですが。 何が問題なのでしょうか?
769 :
nobodyさん :03/03/23 16:38 ID:y8MzfBLq
最近PHPをはじめた者ですが、質問があります。 C++とかのクラスだと、privateなどの制限された空間があるから インターフェースであるメンバ関数の実装の必要性はあると思います。 一方でPHPは保護された空間がクラスには存在しないので、 メンバ関数の必要性はC++などよりも薄まるような気がします。 ここにおられる方はかなりPHPを使ってらっしゃると思いますが、 クラスにメンバ関数を実装するポリシーはどのように持ってますか? メンバ変数への単純な代入にもメンバ関数を実装しますか? それとも一定の操作を行った後にメンバ変数に代入を行う必要がある場合のみ、 メンバ関数を実装しますか? 自分は少し悩んでたりします。 今後の参考にしたいので、ご意見をお聞かせください。 マニュアルを読んだ限りクラスにprivateなどの保護が無かったようなので、こんな質問です。 もしかしたらクラスに保護の概念はありますか…? あったら、全くもって見当違いの質問です。スミマセン。
771 :
nobodyさん :03/03/23 18:24 ID:YYgYrLyX
mb_convert_encodingの"EUC-JP"との"UTF-8"との変換がうまくいきません。 変換したい文字は「連邦」です。 困ってます。
>>771 >変換したい文字は「連邦」です。
SJISと。
>>771 関係ないけど、GoogleAPIの人?
776 :
773 :03/03/23 20:23 ID:YYgYrLyX
>>772 さん
SJISがどう関係してくるのですか?
「表」(UTF-8)がクエリで来て、
$query = mb_convert_encoding($query, "eucjp-win", "UTF-8");
結果は「表」(UTF-8)のままです。
「表示」だと文字化けせずに「表示」(EUC-JP)と変換されます。
しくしく。
777 :
nobodyさん :03/03/23 20:30 ID:YYgYrLyX
776は771です。スマソ
778 :
nobodyさん :03/03/23 20:36 ID:YYgYrLyX
>>775 こんにちは。
SOAPが原因じゃなくてmb_convert_encodingに何かあるんじゃないかと。
ひょっとして私は激しく既出な質問をしているのでしょうか。。。
mb_detect_encodingが判定をミスってるということもあるのかもしれませんが…
>>769 PHP5待ちの為、クセをつける為に使ってますが何か?
($query, "eucjp-win", "UTF-8")ここがちがう
mb_internal_encoding("UTF-8"); とかしてみたら?
782 :
nobodyさん :03/03/24 01:36 ID: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だった場合同じ問題に出くわすはめになるです。
もう寝よ。
cookie&フレーム気持ち悪くて、使う気がしない厨キタ━━(゚∀゚)━━!!
785 :
nobodyさん :03/03/25 13:37 ID:CVcoKJbJ
>>769 >クラスにメンバ関数を実装するポリシーはどのように持ってますか?
>メンバ変数への単純な代入にもメンバ関数を実装しますか?
インターフェースになるメンバ関数とは getter, setter メソッドのことでいいのかな?
自分の場合ですが、(他の言語でもそうなのだけど)
そのクラスを利用する人がメンバ変数を参照する必要があるかどうかを基準に判断しています。
public なメンバ変数へのアクセスのみ実装しています。
クラスのインスタンスから直接メンバ変数にアクセスするようなコードはさけるため。
private なメンバ変数へは、外部から参照する機会少ないはずなので、
実装するメリットはあまりないと思います。
スレッドを切らないで&全角なら全角でごちゃ混ぜはやめて厨キタ━━(゚∀゚)━━!!
で、そんだけ偉そうなこと書いておいてそんな厨な質問でつか…
え〜と hogehoge.php?a=0123 とすると $aに0123がセットされますよね 某所で hogehoge.php?=0123 となっているのを発見したのですが 0123は何処にセットされるのですか?
>>788 >$aに0123がセットされますよね
それ以前に古い知識です。それ。
$_GET[""]とかじゃないの?しらんけど。
790 :
nobodyさん :03/03/25 22:21 ID:uCxA2hMQ
プロバイダに間借りしてサーバサイドプログラムを 書きたいのですが、PHPをサポートしているプロバイダを 教えていただきたいと思います。 (プロバイダとの契約は個人ではなく企業向け契約です) よろしくお願いします。
>>788 $_SERVER["QUERY_STRING"]
#うーん、自前でパースしないで済むので最近のプログラマは恵まれとるのぅ
もともとGETでURLに続けて送った文字列はサーバの環境変数(QUERY_STRING)に
そのまま放り込まれ、スクリプトの変数とかに代入したかったら自前で
パースするしかなかったんよ。
それがPHPとかは、Webプログラミング向きに変数への代入が楽なように
システム側が面倒見てくれるようになっている。
件の例だと$_SERVER["QUERY_STRING"]に、=0123という文字列が入ってる。
phpinfoを出力するスクリプト書いて、phpinfo.php?=0&a=1&b=2 とかして
どうなってるか見てみそ。
>>791 POSTで送ったXMLいじられて泣きそうになったこともあったけどな。
ISPでPHPSupportしてるとこってあったっけか?
795 :
nobodyさん :03/03/25 23:25 ID:H32QaIGh
POST データを $_POST['name'] で参照する際に、 name に ' が含まれていると \' に変換されてしまいます。 これって去れないようにできないんでしょうか?
できます。 けど、' を含めないようにするべきかと。
797 :
795 :03/03/25 23:37 ID:???
すみません。 <input type = "text" name = "name" value = "hoge'hoge"> というときに $_POST['name'] に含まれている ' のことです。 実際に避けるにはどうしたらよいのでしょうか?
>>797 magic_quoteで検索すればなぜそうなるか分かるよ。
て調べてみたら、なんだか少ない... 綴り間違ってる!?
799 :
795 :03/03/25 23:46 ID:???
php.ini ですね。 ありがとうございました。
800 :
●かろりーたさん ◆JwU5Ac6TK2 :03/03/25 23:47 ID:BTZxooJl
800get
801 :
nobodyさん :03/03/26 00:58 ID:+RBAHMCa
>>795 正に同じところでぶつかったのでちょっと調べてみた。
php.iniのmagic_quotes_gpcをonにしてると自動的にそうなる。
元に戻すにはstripslashesでok。
>>796 POSTでもGET渡しでも、確かに要URLエンコードだけど
POSTなら多くの場合(大抵は797とかhiddenのパターンで、UAも普通のWebブラウザ)
は勝手にエンコードしてる筈だから、そこは余り気にしないでも良いかと。
技術者ならば裏の動作は知っとけ、には同意
>>785 回答、ありがとうございます。
>>private なメンバ変数へは、外部から参照する機会少ないはず
確かにそうですね。
言われてみればそういう機会はなかなか無いですね…。
804 :
nobodyさん :03/03/26 06:09 ID:tPbaW3mF
すれ違いだったらすいません。 PERL→PHPみたいに変換できるソフトやサイトありませんか? そもそもPERLにできてPHPにできないなどそういったことがあるのはわかるんですが アル程度できるものあったら教えてください、お願いします。
805 :
nobodyさん :03/03/26 06:33 ID:l1CVp/e0
>> ISPでPHPSupportしてるとこってあったっけか? > ありますよ。 どこがPHP使えるのでつか?
>>804 Perl2phpで検索しる。
たしかRubyで書かれてるはず
807 :
nobodyさん :03/03/26 07:39 ID:tPbaW3mF
>>806 ぐぐってみたんだけどみつからないでつ。。。
いいかげん ML で qmail の話すんのやめてくれ…
811 :
nobodyさん :03/03/26 12:26 ID:tPbaW3mF
>>808 はい。
それらしきとこは404じゃないでつか?
・・・
>809 あとWebARENAとか。 法人契約といっても客に勧めるもんじゃなくて、自分で使うところなら ちゃんと探せばいくらでもあるでよ。
>>809 ぷららはCGIサーバで使えるけど、サポート外。
815 :
nobodyさん :03/03/27 04:22 ID:Ya09dI5I
zru2.hoge.com zru17.hoge.com このような文字列があります。それを zru2d.hoge.com zru17d.hoge.com このように数字の後ろにdをつけるにはどうすればよいのでしょうか?
hoge.comが固定だとしたら、 .hoge.com を d.hoge.com に置き換え。いっつしんぷる
817 :
nobodyさん :03/03/27 04:49 ID:Ya09dI5I
818 :
nobodyさん :03/03/27 09:48 ID:Ya09dI5I
>816 $server = preg_replace(".hoge.com","d.hoge.com",$server); なんかうまくいかない。 Warning: Unknown modifier 'n'
>>818 $server = preg_replace("/.hoge.com/","d.hoge.com",$server);
スレ違いならごめんなさい。 Yahoo!メールと同様のwebブラウザで複数ユーザーが メール(添付ファイル)を操作できるPHPスクリプトを 考えております。 サンプルスクリプト等から有る程度考えているのですが、 添付ファイルの操作と、メールの削除等が難しい・・・ なんか、良いものご存じでしたら、(サンプルスクリプト等) ご指導ご鞭撻お願いできますでしょうか。 すいません。
>>820 >スレ違いならごめんなさい。
謝らんで良いから正しいスレに移動してください。
>>820 >ご指導ご鞭撻お願いできますでしょうか。
卒業式に出席させられた中学2年生ってとこか。
823 :
820 :03/03/27 11:56 ID:???
824 :
nobodyさん :03/03/27 12:02 ID:xjuAgYTi
PHP 4.3.1 と Apache2.xは使い物になるの?
>>818 正規表現使わないのならstr_replaceの方が早いよ。
$server = str_replace(".hoge.com","d.hoge.com",$server);
826 :
nobodyさん :03/03/27 12:45 ID:6KhWGPqw
すみません。質問です。 レンタルサーバのPHPを使ってるのですが 1行目に #!/usr/local/bin/php4 と書く必要があります。 このPHPファイルをうちのローカルLINUXでも 動かすためにはどうしたらいいでしょう? 現状だと、1行目がそのまま出力されてしまうので この1行目を無視するようにしたいのですが。。。
827 :
sage :03/03/27 13:01 ID:xjuAgYTi
>>826 一行目を消すか、CGI版PHPインスコする。
828 :
nobodyさん :03/03/27 15:09 ID:xLIju/DK
php4.1.x以下だと1行目が表示される。4.2以降で改善してる。
830 :
nobodyさん :03/03/27 16:17 ID:pa6AxLeC
>>829 <?php
list($x,$y)=explode(",", $_SERVER[QUERY_STRING]);
echo "X=".$x."Y=".$y;
?>
831 :
nobodyさん :03/03/27 16:26 ID:cW0HAJJz
>830 mOmさんくす
834 :
826 :03/03/27 22:33 ID:???
>>827 ありがとー、おかげであきらめがついて
CGI版つくったよ。かなりはまったけど。。。TT
>>828 ん? 4.2.3だったんだけど。。。
835 :
832 :03/03/27 23:03 ID:???
836 :
nobodyさん :03/03/28 01:53 ID:XXU+wfsi
pukiwikiのソースを見て勉強してます。その中で、 $post["msg"] = preg_replace("/((\x0D\x0A)|(\x0D)|(\x0A))/","\n",$post["msg"]); という改行文字の置換の部分で、エスケープシーケンスを用いずに直接文字コードを 指定していました。 たいていの他のスクリプトは、/(\r\n|\r|\n)/ のような処理を行っていると思いますが、 これにはどういった場合が想定されているんでしょうか?
839 :
836 :03/03/28 02:25 ID:???
>>837 なるほど。phpだけでなく、webアプリケーション全般で言える事なんですね。
どうもありがとうございました。
コマンドラインから php→html 変換ってできますか?
rename("php","html")でいいのかい? ウム エラー処理もしておかないとな。 if(!rename("php","html")){ echo "ダメポ"; exit; }
eucファイルを読み込んでutf-8で出力したいのですが、
print mb_convert_encoding( file("euc.txt"), "UTF-8", "EUC");
とやっても、Arrayと出力されるだけです。
どうすればutf-8でファイルの内容を出力できますか?
>>840 php.exe -q < hoge.php > hoge.html
>>842 file()は文字列の配列を返すので1行1行処理してください。
844 :
a :03/03/28 12:06 ID:D9J6JSJg
a
845 :
a :03/03/28 12:12 ID:D9J6JSJg
こんにちは。 自分は今、マイクロソフトアクセスでデータベースを、PHPで出力など を制作しているものです。そこで、一つ問題が出てきてしまったのですが、 ローカルホストでは日本語が完璧に表示されるのですが、サーバーに載せ ると、日本語がすべて「?」になってしまいます。UNIコードとしても 表示されません。海外のサーバーを使っているからだと思うのですが、 何か解決策はないでしょうか。 よろしくお願いいたします。
>>845 こんにちは。
自分は今、マイクロソフトアクセスでデータベースを、PHPで出力など を制作しているものです。
そこで、一つ問題が出てきてしまったのですが、 ローカルホストでは日本語が完璧に表示されるのですが、サーバーに載せると、日本語がすべて「?」になってしまいます。
UNIコードとしても 表示されません。海外のサーバーを使っているからだと思うのですが、 何か解決策はないでしょうか。
よろしくお願いいたします。
>>846 とりあえず、ローカルサーバとリモートサーバの詳細キボン。
#大方スクリプトとDB内のデータの文字コードの問題だろうがな。
>>848 $_SERVER[PATH_INFO]から取得
PHPではPerlの @sortdata = sort { (split(/\,/,$a))[2] <=> (split(/\,/,$b))[2] } @hogehoge; みたいに、splitかexplodeを使って、配列をソートすることはできますか?
>>852 $sortdata=explode(",", $hogehoge);
sort($sortdata);
gifファイルが一枚gifかアニメgifかを判別する方法はありませんか。 GetImageSize()の画像種類はどっちも1(gif)が返ってきます。
855 :
852 :03/03/28 23:09 ID:???
素直にコードに落とすとこんな感じかな。 function cmp ($a,$b){ $arr_a = explode(",",$a); $arr_b = explode(",",$b); if($arr_a[2] == $arr_b[2]) return 0; if($arr_a[2] > $arr_b[2]) return 1; if($arr_a[2] < $arr_b[2]) return -1; } usort($arr,"cmp");
>>854 まぁ、gifファイルを解析すれば良いんだろうけど。ヘッダ読むくらいならできるっしょ。
858 :
852 :03/03/29 01:28 ID:???
>>856 ありがとうございます。うまくいきました。
>>857 ヘッダからはGIF87aか89aの情報ぐらいしか取れないから駄目でしょ。
GIF87aなら否アニメGIFだけど、89aだからだけではアニメGIFかどうかまでは判らない
中身読めば勿論判るけど…そんなことしなくて良い方法がありそうな、なさそうな。
>>859 >なさそうな。
無いでしょう。gifファイル以外から任意のgifファイルがアニメgifか否か判断するなんて。
目隠しして信号の色を当てるようなもの。
>>854 萌えjpでも逝ってこい。
あそこのスクリプトはそれを実現してる。
ちなみにソースも公開されてるからhackしる。
PHP書くときに使いやすいwindows上で動作するエディタってありませんか. さすがに秀丸は疲れてきたのでC++builderのエディタでやってるんですが補完機能が欲しいです.
秀丸でも補完用のマクロがあるよ。 てか本家のIDEは補完機能なかったっけ? オイラはemacs好きなのでmeadow+補完lispか、WebStudio使ってるけど。
>>863 xyzzy + php-mode はどう?
php-modeのphp-completion関数を使えるようにして、
適当なキーにバインドしてやるとほぼ望みの環境になるかと。
866 :
863 :03/03/30 02:55 ID:???
親切にありがとうございます.
>>864 秀丸のマクロ探してみたら簡単にみつかりました.
.mac見て,秀丸のマクロは結構簡単に自分で定義することも出来そうなことに初めて気付く…
>>865 xyzzyのfundation(?)をphp-modeにして早速使ってみたんですが完璧です(てゆうかxyzzy自体初使用
縦割りと横割りもできるし,emacsとキー操作似てるのがまた(特にC^x C^fが嬉しい
しばらくこれが標準になりそうです..
867 :
865 :03/03/30 03:14 ID:???
>>866 browserex.l(別途調べてみてください) を利用して以下のような設定にすると、
さらに幸せになれるかも。
;;; browserex.l 設定
(load-library "browserex")
(setq bx:*browser-width* 800) ; デフォルトの表示幅
;; browser.l 互換関数定義
(defun navigate (url)
(interactive "sURL: ")
(bx:navigate url))
(defun close-browser ()
(interactive)
(bx:close-browser))
(define-key *global-keymap* #\C-End 'close-browser) ; Ctrl+Endで閉じるように
;; php-mode
(load-library "php-mode/php-mode")
(load-library "php-mode/php-misc")
(push '("\\.php$" . php-mode) *auto-mode-alist*)
; デフォルトでは、*.htmlを読みに行ってるので*.phpを読みに行くようにする
(defun ed::php-doc-function-open (func)
(let ((path (concat *php-doc-base-path*
(format nil "function.~A.php" (substitute-string func "_" "-"))))
(navigate path)))
(define-key ed::*php-mode-map* #\F1 'ed::php-doc-function)
これで、オンラインであれば関数名入力後にF1を押すと php.netの関数リファレンスが読めます。
細かい設定は長くなりすぎるのと、板&スレ違いなので割愛。
868 :
865 :03/03/30 03:18 ID:???
xyzzy使いテー。リンク切れてるし。 php-modeインストールってどうやんの?
>>867 俺は普段は、HTML Help版のマニュアル呼ぶようにして使ってる。
その方が速いし検索とかも便利だから。
>>869 秀丸使っとけ
871 :
865 :03/03/30 23:37 ID:???
>>870 HTML Help版って、.chmのやつですよね?
そっちを使うのも試してみたんですが、
別ウィンドウで開くのが性に合わなかったので。
(この辺は好みの問題ですね)
オフラインの.html版を使うのもありですが、
情報が古くなってると嫌なので、家ではオンラインで使っています。
872 :
nobodyさん :03/03/31 19:52 ID:D6ukRZiw
873 :
nobodyさん :03/03/31 20:35 ID:GvJTx+Hi
PHP Accelerator入れてみますた。 別に問題なく動いてますが、 CONFIGURATIONに書かれている内容が気になります。 今デフォルトのままですが、/tmp にコンパイル後のファイル?が保存されてます。 ちゃんとメモリーにキャッシュされてるんでしょうか? ちなみに入れたのは php_accelerator-1.3.3r2_php-4.2.1_linux_i686-glibc2.1.3
>>872 そのくらい自分で作れよ・・。たいしたものじゃないだろ。
エイプリルフールと言えばphpinfoなわけだが、4.3.xは犬なんですね。
俺は犬よりもおっさんの方が好きだな。 っていうか、あのおっさん誰?
>875 システム時計を弄れば何時でも見れた訳だが…書き込み見て思い出した。 確かに「犬」だな。前の「顔」がインパクトあり過ぎだったのでイマイチ。
>>876 ま、毎年MLネタになってますね。今年も投稿あるかな(w
あのおっさんは開発者(Thies)?
[PHP-users 6570] Re: phpinfo() で男の顔が
すまそ ちょいとスレ違いかもしれんが Apache PHP Version 4.2.2 で自鯖にphpタイプのアプロダ置いてるんだけど 設定で50MBまでおけーになってるんだが 500kb以上になったら404が返ってくる どっかphp自体の設定変えないといけない?
>>879 404ってのは妙だな。
ひょっとしてhttpdの設定だったり...
,'⌒,ー、 _ ,,.. X
〈∨⌒ /\__,,.. -‐ '' " _,,. ‐''´
〈\ _,,r'" 〉 // // . ‐''"
,ゝ `</ / 〉 / ∧_,. r ''"
- - - -_,,.. ‐''" _,.〉 / / . {'⌒) ∠二二> - - - - - - -
_,.. ‐''" _,,,.. -{(⌒)、 r'`ー''‐‐^‐'ヾ{} +
'-‐ '' " _,,. ‐''"`ー‐ヘj^‐' ;; ‐ -‐ _- 腹減ったコンビニ逝ってこよ
- ‐_+ ;'" ,;'' ,'' ,;゙ ‐- ー_- ‐
______,''___,;;"_;;__,,___________
///////////////////////
881 :
nobodyさん :03/04/01 04:23 ID:diwdGVyz
>>880 スマソ 404じゃなくてページを表示できませんだった。。。
php.iniで変えた部分は
memory_limit 128M post_max_size 100M upload_max_filesize 80M
このように値を決めました・・・
Apache version 2.0.40 PHP Version 4.2.2 です。
500kb以下だとすぐアップすぐできるんだけど
500kbより上になるとすぐにページが表示できませんってなるの・・・
どこか他にありますかね?
Requested content-length of 831342 is larger than the configured limit of 524288 こんな感じです・・・ エラーログは
>>881-882 エラーを見る限りにおいてはファイルサイズが512kbよりでかいよ。
って、そのものなんだけどな。
phpinfo()で設定が反映されているか確認汁。
#Apache2は使ったこと無いので知らんが。
884 :
nobodyさん :03/04/01 04:46 ID:FE/Hi5sJ
>>884 ねぇねぇ、調べもせずに教えて君でスマソだが
LimitRequestBody
ってApache2特有? Apache1.3系でもあったっけ?
気になったのでググったよ! どうも、1.3系でもありそげでんな。
http://rikapiyo.hp.infoseek.co.jp/cgi-bin/datafile/rika2003_0037.lzh php.iniファイルです
ちなみに環境は
OSはRedLinux 8.0
Apache version 2.0.40
PHP Version 4.2.2
アプロダが置いてある場所は/var/www/html/uploder/upload.php
いじったのは、php.iniファイルの
max_execution_time
memory_limit
post_max_size
upload_max_filesize
で他はまったくいじってまえん
未だに500kb以下だとすぐアップすぐできるんだけど
500kbより上になるとすぐにページが見つかりませんとなります・・・
一時保管フォルダとかちゃんと設定しないとダメなのかな
でも500kb以下だと通常に・・・
888 :
nobodyさん :03/04/01 15:03 ID:iLS8UVQ1
php4.3.1を使っていますが、postでフォームの情報を次のページに 渡すと、最初の4バイト分の文字だけが、消えて、5バイト目以降の文字しか 引き渡されませえ。他のサーバーでは問題なく動くのですがバグなんでしょうか?
>>8 (^3)
multibyteを渡した時にそういう間抜けな疑問もつ奴も居たが
まさかとは思うがな・・。
すれ違いかもしれんが、何気に気が付いたんだが 2〜3千件程度のデータならばpostgres使うより シーケンシャルファイル使ってscriptで検索したほうがはるかに 早いなと思ったのだが、おまいらどうよ?
>>888 それ、PHP4.2.3のバグな気がするんですが…
当時は4.2.4-devを使うことで回避しました。
今、4.3.1使ってるけどそんな状況は起こりません。
892 :
889 :03/04/01 17:47 ID:???
>888 >891 だからさぁ、何度も言う様に「何を渡しているか」で状況は大きく左右される訳よ 具体的にコード体系なに使っているのかと、どういう文字列をどうencodeしてpostしたのか を適切に説明してからここにこいよと小一時間・・。 ちなみに漏れは4.3.1使ってるがそんな症状出た事無いぞ。
893 :
nobodyさん :03/04/01 23:56 ID:Dj/EgE26
こんなphp探してますスレッドってないですか?
894 :
nobodyさん :03/04/02 00:31 ID:9OeHk805
HTMLフォーム形式のファイル(fm.html)からポストして、mysqlにinsertし、 その結果を返すためのファイル(insert.php)があります。日本語でも問題なく データベースに追加できます。 しかし、insert.phpが正常に実行された状態で、そのまま、ブラウザの「戻る」 で、fm.htmlに戻り、若干の修正をした後に、もう一度ポストすると、なぜか、 日本語が化けてしまいます。fm.htmlに戻ったときに、リロードしてから、新たに フォームを埋めてポストすると問題なく処理できます。 なぜこのような現象になるのでしょうか?php4.3を使っています。 解決策などはあるのでしょうか?少しわかりにくい説明かもしれませんが、 よろしくお願いいたします。
>>893 この板って作る人向けだと思うよ。DownLoad板あたりが適当なのかな?
>>894 SJISとEUCが混在してるとか無い?統一すると吉かも。
896 :
nobodyさん :03/04/02 01:04 ID:9OeHk805
有難うございます。 一応、EUCにすべて統一しているんですが。。。
<? //結果に応じたメッセージを作成 if($sum<1){$mes2="Index.htmへ";} if($sum>=1 && $sum<5){$mes2="Index2.htmへ";} if($sum>=5 && $sum<10){$mes2="Index3.htmへ";} if($sum>=10){$mes2="Index4.htmへ";} ?> 今、PHPの練習をしてるのですが、 上記のPHPでSUMの合計値で 各種メッセージがでるようにできたんですが、 これを各種ページに飛ぶようにすることはできるでしょうか? $sum<1ならIndex.htmへ、$sum>=1 && $sum<5ならIndex2.htmの ページへ自動的に飛ぶようにしたいのですが・・・ ご教授頂けないでしょうか。よろしくお願いします。
>>897 header("Location: Index.htm");
exit();
899 :
897 :03/04/02 02:19 ID:???
レスありがとです。 すごい恥ずかしい質問かもしれないですが if($sum<1){header("Location: Index.htm");} exit(); if〜 exit(); 記述の仕方ってこんな感じですか? PHP全然わからなくてもうダメポです。エラーがでちゃうんです。
>>899 少なくともこう、
if($sum<1){
header("Location: Index.htm");
exit();
}
if〜
しかし、メッセージを出した後にherder()で飛ぶことは出来ないから、
metaタグで飛ぶか、javascriptで飛ぶしかないでしょ。
#エラーでたんならそれ嫁よ。
901 :
nobodyさん :03/04/02 03:13 ID:nSKSiXBB
>>896 まちがいなくhtmlファイルのコード問題
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=X-EUC-JP">
とかをページに書いてeucであることをきちんと宣言すれば動くはず。
> X-EUC-JP いつの時代だよ。
x-euc-jp ( ´,_ゝ`)プッ
クライアントのホスト名の取得は gethostbyaddr($_SERVER["REMOTE_ADDR"]). しか方法ないのでしょうか? $_SERVER["REMOTE_HOST"]みたいな環境変数あるかなぁと思ったら ないっぽいんで…f^_^;
>>904 REMOTE_HOSTはApacheの設定で
HostnameLookups On
になっていないとでない。(だったと思う)
Apache以外のhttpdは知らんけど。
907 :
904 :03/04/02 16:07 ID:???
>>906 ご指摘どおりにApacheを設定したら取得できました。
どうもありがとうございます!
908 :
nobodyさん :03/04/02 21:54 ID:2rrgw8ER
突然ですみません。。。 クッキー保存時に確認ダイアログ出す状態にしたIE6で setcookie("test","123"); とだけ書いたPHPにアクセスすると 3回目のアクセスで固まってしまいます。 これって書き方が悪いのでしょうか? 再現するか教えてーーーー
>>908 あてずっぽー。
Cookieだけじゃなくてなんか出力してみれ
910 :
nobodyさん :03/04/03 11:48 ID:CaQMJ15L
じゃが島をやってみたけど、どうも人によってスピードが違うらしい。 これってプログラムのミス?原因はなんでしょうか?
>>910 回線速度とJavaVMの性能比とマシンパワーに決まってんだろバカ。
ってかPHPと関係ないし
fgetcsv関数で取得する配列を連想配列にしたい(? 連想配列で定義したい)のですが どうやれば良いのでしょうか。。
>>913 意味がよく分からない。
項目名のないCSVファイルってのも当然存在するわけで。
915 :
913 :03/04/03 22:21 ID:???
>>914 いやぁ、fgetcsvで取得した多次元配列をsortしたかったんだけど
array_multisortにkey渡せなくて困ってます。
(最初からこう書くべきだった鴨)
>>915 phpの配列って0から始まる整数をキーとした連想配列じゃなかったっけか?
917 :
913 :03/04/03 22:47 ID:???
function sort_by_regist_date($p1, $p2) { if ($p1[1] == $p2[1]) return 0; return ($p1[1] > $p2[1])?-1:1; } $sval = array(array("D","花子"),array("A","太郎"),array("E","五郎"),array("B","恵子")); $ret = usort($sval,'sort_by_regist_date'); var_dump($ret); sort関数の中で $p1,$p2 の使い方ってどうやんの? この場合 "花子"、"五郎"の2次元目をソートしたいんだけどさ。。
>>916 連想ワードが一度設定された配列には0から始まる整数をキーと
した連想配列では引けないのか・・。
919 :
nobodyさん :03/04/04 01:53 ID:TlzazHCT
ここで質問していいのか分かりませんが、、。 携帯サイトで僕の描いた漫画をアップしようと思っています。 ボタンを押すと次コマへ移る感じなんですけど。 でも、これだと次のコマが写るのにけっこう時間がかかるので アプリにしてしまってDL形式にしようかと思っているのですが、、。 こういうプログラムって難しいでしょうか?
>>919 そうでもない。
しかし、一気読みしようとするとレスポンスが犠牲になる。
レスポンスを優先すると次のページまでの待ち時間が増加する。
どっちもどっちだと思われ。
921 :
nobodyさん :03/04/04 04:38 ID:GBT66057
うpろだでファイルロックしててだれかがうpってるときに 他の人がうpしようとするとどうなるん?
漏れは「
>>921 がこれだけで質問の意図が相手に通じると思っているのか、
あるいは、これだけしか書けない何らかの理由があるのか」と首をかしげる。
>>923 ァヒャ
実は、かのフレーズを使ってみたかっただけ
ゥヒャ
925 :
nobodyさん :03/04/05 06:47 ID:WWynoIxP
セッション管理しながら複数画面を行ったり来たりする Webアプリを作ろうとしています。 そこで質問ですが、『ひとつ前の画面に戻る』ということを ユーザにやらせるためには、PHPでどう書けばいいのでしょうか? JavaScriptでやるのがいいのか、ボタンで戻らせるのがいいのか、 <A HREF>タグで戻らせればいいのか、わかりません。 また、戻り先URLは、どう管理したらよいのでしょうか?
>>925 SessionIDがURLにもれないようにがんばってね。
phpbbという掲示板を設置しようと思っているんですが これってサーバーに設置するだけでは使えないんでしょうか?
929 :
928 :03/04/05 20:02 ID:???
一応ぐぐってみたんですが MySQLをインストしてどうのこうの…とはあるものの これって自宅鯖での話ですよね? サイト運営に使ってるサーバ上でphpから利用するとしたらどうするんでしょうか?
931 :
928 :03/04/05 21:16 ID:???
>>930 そこで勉強してみますね。
ありがとうございました。
>>930 plusは文字化け問題があるから初心者にはお勧めしないな
933 :
nobodyさん :03/04/07 02:13 ID:cxQTOqMH
すいませんが、どなたかわかる方教えてください。 やりたいことは、IEのストップボタンを押されたことを検出することです。 register_shutdown_functionを使ってみたのですが、 ストップボタンを押されようが押されまいがスクリプトの最後まで実行され、 その後on_exitが実行されるようです。 また、スクリプトの最後でconnection_statusを出力してみたのですが、 その時点で既にブラウザを落としていても、常に0しか取得できません。 1が取得できるはずだと思っているのですが・・・ OS:Redhat8 PHP:4.2.2 ブラウザ:IE6SP1 コードは次の内容です。
934 :
nobodyさん :03/04/07 02:14 ID:cxQTOqMH
function on_exit() { flush(); $n = connection_status(); error_log("bye status:".$n."\n", 3, "/tmp/bye.log"); } function my_wait() { for ($i = 0 ; $i < 3; $i++) { sleep(1); echo $i;flush(); } } register_shutdown_function(on_exit); error_log("bye test start\n", 3, "/tmp/bye.log"); my_wait(); $n = connection_status(); error_log("bye test end status:".$n."\n", 3, "/tmp/bye.log");
>>933 サーバーサイドスクリプトの意味分かってるか?
936のレス番の勘違いと思われ。
質問させて頂きます。 今日WIN上でPHPをいじり始めて、大概のことはググって調べが付いたんですが、 どうしても分からないことが・・・ HTMLファイルに付けたボタンを押すと、PHPが動いてファイルを保存するようにしたいんですが、 header("Content-Type: application/octet-stream"); header("Content-Disposition: attachment; filename=test".date(ymd).".csv"); だと保存ダイアログが出てしまいます。 保存ダイアログを出さずに問答無用で指定の場所に保存させることは出来ますでしょうか? お知恵をお貸し下さい。
941 :
933 :03/04/07 20:23 ID:cxQTOqMH
>>935 スマソ
正確にはストップボタン押下検出ではなくて、tcpipの切断を検出したいのです。
>>938 私もそこの情報を元にいろいろ試しているんですが、
サンプルプログラム(934)を作っていろいろやっても
どうしてもそこにかかれているような動きをしないのですが・・・
942 :
939 :03/04/07 21:01 ID:???
あ、fopenで出来そうです。 お騒がせしました。
943 :
nobodyさん :03/04/07 21:27 ID:7jlvqd0o
>>941 PHPの前にHTTPプロトコルを勉強して下さい
944 :
bloom :03/04/07 21:49 ID:liNaJRPu
945 :
nobodyさん :03/04/08 00:05 ID:wW84O6IC
>941 Apache-PHP間でシグナルが上手く出てない/届いてないんじゃない? >943 言葉どおり「TCP/IPの切断」っつたら確かにそうなんだが、 まあ、HTTP1.1のKeep-Aliveの終了っつう意味で捉えたれよ
______
/_ |
/. \ ̄ ̄ ̄ ̄|
/ / ― ― |
| / - - |
||| (5 > |
| | | ┏━┓| / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
| | | | ┃─┃| < こんなサイトを見つけた
|| | | | \ ┃ ┃/ \ 正直、スマンカッタ
| || | |  ̄ \_________
http://www.saitama.gasuki.com/kensuke/
┌┬┬┬┐
―――┴┴┴┴┴―――――、
. . /  ̄ ̄ ̄//. ̄ ̄| || ̄ ̄ ̄||| ̄ || __________
./ ∧// ∧ ∧| || ||| || /
[/____(゚_//[ ].゚Д゚,,) ||___||| || < こんなのが有りますた
. ||_. * _|_| ̄ ̄ ∪|.|. |ヽ.__|| \__________
. lO|o―o|O゜.|二二 |.| 救済病院 ||
.| ∈口∋ ̄_l__l⌒l_|___|_l⌒l._||
 ̄ ̄`ー' ̄ `ー' `ー' `ー'
http://saitama.gasuki.com/2ch/
950 :
金正日 :03/04/08 00:50 ID:???
,rn
r「l l h. / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
| 、. !j |
ゝ .f _ |
| | ,r'⌒ ⌒ヽ、. │
http://saitama.gasuki.com/hangul/ ,」 L_ f ,,r' ̄ ̄ヾ. ヽ. │ こんなのあったニダ
ヾー‐' | ゞ‐=H:=‐fー)r、) |
| じ、 ゙iー'・・ー' i.トソ |
\ \. l ; r==i; ,; |' .人_
\ ノリ^ー->==__,..-‐ヘ___
\ ノ ハヽ |_/oヽ__/ /\
\ / / / |.
y' /o O ,l |
______
/_ |
/. \ ̄ ̄ ̄ ̄|
/ / ― ― |
| / - - |
||| (5 > |
| | | ┏━┓| / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
| | | | ┃─┃| < こんなサイトを見つけた
|| | | | \ ┃ ┃/ \ 正直、スマンカッタ
| || | |  ̄ \_________
http://www.saitama.gasuki.com/kensuke/
┌┬┬┬┐
―――┴┴┴┴┴―――――、
. . /  ̄ ̄ ̄//. ̄ ̄| || ̄ ̄ ̄||| ̄ || __________
./ ∧// ∧ ∧| || ||| || /
[/____(゚_//[ ].゚Д゚,,) ||___||| || < こんなのが有りますた
. ||_. * _|_| ̄ ̄ ∪|.|. |ヽ.__|| \__________
. lO|o―o|O゜.|二二 |.| 救済病院 ||
.| ∈口∋ ̄_l__l⌒l_|___|_l⌒l._||
 ̄ ̄`ー' ̄ `ー' `ー' `ー'
http://saitama.gasuki.com/2ch/
気の早い話ですが、 php5が出た時、pearは続けて使えるのでしょうか。
958 :
名無しさん@Meadow :03/04/09 13:51 ID:1JFApz2j
結局日本語使うのに一番安定しているバージョンってどれ? フォーム変数の値が欠けるってのはどのバージョンだっけ?
>959 PHP4.2.3 古来のスクリプトをそのままというなら、PHP4.2.4-devあたりで良いと思うけど PHP4.3.2とかでも問題は今のところない。ポツポツでてくるのかもしらんけど、 マイナーバージョンアップの割には、非常にこなれてる #テスト期間長かったからね>PHP4.3
961 :
nobodyさん :03/04/11 00:54 ID:UQ4DcBXb
fsockopenで開いたWeb上の文書内容を取得した時に、 例えばHTMLコード中に変な数字のゴミ行が混ざっていたりするんですけど、 これはなんでしょうか?
>>960 4.3.2ってCVS版だけですよね?正式版の最新は4.3.1ですよね?
4.3.1は問題あるんでしたっけ?
4.2系がかなり使えなさそうだったので4.1.2のままなんですけど
4.1.2⇒4.3.1
ということなら問題ないんでしょうか?
?ばかりでごめんなさい。いつか恩返ししますのでお許しを。
>>961 レスポンスコードとかだったら軽蔑するが。
964 :
うんこ :03/04/11 10:55 ID:33XrEaDD
mySqlAdminで右クリックでデータベースを作成しようとしても、 "Flushなんとか"ってもの4つくらいしかメニューに出ないんですが・・・ どうしたらよいですか?
965 :
nobodyさん :03/04/11 12:31 ID:W00UiExY
>961 チャンクだろ
>>964 PHP、MySQL、mySqlAdmin
インストールしなおしてみてはどうでしょうか?
967 :
うんこ :03/04/11 15:55 ID:bMwKQXbr
>>966 全部インストールしなおしたんだけど
できなんです・・・
PHPとMySQLは動作してますか?それともネタですか?
969 :
うんこ :03/04/11 17:08 ID:z5S7Pxca
ネタじゃなくてマジです。 両方きちんと動作してます
970 :
961 :03/04/11 21:56 ID:???
>>965 ども、チャンクでした。
こんな仕様があったのか…デコードがわかんないや。
RFC2616のsection19.4.6に擬似コードが載ってるよ。
972 :
961 :03/04/11 23:56 ID:???
>>971 ども、それ見てもいまいち難しいです…
とりあえずHTTP 1.0にして、チャンクは回避しておきました。
>>969 ネタじゃないんだったら、うんこって名前やめ。
それかうんこマニアを待て!(w
974 :
960 :03/04/12 01:02 ID:cTuaDqMK
名前はネタです(w ネットサーフィンしてたら 最新版はDB作成できないみたいです。 お手数かけました。
975 :
meso :03/04/12 01:10 ID:I/n8/muk
はじめまして。 今、ホームページを作っています。 テーブルに背景画像をいれてみたのですが、 "IE"ではうまく見えるのに"Netscape 4.7"では上手く表示されません。 テーブルの中に入れたテーブルの部分に背景がダブってみえてます。 なにか良い対処法がありましたら教えてください!
15点
977 :
nobodyさん :03/04/12 03:01 ID:UMq89NM+
978 :
nobodyさん :03/04/12 03:06 ID:UMq89NM+
configureオプションは apache:configure --with-layout=MyLayout --enable-module=all --enable-module=auth_dige st --enable-shared=max php:configure --with-apx=/usr/local/sbin/apxs となってます。httpd -lを実行するとmod_soが表示 され、libphp4は表示されません。DSOとしてPHPの モジュールを読み込もうとしてるので、ここは問題 ないですよね?mod_includeとか他のモジュールは うまく読み込めてるみたいでSSIも実行できる状態です。 としてるので
httpd.confに LoadModule php4_module lib/apache/libphp4.so AddType application/x-httpd-php .php AddType application/x-httpd-php-source .phps を追加してapacheを再起動したんですが、エラー メッセージは表示されません。ただ、上記のように PHPが実行できません。 AddModule mod_php4.c を追加してapachectl configtestを実行すると [warn] module mod_php4.c is already added, skipping Syntax OK というエラーが出ます。
ちなみにphpのconfigureオプションには --with-gdやら--withpgsqlやらたくさん指定しましたが その全てで、sharedではなく、インストールしてあるフ ァイルを指定しました。 なぜ動かないのか分かる方いたら教えて下さい。お願い します。
>>978-980 AddTypeを書いたところが、<IfDefine ...>や<IfModule ...>の
中に書かれてあって、有効になっていないとか?
普通に入れるとそうはなん筈なので、自信はないが。
>>982 そういうふうにはなってないです。
AddModule mod_php4.c を
ClearModuleList
より下に書いたところ、apachectl configtest で
エラーは出なくなりましたが、まだPHPが動きません。
application/x-httpd-php なんちゃらかんちゃらとは
表示されてるので、設定はうまくいってるように見え
るのですが。。
>>983 >>984 に禿同なんだが、思いつくままに書くと、
mod_mimeが有効になっていない。(そんなことはないと思うが)
ClearModuleListの前にAddModuleを書いていたとのことなので、ブラウザのキャッシュを一度クリアしてみる。
AddTypeが<IfModule>に囲まれていないかもう一度確認。なんなら最終行に追記してみる。
2chのようにトリップが使えるような掲示板はありませんでしょうか?
>>985 ブラウザ再起動させたらうまくきました。
ありがとう!
AddModuleを最初に書いた位置がまずかったみたいですね。
988 :
◆Kiss.FX29M :03/04/12 23:28 ID:lyzHsDYt
>>987 あなたのブラウザはIEですね?(y/Y)
IEってなんかの拍子に噛み付いちゃうと非常にシツコイっすよね。
スマソ、意味もなくageてしまった。
NO! Phoenix
991 :
nobodyさん :03/04/13 01:13 ID:hB+TQvNz
xemacsで書いたプログラム(infophp();ってやつです)が動きません。 vimで記述すると出力されるのですが、どのように設定すれば良いのか 御教示ください。 宜しくお願いいたします。
992 :
991 :03/04/13 01:16 ID:hB+TQvNz
すみません、文章足らずでした。。 どのように設定すればxemacsで書いたプログラムが 動くようになるか、という意味です。 宜しくお願いいたします。
phpinfo()
994 :
991 :03/04/13 01:52 ID:hB+TQvNz
>>993 ご指摘ありがとうございます。ほんと恥ずかしいです。
phpinfo()と書いても出力されないのです。
エディタに左右されるとはおもえんが。 ファイル名はどちらも同じ?
996 :
991 :03/04/13 02:23 ID:hB+TQvNz
ファイル名は違います。 でも、記述内容は同じです。。
997 :
991 :03/04/13 02:30 ID:hB+TQvNz
解決しました。。
phpの始まりを宣言する<?phpの<?とphpの間に
半角スペースを入れておりました。。。
ほんとに厨房で済みません。
>>995 様
夜中にレスをありがとう御座いました。
1000
999?
2get
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。