【PHP】質問スレッドpart21【php】
レス数が1000を超えています。これ以上書き込みはできません。
0001nobodyさん
04/08/27 18:00ID:???・新規質問の方は上げてください。age進行でお願いします。
・質問する際には環境も明記。
・正しい日本語で分かりやすく。
・レスがつかないからって逆切れする厨お断り。
・解決しなくてもこたえてもらったら礼を。
■本家
http://www.php.net/
■日本 PHP ユーザ会
http://www.php.gr.jp/
■PHP マニュアル
http://www.php.net/manual/ja/
■PEAR マニュアル
http://pear.php.net/manual/ja/
過去スレ, 関連スレ等>>2-4
0002nobodyさん
04/08/27 18:01ID:???【PHP】質問スレッドpart20【php】
http://pc5.2ch.net/test/read.cgi/php/1091774679/
0003nobodyさん
04/08/27 18:04ID:???Pear
http://pc5.2ch.net/test/read.cgi/php/985665522/
【PHP】Smarty【Template】
http://pc5.2ch.net/test/read.cgi/php/1047225437/
0004nobodyさん
04/08/27 18:28ID:???0005nobodyさん
04/08/27 19:51ID:9bd9wFW/PHPインストール時になんか特別なことしなきゃならなかったんでしょうか?
0006nobodyさん
04/08/27 19:58ID:PYuyKaM7$com = str_replace("[",",",$com);
echo $com;
これをすると化けてしまいます。
ereg_replaceでもmb_ereg_replaceでも化けます。
"["のようなメタ文字を置換しても化けないようにできないでしょうか?
0007nobodyさん
04/08/27 20:10ID:???0008nobodyさん
04/08/27 20:12ID:tl2C9eKh正規表現でUserAgentを見てあらかじめ登録しておいたサイズに
照らし合わせてリサイズするという方法しかないんでしょうか?
どうか教えてください!偉い人!
00106
04/08/27 20:18ID:PYuyKaM7$comには
[名前] 明日野 条
[住所] 日本関東
みたいな情報が並んでいます。
0011nobodyさん
04/08/27 20:48ID:MFxEexml$comの文字エンコーディングは?
0012nobodyさん
04/08/27 20:49ID:???それしかありません。
一部携帯は、画面サイズとかヘッダ情報からとれますが、
3キャリア対応だと無理ですね。
まあ、新しい機種が発売されるたびに更新する必要があって面倒ですが。
0013nobodyさん
04/08/27 23:04ID:s0PWqgRO0014nobodyさん
04/08/27 23:06ID:???対応してるも何も、サーバーで動いてるやん
0016nobodyさん
04/08/27 23:29ID:???require_once("lib/hoge_db.php");
この形でファイルを読み込んでいるのですが、サーバによってはシングルクオートで
括らないと、ファイル読み込み出来ない事があります。それぞれのファイルに定義して
あるユーザ関数を、一つのファイルにまとめて実行してもエラー出力はないのですが、
この場合、どういったところから洗い直していけばよいのでしょうか?
PHP4.3.8 / configureオプション, php.iniは、基本的に同じ設定で、エラーレベルは
E_ALL, display_errors = Onになっています。
0017nobodyさん
04/08/27 23:38ID:VDNxy0Veその辺皆さんはどうやって補完していますか?
0018nobodyさん
04/08/27 23:43ID:???0019nobodyさん
04/08/27 23:46ID:???0020nobodyさん
04/08/27 23:47ID:???0021nobodyさん
04/08/27 23:47ID:???0022nobodyさん
04/08/28 00:04ID:???メールアドレス確認の時に携帯宛に
http://〜略/index.html?03169785436
とかあるっしょ?
それはどういう意味なんでつか?
ただ乱数発生させてるだけなんですかね?
002422
04/08/28 00:07ID:???0025nobodyさん
04/08/28 00:15ID:???↑みたいなアドレス使って何したいの?
これは業者が携帯番号掴む為によくやる手法だが
それしたいってのならまるっきり業者じゃん
0027nobodyさん
04/08/28 00:48ID:???0028nobodyさん
04/08/28 00:54ID:???AddSlashesをif()式で囲んでいなかった為、無駄にslashが追加されてしまい、その部分だけ
「表」「パ」などの文字が文字化けしてしまいまい、
逆にその文字列にstripslashesを実行しても変化がありませんでした。
どのようにすれば元に戻せるのか、教えていただけませんでしょうか。
0029カポコン
04/08/28 01:23ID:???でも使いなさい。
0030nobodyさん
04/08/28 01:31ID:???Smartyはあるのになぁ
0031nobodyさん
04/08/28 01:58ID:???http://2ch.lock.client.jp/data/034697845289.html
0032nobodyさん
04/08/28 02:45ID:???サービス契約者以外が知ることのない、
IDとPassの組み合わせを使って認証&同定する。
# 固有番号もあてになんねぇしな。
0033nobodyさん
04/08/28 08:51ID:XkJS6oW1mail、mb_send_mail、imap_mailがありますが
あと、CCとBCCってなんだっけ
0034nobodyさん
04/08/28 08:59ID:???それぞれのマニュアルを読むとそんな質問は出てこない気がするんですが....
まだ読んでないのならこの機会に熟読されることをお勧めします。
CC・BCCについては「メール CC BCC」で検索すれば答えが見つかると思います。
003533
04/08/28 09:24ID:???関数分かっても文の書き方がわからないぽ_| ̄|○
003633
04/08/28 09:35ID:XkJS6oW1これでメールが送信できるのかどうか
0037nobodyさん
04/08/28 10:34ID:???0038nobodyさん
04/08/28 11:45ID:???0039nobodyさん
04/08/28 12:04ID:imkrnG7Fメタで指定しても優先順位が拡張子が最初なのでどうしてもEUCで読み込んでしまいます。
もちろんHTMLならシフトJISで読み込みます。
これをPHPでも最初からシフトJISで読み込む方法はないでしょうか?
なぜシフトJISなのかというと携帯で表示させたいのです。
だからデータベースからPHPまではEUCでそこからシフトJISに変換後
ブラウザに表示させるといった感じです。
どうかアドバイスよろしくお願いします。
0040nobodyさん
04/08/28 12:06ID:???0042nobodyさん
04/08/28 12:21ID:???0043nobodyさん
04/08/28 12:30ID:imkrnG7F単純な問題なのでしょうが、テンパっていて何も思い浮かびません。
納期間近なのでよろしければ方法を教えてください。
0044nobodyさん
04/08/28 12:37ID:???0045nobodyさん
04/08/28 12:38ID:???てか本職ならそれぐらい分かれ
004644
04/08/28 12:38ID:???0047nobodyさん
04/08/28 12:43ID:???つーか、質問の内容がよく分からんのだが
そのまま納期を迎えてみたら?
そのまえにな、まともな回答キボンヌならソースくらい提示しろ糞が!
0049nobodyさん
04/08/28 12:59ID:imkrnG7FPHPの場合メタでシフトJISにしててもEUCで開きますよね?だから開いたとき文字化けしてるのです。
方法ありますか?
0051nobodyさん
04/08/28 13:02ID:???header('Content-type: text/html;charset='シフトJIS');
?>
をHTMLの先頭にする。
0052nobodyさん
04/08/28 13:04ID:???世も末だ。
0053nobodyさん
04/08/28 13:06ID:???005539
04/08/28 13:24ID:imkrnG7Fできたーー!!こんな単純なことだったのか!
あなたたちはほんとにすごいね〜
みんなの知恵が重なったときに力って発揮されるもんだね
本当にありがとう!
>>53
どの部分かが長けてれば仕事にはなるよ
0056nobodyさん
04/08/28 13:27ID:???分かってなかったのはあんただけだから
0057nobodyさん
04/08/28 13:30ID:bA6FLPcw0058nobodyさん
04/08/28 13:31ID:imkrnG7Fそっか|Д`)
まあ良いじゃんわからないときは助け合いで!
すごい良いスレだよね〜
0059nobodyさん
04/08/28 13:34ID:???お前らな、500円やるから他職逝けと
プログラマってのはな、もっと神聖としてるべきなんだよ
得意げな顔して何が、「どの部分かが長けてれば仕事にはなるよ」だ
お前、プログラマを絶対舐めとるちゃうんかと
まあお前らド素人は、せいぜい今のうちに余生を楽しみなさいってこった
0060>>59
04/08/28 13:47ID:imkrnG7F営業、マーケティング、製作とマルチにやってる
そしてプログラマを舐めてるつもりもない
ここはわからない部分を質問して教えてもらうスレじゃないのか?
>>51さんが教えてくれて俺は救われた
2ちゃんという掲示板の存在意義はここにもあるのでは?
0061nobodyさん
04/08/28 13:52ID:Mb7EMv7r0062nobodyさん
04/08/28 13:57ID:v9ahrS8whttp://wa-ka.net/mash/sozai/yakumo/index.html
↑のような、シンプルな一言掲示板をインラインフレームを使わずに
htmlページに貼り付けたいのですが。
そんなCGI無いですか?
0063nobodyさん
04/08/28 14:03ID:bA6FLPcw煽られるのも叩かれるのも2ch
0065nobodyさん
04/08/28 14:09ID:???>CGIを探してくれるスレが見つからんので・・・
検索かけたら直ぐ見つかったが?
【CGI】こんなCGI探してますver.14
http://pc5.2ch.net/test/read.cgi/hp/1087986364/
0066nobodyさん
04/08/28 14:20ID:v9ahrS8wアリガトウゴザイマシタ。サッソクケンサクスレイッテキマス。
0067nobodyさん
04/08/28 15:25ID:B6xIg3wkfile_exists でファイルの存在確認をして、存在しなかったら exec によりそのファイル生成を行うコマンドを実行し、
再び file_exists でファイルの存在確認をしています。
if(!file_exists('test.txt')) {
exec('make_test');
if(file_exists('test.txt')) {
echo 'ファイルがある';
}
else {
echo 'ファイルが無い';
}
}
else {
echo 'ファイルがある';
}
上記のようにしたところ、exec が成功して目的のファイルの生成が完了しているにもかかわらず、
ファイルが無いと出てきます。
調べたところ file_exists は、その結果をキャッシュするため、続けて実行するときには clearstatcache が
必要なる記述を見つけました。
続く
006867
04/08/28 15:27ID:B6xIg3wkclearstatcache(); // ←追加
if(!file_exists('test.txt')) {
exec('make_test');
clearstatcache(); // ←追加
if(file_exists('test.txt')) {
echo 'ファイルがある';
}
else {
echo 'ファイルが無い';
}
}
else {
echo 'ファイルがある';
}
でも結果は変わりません。
webで調べてみたところ、
http://ns1.php.gr.jp/php-jp/archives/msg05496.html
のような症状を発見し、これと同様のことが起きているものと思われます。
しかしこのMLは、結論が出ることなく話題が終わっています。
PHPのバージョンは 4.3.7 です。
解決策をご存知の方、ぜひ教えてください。
006967=68
04/08/28 15:35ID:???0070nobodyさん
04/08/28 15:52ID:???この辺りの詳細が欲しい
007167
04/08/28 16:05ID:???DBにアクセスして、その内容を編集したファイルを出力するものです。
出力ファイル名は、上記スクリプト内でチェックしているものと一致しています。
さらに、各 file_exists の前に、デバッグ用に system('ls') を追加してみたところ、その出力には目的ファイル名の
存在が見て取れます。
にもかかわらず、file_exists は false を返すのです。
また >>69 にもあるように、2度目の実行では file_exists は true を返しているようです。
function file_exists2($filename) {
return (boolean)glob($filename);
}
安全を考えるなら検索するファイル名を制限しなければならない。
globは"*"とかに対応した関数だから。
function file_exists2($filename) {
return !preg_match('/[\*\{\}\?]/', $filename)
and (boolean)glob($filename);
}
007367
04/08/28 16:30ID:???ええと、実は上記スクリプトは、もっと大きなスクリプトの一部分なんですが、ここに公開した部分だけで
動かすとうまくいくみたいです・・・
ごめんなさい。
ただ、元のスクリプトでも、該当部分でやってることは上記スクリプトと全く同じなんですけどね。
>>71 で書いたexec('ls') を挿入した話は、元のスクリプトの方でやってます。
exec('ls') で存在確認できるファイルが、file_exsits では false になってしまうという問題は
依然として解決できません。
とにかく、これからもくもくと実験します。
スレ汚しすみませんでした。
ところで、コマンドラインから実行する場合と apache から実行される場合とで、挙動が違ったりするってことは
ありますか?
>>72
実はこの部分はわりと頻繁に実行されるところなので、できるだけシンプルな処理にしたいです。
でも、どうにもならなくなったらそのアイディア頂戴します。
ありがとうございます。
パーミッションとしては許可されていても開けない場合があるから注意。
0075nobodyさん
04/08/28 16:41ID:???おまいの言ってる事は概ね正しい。
で、おまいは何のスペシャリストなのよ。
自分でコード書いてるようだが、納品とか言って人様に収める仕事をやってるようだが、
ちゃんと責任の持てる品質に仕上がったか?
言ってることと行動が重なってないぞ。
007673
04/08/28 16:41ID:???>>73
>exec('ls') で存在確認できるファイルが、file_exsits では false になってしまうという問題は
>依然として解決できません。
これは、>>68 スクリプトの最初の if の前に挿入したものでは、exec('ls') の結果には目的ファイルは
含まれておらず、file_exists が false を返すという正しい動作をしています。
その if の中に入って、exec('make_test') が実行された後に挿入した exec('ls') では、その結果に
目的ファイルが含まれていることを確認できますが、その後の if の file_exsits では false を
返します(ファイルは存在するのに false が返る)。
最初は、1つめの if で実行した file_exists の結果がキャッシュされ、2つめの if では現実を即していない
そのキャッシュが結果として返っているらしいという考えから clearstatchahe() を追加したのですが、
それでも上記問題が解決しないのです。
007773
04/08/28 16:44ID:???apache からの実行時に、ファイルを開いたり作成したりを問題なく行えることは、スクリプトのほかの部分で
実績があるので問題ないと思います。
ありがとうございます。
0078nobodyさん
04/08/28 17:28ID:???オブジェクト指向で書こうと思います。
まだ出たばっかりのPHP5を使うのがいいか、
PHP4で書くのがいいのか、どっちでしょう。
またPHP4で構築→PHP5用に後から書き直し、
なんてことにならないでしょうか?
0079nobodyさん
04/08/28 18:11ID:bA6FLPcwオブジェクト指向で書くならなおさら。
0080nobodyさん
04/08/28 18:26ID:???phpizeというコマンドを使うらしいのですが、
コマンドを打つと、
cp: `mkdep.awk' を stat(2) できません: そのようなファイルやディレクトリはありません
cp: `scan_makefile_in.awk' を stat(2) できません: そのようなファイルやディレクトリはありません
cp: `shtool' を stat(2) できません: そのようなファイルやディレクトリはありません
cp: `acinclude.m4' を stat(2) できません: そのようなファイルやディレクトリはありません
cp: `Makefile.global' を stat(2) できません: そのようなファイルやディレクトリはありません
/usr/local/bin/phpize: line 52: /usr/local/lib/php/build/phpize.m4: そのようなファイルやディレクトリはありません
aclocal: `configure.ac' or `configure.in' is required
なんてエラーが出ます。
これらのファイルはPHPインストール時に入るものじゃないんでしょうか?
phpizeについて全くわからないので、
質問も的をはずしているかもしれませんが、
教えていただけないでしょうか?
008180
04/08/28 18:38ID:???0082軟式PHP
04/08/28 18:38ID:???0083nobodyさん
04/08/28 20:26ID:jL6OGaFRそれ以外の場合とを振り分けたいのですが、以下の通りソースを書いたところ
うまく作動しません。どのように直したらよいですか?
if (preg_match( "/.たん/|/.ちゃん/|/.くん/|/さん./", $ename ) ) {
print "OKです"; // 一致した場合
}else{
print "呼び捨てはやめてください";
}
0084カポコン
04/08/28 20:35ID:???PHP5の予約語もおさえてから、取り掛かる事オススメ。
>>80:
aclocal: `configure.ac' or `configure.in' is required
install-shを探し、
Makefile.inをautomakeで作れた?
0086nobodyさん
04/08/28 20:51ID:PMoKUUmE"/(たん|ちゃん|くん|さん)$/"
0087カポコン
04/08/28 20:59ID:???PHP5の予約語もおさえてから、取り掛かる事オススメ。
>>80:
aclocal: `configure.ac' or `configure.in' is required
install-shを探し、
Makefile.inをautomakeで作れた?
0088nobodyさん
04/08/28 22:52ID:vl2m4F3+ここの掲示板に2chみたいにスレ一覧をつけるには、どこをどうしたらいいのでしょうか?
教えてください。お願いします。
0089nobodyさん
04/08/28 23:10ID:???知るか
0090nobodyさん
04/08/28 23:17ID:???機能を付け加えるのって結構面倒な作業なのよ。
で、そういうのが好きな人たちが集まってそうなスレがあるから
そっちの方がいいんじゃないかな?
オイラは見てないし、今でも機能してるかどうか分からないけど
「丸投げ」でこの板を検索すれば見つかるんじゃないかな。
0092nobodyさん
04/08/29 00:05ID:AyQVtsJd$enameの語尾に「さん」「君」「殿」がついている場合は「様」に置換。
それ以外は語尾に「様」つけて、必ず「○○様」という様に変換するように
したいのですが、↑のソースですとうまくいきません。
どのように変えたらよいですか?
>>86
ありがとうです。でも、質問の仕方を間違ってました。
のでもう再び質問です。丁寧に回答なさってくれたのにすいません。
0094nobodyさん
04/08/29 01:20ID:AyQVtsJdなるほど、ありがとうございます。助かります。
$ename = preg_replace( "/(さん|君|殿|様)$/" , "", $ename )."様";
この場合ですと、$enameに格納されているものが「さん」「君」「殿」「様」
だった場合でも「様」に変換されてしまいますよね・・・
例えば$enameに格納されているものが「さん」だった場合、「さん様」
となるようにするにはどうしたらよいですか。
何度もすいませんがよろしくお願いします。。
0095nobodyさん
04/08/29 01:25ID:???プログラミングセンス無さ杉
$ename = preg_replace( "/(君|殿|様)$/" , "", $ename )."様";
0096nobodyさん
04/08/29 01:30ID:???ああ、"さん"って名前の人が居た場合か
それならこっちだな
if($ename != 'さん') {
$ename = preg_replace( "/(さん|君|殿|様)$/" , "", $ename );
}
$ename .='様'
0097nobodyさん
04/08/29 01:42ID:???後方参照使えばええやん。
$ename = preg_replace("/(.*)(さん|君|殿|様)$/", "$1様", $ename);
009897
04/08/29 01:46ID:???009997
04/08/29 01:46ID:???$ename = preg_replace('/(.*)(さん|君|殿|様)$/', '$1様', $ename);
0100nobodyさん
04/08/29 02:00ID:???(.*)とか$1付けんでも普通に
$ename = preg_replace('/(さん|君|殿|様)$/', '様', $ename);
でええやん?
010292
04/08/29 02:36ID:???なんか怪しくねぇか、それ。
$enameが「さん」のみ「殿」のみとかだったら、後ろに「様」をつけて「さん様」「殿様」にして
「Aさん」「B殿」だったら「A様」「B様」にするんだろ。
$ename = preg_replace( "/(.+?)(さん|君|殿|様)?$/" , '$1様', $ename);
0103nobodyさん
04/08/29 02:56ID:???0104nobodyさん
04/08/29 03:00ID:???0106102
04/08/29 03:13ID:???0107nobodyさん
04/08/29 03:14ID:AyQVtsJd>>102さんので出来ました。
本当にありがとうございました
0108nobodyさん
04/08/29 04:22ID:???0110nobodyさん
04/08/29 05:41ID:???1ページにつき1つのPHPファイルで表示するのと、
全ページを1つのPHPファイルで処理するのではどちらが負荷が軽いですか?
掲示板で言うとTOP,書き込みページ,ログを別々のPHPファイルで処理するみたいな
0111nobodyさん
04/08/29 06:24ID:???負荷よりメンテナンス性で考えろ。
分かりやすい、変化に強いコードを書いてそれで重くなったのなら後からチューニングすればいい。
0112nobodyさん
04/08/29 06:37ID:???フレーム切ってブラウザから多重で呼ぶ作りではなく、
メイン1つとメインから複数のサブを関数的にコールする作り
の話なら負荷の差云々は気にするな。
0114112
04/08/29 08:05ID:???「TOP,書き込みページ,ログを別々のPHPファイルで処理する」
に対応する内容ではなかったな…
素のPHPだけの場合だと、分割の方がメモリ占有の部分で
若干負荷が高い。CPU負過の部分では同等。
しかし、そんなもんは微々たる瑣末なこと。
111の言うとおりメンテナンス性を優先
本当に負荷を気にするほどのレベルなら、
PHPでもプリコンパイルされたバイナリの利用、
全体/部分的にPHP以外の採用も検討。
0116nobodyさん
04/08/29 09:28ID:Kc1bBELSphpで "->"って演算子ですか?
$tmp = $row->tmp;
自力で調べてみましたがよくわかりません。
0117nobodyさん
04/08/29 09:40ID:???0118nobodyさん
04/08/29 10:54ID:???0119nobodyさん
04/08/29 10:54ID:W8RVkldu調べる対象すら判らなかったので助かりました。
012080
04/08/29 13:30ID:???すいません。どうすればいいか分かりません。
install-sh が phpのソースのところにあったり、
インストールしたいPecl APCのところにあるのはわかりますが。
0121nobodyさん
04/08/29 13:39ID:???毎週うちにきて、隣で教えてくれると助かるんだけどね。
もと風俗譲の27歳でした。
012280
04/08/29 14:12ID:???意を決してphpizeをviで開いてみる。
「あ、これshなんだ・・・と気付く」
なんか、インストールのときに変なことをやったらしく、
/..../php/build
になるべきところが
/..../php/php/build
になってました・・・。
viでそのままパスを書き換えたらうまくいきました。
こんな対応でいいのか、いまいち不安ですが、一応解決です。
0128nobodyさん
04/08/29 14:36ID:???$_POSTのデータは、中身に数値以外の情報が入ってることが
確定だった場合、何でもかんでもhtmlspecialcharsでエンコードすべきですか?
0129nobodyさん
04/08/29 14:44ID:???0132nobodyさん
04/08/29 15:14ID:cCH4wkwYもうね、馬鹿かど(ry
0133nobodyさん
04/08/29 15:34ID:???あ ふ ぉ か
だからおまいらのアプリケーションは後からコードを観てもエスケープ処理が分散してて完全な対策が保証されなかったり、
最初に全入力値に対してエスケープ処理かけた結果が入力データの同一保持が壊れたりするんだよ。
出力対象に合わせて直前でエスケープ処理しる!
HTML に出力するんなら、直前 (出来ればテンプレート内部) でかけるんだよ。
Smarty なら escape 演算子使え。Flexy ならもっとスマートだ。
0135133
04/08/29 15:46ID:???PHP アプリケーションの質下がり杉。その手の相談も去年より増えた。
最近 PHP でやるって言うと顧客が不安な顔するし。
0139133
04/08/29 16:14ID:???0141nobodyさん
04/08/29 17:13ID:???まぁ人によりけりだろ。
0142nobodyさん
04/08/29 17:38ID:nmd5+dtj0143nobodyさん
04/08/29 18:34ID:???その後、Pecl APC と TurckMMCacheを入れて、
比較してみたので参考まで。
ベンチは手軽さ優先で ApacheBenchです。
(ab -n 500 -c 10)
ソースはそんなに大きくないですが、連想配列使いまくり。
Smarty使用です。
無し: 10.3 #/sec
Pecl APC: 26.3 #/sec
Turck MMCache: 28.2 #/sec
Zendより良いかは分かりませんが、
Turck の webページの比較はホントっぽい。
ttp://turck-mmcache.sourceforge.net/index_old.html
0144nobodyさん
04/08/29 19:28ID:???0146軟式PHP
04/08/29 19:43ID:???0147nobodyさん
04/08/29 20:20ID:???原因がわからず、こまってます^^;
0148軟式PHP
04/08/29 20:36ID:???0149nobodyさん
04/08/29 20:49ID:???↑こんな文字化けです
0150nobodyさん
04/08/29 20:53ID:???0151nobodyさん
04/08/29 20:58ID:???0153nobodyさん
04/08/29 21:03ID:???文字化けで困っちゃいけないの?
0154nobodyさん
04/08/29 21:16ID:???mb_convert_encodingだけでは文字化けしてしまう場合があります
0155nobodyさん
04/08/29 21:17ID:???0156nobodyさん
04/08/29 21:20ID:xD9nrE3/でもソースをみるとそこの部分は改行されず永遠と右にずらーっと続いています。
ソース上でも改行を加えたりすることはできないのでしょうか?
0159nobodyさん
04/08/29 21:38ID:xD9nrE3/それができないんです。
http://php.s3.to/simple/source.php?nikki.phpの
「$com = str_replace("\r\n", "\r", $com); 」あたりを弄ったんですが
それで編集するとどうもちゃんと更新されません。
0161nobodyさん
04/08/29 22:02ID:xD9nrE3/入力した内容が表示されないんです
0162
04/08/29 22:38ID:ABDLQ/Knあまり経験がなく教えて君なのですが
global変数系をまとめておきたいのですが
<?php
$user = "test";
$password = "2ch";
?>
安易に上記のような感じで記述しようかと思うのですが
開発していく上で問題は起こらないでしょうか?
もし経験者いましたら教えてください。
0163nobodyさん
04/08/29 22:38ID:???0164nobodyさん
04/08/29 22:49ID:fDZT6TXTdefine
0166nobodyさん
04/08/30 00:16ID:LBsDFKrahoge = parts.options[parts.selectedIndex].value;
とかやって、hogeの中に、文字列が入ってるんですが、
この文字列を、phpでつかう
$hoge変数に格納したいんですがどうすればいいでしょうか?
0167nobodyさん
04/08/30 00:20ID:QEqsYWNI私は27歳のOLしてるのぉ〜〜〜っ♪(#⌒〇⌒#)キャハ
うーんとー、私メル友がすっごくすっごく欲しくってー、
探してたら(◎_◎)なんとっ!
>>1さんの素敵なスレッド♪を発見!!!!(^o^)//""" パチパチパチ
てなわけで、ついつい書いちゃったのらー(o^v^o) エヘヘ
メル友に、なってくれるよねっ。(*^-^*)
え?くれないのぉ〜?(;¬_¬)そんなのいやいや〜〜、
なってくれなかったら、( `_)乂(_´ ) 勝負!
☆○(゜ο゜)o ぱ〜んち、☆(゜o(○=(゜ο゜)o バコ〜ン!!
(>_<) いてっ!
(☆o☆)きゃ〜〜(@_@;)やられた〜〜(o_ _)o ドテッ
(+_+) 気絶中。。。
なあんて(#⌒▽⌒#)こんな私っ!σ(^_^)だけど、
お友達になってm(_ _)mくださいませませ♪('-'*)フフ
ということで。(^-^)vじゃあね〜〜〜♪
0168nobodyさん
04/08/30 02:25ID:???なんか他国言語の文字のようだ(´A`)
DBって何使ってるの?そのDBの文字コードは?
そのへんから原因を探ってみてはどうだろう
0169nobodyさん
04/08/30 02:29ID:???見つけたんですが、どうもうまくいかないです。どこが変なんでしょうか?
<?php
$hhh = array("a","b","c");
$hoge = serialize($hhh);
?>
<form action="<?= $PHP_SELF ?>" method="post">
<input type="checkbox" name="box" value="<?= $hoge ?>" />
<input type="submit" value="botan" />
</form>
<?php
if(isset($_POST["box"])) print_r(unserialize($_POST["box"])); //*1
if(isset($_POST["box"])) print_r($_POST["box"]); //*2
?>
*1 何も表示されない。こう表示させたい → Array ( [0] => a [1] => b [2] => c )
*2 出力結果 → a:3:{i:0;s:1: (よく分からんけど、たぶん「Array」の変化したもの)
0170nobodyさん
04/08/30 03:00ID:???デバッグのためにunserializeした後とする前の比較をしてるのに
なんでserializeした後とする前の比較をしないのか不思議でならない
0171nobodyさん
04/08/30 06:45ID:???phpでパースして出力されたHTMLソースを
表示させて眺めると分かるかもよ
<input>タグのあたりとか
つか動作がおかしかった時にHTMLソースを
見るのはデバッグの基本だと思うがどうか?
0172nobodyさん
04/08/30 07:44ID:???0173116
04/08/30 10:39ID:kwBfpaHQもう一つ質問させて下さい"と'の使い分けについてですが
どういう場面でどっちとかあるんでしょうか?
0174nobodyさん
04/08/30 10:59ID:???'は文字型で宣言した変数に文字を代入するのに使います。
実際には文字コードの対応する値が入ります。
"で囲われた文字列は、式としては「メモリの先頭アドレス」を値に持ちます。
0175nobodyさん
04/08/30 11:43ID:???echo "\"$neta\"".'\'$neta\'';
0177nobodyさん
04/08/30 15:22ID:6Aumzc+Nereg("abcd*", $host)はtrueが返るのに、
ereg("abcd*\.abc\.ne\.jp", $host)がマッチしないのはなぜですか?
abc.abc.ne.jp、abcd.abc.ne.jp、abcddd.abc.ne.jp
などにマッチする。やるなら
"abcd.*\.abc\.ne\.jp"
0181軟式PHP
04/08/30 15:52ID:???いいかもしれぬよ。つか台風すげーよ。
018267
04/08/30 16:11ID:???一応原因がわかったので、報告します。
実は元のスクリプトでは、exec の前にカレントディレクトリの変更をするコードが入っていました。
exec が終わった後でカレントディレクトリは元に戻すのですが、その場所を file_exists 判定の
前に書くべきところを、後に書いていました。
こんなかんじ
$cd=getcwd();
chdir($execdir);
exec('make_test');
clearstatcache();
if(file_exists('test.txt')) {
:
:
}
chdir($cd); // ←こいつの場所はここじゃくて exec の直後であるべき
週末にぐーすか寝てからコードを見たらすぐわかりました。
いやはやお恥ずかしい限りです。
"^abcd.*\.abc\.ne\.jp$"にする必要がありますね。
# 関西ですがまだ風が強いだけでそこまで
0184177=180
04/08/30 16:35ID:???前後に何もないことをチェックするんですね。
たびたびありがとうございます〜。
こちらも同じく関西ですが、台風とは思えぬ穏やかさ・・・。
0185カポコン
04/08/30 16:40ID:???シングルとダブルの違いですか〜。。。
結構、面白い質問ですね、
同じ文字列を表現するという部分は一緒ですが・・・
例えば、
<?php
$ANI = array("bear","fox");
$str[0] = "$ANI[0]'s nails are very danger.\n"; //問題なし
$str[1] = 'The $ANI[1]\'s fur is very beautiful.\n'; //問題あり
foreach($str as $val) echo(nl2br($val));
?>
のようにタイポしてみれば、ある程度違いが分かるのではないでしょうか?
他にも違いがありそうなので僕よりエロイ方いたら教えてくださいな。
>>174
よくCってますねぇ・・・(゜д゜::)
0186nobodyさん
04/08/30 16:46ID:???0187カポコン
04/08/30 16:48ID:???ダブルとシングルのクォートの違いは・・・。
エスケープシーケンスの例(↓)
\n 改行; \\ \マーク; \r 復帰; \t タブ; \$ $マーク; \"ダブルクォート
\' (シングルクォート内でシングルクォートを使用したい場合)
0191169
04/08/30 20:00ID:???申し訳ない。base64_encode()追加で簡単に渡せますた。
本当はserialize()使用前後の比較も、HTMLのソースも見てたんだけど
どうも脳みそがグダグダだったようで……(serializeの意味も理解してなかった)
本当はこの配列を、さらに配列にして渡したかったんですが
そっちは簡単にできました。スレ汚しすまんです。
0194nobodyさん
04/08/30 21:47ID:???多重度が低いととってもパフォーマンス悪いんですが、
そんなもんなんですかね?みなさん。
0195nobodyさん
04/08/30 21:59ID:???0196nobodyさん
04/08/30 22:05ID:???楽天市場やヤフーオークションなどによく一覧を見るためにサムネイル画像が使われていますが
それらサムネイル画像には元の画像がありますよね。
元の画像が40kbなのに対しサムネイル画像は4kbとか約10分の1位の容量になっています。
これを単純にHTMLで画像のサイズを小さくしてサムネイルを作ると
40kbのままでサムネイルが出来てしまいます。
画像は同じ画像でもサイズを小さくすると容量まで小さくする関数などがあるのでしょうか?
よろしくご指導お願いいたします。
0197nobodyさん
04/08/30 22:05ID:OUKC12Ijイヤな予感すらしますが、教えてください。
array(3) { [0]=> string(2) "10" [1]=> string(2) "30" }
と言う配列をうまいこと
array(3) { [0]=> string(2) "10" [1]=> string(2) "20" [2]=> string(2) "30" }
にするような関数って無いですよね?
0199nobodyさん
04/08/30 22:14ID:???早速のレスありがとうございます。
>ファイルが2つあるとは考えないのかい?
ということは画像をアップロードする時にサムネイル用の画像も自動で作られるという感じですかね?
0200nobodyさん
04/08/30 22:18ID:???ワラタ
タフだな。
ImageMagic とか GD で調べれ。
面倒か使えるだけの理解力が無ければ >>198 のように、Fireworks や ImageReady といったソフト使って別に用意しる。
0201nobodyさん
04/08/30 22:53ID:???ありがとうございます。
なるほどですね。まさか2枚にしてたとは・・
私はてっきり元画像をどうにかして容量を小さくして見せる方法があるものだと思ってました。
GDは使いやすそうですね
0202200
04/08/30 23:11ID:???いや、もういいや orz
0203nobodyさん
04/08/30 23:26ID:MkaTkZM6if($aaaaa) {
echo "ok";
} else {
echo "out";
}
か、または
if($aaaaa)
{
echo "ok";
}
else
{
echo "out";
}
どっちの書き方してますか?どっちのほうがよいのでしょうか?
0204nobodyさん
04/08/30 23:32ID:???0205nobodyさん
04/08/30 23:33ID:???個人的には
if($aaa) {
echo "ok";
}
else {
echo "out";
}
です。
理由らしい理由も無いですが、if の後ろに何も付けないとさみしい気がするのと、無駄に行が増えるのがいやなのとでこうしてます。
} else { みたいな書き方は、あんまりやりません。
書き方について説得力のある意見があるなら、自分もぜひ伺いたいです。
0206nobodyさん
04/08/30 23:34ID:???} else {
なかったっけ?
俺もこれ嫌いなんだけども
0207nobodyさん
04/08/30 23:36ID:???嫌味ったらしく自分は分かっていることだけを晒して
肝心な部分を教えないタイプ。
俺はこういう奴は無視〜
0210nobodyさん
04/08/30 23:48ID:???http://pear.php.net/manual/ja/standards.php
IDEも参考にしてるだろうから、合わせた方が楽なんだろうなぁ。
0213nobodyさん
04/08/30 23:56ID:???確か C の話だったと思うけど、間違えて下のような書き方をしてはまったので
if($aaa) { という形にに変えたという話をどこかで読んだことがある。
if($aaa);
{
echo "ok";
}
else の書き方は } else { と一行で書くよりは、
}
else { とした方が、diff コマンドで差分を作成する時に読みやすい差分ファイルが
できるという話があったような・・・。
0214nobodyさん
04/08/31 00:16ID:???IMAP関数を使用した方がいいの?
それともソケットでPOP3鯖にアクセスして取得すた方がいいの?
どっちも難しいそうだ…
0215nobodyさん
04/08/31 00:23ID:???PEAR使うと簡単。
0216軟式PHP
04/08/31 00:30ID:???0217nobodyさん
04/08/31 00:34ID:???echo "ok";
} else {
echo "out";
}
これが正解
制御構造では、関数コールと区別するために 制御キーワードと開き括弧の間に空白を 1 つ置くべきです。
0218nobodyさん
04/08/31 00:39ID:???レス有難う。
やりたい事は写メールBBSの様に(そのモノではないです)
メールを読み込んで更新する様なシステムを作りたいのです。
ちょっとまだ勉強中なので良くわかってないのですが。
貴重なお知恵を有難う御座いました。
0220nobodyさん
04/08/31 01:40ID:???同じ物は PFC で見た記憶がある。
俺はそれからスペース置くようにしてる。
でも制御構造はこれ。
if (true)
{
処理
}
結局、始点と終点が分かりやすい方を取った。
0221nobodyさん
04/08/31 02:15ID:???キミに同じく
0223nobodyさん
04/08/31 03:28ID:???20件目ってなりますけど、改行なしのログファイルから、普通にアクセスすると
先頭から100バイト、次をクリックすると101バイト目から200バイトまでって
表示させることはできないでしょうか?
0225nobodyさん
04/08/31 07:21ID:Cvp+faYJあ、気づいてくれました?
配列の1番目と2番目の間に、要素を追加し、元の2番目の要素は後ろにずれて
3番目になって欲しいんです。
0226nobodyさん
04/08/31 07:37ID:???その配列が $a、挿入したい位置が $n、挿入したい値が $v だとすると、
array_splice($a, $n, 0, $v);
はどうよ?
0227nobodyさん
04/08/31 10:18ID:RICHNKvsありがとうございます。勉強させていただきました。
調べたらありました。↓
> array_splice
> offsetおよびlengthで 何も削除しないと指定した場合、
> 配列replacementの 要素はoffsetで指定された位置に挿入されます。
0228nobodyさん
04/08/31 10:33ID:???backtick演算子
って見慣れない演算子が出てきたんですけど、
backtick演算子って、
JUST ONE MORE KISS で悪の華?
0229nobodyさん
04/08/31 11:14ID:j9aJEHZOおでこに「愛」と書いてあります。
あ、これ今井じゃなくて砂漠のガアラだ。
0230nobodyさん
04/08/31 11:24ID:???0232nobodyさん
04/08/31 12:01ID:???move_uploaded_fileでアップされたファイルのmimetypeを調べたいのですが。
その場合環境変数のCONTENT_TYPEを使えばいいのでしょうか?
と言ってもCONTENT_TYPEをどう使えばいいのか分からないのですが・・
詳しい方いませんか?
今はGetImageSizeで画像か画像で無いかを判別してます。
それをもう少し詳しく調べたいのですが。
0233nobodyさん
04/08/31 12:03ID:rI5QNfOvfopenで開こうとすると
http://www.google.co.jp/
ですと普通に開けますが、
http://www.google.com/search?hl=ja&lr=lang_ja&ie=UTF-8&oe=UTF-8&q=aaa&num=50
などと引数が付くと
Warning: fopen("http://www.google.com/search?hl=ja&lr=lang_ja&ie=UTF-8&oe=UTF-8&q=aaa&num=50", "r") - Success in 。。。。
とエラーが出てしまいます。
色々調べてみたのですが、わかりません。識者の方、ヒントでも結構ですのでお教えください。
0234nobodyさん
04/08/31 12:05ID:rI5QNfOvPHP のバージョンは 4.2.3 です。
0235nobodyさん
04/08/31 12:25ID:???PHP 4.3.7 です。
$fp=fopen("http://www.google.co.jp/search?hl=ja&ie=Shift_JIS&c2coff=1&q=%82%AE%81%5B%82%AE%82%E9&lr=lang_ja","r");
print fgets($fp);
fclose($fp);
0236nobodyさん
04/08/31 12:34ID:???試してみましたが同様に
Warning: fopen("http://www.google.co.jp/search?hl=ja&ie=Shift_JIS&c2coff=1&q=%82%AE%81%5B%82%AE%82%E9&lr=lang_ja", "r") - Success in 。。。
とエラーが出ます。
PHPの設定なのでしょうか?
allow_url_fopen は '1'です。
GETだと別の命令が必要なのでしょうか??
Googleはuser_agentを設定しないと許可してもらえませんよ。
0241nobodyさん
04/08/31 13:49ID:1XrzGRem本文を mb_convert_encoding でJISにしたら受信時に文字化け、
SJISにしたら文字化けせずにスンナリいったんですが、
こんなことあるんでしょうか?
どこかのホムペで読みましたが、JISよりSJISの方がベターなのでしょうか?
0242nobodyさん
04/08/31 14:04ID:???このヘッダが足りないとか?
Content-Type: text/plain; charset="ISO-2022-JP"
Content-Transfer-Encoding: 7bit
0243nobodyさん
04/08/31 14:07ID:???ありがとうございます。
>>233
<?php
$url = @file("http://www.google.co.jp/search?num=10&hl=ja&ie=Shift_JIS&q=$key_word&lr=lang_ja");
print_r ($url);
exit;
?>
ではダメ?
0244241
04/08/31 14:17ID:1XrzGRemそれは初耳でした。
で、それを加えて再度JISで試してみましたが、ダメでした。
でも調べたら、やはりSJISよりJISの方がベターっぽいですよね〜
うーん困った・・・
0245241
04/08/31 14:20ID:1XrzGRemmbstring.detect_order auto auto
mbstring.encoding_translation On On
mbstring.func_overload 0 0
mbstring.http_input auto auto
mbstring.http_output SJIS SJIS
mbstring.internal_encoding EUC-JP EUC-JP
mbstring.language Japanese Japanese
mbstring.substitute_character no value no value
で、スクリプトはEUCでコーディングしていますが、
何か問題ありますでしょうか?
0246nobodyさん
04/08/31 14:29ID:???mb_send_mail でメール送ってるなら、この関数は日本語を JIS に変換して送ってくれるから、
自分でわざわざエンコードしちゃうと文字化けの原因になるかもね。
あと、mb_language の設定はどうなってるんだろう。
0247241
04/08/31 14:35ID:1XrzGRemです。
mb_send_mail は使用していないです。
9割大丈夫なのに1割文字化けしてしまうんです。
実際、SJISでメール送ることって結構問題発生するものでしょうか?
大きい問題が無いのならこちらを利用しようかなと。
0248nobodyさん
04/08/31 14:39ID:???戻り値は false です。
ですが単純に"http://www.google.co.jp/"でのアクセスならtrueです。
>>239
ini_set('user_agent','Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.1.4322; Alexa Toolbar)');
を付加してみましたが、同じエラーでした。
>>243
試してみましたが、ブラウザは真っ白で、ソースでは
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=utf-8"></HEAD>
<BODY></BODY></HTML>
だけです。
やはりソケットの許可とかなんですかね?その辺はあまり詳しくないのでもうちょっと調べてみます。
0249nobodyさん
04/08/31 14:43ID:???世界のサーバに迷惑かけかねないから、決まりには従っておいた方がいいと思うよ。
ところで、エンコードしたサンプルメールをヘッダごとここに貼り付けてみたら、いいアドバイスしてくれる人がいるかもよ。
0252nobodyさん
04/08/31 14:54ID:???>単純に"http://www.google.co.jp/"でのアクセスならtrueです。
これなら、サーバが外部に接続できないとかいった問題は無いよね。
なんだろうね。
PHPのバージョンのせい?
0254nobodyさん
04/08/31 16:14ID:???foreach($fp as $fpv){
echo $fpv."<br>";
}
とか
0256nobodyさん
04/08/31 17:36ID:???> ですが単純に"http://www.google.co.jp/"でのアクセスならtrueです。
なんだ。ネタかよ
0257nobodyさん
04/08/31 18:02ID:???http://ns1.php.gr.jp/pipermail/php-users/2003-November/019273.html
0258nobodyさん
04/08/31 18:02ID:???fopen が成功したときに返すのは true ではないっていう、この際どうでもいい点以外に、なにか有意義な指摘は無いの?
0259nobodyさん
04/08/31 18:09ID:???ググれば出てくる話にダラダラレスしてる奴らも冗談半分なんだろ。
明確にネタだと言ったらすこしは醒めんか。面倒臭い。
0263nobodyさん
04/08/31 20:38ID:???http://www.google.co.jp/search?q=cache:-u7P_8RU9r4J:bugs.php.net/bug.php%3Fid%3D8440+php+success+warning+fopen&hl=ja
しかし、似たようなトピックが結構あるし、この条件でもまだ2万近くヒットしてるから、
ちょっと特定はできんな。ML漁ったらさらに情報増えそうだ。
ちなみに今回はリダイレクト問題じゃなく、4.2.3でクエリ飛ばすとGoogleが403を
返すのをハンドリングできないというだけだと思われ。
# このスレでもちょっと前にもfile_get_con()で206がハンドリングできねえぞどうなってんだっ
# て話があったけど。
知ってる人には当たり前だが、phpのwapperはステータスコードのトリートは
ほとんどやらない仕様なのだ。
はるか昔、内部ステータスのSuccessがエラーで返っちゃうダメ仕様についても
readfileとかstreamの問題で何度か指摘されたことがあったが、これは果てしなく
分かりにくいのでいつのまにか修正されらしい。
解決策はみんな0.1秒で思いつくと思うので省略。
# ときに、レスポンスヘッダー見るくらい常識というのは、今や過去のことですか・・?
0265nobodyさん
04/08/31 21:21ID:???PHP4.2にはUAディレクティブありませんから!!
ちなみにUAは、全く送らないかきちんと偽装する、が正解。
#しかしそうするとぐーぐるのサービス規定に抵触するモヨウ
0267nobodyさん
04/08/31 21:28ID:LThtawzV前の頭に載せたくなるデザインもなかなかだったが、
今回のはマジ欲しい。
0268nobodyさん
04/08/31 21:41ID:???最初に本当に気付いてたなら、その時に言えば感謝されたものを。
0269nobodyさん
04/08/31 21:51ID:???0270nobodyさん
04/08/31 21:56ID:LThtawzV問題のカイケツってこれのことか?
0.1秒でカイケツしたのは>>268だけだろ?
他の皆はマックンに乗り換えようぜ!
古きよきコンピュータって感じで最高じゃん。
おでこの部分を人差し指でつついてフラフラさせたりして遊びたい。
スクリプトならOSXでもバリバリ開発出来るんだぜ。
0271nobodyさん
04/08/31 22:00ID:???外にあふれてきてるやつがいるのか? 巣に帰って呉よ
0272nobodyさん
04/08/31 22:27ID:???<?php
$data = "\"$a."<>".$b."<>".$c."\n";
$fp = fopen("file.log","a");
flock($fp,2);
fputs($fp,"$data");
flock($fp,3);
fclose($fp);
?>
<html>
<body>
完了
</body>
</html>
のように「file.log」に書き込んで
a<>b<>c
d<>e<>f
のように書き込んでいきたいのですが
a<>b<>cd<>e<>f
のように改行がうまくいきません。ちなみに最後の文字(〜<>f)の後には
改行が入ってるのですが。どうしてでしょうか?
0273nobodyさん
04/08/31 23:04ID:MMjs19HPすごく初歩的な返事で悪いんですが釣りですよね!!
0275272
04/09/01 02:02ID:zYm4GWInあと少しミスして書いてました。
<?php
$data = $a."<>".$b."<>".$c."\n";
PHPは昨日始めたばかりで真剣にわからないんです。優しい方がいたら教えてほしい…。
0277nobodyさん
04/09/01 02:35ID:?????
$data = "{$a}<>{$b}<>{$c}\n";
0278nobodyさん
04/09/01 02:38ID:???ソースのコピペくらいきっちりやらなきゃ釣り扱いされるよ。
例えば
<?php
$a="a";
$b="b";
$c="c";
$data =$a."<>".$b."<>".$c."\n";
〜略〜
にしてリロード2回すれば
a<>b<>c<>
a<>b<>c<>
のfile.logができるはず。
エディタの設定で\nが改行されないだけなら板違い。
0279277
04/09/01 02:40ID:???0281nobodyさん
04/09/01 02:52ID:???0282nobodyさん
04/09/01 02:54ID:???$data = "{$a}<>{$b}<>{$c}\n";
$data = "$a<>$b<>$c\n";
どれでもOK
ログファイルをWindowsメモ帳で開く様なら\nを\r\nにしとけ
0283nobodyさん
04/09/01 02:56ID:???> 改行が入ってるのですが。どうしてでしょうか?
これ本当か?
0284nobodyさん
04/09/01 03:47ID:???マジ使い易い。
0286nobodyさん
04/09/01 08:15ID:???改行コードの問題かな。
PHP の動いてる OS はなに?
Windows系の OS だと改行コードは CRLF(\r\n) だから、テキストモードでオープンしたファイルに対して \n を
出力すると \r\n に変換されて記録されるよね。
でも、もしなんらかの問題で、
・\n で出力したものがファイルにも \n で記録されて
・fopen で追記オープンして、書き込み位置をファイルの最後にシークしようとしたとき、改行コードとして \r\n を期待しているのに
・実際にファイルに記録されている改行コードは \n なのでシークに失敗し、
・ファイル末尾の \n の位置に書き込み位置をシークしてしまい
・fputs でデータを出力したとき、その \n を上書きしてしまい
・結局行間の \n は消滅し、最後に書き込んだ行の \n は残る
みたいな現象とか?
fopen のファイルモードに "ab" を指定してバイナリモードでファイルを扱うようにしたら?
改行コードが CRLF がいいなら、バイナリモードでオープンした上で \r\n を出力するとどうだろう。
0287nobodyさん
04/09/01 08:43ID:???"b"として扱うように変更になっている。
最近PHPを始めたんなら最近のバージョンだと思うけどどうかな
0288nobodyさん
04/09/01 10:44ID:bsFh6eifrm file.logさせて3回以上実行してからfile.logを張ってみそ
実行した時には張る必要もない気がするが・・・
0289nobodyさん
04/09/01 11:23ID:???スペースつかってまつか?
TABつかってまつか?
PEARってスペースなんだよな。
0290nobodyさん
04/09/01 11:28ID:???0292nobodyさん
04/09/01 12:10ID:???秋の訪れに期待していたのだが・・・
0293272
04/09/01 12:24ID:???Windowsメモ帳で開いていたのが原因で、ほかのエディタで開いたら
ちゃんとできてました。
みなさん親切に答えてくれてありがとうございました。
ご迷惑かけました。
0294nobodyさん
04/09/01 12:28ID:???0295nobodyさん
04/09/01 12:43ID:???0296nobodyさん
04/09/01 13:54ID:???ドンマイ
0297nobodyさん
04/09/01 14:00ID:???0298nobodyさん
04/09/01 14:36ID:???TABだと開くエディタの設定によってインデント幅が
変わってしまうのでスペースだな。
特に複数人でソースいじるような場合はそう。
0299nobodyさん
04/09/01 14:40ID:???mb_send_mailでメールを送信すると激しく文字化けが起きます。
mb_language("ja")で指定もしてます…
php_iniの設定が間違ってるのだと思うのですが、何処をどの様に変更すれば宜しいですか?
ご教授願います。
0300nobodyさん
04/09/01 14:42ID:???でもエディタによってはスペースでインデントする機能が無かったりするしなぁ。
おれは普段はTAB使ってる。
スペースインデントがいいって言われたら、TABで書いたのをツールで変換してる。
0301nobodyさん
04/09/01 14:43ID:QcGal7pvどういう方法が一番高速ですか?
0302nobodyさん
04/09/01 14:52ID:VNRqZmigたしかそんなことあったなぁ。
mb_internal_encoding('EUC-JP');
を指定してみて。
0305nobodyさん
04/09/01 16:34ID:/FAqwI15printf("%x\n", "あ");
で、ffffa4a2といったように、a4a2という文字コード
がもらえるのですが、
PHPだと
printf("%x\n", "あ");
とすると、「a4」しか拾えません。
mb系の関数はあまり使いたくないのですが、それでも
いいので何か良い方法ありますでしょうか。
0306nobodyさん
04/09/01 16:45ID:???Cで printf("%x\n", "あ"); とやって得られた ffffa4a2 は文字コードではありません。
"あ" という文字列の格納されているアドレスです。
0307nobodyさん
04/09/01 17:20ID:/FAqwI15書きまちがえました
printf("%x\n", 'あ');
です。
で本題をお分かりの方いらっしゃいますでしょうか。
0309軟式PHP
04/09/01 17:37ID:???L -‐ '´  ̄ `ヽ- 、 〉
/ ヽ\ /
// / / ヽヽ ヽ〈
ヽ、レ! { ム-t ハ li 、 i i }ト、
ハN | lヽ八l ヽjハVヽ、i j/ l !
/ハ. l ヽk== , r= 、ノルl lL」
ヽN、ハ l ┌‐┐ ゙l ノl l
ヽトjヽ、 ヽ_ノ ノ//レ′
r777777777tノ` ー r ´フ/′
j´ニゝ l|ヽ _/`\
〈 ‐ 知ってるが lト、 / 〃ゝ、
〈、ネ.. .lF V=="/ イl.
ト |お前の態度が とニヽ二/ l
ヽ.|l 〈ー- ! `ヽ. l
|l気に入らない lトニ、_ノ ヾ、!
|l__________l| \ ソ
0310305
04/09/01 17:40ID:???0311nobodyさん
04/09/01 17:57ID:GSYA0qV6それもうまく動かない気がするけどなぁ・・・
とりあえず本題は
$a=unpack('H4', 'あ');
ってやって $a[1] を評価したらどうよ?
0314nobodyさん
04/09/01 18:18ID:???<form method="post" action="hogehoge.php">
<button type="submit" name="hage" value="tsurupeta">push!</button>
</form>
において、hogehoge.phpで$_POST[hage]の値が、
"tsurupeta"ではなく、"push!"が入っています。
valueで設定した値を取り出すことはできないのでしょうか?
0315nobodyさん
04/09/01 18:24ID:???<input type="hidden" name="hage" value="tsurupeta" />
<input type="submit" value="push!" />
</form>
こうやってみたら?
0316314
04/09/01 18:33ID:???すいません。言葉足らずでした。
実はボタンを複数置きたいのです。
質問を書き直すと、
<form method="post" action="hogehoge.php">
<button type="submit" name="hage" value="tsuru">push!</button>
<button type="submit" name="hage" value="peta">push!</button>
<button type="submit" name="hage" value="tsurupeta">push!</button>
</form>
として、
hogehoge.phpでどのボタンが押されたか判別したいのです。
ボタンのnameは同じにしたい
formタグはひとつですませたい
htmlタグ以外の技術はなるべく使いたくない
というのが希望です。
$_POST[hage]にvalueの値でなく、nameの値が入っているのは正常な動作なのでしょうか?
そうだとするとvalueの値ってのはいったい何の意味が。。。
よろしくお願い致します。
0317nobodyさん
04/09/01 19:03ID:???<form method="post" action="hogehoge.php">
<button type="submit" name="hage[tsuru]" value="push!" />
<button type="submit" name="hage[peta]" value="push!" />
<button type="submit" name="hage[tsurupeta]" value="push!" />
</form>
って感じにして、
$hoge=key($_POST['hoge']);
$hoge=pop($hoge);
ってのはどうよ?
試してないからうまくいくか知らないけど。
0318nobodyさん
04/09/01 19:05ID:???セットで送信されるに ''==ァ-‐‐,'゙<l _,,
決まってるじゃん `、:/::r'゙゙'_ェ'゙゙i、._ /ラノ マタ
,=キヅ `'ラ/ヾ/ (シフ マタァ〜 ゴジョウダン ヲ
,ケ:: ',. / ,:'゙
と思って試してみたら、ほんとにおかしな挙動をする。
有名なバグなのかなぁ。オイラは初めて知った。
(buttonはトリガーにしか使ったことがない。)
で、検索してみると http://d.hatena.ne.jp/nekoshiki/?of=4 がヒットした。
検索ワードは、「仕様 していない button value」。
0319nobodyさん
04/09/01 19:48ID:???IE 5.5, IE 6.0 → ボタンに表示されているものが入る。
Mozilla 1.7, Opera 7.54, Lynx 2.8.4 → valueが入る。
IEは「正常に」動作しているので改心してください。
0321nobodyさん
04/09/01 19:59ID:???0322nobodyさん
04/09/01 20:02ID:???一つの問題には多数の解法があるのに、何故それにこだわってやってるのかと…
0323nobodyさん
04/09/01 20:52ID:???>出力すると \r\n に変換されて記録されるよね。
だれか突っ込んであげないの?
0324nobodyさん
04/09/01 20:59ID:???<input type="submit" name="hage" value="push2>
<input type="submit" name="hage" value="push3>
でhageの中身見ればいいじゃん
0325nobodyさん
04/09/01 21:11ID:eg9a6m5n0326nobodyさん
04/09/01 21:12ID:/v+NW53mhttp://www.yuyuweb.com/garden/bbs/ccbmbs1/bbs1.cgi?room=1234
0330314
04/09/01 21:39ID:???IEの方言だったのですね。。。
ということはこのまま進めて解決してもIE以外では使えないって事か。。。
>>317
keyでは用意されたボタンの一番初めのキーが返ってくるようです。
つまり、例の場合だと、何を押してもtsuruが返ってきます。
用は、連想配列の要素にpush!が入ってるのはどのキーか探せばいいわけですね。
使えそうな配列関数を探してみます。
>>322
すんません。
はじめたばかりなんで、調べたこと以外のことはなかなか思いつかなくて。。。
ボタンの数が変動する上、キーの名前が固定されていないので、
issetでではむつかしいかな?
よくわかんないんですが。
>>324
ボタンに表示される名前をすべて同一にしたいのでダメかな。。。
>>325
その皮肉?すらわからない初心者でして。。。すんまそん。
みなさん、ありがとうございました。
もうちょい苦しんでみます。
0331nobodyさん
04/09/01 21:45ID:???<form method="post" action="hogehoge.php">
<input type="hidden" name="button" value="1">
<input type="submit" name="hage" value="push>
</form>
<form method="post" action="hogehoge.php">
<input type="hidden" name="button" value="2">
<input type="submit" name="hage" value="push>
</form>
<form method="post" action="hogehoge.php">
<input type="hidden" name="button" value="3">
<input type="submit" name="hage" value="push>
</form>
0332317
04/09/01 21:57ID:???実験してみたら、押してないボタンの内容まで全部送られてるっぽいから、どのボタンが押されたかの判定は無理っぽい。
>>318 の問題そのまんま。
button じゃなくて input を使うといいっぽいよ。
<form method="post" action="hogehoge.php">
<input type="submit" name="hoge[tsuru]" value="push!" />
<input type="submit" name="hoge[peta]" value="push!" />
<input type="submit" name="hoge[tsurupeta]" value="push!" />
</form>
って感じにして、
$hoge=key($_POST['hoge']);
$hoge=$hoge[0]; // さっきは pop を使ったけど、これでいいよね
これで OK じゃない?
0333nobodyさん
04/09/01 22:03ID:2OWt62Va$a = substr("abcdefg",1,3);
こんな感じでやっていたのですが、
「二文字目からからfに当たるまでを切り出したい」
というような場合はどうしたらいいのでしょうか?
0334317=332
04/09/01 22:04ID:???ボタンは同時に 1つしか押されないから、$_POST['hoge'] に含まれるキーの数は 1つってことで、
$hoge=key($_POST['hoge']);
これは Array が返るんじゃなくて、そのままキーが返るね。
だから、この 1行だけで OK みたい。
$hoge=$hoge[0] の行はいらない。
>>325
それを使ってどんな解決法があるのか教えてくれ。
ぜひ参考にしたい。
0335314
04/09/01 22:13ID:???formタグを複数使うと段落の成形がずれていくので。。。
すいません。
>>332>>334
デキタ━━━━━(゚(゚∀(゚∀゚(☆∀
理論がわかんないので調べますw
ありがとうございました。
0340nobodyさん
04/09/01 22:29ID:???PerlのファイルからPHPのファイルに変数を送ることはできますでしょうか?
例えば、Perlファイルで $a=3 という変数を
PHP側でも使用できるようにしたいのです。
0341nobodyさん
04/09/01 22:46ID:???0342nobodyさん
04/09/02 00:22ID:???0343nobodyさん
04/09/02 14:25ID:???何がやりたいのかよくわかんないけど、
Perl のファイルから Perl のファイルへ変数を送ることはできるんですか?
そのサンプルコードを提示すれば、きっとあなたのやりたい事が理解できると思いますし、
だれかからなんらかのアドバイスももらえるんじゃないでしょうか。
0344nobodyさん
04/09/02 15:54ID:???ファイルのサイズが大きいのでreadfileを使わず
読み込みバイトを区切って出力していくにはどうしたらよいでしょうか
0347344
04/09/02 16:22ID:???分割ではなくて、
$fd = fopen($filename, "rb");
while(!feof($fd)) {
echo fread($fd, 4096);
};
fclose ($handle);
ってやってみたのですが、だめだったんです。
0348344
04/09/02 16:23ID:???$fd = fopen($filename, "rb");
while(!feof($fd)) {
echo fread($fd, 4096);
};
fclose ($fd);
でした
0350nobodyさん
04/09/02 16:33ID:???ファイルを copy() させたいのですが
failed to open stream: Invalid argument
と言われます。パスに空白があるせいなのですが、どうしたらいいでしょうか?
0351nobodyさん
04/09/02 16:46ID:???だめって、どうだめなのよ?
で、そのコードは readfile とほとんど同じことをするものに見えるけど、なんで readfile じゃいけないの?
0352nobodyさん
04/09/02 16:49ID:???アップロード先ディレクトリのパーミッションが777以外で使えないのですが
他のパーミッションで使える方法ってありませんか?
0353nobodyさん
04/09/02 16:51ID:???Linux上で動いてるPHPだけど、スペース入りのパス作って Copy したけど、ちゃんと動いたよ。
スペースの問題じゃなくて、\ 記号をエスケープしてないとかじゃない?
0354344
04/09/02 16:54ID:???if ($fd = fopen($filename, "rb"))
としてやってみましたが、成功しているようです。
>>351
ファイルサイズが小さいものであればreadfileでできたのですが
ファイルサイズが大きいものをreadfileすると
ブラウザ上でサーバーが見つかりません
と表示されてしまいます。
0357nobodyさん
04/09/02 17:06ID:???なにが原因かはわかんないけど、サーバが見つかりませんってのは解せないね。
ループ一回ごとに Ob_Flush でも入れてみたらいいことあるかな?
0358nobodyさん
04/09/02 17:19ID:???0359nobodyさん
04/09/02 17:24ID:???0360344
04/09/02 17:37ID:???if ($fd = fopen($filename, "rb")) {
while(!feof($fd)) {
echo fread($fd, 4096);
ob_flush();
}
fclose ($fd);
}else{
echo "open error";
};
正しいかわかりませんが
でうまくいきました!ありがとうございました。
0363nobodyさん
04/09/02 21:12ID:???707はchmodとか使わない限り不要だろ
0364nobodyさん
04/09/02 21:34ID:???0365nobodyさん
04/09/02 21:39ID:???0366nobodyさん
04/09/02 22:55ID:???formの値がクリアされるが値を残す方法はありまつか?
0367nobodyさん
04/09/02 23:39ID:???JavaScriptとCookieで実現するのが一番常道だとは思う。
一応できなくはない、と。
0370nobodyさん
04/09/03 01:38ID:???テンプレート使ってるんだけど、そのページからsubmitして
confirmページへ飛ばして確認させて、間違いがあった人って
大半が「ブラウザの戻る」で戻しちゃんうんですよ。
0371nobodyさん
04/09/03 02:33ID:???0373nobodyさん
04/09/03 17:06ID:J5j4fe3Zphp /path/to/a,php
と起動すると問題なく実行できるのですが、
cron から 起動すると cronの実行は行われているのに、
a.phpの処理は行われないようです。
a.phpはエラーを吐くと思うのですが、
どうやってエラーを拾えばいいでしょうか?
php.ini の
log_errors = On
error_log = /path/to/error.log
を設定しましたが、エラーログははかれていないようです・・・
1行目のCGIコマンドを追加すべし。
#!/usr/local/bin/php
0375nobodyさん
04/09/03 17:43ID:???php コマンドにパスが通っていないだけでは?
cron に登録際に絶対パスで php コマンドを呼び出すとか。
/usr/local/bin/php /path/to/path/a.php
エラーを拾いたければ以下のように cron に登録すると簡単。
書き込み権限の確認を忘れないように。
/usr/local/bin/php /path/to/path/a.php &> /path/to/path/error.log
そういえば、私も別のパスからcron呼び出して相対パスで失敗したわ。
1行目でchdirで修正するのが楽かと。
0377nobodyさん
04/09/03 17:54ID:J5j4fe3Zorz・・・
ご指摘通り
/usr/local/bin/php
にパスが通ってなかっただけのようです。
cronからの起動だと /usr/local/bin/ のファイルもパス通ってないんですね・・・
・・・php側、全てフルパスに書き換えてしまった。
0378nobodyさん
04/09/03 17:55ID:???カレントディレクトリの違いでPHPスクリプトの中の include が失敗してるのかもよ。
cd /path/to/; php /path/to/a.php
ってやるとどうかな。
0379nobodyさん
04/09/03 18:02ID:J5j4fe3Zrequire するファイルのパスは気にしてたんですが・・・
phpのパスを気にしてませんでした。
0381nobodyさん
04/09/03 18:15ID:???705でやってるよ、俺は
0382nobodyさん
04/09/03 23:31ID:???SQLシンタックスエラーで帰ってくるんだけれど、
どうしたらいいの?
0383nobodyさん
04/09/04 00:35ID:???このページを参考に、PHPでメニュー領域とコンテンツ領域に分けたくて
色々やってみました。でもさっぱり分かりません。
リンク先、というかhtmlのフレームで言うtargetに当たる部分が全然わからない。
メニューはincludeできるんですけど、個々のメニューをクリックした時に
リンクされてるファイルを、同じページ内の同じ場所に表示する方法がどうしても分かりません。
今日は夕方位からずっとググりまくりで死ぬほど眠いので
明日また改めて質問させて下さい。その時はどうか宜しくお願いします。
0384nobodyさん
04/09/04 00:49ID:???0385nobodyさん
04/09/04 00:52ID:???コンテンツページすべてでメニューをインクルードすれば
メニューのよこにコンテンツが出力されたように「見える」ところがミソ。
0386nobodyさん
04/09/04 01:48ID:???おまいは騙されてる。
次の手段が考えられる。
1. SSI, PHP といったサーバサイドでの対応。
2. Dreamweaver 等、コンテンツ管理ツールの活用。
結論から言えば参照先の手法はオーバースペック。
自分で安全に運用する自信が無い、または手に余るなら迷わず 2 を選んでおけ。
つーか、俺がコイツと仕事したら良くも悪くも喧嘩になるな。
網羅的に語っているがどれも浅いよ。
営業さんとしては優秀かも知れないが。
0387nobodyさん
04/09/04 02:49ID:???その値に合うコンテンツを右っ側にインクルードするように作れば
ちょっとフレームっぽい感じ? あんま意味ないけど。
0388カポコン
04/09/04 02:57ID:???header("Expires:Sat,1 Jun 1975 00:00:00 GMT");
header("LastModified:".gmdate("D, d M Y H:i:s")."GMT");
header("Cache-Control:no-cache,must-revalidate");
header("Pragma:no-cache");
include("menu.htm");
include("main.htm");
?>
こんなんでいいんじゃないのページの結合は・・・。
header()から中はあってもなくてもいいけど、キャッシュ対策で・・・。
0389nobodyさん
04/09/04 03:04ID:???385の普通さが逆に不思議だ
0390nobodyさん
04/09/04 03:12ID:???電波お花畑も含めて。
0391nobodyさん
04/09/04 03:15ID:???0392nobodyさん
04/09/04 03:34ID:???ネタが思いつきません。
>>383にあって俺に無いものはいったいなんでしょうか?
後日来ますので、その時はどうかよろしくお願いします。
0393nobodyさん
04/09/04 09:18ID:???|| Java厨の特徴 - Learn Once, Boo Anywhere -
|| ○なんでPHPは〜なの? を連発
|| ○他の言語の流儀を学ばずJavaの流儀を強引に持ち込む
|| ○言語仕様に矛先を向ける Λ_Λ
|| ○温室育ちのJavaしか出来ない可哀相な人が \ (゚ー゚*) キホン。
|| 業務で渋々PHPに流された哀れな姿です ⊂⊂ |
||___ ∧ ∧__∧ ∧__ ∧ ∧_ | ̄ ̄ ̄ ̄|
( ∧ ∧__ ( ∧ ∧__( ∧ ∧  ̄ ̄ ̄
〜(_( ∧ ∧_ ( ∧ ∧_ ( ∧ ∧ は〜い、先生。
〜(_( ,,)〜(_( ,,)〜(_( ,,)
〜(___ノ 〜(___ノ 〜(___ノ
0394nobodyさん
04/09/04 13:05ID:vhwDcUgjマニュアルには以下のようにあります。
いくつかのオーペレーティングシステムでflock() はプロセスレベルで実装されています。
ISAPIのようなマルチスレッド 型のサーバーAPIを使用している場合、同じサーバーインスタンスの
並列スレッドで実行されている他のPHPスクリプトに対してファイルを保 護する際に
flock()を使用することはできません!
当方 Linux + Apache2.0 なのですが、サンプルコードでロックがかかるかどうか検証した結果、
きちんとロックされることを確認しました。
ということは、うちの環境では flock は期待通りに動く、ということでしょうか。
以下の試験方法に穴がありそうなら指摘してください。
検証方法は、あるファイルに対して flock して、sleep により数秒待ち、アンロックする、というスクリプトに、
ブラウザから複数アクセスしてみる、という内容です。
flock の直前直後、及びアンロックの直後でタイムスタンプを取得し、ブラウザ上に表示させ、処理が
重なっていないことを確認しました。
0395nobodyさん
04/09/04 13:17ID:???0397753
04/09/04 15:49ID:xk4dCUYphttp://www.php.net/manual/ja/keyword.extends.php
には、「派生クラスは、基底クラスの全ての変数と関数を有します。」
とあるんですが、関数にはアクセスできますが、変数のアクセスがわかりません。
サンプルは下記で考えました。
派生クラスでは、基底クラスのコンストラクタを暗黙的に呼び出さないので、
どこかで明示的に呼び出す必要があると考えてよろしいのですか?
でも、それだと、マニュアルと違うような気もするし。基底クラスのオブジェクトを
たくさん作ってしまうことになりませんか?
class A{
var $a = "value a";
function A(){
$this->a = "this is value \$a !!\n";
}
}
class B extends A{
var $b ;
function B(){
$this->b = "this is value BBB!!\n";
}
}
$obj_b = new B();
// これは"this is value BBB!!"が出力されるが
echo $obj_b->b ;
// これは何も出力されない(出力されるのを期待していたのだが)
echo $obj_b->a ;
// 基底クラスのコンストラクタを明示的に実行すると"this is value $a"が出力
$obj_b->A();
echo $obj_b->a ;
0398nobodyさん
04/09/04 16:23ID:???0400nobodyさん
04/09/04 17:34ID:VbBMSnkV<?=$subject?>
というのが出てきたのですが、これはいったいどういう意味なのでしょうか?
<?〜?>というのは知っているのですが、=が入っていきなり変数と言うのが
良くわかりません。
「<?=」で検索しようとしたのですが、記号だけなので検索できないようです。
誰か教えてください…
0402力不足
04/09/04 17:41ID:XFPNR40zフレームを使用して使いたいので、別窓で開くようにしたいのですが…
<?php
require_once 'rss_fetch.inc';
require_once 'code_table.ucs2jis';
require_once 'jcode.php';
$url = 'http://www.hyuki.com/yukiwiki/wiki.cgi?RssPage';
$rss = fetch_rss($url);
$title = $rss->channel['title'];
//JcodeConvert($str, $from, $to) 0:PASS(無変換)1:EUC-JP 2:Shift_JIS 3:ISO-2022-JP(JIS) 4:UTF-8
$title = JcodeConvert($title, 0, 2);
echo "<h2>$title</h2>\n";
echo "<ul>\n";
foreach ($rss->items as $item ) {
$title = $item[title];
$title = JcodeConvert($title, 0, 2);
$url = $item[link];
echo "<li><a href=\"$url\">$title</a></li>\n";
}
echo "</ul>\n";
?>
echoや $urlの後に" target="_blank"を入れたのですが…
いろいろいじくってみたんですが、わかりません。教えていただけないでしょうか?
0403nobodyさん
04/09/04 17:42ID:???「基本的な構文」も参照
ttp://jp.php.net/manual/ja/language.basic-syntax.php#language.basic-syntax.phpmode
設定によっては使えないので、使わないのが吉
0406nobodyさん
04/09/04 17:53ID:???Perlで以下のようにやっていたことをPHPでやりたいのですが。。
my $a = q(<a href="test.html">test</a>);
これがないと非常に不便かも…。
0409nobodyさん
04/09/04 18:33ID:T4Uqd+Ho0412nobodyさん
04/09/04 19:35ID:???0413nobodyさん
04/09/04 20:40ID:???あと、正規表現の場合とか ( http:\/\/ じゃなくて http:// とそのまま書けるし )。
PHP は定数も含められないし、関数も含められないのも不便。
0415nobodyさん
04/09/04 21:02ID:???'と"を多数混在させる必要があるとき、一々エスケープするのは大変だし、
見づらい(=エラーの元)
|なんか使わないから|でクォートさせろと
0416nobodyさん
04/09/04 21:14ID:???言語の仕様にいちいちつっこむなよ
0417nobodyさん
04/09/04 22:08ID:???qqが好きな人には綺麗でしょうね。
正規表現も希望通り http:// とそのまま書けるし
PHP は定数も含られし、関数も含められますよ。
煽る前に勉強し
0418nobodyさん
04/09/04 22:09ID:???HtmlSpecialChars( $str, ENT_QUOTES ); をやったところ、
「<」 と 「>」 と 「&」 は普通に変換されるんだけど、
「"」 と 「'」 だけ 「\"」 「\?」 になるんですが、
こういうもんなのでしょうか?
StripSlashes( HtmlSpecialChars( $str, ENT_QUOTES ) );
でもいいんですが…。
それと、逆に「<」なんかを「<」に戻す関数ってあるのでしょうか?
0419nobodyさん
04/09/04 22:18ID:???0420418
04/09/04 22:19ID:???×「<」なんかを「<」に戻す
○「<」なんかを「<」に戻す
でした…。
0421nobodyさん
04/09/04 22:19ID:???0422418
04/09/04 22:21ID:???うほ。。
×「<」なんかを「<」に戻す
○「&lt;」なんかを「<」に戻す
0423nobodyさん
04/09/04 22:24ID:???0424nobodyさん
04/09/04 22:49ID:???マニュアル嫁。
> 逆に「<」なんかを「<」に戻す関数
それについてもマニュアルの同区分に目を通せ。
というか、その必要が出てくるって事はエスケープ場所を間違えてる可能性 90%
0425nobodyさん
04/09/04 23:26ID:???php4.3.8で動くのだろうか?
0427nobodyさん
04/09/05 00:26ID:RfIBQAoo0428カポコン
04/09/05 00:43ID:???ttp://f13.aaacafe.ne.jp/~mugen/perlvsphp/child_btype.php
0430質問です
04/09/05 01:34ID:ISJ8aiP8登録したサイトの更新状況を定期的にチェックして、
更新部分を表示してくれるようなスクリプトってありますか?
ぐぐってみたのですが見つからず・・・。
0431nobodyさん
04/09/05 02:13ID:???最近威勢は悪いしソースは隠蔽だしつまんね。
aaacafeはlivedoorになるらしいけど移転しないの?
0432nobodyさん
04/09/05 02:42ID:???0433カポコン
04/09/05 02:46ID:???ふむん、俺はケチって日記に書いてるんだけどねぇ。。。
class blood{
var $child;
function cache($a,$b){
$i = 0;
if(preg_match("/^[aboABO]{2}$/",$a) and preg_match("/^[aboABO]{2}$/",$b)):
$pat = array("A" => "/a/","B" => "/b/","O" => "/o/");
$a = preg_replace($pat,array_flip($pat),$a);
$b = preg_replace($pat,array_flip($pat),$b);
$element[0] = preg_replace("/^(\w)(\w)$/e","\$1",$a);
$element[1] = preg_replace("/^(\w)(\w)$/e","\$2",$a);
$element[2] = preg_replace("/^(\w)(\w)$/e","\$1",$b);
$element[3] = preg_replace("/^(\w)(\w)$/e","\$2",$b);
$i = 0;
foreach($element as $val):
$this->child[$i++] = $val.$element[2];
$this->child[$i++] = $val.$element[3];
if($i === 4) break;
0434カポコン
04/09/05 02:47ID:???else:
echo("<span class=\"msg\">\n");
echo(nl2br("ABOタイプの血液データがありません。\n"));
echo("</span>\n");
endif;
}
function child_judge()
{
$a = $b = $o = $ab = 0;
if(is_array($this->child)):
foreach($this->child as $val):
$a += preg_match("/^(AA|AO|OA)$/",$val)?25:0;
$b += preg_match("/^(BB|BO|OB)$/",$val)?25:0;
$o += preg_match("/^OO$/",$val)?25:0;
$ab += preg_match("/^(AB|BA)$/",$val)?25:0;
endforeach;
endif;
echo("<ul>\n");
$span = "<span class=\"msg\"";
echo ($a !== 0)?$span."<li />".sprintf("生まれてくる子供は<b>A型</b>になる可能性が<b>%d%%</b>あります。<br /></span>\n",$a):"";
echo ($b !== 0)?$span."<li />".sprintf("生まれてくる子供は<b>B型</b>になる可能性が<b>%d%%</b>あります。<br /></span>\n",$b):"";
echo ($o !== 0)?$span."<li />".sprintf("生まれてくる子供は<b>O型</b>になる可能性が<b>%d%%</b>あります。<br /></span>\n",$o):"";
echo ($ab !== 0)?$span."<li />".sprintf("生まれてくる子供は<b>AB型</b>になる可能性が<b>%d%%</b>あります。<br /></span>\n",$ab):"";
echo("</ul>\n");
}
}
使う場合は、インスタンスを作ってからやるように。。
blood::cache()の参照はダメって事・・・。
0435カポコン
04/09/05 02:51ID:???0436nobodyさん
04/09/05 02:55ID:???0437nobodyさん
04/09/05 03:00ID:???0438nobodyさん
04/09/05 03:01ID:???板違い
ついでにいうと、まさしくそのスクリプトを書いている訳だが…
通常はhead取得で十分だが、動的生成だとうまく取得できない場合がある
で、head取得での取得に失敗した場合、ソースから更新日時と判断できる
文字列を正規表現で取得する
これに失敗した場合は、サイズを前のデータと比較して
変化していればその時刻を更新日時として扱う
これさえ満たしていれば、あとはcronで動かすだけで完璧だと思うが
広告が入っている場合、サイズの比較でうまくいかないようだ
とこんな感じだが、おまいも書いてみたら?
0439カポコン
04/09/05 03:07ID:???2ch用にreturnを変えたとか・・ワラ
0440nobodyさん
04/09/05 03:15ID:???2ch用に変えるんなら>で閉じて〜〜〜ワラ
0441カポコン
04/09/05 03:16ID:???0442nobodyさん
04/09/05 03:19ID:???http://qrl.jp/?u=114924
0443カポコン
04/09/05 03:43ID:???0444nobodyさん
04/09/05 03:56ID:???( ゚Д゚)ポカーン
0445nobodyさん
04/09/05 04:08ID:???ばかばかまんこ
0446nobodyさん
04/09/05 04:39ID:???0448nobodyさん
04/09/05 05:15ID:???0449nobodyさん
04/09/05 07:03ID:???この場合重さ・速さなどは CGI/Perl と大差無いと見ていいのでしょうか。
0450nobodyさん
04/09/05 07:16ID:???0451nobodyさん
04/09/05 08:10ID:PtpLgFxVほかにエラーが出てる人はいませんか?もう12時間以上悩んでます・・・
エラーが出た場合の対処方法も添えていただければありがたいです。
対処方法がのってるHPのアドレスでも結構です。
よろしくおねがいしますm(_ _)m
0452nobodyさん
04/09/05 09:07ID:???諸賢の検討によるとPerl>PHPらしいが。
ベンチをとったページがあったはずなので「perl PHP 比較」あたりで
検索すると出てくると思う。
でも今は確かapacheモジュールになってて、Perlのようにバイナリへの
パスを指定すればCGIとして動作するんじゃなかったけ?
特定のサーバについてだからレンタルサーバ板あたりの管轄かも。
>>451
unix系なのかwindowsなのか、はてまたその他なのか…
後、エラー内容を書かんと答えられる人も答えられんよ?
0454449
04/09/05 09:39ID:???>でも今は確かapacheモジュールになってて
いろいろ漁ってみたところ、確かに7月中旬辺りからモジュールになっているようです。
知識が至らずすみませんです。
これを機にPHPを勉強してみます。ありがとうございました。
0455nobodyさん
04/09/05 11:26ID:RfIBQAooarray_pop()やarray_shift()は最初と最後しか取り出せないので
いまのところunset()を使って何とかしているのですがうまいことできますか
0456nobodyさん
04/09/05 11:45ID:???oracleスレでも質問してるのですが
動いたoracle8って
oracle8.1以降の8ですよね?
8.0.xでしたらどうやって動いたのか教えてくださいっす〜
0457nobodyさん
04/09/05 12:04ID:???マニュアルくらい読めよ
ttp://www.php.net/manual/ja/function.array-splice.php
0459457
04/09/05 12:42ID:???オレならこんな感じにする
<?php
$sampleArray=array('hoge'=>'ほげ','bar'=>'ばぁ〜','nullpo'=>'ぬるぽ','ダメポ');
$target='nullpo';// 削除するキー
$length=1;// 削除する数
print "元の配列:";
print_r($sampleArray);
print "<br>";
array_splice($sampleArray,array_search($target,array_keys($sampleArray)),$length);
print "削除後の配列:";
print_r($sampleArray);
?>
0460457
04/09/05 12:45ID:KHirYWNzあ、こっちのほうが良いかな?
<?php
$sampleArray=array('hoge'=>'ほげ','bar'=>'ばぁ〜','nullpo'=>'ぬるぽ','ダメポ');
$target='nullpo';// 削除するキー
$length=1;// 削除する数
print "元の配列:";
print_r($sampleArray);
$deleted=array_splice($sampleArray,array_search($target,array_keys($sampleArray)),$length);
print "<br>削除された要素:";
print_r($deleted);
print "<br>削除後の配列:";
print_r($sampleArray);
?>
0461nobodyさん
04/09/05 13:08ID:???具体的にどうしたいのか書けよ
0463430
04/09/05 17:58ID:ISJ8aiP8レスありがとうございました。
ありそうで以外にないんですよね・・・。
登録した対象のページを自鯖に保存しておいて、
巡回の際に保存しておいたページと比較し、
変化があればその箇所を表示する。
という仕組みではどうですかね。
巡回ページ数が三桁くらいなら問題ないと思うのですが。
0464438
04/09/05 18:58ID:???>登録した対象のページを自鯖に保存しておいて、
>巡回の際に保存しておいたページと比較し、
>変化があればその箇所を表示する。
これをlength取得という
そのやり方をやっていた訳だが、ソースを丸ごと保存していたため、
無料鯖の場合などに含まれる広告のサイズが異なることがあって、
うまく行かなかった
手動で検索開始語句、検索終了語句を予め設定しておいて、
広告を省いた部分で比較するというやり方でやってみたところ
今のところは正常に動いているようだ
http://joechin.hp.infoseek.co.jp/wwwrobots.shtml
上記の各アンテナを参考にするといいだろう
0465nobodyさん
04/09/05 19:34ID:???時刻+プロセスIDでいいと思ったんですけど、プロセスIDってどうやって取るんだろう?
0467465
04/09/05 19:51ID:???ありがとうございます。
こんなのもあるんすね。
ただ、フォームの申込番号として使おうと思っているので、
ちょっと複雑な文字列すぎるかも。
イメージとしては、
[時刻]-[文字列] をIDに申込番号にしようかと思っています。
040905195012-123 みたいな漢字で。
0468nobodyさん
04/09/05 20:08ID:???0470nobodyさん
04/09/05 21:02ID:9EYGYXzi・CGIやSSIは使えない
・.htaccessも使えない
・管理者権限を行使する必要があるものは何もできない
・鯖は管理していない
という環境で特定のIPをアク禁にしたいのですが、
セキュリティ板で訊いたら
「どこかCGIの置けるサイトから,<script src="どっかのcgi">でIPアドレス判定した
スクリプト食わせて、排除したい奴をスクリプトでどっかに飛ばす」
と言われました。
このCGIについての解説サイトを教えてください。
0471nobodyさん
04/09/05 21:29ID:???JavaScript単独ではIPアドレスを取得できないので、
CGIを使ってIPアドレスを取得及び判定する。
その結果を使ってJavaScriptのLocation.hrefかなんかで他のページに飛ばす。
てな所じゃないかなぁ。
CGIを書けない人ならどっかでCGIを使ったアクセス制限CGIを探してきて、
そいつをJavaScriptと組み合わせれば良いかと。
当然、JavaScript Offの人には無効な技だよ。
0472470
04/09/05 21:33ID:9EYGYXziぐぐると自分のところに設置するものばかり引っかかります
0473nobodyさん
04/09/05 21:43ID:???PHP全然関係ないじゃないか
0474470
04/09/05 21:55ID:9EYGYXziWeb制作→セキュリティ→WebProg
と回されてきたもので
0475nobodyさん
04/09/05 22:00ID:???0476470
04/09/05 22:01ID:???この板のアドレスが/php/だったもので代表的質問スレではないかと思って
ごめんなさい
0477nobodyさん
04/09/05 22:05ID:???板違い
ついでに誘導
http://pc5.2ch.net/test/read.cgi/hp/1088604912/
もう二度と来ないでください
0478nobodyさん
04/09/05 22:14ID:???>>470
>この板の質問スレが分からなかったんです
スレ一覧を「質問」で検索したら少なくともここよりは適切なスレが見つかるのにな
>PHPというものがよくわかりません〜
PHPが何か分からなくてもぐぐれば速攻で分かるのにな
っていうか>>1も読んでないだろ
お前みたいなのはどうせ自力じゃ何とかできないだろうから
大人しく.htaccess使える鯖に移転しろ
0479nobodyさん
04/09/05 23:11ID:???板違い厨。
質問の問いに答えれないのなら黙ってろよ。
0480nobodyさん
04/09/05 23:25ID:???久々にでてきましたなー
板違い厨。
質問の問いに答えれないのなら黙ってろよ。
0481477
04/09/05 23:30ID:???必死なだ
喪前の目は節穴か?
忍者にIPアドレス制御があるというのも知らんのか?
つーか厨は来るなって言っただろうが!
知ったかはいい加減氏ね
0482nobodyさん
04/09/05 23:55ID:???言われて初めて気がついた。
そうか2chでWEBプログラミングと言えばPHPなんだな
ニヤリ☆
0483nobodyさん
04/09/05 23:56ID:???カポコンは神
ttp://cgi.f2.aaacafe.ne.jp/~saluru/clrea1/read.php?id=1070375461
0484セキュ板から誘導した奴
04/09/06 00:04ID:???セキュ板で続ける話題じゃないのでこっちの板に誘導したんだが、
http://pc5.2ch.net/test/read.cgi/php/1086715675/l50が良い。
0485セキュ板から誘導した奴
04/09/06 00:17ID:???>>477が言ってるのはhttp://www.shinobi.jp/s-counter.htmlだな。
出来合いのがあるみたいだから、これ使えば良いんじゃないか?
0486nobodyさん
04/09/06 00:23ID:???0487nobodyさん
04/09/06 00:27ID:???馴れ合いが楽しい年頃か。
まぁ、会話して勉強も良いかもな。
がんばれ。
2ch過去ログの書き込み見る限り
自演にしか見えなかったけど。
0488nobodyさん
04/09/06 00:31ID:???(^∀ ^)<オラ!芋ども!
ノ ノ 天下のカポコン様のお通りだ!!!
| | =3 =3 =3プップッー
(芋2) ■■■■■
(芋1 @ @
カポコン イズ ゴッド! カポコン イズ ゴッド!
カポコン イズ 廃人ゲーマー!カポコン イズ 廃人ゲーマー!
CAPOCOM IS PHP!!!CAPOCOM IS PHP!!!CAPOCOM IS PHP!!!
あひる = おめーの頭のポートが甘えーだよ!!!
さんだ = Apache権限なんて捨てっしまえroot権限よりかマシ!
0489nobodyさん
04/09/06 02:44ID:???phpマニュアルを読み、様々な関数の挙動を確かめながら学んでいるのですが
ファイルの最終更新を拾う事についてつまづいています。
自分のファイルはGetlastmod()で取得できました。
しかし、その他ネット上にあるファイルの最終更新が拾えなくて悩んでいます。
filemtime()関数は根本的にだめなようですし、もしかしたら何かhttpヘッダを修得
する方法があるのかと思うのですが、何か勘違いをしているのでしょうか?
自分がやりたいことを纏めると、ブラウザで読み取り可能な複数の外部ファイルの最終更新時刻を
一括で纏めて一つのページに表示したいのです。アドバイス宜しくお願いします。
0491nobodyさん
04/09/06 03:22ID:???Perlの場合、LWP::Simpleモジュールを用いて、対象のウェブサイトの
変更日付の取得が簡単に出来てしまうが、PHPだと簡単にはいかない
http://ns1.php.gr.jp/php-jp/archives/msg11953.html
ここ辺りが参考になる
0492490
04/09/06 03:26ID:???うちではOracle8.0.xクライアント+PHP4.3.xでOra7〜Ora9まで接続実績あり。
また、Oracle8.1.xクライアント+PHP4.3.xでやはりOra7〜Ora9まで接続実績あり。
内容はoracle/oci接続でのSQL操作およびストアド呼び出し。
動作環境はRHL7.x,8,9とVine。Oracleのインストールはスレ違いだから簡便な。
(つってもどっかの本に載っているような普通のインストールだけど)。
0493489
04/09/06 03:49ID:???そのページ凄く勉強になりました。
phpの持つ関数が便利すぎて、使えそうな関数ばかり探していました。
Basic認証を使ったり、工夫してhttpヘッダから拾得するものだったとは。
ありがとうございました。
0494nobodyさん
04/09/06 05:03ID:???PEARのHTTP_Requestクラスでも同じようなことが出来る
require_once('HTTP/Request.php');
$request = new HTTP_Request('http://sample.com/index.php');
$request->sendRequest();
$response_hdr = $request->getResponseHeader();
echo "Last-Modified: ". $response_hdr["last-modified"];
また、HTTP_RequestクラスはProxy経由でのファイル取得にも対応している
0496nobodyさん
04/09/06 08:34ID:???0497456
04/09/06 09:05ID:???oracle8関数ですよね。
オラクル(クライアント)のインストールは
sqlplusでつながってるから大丈夫だと思います。
もしかしてWindows版のPHPもしくはOCIだけの問題なの?
http://www.pat.hi-ho.ne.jp/dimension/bbs/list8.shtml
ここの一番最初の記事の方と同じ現象です。
Linuxでも試してみます。
Linux用のOracleクライアント入手できるかな。。。
0499nobodyさん
04/09/06 10:54ID:???<?php
session_start();
$_SESSION['test'] = "test";
echo $_SESSION['a'];
?>
上記のようなソースで試してるのですが
Warning: session_start(): Cannot send session cookie - headers already sent by (output started at d:\phps\tes6.php:1) in d:\phps\tes6.php on line 3
Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at d:\phps\tes6.php:1) in d:\phps\tes6.php on line 3
test
といったエラーが出てしまいます。
php.iniのsession.save_pathは D:/phps/tempで設定してます。
なにがおかしいのでしょうか。。
0500nobodyさん
04/09/06 11:00ID:???<?phpの前に空行とかない?
session_start()する前に何か出力してしまっているYOっていうエラーだ。
FAQなんだけどな。
0501499
04/09/06 11:16ID:???すいません解りました。
空行はないんですが、
私のエディタは、UTF-8でデフォルトで保存するように設定してありまして、
といってもUTF-8は問題ではなく、BOMをつけるようにも設定してしまっていたみたいで、それが原因でのエラーでした。orz
大変お騒がせ致しました。
0502nobodyさん
04/09/06 11:19ID:aNSEkP4I文字列を変換テーブルの通りに変換するような処理を考えます。
$tbl=Array('A'=>'エー', 'B'=>'ビー', 'C'=>'シー',・・・);
$ans=Preg_Replace("/(.)/e", '$tbl[\1]', $str);
これはたいていの場合でうまくいくのですが、たとえば変換対象文字が ']' のような文字だと
うまくいきません('$tbl[\1]' の部分が '$tbl[]]' に展開されてしまうため)。
そこで Preg_Replace の行を
$ans=Preg_Replace("/(.)/e", "$tbl['\\1']", $str);
のような感じにしたとしても、変換対象文字が '\' であったり、シングルクォートだったりすると
うまくいきません。
どんな文字でもうまく変換できる書き方ってありますか?
0503nobodyさん
04/09/06 12:34ID:dx9LAYynWindowsだと、PHPが参照するDLLが入っていない場合、
sqlplusは動いてもPHP側oracle(OCI)は動かない場合有り。
オラクルインストーラでOCIライブラリ関連がちゃんと入っているか
チェックしてみれば?
あとは...PATH(環境変数)くらいか...
0504nobodyさん
04/09/06 12:40ID:???0505nobodyさん
04/09/06 12:44ID:???0506nobodyさん
04/09/06 12:46ID:???0507nobodyさん
04/09/06 12:54ID:???0508nobodyさん
04/09/06 13:01ID:???ひろゆきすげえな
0509340
04/09/06 13:26ID:???フォームメールプログラム(perl)で入力された名前(変数)を
メール送信完了後のphpで、
「$名前様、メールありがとうございます。」
と表示するといったことがしたいのです。
なぜ、phpかというと、phpの方が分かりやすくて好きという厨房な理由です。
というわけで、perlからperlへ変数を渡す方法もよく分かりません。
だれかヘルプキボンヌです。
0510nobodyさん
04/09/06 13:43ID:???0511nobodyさん
04/09/06 13:50ID:???0512340
04/09/06 13:52ID:???0515340
04/09/06 14:09ID:???フォーム入力させるのは無理なんです。
メールフォームの関係上
0520340
04/09/06 14:45ID:???0521nobodyさん
04/09/06 14:49ID:???答えなきゃならんのか?
0522340
04/09/06 14:53ID:???GETを使えという方が一人もいらっしゃらなかったもので
まさか皆さんが思いつかないような方法を僕ごときが思いつくとは
思えませんのでねぇ
0524nobodyさん
04/09/06 14:59ID:???0525nobodyさん
04/09/06 15:10ID:???お前は天才だ。
何も教えることは無い。
一人で何でもできるだろう。
0527nobodyさん
04/09/06 15:17ID:???送られた方にはあまり関係ないが、送る方の都合やメールという方向性を考えた場合
送信側のリスクは大きくなるだろうね。
ネットカフェや不特定多数が使う端末なんかで個人情報漏洩する事も考えうる。
0530nobodyさん
04/09/06 18:06ID:???文字数制限あるし
0531軟式PHP
04/09/06 20:02ID:???0532軟式PHP
04/09/06 20:22ID:???そしてまた台風きそうだよ(´・ω・`)
0534nobodyさん
04/09/06 22:34ID:???この人って、メールフォームは Perl で、submit後のメール送信までは Perl でやるんだよね。きっと。
で、メール送信が終わったら、完了画面を出すために、Location で PHPスクリプトに移動するってことなのかな。
そこで送信者名だけをパラメータとして引き回すなら、GET でもこと足りそうだね。
でも、わざわざそれしきのことのために別スクリプトに移動しなくてもなぁ、と思うよ。
基本的に HTML に変数埋め込み程度しかできない人なのかな。
そうだったとしても、Perl スクリプトに手を入れてみるくらいのことは出来そうだけどね。
ちょっとがんばってみたら? >>340
一番シンプルかつ簡単な解にたどり着けると思うよ。
0535nobodyさん
04/09/06 23:25ID:???0536カポコン
04/09/06 23:29ID:???0537nobodyさん
04/09/07 01:04ID:???経過としては
HEADリクエストで返ってきたヘッダを1行ずつ配列に組み込み
そこからLast-ModifiedをGMT標準時間で取得し
strtotime関数でUNIX標準の時間表記に直してGMT+9の値を取得。
ここまでの事が短時間に勉強できて感動です。
ありがとうございました( つ∀`)
0538nobodyさん
04/09/07 11:13ID:kzLAff5m簡単にできると思ってやってみましたが" target="_blank"入れると、エラーになりますね…
>>404
php理解してないと、どこに" target="_blank"を入れるかわからないのでは?
0540軟式PHP
04/09/07 11:35ID:???http://tohoho.wakusei.ne.jp/html/a.htm
0541軟式PHP
04/09/07 11:35ID:???0543nobodyさん
04/09/07 11:51ID:???自作自演の勉強して下さい。
\"$url\"
この「\"」ってのがダブルクオートのエスケープシークエンスだって解んないかな。
echo "で始まってるんだからダブルクオートそのままじゃechoを閉じちゃうじゃん。
target=\"_blank\"だったり>>542だったりtarget=_blankだったり手法は幾つかあるわけで。
つーかぶっっちゃけなんも弄ってないだろ
0544nobodyさん
04/09/07 11:53ID:???PHPの話がしたい。
0545nobodyさん
04/09/07 11:57ID:???ロック機構かなんかを付けて重複処理を見張らないと危ないですか?
0546nobodyさん
04/09/07 13:18ID:???基本的に多人数で読み書きするものには、ロックは必要です。
データベースの設計によっては自動的に行われるロックで十分なこともあるし、
自分で明示的にロックしなくちゃいけないこともあります。
なんでロックしなくちゃいけないか、その理由を考えれば答えが出ると思います。
0549nobodyさん
04/09/07 13:42ID:???ごちゃごちゃ言わずにお前が答えれば早いだろ
0553546=548
04/09/07 14:02ID:91MbvsBkはずれ。
個人特定は置いといて、無駄な煽り合いを避けるために、おまえが早く答えてやってくれ。
おれは >>545 の質問を読んだ限りでは、>>546 の回答で精一杯だ。
0555軟式PHP
04/09/07 14:14ID:???まぁ整合性を取らないといけないような仕様だったら必要だけど。
0556nobodyさん
04/09/07 14:16ID:???その変数を文字列ではなく変数として扱うにはどうしたらいいのでしょうか?
具体的には下の例でdear_papaと出力する場合です。
宜しくお願いします。
string.txt
----------
dear_$mama
----------
<?php
$string = readfile("string.txt");
$mama = "papa";
echo $string;
?>
0557nobodyさん
04/09/07 14:24ID:???確認は取ってない
----string.txt------
<?php
echo "dear_".$mama;
?>
--------------------
<?php
$mama = "papa";
include("string.txt");
?>
0558nobodyさん
04/09/07 14:24ID:???string.txt の内容を
dear_<?=$mama?>
みたいにすれば、
<?php
$mama="papa";
include 'string.txt';
?>
でいけるけど、どうよ?
0559nobodyさん
04/09/07 14:30ID:???$hoge["$lob"] これでも、エラーが山のようにでるのさ。
$hoge['$lob'] これだとうごかないのさ。
$hoge[$lob[$i]] これだったらもうほんとねーとんでもないよ。
誰かエラーの取り方教えてください。
宜しくお願い致します<(_ _)>
0561nobodyさん
04/09/07 14:34ID:???おまいが何をしたいのか、どんなエラーがでるのか
それが分からんと何も分からん
というか、その配列の部分がエラー元だと思う根拠も聞きたい
0562556
04/09/07 14:55ID:???素早いレスありがとうございます。
やり方についてはわかりました。
もしよろしければ、それが意味するところを知るには、
マニュアル等でどこを見れば良いかも教えてもらってもいいでしょうか?
0564nobodyさん
04/09/07 15:06ID:???http://www.php.net/manual/ja/language.basic-syntax.php
<q><?= expression ?> は "<? echo expression ?>"のショートカットです</q>
0565nobodyさん
04/09/07 15:06ID:???<?=・・・?> の書き方についてなら echo かな。
include したらファイルの内容が表示されることについてなら・・・
どこだろう?
PHPスクリプトは、評価(実行)されるときには <? 〜 ?> の外側はそのまま出力される、ってことを思い出せば理解できるかな?
0568nobodyさん
04/09/07 15:17ID:???includeの項でいいんじゃないかな。
|ファイルが読み込まれるときには、読み込まれるファイルの先頭で
|PHPモードを抜けてHTMLモードになり、最後に再びPHPモードに戻ります。
|このため、読み込むファイル中のPHPコードとして実行する必要がある
|コードは、有効なPHPの開始タグおよび終了タグで括る必要があります。
HTMLモード(そのままechoされる)で。
大元のやりたいことはテンプレートシステムのつくりを調べると
色々な実現の仕方があるということに気がつくと思う。
0569nobodyさん
04/09/07 15:29ID:3rwpPIvY俺も普通にテンプレートを勉強するのがいいと思う。
0570nobodyさん
04/09/07 15:43ID:???>>560 >>561 >>563 >>566
レスありがとうございます。
Notice [PHP]: Undefined index: in file c: ・・・
申し訳ないです。エラーではなかったです。
このメッセージ消す方法はありますでしょうか。宜しくお願い致します。<(_ _)>
0571nobodyさん
04/09/07 16:03ID:???掲示板で、串制限する方法おしえてください。
よろしくおねがいします。
0572nobodyさん
04/09/07 16:09ID:???$lobがundefinedのときにはどんな動作にしたいの?
無視するとか、$lobを0に見立てるとか、なんかあるでしょ?
0573nobodyさん
04/09/07 16:10ID:???出ている警告のとおりインデックス($lob)をきちんと設定してやればいい。
プログラム的に未設定だったら該当コードをスルーするようにするか。
エラーレポートレベルを下げて「見ない振りをする」という手もあるが、
プログラム初学者の場合、悪い癖が付くのでお勧めできかねる。
0574nobodyさん
04/09/07 16:11ID:???ていうかNoticeってデフォルトでは出ないはずじゃなかったか
Notice全部イラネってんならphp.iniで
error_reporting = E_ALL & ~E_NOTICE
今だけ消したいならそのスクリプト中で
error_reporting(E_ALL | ~E_NOTICE);
でいけると思われ
0575nobodyさん
04/09/07 16:39ID:???>>572 >>573 >>574
ありがとうございます。
ちと、小コードで再現できないので、再現できたらまた来ます。
0576nobodyさん
04/09/07 17:22ID:???定義、未定義をしっかり確認するほうがいい
0577ぬるぽ ◆GmgU93SCyE
04/09/07 17:51ID:???Cryptでやってみたけど多すぎ
0578nobodyさん
04/09/07 18:00ID:???0579ぬるぽ ◆GmgU93SCyE
04/09/07 18:05ID:UlF+H5yzこれを10桁&2ちゃんとまったく同じ変換にするにはどうすればよいか・・・
0580nobodyさん
04/09/07 18:09ID:???0582nobodyさん
04/09/07 18:37ID:???ちょうどこんなの見つけた
http://headlines.yahoo.co.jp/hl?a=20040907-00000001-imp-sci
0584nobodyさん
04/09/07 19:21ID:qMLjw9o/というように36進数を連続して生成するためには
なんという関数を使えばよいのでしょうか?
0585nobodyさん
04/09/07 19:30ID:???基底を変換する方法が分からないのか、どっちか分からんけど、
base_convert使っとき。
0588nobodyさん
04/09/07 19:48ID:???$password = CRYPT_STD_DES("abc"); # saltを生成
echo $password;
?>
0589nobodyさん
04/09/07 20:00ID:???0591nobodyさん
04/09/07 20:47ID:???// 昔作った関数だけど
function gettrip($tripkey) {
$tripsalt=preg_replace('/[^.-z]/','.',$tripkey);
$tripsalt=strtr($tripsalt,':;<=>?@[\]^_`','ABCDEFGabcdef');
$tripsalt=substr($tripsalt.'H',1,2);
$trip=substr(crypt($tripkey,$tripsalt),3,10);
return($trip);
}
// 2ちゃんと全く同じかは(゚听)シラネ
0592nobodyさん
04/09/07 20:55ID:???0594nobodyさん
04/09/07 21:17ID:???まずは以下のページで串の基礎をおさらい
http://www.cybersyndrome.net/pg.html#4
そのあと「is_proxy_access」でググってみ。
前スレ289氏のサンプルが出てくるから。
0595nobodyさん
04/09/07 21:19ID:???PHP 4.3.2 + Apache 2.0.48 でとりあえずは動いてる
0596nobodyさん
04/09/07 21:38ID:???http://www.ponycanyon.co.jp/dango/
0597nobodyさん
04/09/07 21:49ID:???formでsubmitして、処理の結果次第で他のページに飛ばしたいのです。
metaタグでやるしかないんでしょうか?
よろしくお願いいたします。
0599$key="php"→ ◆BhTTgvJlYk
04/09/07 21:53ID:???つか、にちゃんと同じならぐぐればいくらでもソース出てくるだろ
下はトリップ生成ツールで生成されるトリップと一致することは確認した奴
trip(str トリップキー, int トリップ桁数)
function trip($key, $digit=10){
$salt = substr($key."H.", 1, 2);
$salt = ereg_replace("[^\.-z]", ".", $salt);
$salt = strtr($salt,":;<=>?@[\\]^_`","ABCDEFGabcdef");
return("◆".substr(crypt($key, $salt),-1*$digit));
}
0600nobodyさん
04/09/07 22:17ID:???分かってると思うがまんまBBSに実装すんなよ
0602597
04/09/07 22:30ID:???headerにそんな使い方が。。。
ありがとうございます。
>>601
なるほど。考えつきませんでした。
変数がそのまま使えていいですね。
ありがとうございます。
0603nobodyさん
04/09/07 22:36ID:Z5/Re9xzこれの携帯表示部分にすれたい検索を実装したいのだが…全くわからん。
ライフライン使わせてくれ。
0604nobodyさん
04/09/07 22:44ID:???0606nobodyさん
04/09/07 23:01ID:???0607nobodyさん
04/09/07 23:12ID:oC+AH/dT0608nobodyさん
04/09/07 23:28ID:???0609nobodyさん
04/09/07 23:28ID:???0610nobodyさん
04/09/07 23:28ID:???readfile("画像付きExcel");
0612nobodyさん
04/09/07 23:58ID:???0613nobodyさん
04/09/08 01:10ID:???windowsでやるならapache2のほうがいいのかな?
apache1はssl使うのにちょっと怪しいとこのを使うので
ちょっと不安。
IIS6でやろうかと思ったんだけど
権限の設定ではまった。。。
0615nobodyさん
04/09/08 01:41ID:???0616nobodyさん
04/09/08 02:27ID:???http://www.hoge.com/hoge.php?hoge=hogehoge
みたいな奴のことなんですが。
0619nobodyさん
04/09/08 03:04ID:???本一冊くらい買ってみたらいいんじゃないかと思う。
0620nobodyさん
04/09/08 03:51ID:???アイデアを直感的に実現する(した)時にしか使ってないな。
他ので代用聞くし、プログラムの見た目が逆に直感的でなくなる(気がする)。
0621nobodyさん
04/09/08 05:13ID:???0623軟式PHP
04/09/08 12:49ID:???0624nobodyさん
04/09/08 13:16ID:???スクリプトをコメントにして消していくと読み込めるんですが、
それを元の状態に戻すとまたアクセスできないようになります。
こういう場合は、どういったことが考えられるんでしょうか?
0626624
04/09/08 13:22ID:???中身のコーディングによって変わってくるのだから、コーディングのミスだとは思いますが
エラーが出るのではなく、アクセスできないようになるというのはどういったことが考えられるのでしょうか?
0628nobodyさん
04/09/08 13:58ID:???アクセスできないってどんな状態?
Not Found? Forbidden? それとも空白画面?
とりあえずその辺を書いてみよう。
0629nobodyさん
04/09/08 13:59ID:1bxarjSQ「アクセスできない」が何を意味するかによる。
何を見てアクセスできないと判断したのか?
apacheのエラーログとか・・・。
0630nobodyさん
04/09/08 14:00ID:???で、
display_errors = Off
になってる。
0631nobodyさん
04/09/08 15:53ID:???質問があります。
$url = $item[link];
というリンクがあるのですが、新しいウインドウで開くにはどうすればよいのでしょうか?
的外れな質問だったら申し訳ないです。
0633軟式PHP
04/09/08 16:01ID:???0634631
04/09/08 16:04ID:???申し訳ないです。 m(_ _)m
では。
0635624
04/09/08 16:08ID:???時間なかったので問題のあるところは削除して、
別の方法でコーディングやり直しました。
お騒がせしてすいませんでした。
0636631
04/09/08 16:13ID:???でも、target="_blank"ではないんです。
説明不足でしたが、
あるHTMLの中で<iframe>を使い、そのフレームの中に
index.phpをリンクさせているです。
そのindex.php中に
<?php
・
・
・
$url = $item[link];
・
・
・
?>
というものを埋め込んでいます。
「・」は自分の質問では無関係だと思われる部分なので、ここでは省略しました。
そして、この<iframe>の中のリンクをクリックすると、
フレームの中にリンク先が表示されてしまうのです。
そうではなく、新しいウインドウを開くにはどうしたらよいかが知りたかったんです。
0637nobodyさん
04/09/08 16:15ID:???<?php
$item[link] = "http://www.2ch.net";
$url = $item[link];
echo "<a href='".$url."' target='_blank'>リンク</a>";
?>
はい、どうぞ。
0638nobodyさん
04/09/08 16:16ID:???0640631
04/09/08 16:24ID:???他の皆様もありがとうございます。
<a href='".$url."' target='_blank'>で解決しました。
ご迷惑をおかけしました。
そして、本当にありがとうございました。 m(_ _)m
0641nobodyさん
04/09/08 16:27ID:???0642nobodyさん
04/09/08 17:16ID:???(ブラウザの動作を直接制御することはできない)
その出力するHTMLを変える(target="_blank")ことで間接的に制御することはできる。
クライアント側であるウェブブラウザは、送られてきたHTMLをただただ表示するのみ。
PHPが動的に出力したHTMLなのか、静的なHTMLファイルそのままなのかは知ったこっちゃない。
ただただ送られてきたHTMLをのほほんと表示するだけ。
このへんのことを理解してないような人が定期的に来るなぁ。
このへんを理解してれば「新しいウィンドウで表示させる」って時点でPHPの話じゃなくてHTMLの話だってわかって自力で問題解決に向かえると思うんだが。
0643nobodyさん
04/09/08 17:27ID:???無茶苦茶言ってるいわけでして。
0644nobodyさん
04/09/08 17:38ID:???Onのままですか?
0645nobodyさん
04/09/08 18:03ID:???以下のwap1.phpだと端末で表示されません、シミュレーターですがBadSorceになります。
$wap1を文字列ではなくPHPコードとしているから(?)だと思い、$wap1内の「"」をエスケープしましたが駄目でした。
うまく表示させるにはどうすればよいでしょうか?
その下のtest.phpではうまく表示されました。
wap1.php--------------------
<?php
header('Content-type:text/x-hdml;charset=Shift_JIS .hdml');
・
・
(CHTMLで書いた文章をWAP1用に変換し$wap1に代入)
・
・
include($wap1);
?>
----------------------------
test.php----------------------
<?php
header("Content-type:text/x-hdml;charset=Shift_JIS .hdml");
$aaa = "<hdml version=\"3.0\" ttl=\"0\" markable=\"true\"><display title=\"テスト\">テスト</display></hdml>";
include($aaa);
?>
----------------------------
0647645
04/09/08 18:18ID:???うまく説明できませんが、
header関数でヘッダ情報を出力するために、includeで変数に入れたHDMLソースを出力しています。
wap2用のスクリプトはprint関数で変数に入れたXHTMLソースを出力しています。
普通のブラウザで見るとhdmlファイルは未定義(?)のためにダウンロードをします。
すいません、決定的に不足している部分があるのはわかりますが、よろしくお願いします。
0650nobodyさん
04/09/08 18:33ID:???0651645
04/09/08 18:38ID:???printに変えてもBadSorceになってしまいます。
printに変え、PCのブラウザでDLして中身を見ると先ほどと同じでした。
0653645
04/09/08 18:46ID:???すいません、、、多分そうです。
エラー吐き出すソース書いてました。
これ全部直して、それでもうまく行かなかったらまた1時間ほど調べて、
それでも駄目ならまた戻ってきます、色々すいませんでした。
0654nobodyさん
04/09/08 19:13ID:???でエラーを表示させないようにしたかったんですが
相変わらず普通にエラーが表示されてしまいます。
(ini_getで見ると一応変更されてるようなんですけど……)
php.iniのdisplay_errorsをoffにすればエラーは非表示になりました。
でもUPする先のはいじれないんで、どうしたら良いのでしょう。
windowsのapache2のローカル環境です。
0655nobodyさん
04/09/08 19:32ID:???0656nobodyさん
04/09/08 20:16ID:???0657nobodyさん
04/09/08 20:19ID:???釣りならよそでやれよカス
0658nobodyさん
04/09/08 20:31ID:???0661nobodyさん
04/09/08 21:42ID:???>XXVII. エラー処理およびログ記録関数
いや、本当に質問する前に何回か見たんですが。
php.iniのdisplay_errorsをoffにすれば、パースエラーとかでも
真っ白のページがでるじゃないですか? ああしたいんですよね……
もちろん、そんなエラーでないように作ってるんですけど、念のためってことで。
0662nobodyさん
04/09/08 21:46ID:???0664nobodyさん
04/09/09 00:06ID:???嘘をつくな
釣りはよそでやれ
0665nobodyさん
04/09/09 00:14ID:???0666nobodyさん
04/09/09 00:25ID:FbdWBweAよくレンタルサーバーの仕様書に
/usr/local/bin/php
って明記している場合があるのですが
これはHTML内に記述して使えないと言うことですか?
普通HTML内に<?php 〜 ?>で使うことが多いですよね?
モジュールタイプとか言う意味がわからないのです。
0667nobodyさん
04/09/09 00:30ID:???No.
>普通HTML内に<?php 〜 ?>で使うことが多いですよね?
No.
>モジュールタイプとか言う意味がわからないのです。
調べれば?
0668nobodyさん
04/09/09 00:32ID:???CGIで動かしているだけでしょ。
Perlのように先頭に書いて以後は同じ
#!/usr/local/bin/php
<html><head>....
<?php
echo "なんたら";
...
?>
</body>
</html>
0669666
04/09/09 01:04ID:aXAHUhw00671軟式PHP
04/09/09 02:46ID:???0672nobodyさん
04/09/09 06:49ID:???ヒアドキュメント内で定数を使う方法はないですか?
0673nobodyさん
04/09/09 09:25ID:???散々外出だし
0674nobodyさん
04/09/09 09:56ID:???Q.
Perl で便利だった定数や関数の埋め込み、q/qq はないの?
A.
残念ながらありません。要望を出しましょう。
0675nobodyさん
04/09/09 10:59ID:IIwWnmVEApacheモジュールならApacheを再起動してないとか。
0677nobodyさん
04/09/09 13:01ID:XV9g/9TMチェックするために
if(ereg("^http://", $_POST['url']))
と書いてみたのですが、これだと「test.http://〜〜」や
「test,http://〜〜」もスルーしてしまうみたいです。
どうやったらhttp://で始まっているかチェックできるのでしょうか?
0678nobodyさん
04/09/09 13:13ID:???うちの環境じゃ動くよ。ちゃんと確認したか?
<html>
<form>
URL : <input type="text" name="hoge" size="30"> <input type="submit" value="SEND">
</form>
</html>
<?php
$hoge = $_REQUEST[hoge];
if(ereg("^http://",$hoge)){
print "http://から始まる文字列です => \$hoge = $hoge";
}
?>
0679nobodyさん
04/09/09 13:16ID:???0681nobodyさん
04/09/09 15:49ID:???0682nobodyさん
04/09/09 16:04ID:???http://pear.php.net/package/HTML_Table は table の生成でした。
やりたいのは table を配列に変換したいのです。
0683nobodyさん
04/09/09 16:22ID:???0684nobodyさん
04/09/09 18:23ID:???0685672
04/09/09 18:33ID:???外出すみません、ありがとうございました。
>676
perlは使ったことありません。
0686nobodyさん
04/09/09 18:50ID:???$link = mysql_connect("hostname", "user", "passwd")
or die("Could not connect\n");
print ("Connected successfully\n");
mysql_close($link);
?>
上のスクリプトで、hostnameがlocalhostのとき、
○シェルからCLI版のPHPで実行するとMySQLに接続できる。
○mod_phpからHTTP経由で実行してもちゃんと動く。
hostnameがlocalhostでない別ホストのとき、
○CLI版PHPではちゃんと動く。
×mod_phpではなぜか接続できない。
なんで別ホストで動くMySQLにmod_phpから接続できないんでしょう???
CLI版とmod_phpは同じコンパイルオプションで同時に作ったもの。バージョンは4.3.6。
./configure --with-mysql=/usr/local --with-apxs2=...
CLI版では接続できているのでネットワークや受け側MySQLの問題ではないと思う。
0688nobodyさん
04/09/09 19:29ID:???実は、実行権限の違いの問題だったりして。
Apacheとコマンドラインの。
なにはともあれ 4.3.8にした方が良いと思います。
0689nobodyさん
04/09/09 19:34ID:???die( "Could not connect. ".mysql_error() );
とでもやってエラー原因を確かめるべし
0690nobodyさん
04/09/09 22:07ID:???<form action="<?php echo $PHP_SELF ?>" method="POST">
Name:<input type="text" name="name" size="16">
E-mail:<input type="text" name="mail" size="40">
<input type="submit" value="送信"></form>
<?php
if($_POST['mail'] and $_POST['name']){
mb_send_mail($_POST['mail'],$_POST['name'],本文だよ);
}
?>
という風に書いてみたところ
「Parse error: parse error, unexpected '{' in /~~~/mail.php on line 7」
と言われてしまいました。
変なところに{があるYO!ってことだと思うのですが、
どこを見ても余計な{は入っていないようにしか思えません。
どうすれば正常に動くのでしょうか…
0691nobodyさん
04/09/09 22:10ID:+Va/ZOYcVine Linux3 上のapacheでhoge.phpというファイルをアップし
ブラウザからアクセスすると、phpの中身がそのままテキストとして表示されてしまいます。
apacheのphp、php3、php4モジュールは読み込みされており
AddTypeもされています。
こういった場合どこか問題かわかる方よろしくお願いします。
0692nobodyさん
04/09/09 22:16ID:???mb_send_mail($_POST['mail'],$_POST['name'],'本文だよ');
0694nobodyさん
04/09/09 22:47ID:???--enable-versioningしてるの?それともcgiモジュールとapacheモジュールで分けてるの?
そのAddTypeは絶対間違ってない自信があるから、ここに書かないの?
>>693
Parse errorが出た時は show_source()を使うと
parserの気持ちになれてサクッと解決できることもあるよ。
0695カポコン
04/09/10 00:02ID:???AAA!CafeでのMySQL接続確認ならこの3行でOK
<?php
$link = mysql_connect("mysql?.aaacafe.ne.jp:3306","user","pass");
echo mysql_ping($link))?"MySQLと接続されています。":"MySQLと接続されていません。";
mysql_close($link);
?>
後は人に頼らず、自分でカスタ〜ムするべし。
後、MySQLでは正規表現探索が出来ますから、色々便利な部分も多いですよ。
0696nobodyさん
04/09/10 00:20ID:GObesny2そのページにあるテキストボックスの中に文字を変えたいのですが
どうすればいいのでしょうか?
あと、質問する場所がおかしいかもしれません。
申し訳ありません。
0697nobodyさん
04/09/10 00:30ID:???0698nobodyさん
04/09/10 00:41ID:GObesny2やっぱりここで聞く質問じゃないですか?
0699nobodyさん
04/09/10 00:52ID:???http://pc5.2ch.net/test/read.cgi/php/1065151808/
ここかな?
0700nobodyさん
04/09/10 00:56ID:???ご迷惑お掛けしてすみませんでした。
0701nobodyさん
04/09/10 03:33ID:???↑ここの例1をwindowsで動かしてみたんですが、
そのままだと接続した瞬間シャットダウンしてなにもできません…
試しにsocket_read のPHP_NORMAL_READをPHP_BINARY_READに変えてみたんですが、
そうすると今度は動くには動くんですが、一文字入力するたびにレスポンスがあって、
'quit'と入力することができません。
なにかまともに動かす対処法はないでしょうか
0702701
04/09/10 06:00ID:???0703nobodyさん
04/09/10 10:11ID:???一つ作るのに3日くらい試行錯誤しながら
作ることもありまつ。
できあがったとしても、マッチはするものの
それで合っているのか不安です。
助けてください
0706703
04/09/10 10:35ID:???0709nobodyさん
04/09/10 11:52ID:e5AaNUbi一朝一夕にマスターできると思うな。
0710軟式PHP
04/09/10 12:58ID:???0711703
04/09/10 13:22ID:???よく不安になるので・・・
正規表現が楽しめるようになるよう
がんばりまつ(`・ω・´)
レスありがとう。
0712nobodyさん
04/09/10 13:42ID:???とりあえずこんなスレも有るぞ
正規表現道場@2ch Part3 s/煽り|荒らし/あぼーん/g
http://pc5.2ch.net/test/read.cgi/php/1069245758/
0714686
04/09/10 18:22:40ID:???mysql_connect(...) or die(mysql_errno().":".mysql_error());
としてためしてみると、
2003:Can't connect to MySQL server on 'hostname' (0)
となりますです。
tcpdumpしてみると正常に接続できるときとは異なるパケットが飛んできてるようだけど、
だからといってどこを直せばわからん。
よくわからんので、MySQLのクライアントライブラリから
コンパイルしなおすことにするです。うーむ。
0715nobodyさん
04/09/10 18:32:16ID:???Regexp Tester
http://www.bitesizeinc.net/index.php/regexp.html
0716nobodyさん
04/09/10 19:39:21ID:???ブラウザの戻るしてもちゃんと表示されてるんだけどどうやってるんだ?
0718nobodyさん
04/09/10 19:54:27ID:???戻ったら期限切れで表示されないよね。
0720軟式PHP
04/09/10 23:39:59ID:???0721nobodyさん
04/09/11 08:14:04ID:???header()じゃだめだし、ini_set()でもそれらしいオプションが見つからん。
やりたいことはCGI版をコマンドラインで実行させたときに余計なHTTPヘッダを出力しないってだけなんだけど。
-qオプションを使いたいところなんだが、
#!/usr/env/php -q
としたら
/usr/bin/env: php -q: No such file or directory
と出て怒られた。
0722nobodyさん
04/09/11 09:09:35ID:???CGI版の PHP がどこにインストールされているのか知らないけど。
env を使わずに
#!/usr/bin/php -q
とか
#!/usr/local/bin/php -q
にしてみれば?
0724nobodyさん
04/09/11 12:18:59ID:???オイラはgoo blogは使ってないから想像で書くけど、
POST後にブラウザの戻るを使われて困る場合は、
POST処理後にheader("Location: 〜".SID) を使ってGET扱いにさせる。
0725nobodyさん
04/09/11 13:15:27ID:1u0p7mhsphpMyAdmin-2.6.0-rc2.tar.bz2を解凍して
phpMyAdminと名前を変えてhttp://localhost/phpMyAdmin/
でアクセスすると
扱えない拡張子のファイルです,
PHP の設定をチェックしてください。
というメッセージがでて使用できません。どうすればよい
でしょうか?
0727sasa
04/09/11 14:34:22ID:1u0p7mhsphp.iniを調べてもそれらしき場所が見当たりません。
httpd.confも.php登録してますし・・・
なんで扱えない拡張子なんだろ・・・
0728sasa
04/09/11 15:06:32ID:1u0p7mhs0729nobodyさん
04/09/11 15:35:49ID:???それを下げるのは解決法としてはあんまり良くないな。
>>725のエラーメッセージらしきものをググってみても全然ヒットしないんだけど、
何か隠してることは無い?
0730nobodyさん
04/09/11 15:52:16ID:yl69/FM+日付、昨日のカウント数、今日のカウント数、総カウント数
という形式で保存、総カウント数を出力しています。
保存はflock→fputs→fcloseです。
病的リロードに耐えうるカウンタは、どう作ればよいのでしょうか。
コツなどありましたら教えてください。
0731nobodyさん
04/09/11 16:05:03ID:???課されていれば壊れるときは壊れる。
flockで保護できるのは同時書き込みだけ。
0733730
04/09/11 16:13:43ID:yl69/FM+壊れるのはどうしようもないということですので、
2重カウント禁止に修正したいと思います。
731さん、732さんありがとうございました。
0734nobodyさん
04/09/11 16:15:07ID:???/usr/bin/phpでも/usr/local/bin/phpでもどちらでも動かせるようにしたいんで。
>>723
もちろんそうなんだけど、どちらがインストールされてても動くようにしたいので。
だって、「HTTPヘッダを出力しない」ってだけだから、それくらいの機能あるだろうと思うのだが。
それくらいの機能さえ見つけられないおれがへたれなんだがな。
0735nobodyさん
04/09/11 16:45:45ID:???HTTPヘッダの出力抑制は-qオプションであってるよ。
まあ一部抑制しきれてない(エラーかなにかだったかと)部分はあったと思うけど。
エラーでてるのはオプションの与え方とか、実際にファイルがなくて出てるんじゃないの?
0736nobodyさん
04/09/11 16:52:30ID:???そんな制限のないものもあったような気もするが。
>/usr/bin/phpでも/usr/local/bin/phpでもどちらでも動かせるようにしたいんで。
特に ruby の人はこの傾向が強いけど、個人的にはやっちゃいかんと思う。
↓こうすればできるようだけど、オススメはしない。
#!/bin/sh
sed 1,3d "$0" | php -q -- "$@"
exit
<?php
phpinfo();
?>
0737nobodyさん
04/09/11 16:59:08ID:???0738nobodyさん
04/09/11 17:20:54ID:???abcabcヂツテ
これって仕様ですか?
0739nobodyさん
04/09/11 17:39:36ID:???0740nobodyさん
04/09/11 17:39:49ID:iOhe01Jz仕様です。
と答えれば満足するのか?
0741nobodyさん
04/09/11 17:41:32ID:2sNlQMEVstrtolowerはマルチバイトには対応してないよ。
mb_strtolower使いな。
0742738
04/09/11 17:42:10ID:???文字コード指定してあげたら
ちゃんと動きました
0743nobodyさん
04/09/11 17:43:38ID:???仕様というか、ある意味海外製ソフトウェアの宿命。
2バイト文字がShift_JISコードの場合の文字コードは、
A → 41
B → 42
C → 43
ア → 83 41
イ → 83 43
ウ → 83 45
で、内部にAとかを内包してるから。
最初から2バイト文字を配慮して作られてるソフト以外ではそのまま変換してしまう。
PHPもしかり。
試してないけどttp://jp.php.net/manual/ja/function.mb-strtolower.phpはどう?
mbstringモジュールが有効でPHP4.3.0以降ならの話みたいだけど。
0744738
04/09/11 17:46:06ID:???>>741
オラクルのlowerと同じ仕様の関数を探してました
ありがとうございます!
4.3からmb_strtolowerがあったんですね。
0745nobodyさん
04/09/11 18:27:55ID:jQgqezNj使用しているサーバのGDがGIFに対応していないので困っています。
PHPを使ってGDを使わずGIFを読み込み作成は出来るのでしょうか?
みなさんはPHPでGIFを扱うときどうしているのでしょうか?ご教授ください
0747nobodyさん
04/09/11 18:38:14ID:???GIFの読み込みだけはGIFの特許問題と関係なく結構前のバージョンから対応している
まあいずれにしても、入れ替えるに同意
古いバージョン使っててもろくなことないし
0748nobodyさん
04/09/11 18:39:50ID:jQgqezNjありがとうございます。
さっそく、管理者にメールで要望してみます。
非常に助かりました
0749nobodyさん
04/09/11 18:55:13ID:onw6fTqiどのようにすればできますか?
header の location で遷移はできましたが、
hidden とかのパラメーターが渡らないんで困ってます。
? やセッションを使って渡してもいいかと思いますが、
他の方法があったら教えてくださ〜い。
今は、ファイルBをファイルAにインクルードして対処してます。
0751nobodyさん
04/09/11 20:30:46ID:jF+qSLdIPHP+apache+MySQLで組んだWEBアルバム(写真)があるのですが、携帯メールに
添付されている写真データを自動的にデータベースに登録する方法がピンときません。
できる方法ありましたら、大まかなイメージで結構ですのでアドバイスください。
現在、Postfixを入れ、画像付のメールが~/MailDir/newディレクトリに保存されて
いるところまで確認できてます。
0754nobodyさん
04/09/11 22:14:20ID:???そのサーバで、flock によるロックがかかるかの検証をした方がいいよ。
flock のマニュアルにはこうあります。
> flock()はNFS及び他の多くのネットワークファイ ルシステムでは動作しません。
> 詳細についてはオペレーティングシステ ムのドキュメントを確認下さい。
>
> いくつかのオーペレーティングシステムでflock() はプロセスレベルで実装されています。
> ISAPIのようなマルチスレッド 型のサーバーAPIを使用している場合、同じサーバーインスタンスの
> 並列スレッドで実行されている他のPHPスクリプトに対してファイルを保 護する際に flock()を
> 使用することはできません!
>>394 の検証方法なんてどうよ?
0755nobodyさん
04/09/12 00:12:15ID:???>個人的にはやっちゃいかんと思う。
ほう、そうなのか?もしよければ理由きかせて。セキュリティ上の理由?
>>737
>バッファに咥えて破棄することはできんの。
ob_start()してob_close_clear()するってことかな。なんかそれでいけそう。
ていうか、こういう回答しかこないってことは、CGI版ではHTTPヘッダは必ず出力されてしまい、
抑制できないってこと?
0756nobodyさん
04/09/12 01:02:10ID:???header("RESPONSE: HTTP/1.1 404 Not Found");
とやっても自動出力されている最初のRESPONSE: HTTP/1.1 200 OK だけしか検知してくれない場合がある
0757nobodyさん
04/09/12 01:07:41ID:???もう板違い
>756
きちんと404も出力すれば200は上書きされるよ
0758nobodyさん
04/09/12 01:11:52ID:???HTTPステータスは別格。書式->http://jp.php.net/header
0759nobodyさん
04/09/12 01:13:17ID:5k4aSpIX0760nobodyさん
04/09/12 02:01:40ID:lTFax1YWheader("Content-Length: ".filesize($DB_PATH.$EXPORT_FILE));
header("Content-Type: application/x-octet-stream");
readfile($DB_PATH.$EXPORT_FILE);
これでファイルダウンロードしているのですが、
DLしたファイルの1行目に空白行(改行コード)が入ってしまいます。
(サーバー上のファイルは空白行がない)
Apache/1.3.24 (Win32) PHP/4.2.1
これってIEが悪いのですか?
0762nobodyさん
04/09/12 02:09:53ID:lTFax1YWレンタルサーバーではないです。
ローカルでやっても同じ現象がでてしまいます。
0763nobodyさん
04/09/12 02:39:44ID:???\n
<?php
?>
になってるとか。
0764nobodyさん
04/09/12 04:25:37ID:???おっしゃるとおりでした。
includeしたphpの最終行に
<?PHP
?>
\n
となってました。どうもありがとうございました。
0765nobodyさん
04/09/12 05:33:04ID:ydmYYx+Iランダムで「タグ付きのテキスト(要はhtml文書の一部)」をHP上で表示したいのですが
テキストが短ければ「 " -> \" 」や「 改行 -> \n 」の変換作業は楽です。
ですが長くなってくると変換がめんどくさいので良い方法はないですかね。
「タグ付きのテキスト」をファイルにして読み込む方法を思いついたのですが、ちょっと大げさかと。
html文書からコピペで変更できると楽なんですが…
0766765
04/09/12 05:35:04ID:ydmYYx+I$i = rand(0, 4);
switch ($i) {
case 0:
$ad_data = " <tr>\n <td><img src=\"aaa.gif\">\n";
break;
上記の感じでめんどくさいのでどうにかならないかと
0767nobodyさん
04/09/12 05:41:58ID:???HTML内に、タグ含むHTMLを表示したいということじゃないのか。
> テキストが短ければ「 " -> \" 」や「 改行 -> \n 」の変換作業は楽です。
\"や\nに変換するということは、phpコードに変換するということか?
> 「タグ付きのテキスト」をファイルにして読み込む方法
何に対してどう大げさなんだ?
> html文書からコピペで変更
で、結局htmlを何に「変更」するんだ?
0769nobodyさん
04/09/12 05:57:35ID:???0770nobodyさん
04/09/12 06:17:05ID:???ランダムでHPの内容変えたいってだけか?
表示するHTML全部ダブルクォーテーション内に書いて、
改行とか"とかまんどくせ〜
とか言ってるのか?
まさか・・・
俺ら釣られた?
0771nobodyさん
04/09/12 07:51:02ID:???HTMLソースでタグを改行して綺麗にネストさせたいがために
\nを入れるのがダルーって事か??
0772nobodyさん
04/09/12 09:46:28ID:Iy6EF+FAインストーラー版じゃなくてアーカイブ版じゃないとダメなんですか?
0773nobodyさん
04/09/12 10:46:16ID:???> 「タグ付きのテキスト」をファイルにして読み込む方法
これで全てが解決します。include or require のマニュアルを参照。
>>772
php.netで配布してるブツのことなら、
> windows php 5.0.1 installer ( CGI only...
って書いてあるけど?
0774nobodyさん
04/09/12 14:17:03ID:7xfelydBランダムな箇所がエラーになるんですが、これってphp5.0.1のバグなんでしょうか・・・?
0775774
04/09/12 15:31:35ID:???しばらくは様子見しよう・・・
0776軟式PHP
04/09/12 15:33:05ID:???0777nobodyさん
04/09/12 16:11:31ID:RQoOdmb2時間だけの足し算で、思う結果が出せません。
テーブルには、time型の項目が2つあり、この2項を足した結果がほしいのです。
date("H:i:s",strtotime($myrow["a_time"])+strtotime($myrow["b_time"]));
調べたところ、strtotime($myrow["a_time"]) の時点で日付のデータも含まれていて、
それが2つあるため、足し算した結果オーバーフローしてしまっているようです。
日付のデータを含まないで時間だけを扱う方法はないでしょうか。
0778nobodyさん
04/09/12 16:32:09ID:???ちょっとまだそういうところあるね>PHP5
PHP4にアクセラレータ系のエクステンションを噛ました時にも
結構同様なことは起きたけど。
0779nobodyさん
04/09/12 16:39:00ID:???クッキーは必ず必要でつか?
0782nobodyさん
04/09/12 17:28:04ID:???ちと遅レスだが
「ファイル終端におけるPHPブロックの終了タグはオプション(任意)です。 」
( ttp://jp.php.net/manual/ja/language.basic-syntax.php#language.basic-syntax.phpmode )
なので、特に必要ないなら付けないようにすれば、そういうので悩まなくて済むよ
>>776
以前printfで\0が入るという大バグが出た時は参った
あれ以来1ヶ月くらい様子見てからにしてる
0783nobodyさん
04/09/12 18:57:23ID:???オブジェクト指向で作りたいから導入考えてたけど
まだだめか…
0784nobodyさん
04/09/12 19:00:13ID:???0785nobodyさん
04/09/12 19:06:53ID:???PHPでファイルをアップロードしたときの
ファイルのパーミッションが600になるのですが
chmodで644にすることはできますが
最初から「644」で作成することはできないでしょうか?
php.iniの設定やapacheの実行ユーザの設定などで
決まるのでしょうか?
0787nobodyさん
04/09/12 19:18:57ID:???apacheの実行ユーザの設定で決まります。
umask。
でも、644にする必要無いんじゃないの?FTPで消したいとかなら別だけど。
0788nobodyさん
04/09/12 19:44:19ID:???なるほどー
ちなみにnobodyの場合は
どこかで設定可能でしょうか?
アップした画像ファイルをそのまま参照可能にしたいのですが
今まで使ってたレンタルサーバでは
そのまま「644」になってたのでなにか方法があるのかなーと。
0789nobodyさん
04/09/12 19:45:41ID:???あるけど、PHP4でもOOPは出来るなぁ。
オブジェクト指向で作りたいからこの言語…と言ってる時点で底が見えてる。
0790Sinji
04/09/12 22:19:09ID:O4Yb0b0iたとえば:
$str = "あい" という文字列なら
"2422" (JISの「あ」に相当する) と "2424" (「い」に相当する) という数字を出力したいのです。
よろしくお願いします。
0791nobodyさん
04/09/12 22:43:52ID:???for($i=0; $i<strlen($str); $i++) printf("%02x", ord($str{$i}));
0793nobodyさん
04/09/12 22:47:53ID:???$hex=implode('', unpack('H*', $str));
$strがJISなら漢字IN/OUTが含まれるかも
SJISなら問題なし
0794Sinji
04/09/12 23:19:43ID:O4Yb0b0i$str = "あい";
for($i=0; $i<strlen($str); $i++) printf("%02x", ord($str{$i}));
の出力は:82a082a2 (24222424ではなく)これは単なるシフト(+5e7e)かと思ったら
$str = "アイ" や $str = "大阪"などにしたらどうもそうと見えないのですが。。。
0795nobodyさん
04/09/12 23:53:38ID:Jg1ciVqmその for でやってることが bin2hex だよ。
そして $str = "あい" の結果は Shift-JIS に見えるけど、$str = "アイ" や $str = "大阪" の結果はどうなるのよ?
0796Sinji
04/09/13 00:12:43ID:3IjiBAgs>そして $str = "あい" の結果は Shift-JIS に見えるけど、$str = "アイ" や $str = "大阪" の結果はどうなるのよ?
$str="アイ"などの結果はShift-JISのようです。欲しいのはJISの16進数なので、一応mb_convert_encoding($str,"JIS")をやってみましたがうまくできませんでした。
たとえば:
$str = "あい"; $str = mb_convert_encoding($str,"JIS");でbin2hexの出力は「1b244224」でした。
$str = "大阪"; $str = mb_convert_encoding($str,"JIS");でbin2hexの出力は「1b244242673a651b2842」でした。
なんだか、私はPHPがよくわからないと思っています。。。
0797nobodyさん
04/09/13 00:15:49ID:???0798nobodyさん
04/09/13 00:30:09ID:???上げてくんないかなぁ〜 ちなみにコバルト。
0799nobodyさん
04/09/13 00:31:13ID:???0800nobodyさん
04/09/13 00:35:14ID:???"大阪" の方は正しく動いてるね。
最初の 1b2442 は漢字モードに入るマーク(KI)、最後の 1b2842 は終わるマーク(KO)だよ。
文字列本体の部分は 42673a65 ね。
でも、"あい" の方はへんだね。
なんだそりゃ。
0801nobodyさん
04/09/13 00:37:40ID:???0802800
04/09/13 00:45:07ID:???でも、正しく変換した場合(1b2442242224241b2842)の上 4バイトだけが取得できてることを考えると、
元文字コードの判別はうまくいってるのかな、って気がしなくてもないよね。
もちろん、元文字コードの指定を付けたほうがいいわけだけど。
0803nobodyさん
04/09/13 00:45:18ID:???0804nobodyさん
04/09/13 00:46:56ID:???0805nobodyさん
04/09/13 00:48:02ID:V7/A7viW0808804
04/09/13 00:55:17ID:???時にc++でext作るときのオフィシャルなマニュアルってあります?
ソースコードから慣例読めってのは無しの方向で。
0810nobodyさん
04/09/13 01:01:34ID:???$str=mb_convert_encoding($str,"JIS","euc-jp");
$str=bin2hex($str);
$str=substr($str,6,8);
print($str);
0811nobodyさん
04/09/13 01:05:29ID:???$str="あい";
$str=mb_convert_encoding($str,"JIS","SJIS");
$str=substr($str,3,4);
$str=bin2hex($str);
print($str);
のほうがちょっといいカモ
0812shinji
04/09/13 01:07:43ID:3IjiBAgs>>810
まいど!ほんまに助かりました。PHPがはじめてでその上日本語の文字コードについてぜんぜんわからへんからいろいろすまへん。多分これで解決できたと思う。
0813nobodyさん
04/09/13 01:11:36ID:???漏れはbin2hex();じゃないに10グラタンw
Devドキュメントはあるけどオフィシャルとなるとちょっと。
CSV追っかけてる人たちの間でも微妙と思われ。
問題があればMLのほうでやったほうがいいかも
#既出にはくれぐれもご注意
0814nobodyさん
04/09/13 01:14:53ID:???月基地で着用されるコスチュームのアイディアを募集してるぞ。
うさぎの絵を書いて送ろう。 hello.moon@esa.int
0815nobodyさん
04/09/13 01:22:50ID:???$len=strlen($str);
$str=mb_convert_encoding($str,"JIS");
$str=bin2hex($str);
$str=str_replace(array("1b2442","1b2842"),"",$str);
print($str);
これなら全角4桁ASCII2桁で使える。
0819783
04/09/13 04:44:25ID:8a1krxrnSingletonを実現したいのですが
staticを何とかスマートに実現する方法はないものでしょうか?
0820nobodyさん
04/09/13 07:43:02ID:???PHPではどのようにやったらいいのでしょうか?
0821軟式PHP
04/09/13 08:01:50ID:???その他のやつなら添付メールを送らせて、マルチパートから吸い出して
アップする。
0822820
04/09/13 08:09:04ID:???アップする。
この部分がよくわかりません。。
やり方を多少おしえていただけないでしょうか
お願いします。
0823nobodyさん
04/09/13 08:57:15ID:???やっぱりphpとsingletonの相性の悪さには皆さん悩んでる様子。
ひとまずグローバル変数で代用させておくのが、
将来的なphp5への置き換えを考えると良さそうですね。
0824軟式PHP
04/09/13 09:45:34ID:???まずサーバー側に届いたメールを処理しないといけないんだけど
IMAP経由で調べたり、qmailをキックしたり色々あるわけなのです。
IMAPを使うならimap_fetchstructure辺りを使うとすぐ取り出せるよ。
PEAR使ったらもっと簡単に出来るかも(↓検索したら出てきた
>>http://ns1.php.gr.jp/pipermail/php-users/2003-July/017157.html
0825nobodyさん
04/09/13 15:05:12ID:???PHPでtrigger_error()+set_error_handler() +自作関数でエラーハンドリングをしています。
set_error_handler("error_handler");
$fp = fopen($CONFIG_DIR . $filename, "r");
if ($fp==false){
trigger_error("aaaa", E_USER_ERROR);
この場合、trigger_errorの第一引数として指定した
Stringをset_error_handlerで設定している
error_handler関数に渡してやることはできませんでしょうか?
0826nobodyさん
04/09/13 22:18:57ID:???あれはPHP4でもPHP5でも$this->の部分を省略するような方法は無いのですか?
0827nobodyさん
04/09/13 22:29:58ID:???0828nobodyさん
04/09/13 22:37:21ID:???一連の流れのある時点(ログアウト機能など)で
セッションIDを変更したいのですが
どうやったらいいのでしょうか?
session_regenerate_id()
だとそのスクリプト内では変更されますが
他のページに遷移すると元のセッションIDに
戻ってしまうようです。。。
0829nobodyさん
04/09/13 22:44:36ID:???PHPライブラリを探しています。もしご存じでしたら教えてください。
0830nobodyさん
04/09/13 22:56:25ID:???ログアウトのときはセッション破棄したらいいじゃん
0831828
04/09/13 23:01:57ID:???その方法が知りたい
session_unset
session_destroy
いろいろ試したけど
セッションIDが変わってくれなくて。
0832nobodyさん
04/09/13 23:26:50ID:l1R4r/PaMySQLとPHPを勉強しながら、ゲームの攻略サイトを作ろうと思ってます。
http://cgi.f56.aaacafe.ne.jp/~megaten/test2.php
とりあえずデータを入れて、検索結果が表示されるようにはなったんですが
検索結果がちょっとおかしくなり、悩んでます。
具体的には、
「エンジェル」で検索すると正しい検索結果が表示されますが、
「エ」で検索すると明らかに該当文字(「エ」)が入っていない文字列までhitしてしまいます。
また、「ソ」に至っては一件だけ該当データがあるはずなのですが、hitしません。
stripslashesをつけてもはずしても、結果は同じでした。
文字のエンコードはphpMyAdmin側、PHP側共にShift_JISにしてあります。
わかる方いらっしゃいましたら、ご教授宜しくお願いしますm(_ _)m
0836832
04/09/13 23:49:33ID:l1R4r/Paレスありがとうございます。
確かにどのサイト見てもPerl、PHPはeuc_jpでやれって書いてありますね…
>>832の不具合も、やはりそれに起因するものなんでしょうか?
0837nobodyさん
04/09/14 00:00:52ID:???ドライブの空き容量を表示するようにしたいのです。
ローカルのドライブは表示できたのですが、windowsのネットワーク共有をしている
ドライブは空きが0となって表示されません。
共有先PCはPC-B(WinXPHome)です。
disk_free_spaceでのパス設定をドライブ共有ソフトで設定しているドライブ名や、
windowsで使われる共有先パス "\\PC-B\C" としてもダメでした。
(windows標準の共有設定でも同様でした)
たぶんショートカットのような扱いにしか見ていないために起こるのだと思うのですが、
なにか解決策はありませんでしょうか。
お知恵をおかし頂ければ幸いです、よろしくお願いします。
0838nobodyさん
04/09/14 00:11:32ID:???0839nobodyさん
04/09/14 00:33:17ID:???UNCの形式で渡せば返ってきそう。試してないけど。
さて寝るべ寝るべ。
0840nobodyさん
04/09/14 00:42:58ID:???MySQL側がSJISに出来るならそれでも良い。
ところでaaacafeってSJISで書いたPHPスクリプト動かせるのか?
0842832
04/09/14 00:53:33ID:JkM64ylT>>832でリンクしてるのは全てSJISで書いてあります。
一応動いてるので、大丈夫だと思うんですが…
だめだったら全く動かないというか、見れたもんじゃないですよね…?
逆に言うと、動いてるだけにどこがおかしいのかさっぱり判らないんですが…
晒している情報が足りないでしょうか?
0843カポコン
04/09/14 02:23:17ID:???一見まともそうに見えるスレだが。。釣りか?
なぜ2台のWindowsをネットワーク化し、それをPHPにするのかが分からない。
1台がWindows、もう一台がUnix系なら話は分かるが。。。
何の為のlocalhostなのかが分からん。同じOSだろ、容量増やしたいなら増設しろ。
ftp_connect()とかでもダメか?
後、ピングをPC-Aから飛ばしたりPC-Bからそれを受託したり、
確実に接続されているかも見ろ、2台のみの通信なら、
普通のストレートケーブルじゃなくて、クロスケーブルで接続する必要があるぞ。
勿論、ハブを介して、サーバCをハブとクロスケーブルで接続してあるというなら
話は別。パソコンAとパソコンBを接続したいというだけなら、
PHP板の連中には知恵熱しか与えないので、板違いw
さて。。レイヤー3のC++プログラムをコーディングして、私も寝ますか・・・。
0844nobodyさん
04/09/14 02:24:16ID:???なるほど、よくわかった。確かにお前はバカだ。かなり頭が悪い。
お前の母も、父も、やはりバカだったんだろう。
バカがバカなりに一生懸命バカやった結果がお前というバカなわけだ。
今のお前があるのも、これまで周囲が見限って放置してくれた結果であるわけだし、
今お前の周りにバカが多いのも、お前のバカを助長することに役立っているわけだ。
お前はバカになるしかなかった。親が、地域が、環境が、バカだった。
お前がバカになったことは仕方が無い。お前には責任は無い。
だが、お前はお前がバカであることを自覚し、皆のより良い未来を築く責任がある。
一生黙ってろ。
0845nobodyさん
04/09/14 02:24:45ID:???aaacafeがどういう設定で運用してるのか判らんが、
むしろ"動いちゃってるようにみえる"のが判りにくい一端だと思うよ。
概ね指摘の通り。
同じサーバでPHP+MySQLを使ってる(自分でコード書いてる)
ユーザの情報をあたってみなよ。
0846nobodyさん
04/09/14 02:36:28ID:???"ソ"は確かSJISだと後半1バイトが"\"と同じだから
エスケープシーケンスと誤認識とかで問題あったような
大人しくEUC使った方がいいと思われ
0847832
04/09/14 02:44:13ID:JkM64ylTですね。。
いじりながら色々試していると、「a」とかでも引っかかるので(実際のデータは全角カタカナのみ)、
やはりエンコード関係なのかなーという気もしてきてはいるんですが…
とりあえずaaaの所でも聞いてみます。Shift_jis使ってる人がいるかどうかが問題ですが。。
こちらでもわかる方いらっしゃいましたら、お願いします。
解決したらフィードバックします。
0848nobodyさん
04/09/14 02:45:35ID:+yRv8JBt調べようと思って
ereg("/ngword/i", $_POST['message']))
と書いてみたのですが、なぜか思ったとおりに動作しません。
何でなんでしょうか…
0849848
04/09/14 02:46:43ID:???ごめんなさい。最後の)は無いです。
ereg("/ngword/i", $_POST['message'])
で動作しません。
0850832
04/09/14 02:47:05ID:JkM64ylT書いてる間に書き込みが…
うーむ、やはりEUCでも試したほうがいいですかねぇ。。
dbをEUCに切り替えて、データ全て入れなおさなくてはw
0851nobodyさん
04/09/14 03:02:42ID:???マニュアルとにらめっこすれば分かると思うんだけど
eregなのにPerl互換の正規表現になってる
この場合使うのはpreg_matchかeregiじゃない?
あと>>848に限ったことじゃないけど「動作しません」じゃ分からんから
ちゃんと目的の出力と実際の出力を比較してくれないと
>>850
データの入れなおしは簡単じゃない?
phpMyAdminのエクスポートでSQL吐けるから
0853828
04/09/14 07:28:12ID:???すみません
<?php
session_start();
echo session_id();
session_unset();
?>
とだけ書いて、何度実行しても
同じセッションIDになってしまいます。
順番とかが間違ってますか?
0854nobodyさん
04/09/14 07:31:38ID:DJLMJCnCfedora core2 に PHP5.0.1をインストールしたいのですが make でエラーが出ます。
configure はとりあえずオプションなしで通しました。
エラーメッセージ
/home/hoge/download/php-4.3.8/ext/standard/info.c: 関数 `php_print_info' 内:
/home/hoge/download/php-4.3.8/ext/standard/info.c:653: internal compiler error: セグメンテーション違反です
完全なバグ報告を送って下さい。
適切ならばプリプロセス後のソースをつけてください。
<URL:http://bugzilla.redhat.com/bugzilla> を見れば方法が書いてあります。
The bug is not reproducible, so it is likely a hardware or OS problem.
make: *** [ext/standard/info.lo] エラー 1
PHP4系でも 同様に make で同じエラーが出ます。
0855854
04/09/14 07:33:41ID:DJLMJCnC5系でも同じエラーメッセージが出る状態です。
0856nobodyさん
04/09/14 07:59:25ID:???昔どこかで見たような気がする。
以下のように明示的にセッションID を変更してみては?
session_start();
echo session_id();
$tmp = $_SESSION;
session_destroy();
session_id(md5(uniqid(rand(),1)));
session_start();
$_SESSION = $tmp;
0857nobodyさん
04/09/14 08:56:19ID:???>session_unset -- 全てのセッション変数を開放する
セッション変数だけでセッションIDをあぼーんするとは載ってないぞ
session_regenerate_idでちゃんと変わるからもっかい確かめて見れ
0858828
04/09/14 09:23:17ID:???できましたー
ありがとうございます!
echoがあると2回目のsession_startで警告がでるので
そこだけ修正しましたー
>>857
変わらないっす。どこかおかしいでしょうか?
<?php
session_cache_limiter("nocache");
session_start();
echo session_id();
session_regenerate_id();
?>
0859nobodyさん
04/09/14 11:42:04ID:zAdAGGgeをつけると、
checking for Apache 1.x module support via DSO through APXS...
Sorry, I was not able to successfully run APXS. Possible reasons:
1. Perl is not installed;
2. Apache was not compiled with DSO support (--enable-module=so);
3. 'apxs' is not in your path. Try to use --with-apxs=/path/to/apxs
The output of /usr/local/apache/bin/apxs follows
./configure: /usr/local/apache/bin/apxs: not found
configure: error: Aborting
とエラーになってしまいます。
1. Perlは、「which perl」でperlのパスがでるし、そもそもウェブ上でperlのcgiが動いてます。
2は、php4を、httpd.confの中で、「LoadModule php4_module libexec/libphp4.so」してるので、問題ないかと
思います。
3は、確かに、そこにapxsがあるのを確認しました。
で、不思議なのは、現在、php4で、「--with-apxs=/path/to/apxs」で動いていて、
前に一度、「--with-apxs=/path/to/apxs」付きでphp5.0.1が問題なくインストールできたということです。
(事情があって、一度PHP4に戻しましたが)
つい機能、perlをソースからインストールしたのが関係してるのでしょうか?
どなたか、解決方法をご存じのかた、教えていただければ幸いです。
0860859
04/09/14 11:43:31ID:???0861nobodyさん
04/09/14 12:28:00ID:???perl をソースからインストールして、/usr/local/bin/perl になっているのに、
/usr/local/apache/bin/apxs の一行目が
#!/usr/bin/perl
になっているとか。
0862nobodyさん
04/09/14 12:33:21ID:???$dom = domxml_new_doc ("1.0");
$hoge = $dom->create_element ("hoge");
$hoge_text = $dom->create_text_node("aaa<br />bbb");
$hoge->append_child($hoge_text);
$dom->append_child($hoge);
を$dom->dump_fileで保存すると
<hoge>aaa<br />bbb</hoge>
と<br />が「<br />」と置き換わってしまいます。
これを回避する方法ってあるのでしょうか?
0865nobodyさん
04/09/14 13:59:56ID:???PHPでPostgresの定義済み関数(ストアド)を動かすという
サンプルソースがあるようなサイト、書籍がありましたら
教えてください。よろしくお願いします。
0866854
04/09/14 14:25:18ID:???0867nobodyさん
04/09/14 14:32:52ID:???それだとWarning吐くハズなんですが…
うちでは下ので普通に変わりますよ
<?php
session_start();
$old = session_id();
session_regenerate_id();
echo "old: $old <BR> new: ";
echo session_id();
?>
0869nobodyさん
04/09/14 15:13:38ID:???<br />が「アンドlt;br /アンドgt;」
です。
>>864
もう少しヒントを、、、
aaa<br />bbbを直接テキストノードに入れるのは無理って事でしょうか?
$dom = $dom->first_child();
echo $dom->get_content();
でソースを確認すると問題なく<br />になっているので
$dom->dump_fileで書込む時に<br />が「アンドlt;br /アンドgt;」に強制的に変換されてますよね。
$dom->dump_fileの部分が原因と考えて良いのでしょうか?
0871864
04/09/14 15:46:51ID:???<hoge>aaa<br />bbb</hoge> は
hogeというエレメントが
aaaというテキストノードと
brという中身が空のエレメントと
bbbというテキストノードを持ってるということ。
つまり、aaaというテキストノードを作ってhogeにappend_child
brというエレメントを作ってhogeにappend_child
bbbというテキストノードを作ってhogeにappend_child
という手順になるはず。
0872nobodyさん
04/09/14 16:28:13ID:Gl/Y6vfsGD使って001.jpgをリサイズして別名002.jpgとして保存します。
このとき002.jpgの画像が著しく汚く圧縮されてしまうのですが、
もっと綺麗に書き出す方法はあるのですか?お願いします。
0875872
04/09/14 18:02:36ID:???すいませんでした。
0876nobodyさん
04/09/14 19:11:50ID:Mbuhgwtm大変な作業になってきました。これを自動化しようと考えています。
希望者がメルアドを記入しクリックするだけで、物語(全6話なので一日おきに
一話づつ)を配信できるシステムにしたいのですが、どういったプログラムをくめばいいのか
わかりません。どうか教えてください。よろしくお願いします。
0878nobodyさん
04/09/14 19:24:14ID:???http://pc5.2ch.net/test/read.cgi/hp/1095088431/69-70+72
手作業でやってなさい。
0879nobodyさん
04/09/14 19:36:49ID:???定期的に締め切りを定めて、その間に登録した人に送るって
スタイルでも良いと思うけどな。それを周期的に繰り返す。
1日1話というのもそうだけど「待つ楽しみ」もあるかと。
登録に合わせるなら、登録メールアドレス毎に現在何のシリーズを購読中で
配信するのは何話なのかを管理し、1日1回その配信リストに従って配信&リスト更新。
配信先が多大な場合は、シリーズ○話を配信する仕組みだけ独立させておいて、
配信はそのリストに登録することによって行う。順序やタイミングは抜けや重複配信
にならないようにね。簡単なシーケンス図(形式はどうでも)を書いて視覚化すると良い。
0880nobodyさん
04/09/14 20:48:00ID:???日付ごと話ごとのあて先リストファイルを作ってみたら?
たとえば yyyymmdd_n.dat (y:年 m:月 d:日 n:話)みたいなファイル名にして、本日 14日に申し込んだ人は、
20040914_1.dat
20040916_2.dat
20040918_3.dat
20040920_4.dat
20040922_5.dat
20040924_6.dat
にその人のアドレスを追記しておいて、cron で毎日その日のあて先ファイルの内容を BCC にした
メールを送信するようにするの。
そして処理したファイルは削除する。
そうすれば、登録スクリプトもメール送信スクリプトもかなりシンプルになると思う。
アドレスの削除処理は面倒だけどね。
0881837
04/09/14 22:32:15ID:???>>841 様
ローカルドライブにネットワークのドライブはマウントできないみたいでした。
調べ方が足りないのかもしれませんが、調べたことは試した状態です。
>>843 様
言葉足らずで誤解を招いたようで申し訳ありません。
物理的な増設は無理なので共有させています。
PHPで表示するのは、FTPサーバのドライブとしてネットワーク外から参照するためです。
接続自体はハブで接続されていて、FTPでのネットワークドライブへのアクセスはできています。
PHPで共有(マウント)されたドライブの空き容量は取得できないでしょうか。
0882nobodyさん
04/09/14 23:00:48ID:+yRv8JBt削除するスクリプトを組んでいたのですが、どうも途中で
「サーバーが見つかりません」と表示されてしまいます。
$lines = file("sample.txt");
$fp = fopen("sample.txt", "w");
で読み込んで、0から最後の行まで一行ずつ調べて
書き込んでいます。
途中までは正しく書き込めているので、動作自体は
正しいと思うのですが、途中で止まってしまうので、
後半の部分が吹っ飛んでしまって困っています。
どのように対処したら良いのでしょうか…
0883nobodyさん
04/09/14 23:07:02ID:???0885nobodyさん
04/09/14 23:30:42ID:+yRv8JBtすみません。こんな感じです。
$logfile = "test.txt";
if($_POST['xurl']){
$xurl = $_POST['xurl'];
$lines = file($logfile);
$LINENUM = count($logfile);
$fp = fopen($logfile, "w");
flock($fp, LOCK_EX);
for($i = 0; i <= $LINENUM; $i++){
if(!preg_match("/$xurl/i", $lines[$i])){
fputs($fp, $lines[$i]);
}
}
fclose ($fp);
}
>>884さん
共有鯖です。30秒以上かかると強制終了なのですが、
この場合は15秒くらいで止まってしまいます。
何とか効率の良い方法は無いでしょうか…
0886nobodyさん
04/09/14 23:41:04ID:???ちなみにphpのmax_exec_t以外にもリソース制限はある。
共有鯖で数千行のファイルを置換するような非常識な厨房に対応するため。
0887nobodyさん
04/09/14 23:48:32ID:???鯖の公開仕様をよく読めよ。cpu使用率や使用時間などで止められることがある。
厨房だらけの共有サーバならいいが、普通の人達が使ってる共有サーバなら、
そういうイカレた処理はやめてやれ。
あとpreg_もやめて、stristrとか他のを使ったほうがいいだろう。
それでも駄目なら一回ごとの量を決めて分割処理するしかないな。
こう書いたほうが速いと思う。
$logfile = "test.txt";
if($_POST['xurl']){
$data = implode("\n", preg_grep("/$xurl/Si",
explode("\n", file_get_contents($logfile))));
fwrite($fn = fopen($logfile, 'w'), $data);
fclose($fn);
}
0889nobodyさん
04/09/14 23:57:27ID:???0891889
04/09/15 00:01:02ID:???そもそも重い処理を共有鯖でやる気はない。
私は同じ処理でもこうしたほうがいいと提示しただけ。
# そんなに重いのなら私ならMySQLに投げ入れる
0893nobodyさん
04/09/15 00:57:33ID:CedxfwLgmail関数を使い送信したメールがPC用メールアドレスには届くのに携帯用メールアドレスには数時間後に届いたり、全く届かなかったりします。
これはなぜでしょうか。また、対策はあるのでしょうか。
どなたかご教授頂けると幸いです。
OS:redhat9
コード:mail($宛先, $タイトル, $本文, "From:info@xxxxx.co.jp");
バージョン:PHP-4.2.2
0894軟式PHP
04/09/15 01:08:56ID:???全く届かないってのは怪しいなぁ。一気に沢山送信してない?
携帯に一気にメール送信するとキャリアのメールサーバーにブロックされるよ。
0895nobodyさん
04/09/15 01:14:37ID:CedxfwLgメール送信してるのは携帯向けに1通のみなんです。
遅延ならしょうがないですね。
0896nobodyさん
04/09/15 02:38:45ID:???特定のワードを含んだ行を削除するのだからその処理だと特定のワードを
含む行を取り出すことになるような気がするが・・・。
>>886 や >>887 が言いたかったのは、多分、file_get_contents や file を
使って巨大なファイルを開いた場合、メモリが大量に必要になり、共有サーバ
では他に迷惑がかかるということ。
例えば、以下のように一時ファイルに書き込んで処理を行うとメモリの使用量は
少なくて済む。
$fp1 = fopen($logfile, "r");
$fp2 = fopen($tmpfile, "w");
while (! feof($fp)) {
$line = fgets($fp1);
if (! stristr($line, $xurl)) {
fwrite($fp2, $line);
}
}
fclose($fp2);
fclose($fp1);
rename($tmpfile, $logfile);
0897nobodyさん
04/09/15 02:55:11ID:???if (!ereg("^[0-9]{1,4}",$hoge)) echo ”err!”;
で$hogeが0〜9999の範囲の数字かどうかチェックしたつもりになっていたのですが、
たとえば、「50a」でもチェックをパスしてしまいます。
ニューメリックチェックを正しく正規表現でするにはどうすればよいのでしょうか?
0898nobodyさん
04/09/15 03:14:24ID:???恥の上塗りw
0899nobodyさん
04/09/15 03:19:56ID:???正規表現道場@2ch Part3 s/煽り|荒らし/あぼーん/g
http://pc5.2ch.net/test/read.cgi/php/1069245758/
0900nobodyさん
04/09/15 03:28:07ID:???もとデータによるんじゃない。
^[0-1]{1,4} だと先頭に4桁の数字があればあとに何が続こうとTrueになるので、^[0-1]{1,4}$と
書くのが普通だとは思うけど。
is_numeric(); と $len = strlen(); if ($len < 5); で十分なこともあるかな。
0901nobodyさん
04/09/15 03:33:38ID:???先頭の数だけ()で取り出して、さらに評価というのもばかげてるしな。
あと、\d{1,4}のチェックなら、ユーザが全角で入力する場合を想定して
コンバートかけたほうがいいこともある。趣味グラマなら別にいいんだが。
0903897
04/09/15 03:44:05ID:???PHPも正規表現も昨日からはじめたばっかりで、
いろいろ読んでると正規表現は言語による方言?が多そうだったのでここに書きました。
似たような件なら次からはそこの方がいいのでしょうか?
>>900
なるほど。
$でこれで終わりだよと宣言すればいいのですね。
やってみたらうまくいきました。
ありがとうございました。
それと調べたつもりでしたが、is_numericあったのですね。。。
見落としてましたorz
0904897
04/09/15 03:47:37ID:???全角対策についてはフォームでFEPがオンにならないように対処しました。
といっても、コピペには対応できないわけですが。
やぱチェック前に半角変換したほうが確実ですね。
処理追加します。
ありがとうございました。
0905832
04/09/15 04:54:05ID:YiP4QPmpdb、PHP共にeuc-jpにしたら何の問題もなく動きました。
ありがとうございました。
0906nobodyさん
04/09/15 05:51:58ID:???面倒でもサーバ側でチェックするしかないんだよね。
0907nobodyさん
04/09/15 08:08:52ID:???Warning: fopen(): SAFE MODE Restriction in effect.
というエラーがでて開けません。。
パーミッションは777でやってますが、どうしたらいいでしょうか?
よろしくおねがいします
0908nobodyさん
04/09/15 08:29:18ID:???Warning: fopen(): SAFE MODE Restriction in effect.
というエラーを出したのですが開発者に気付いてもらえません。。
必要十分なメッセージを送ってるつもりですが、どうしたらいいでしょうか?
よろしくおねがいします
0910907
04/09/15 09:08:50ID:???mkdirで新規ディレクトリを作り、そこに新しいファイルを生成したいのですが
できないのです
よろしくお願いします。
0911907
04/09/15 09:27:42ID:???新規ディレクトリを作ってパーミッション777に設定しても
ディレクトリを開く事すらできません^^;
0913907
04/09/15 09:49:50ID:???mkdirしてパーミッションを707にしたいのですけど
どうしたらいいのでしょうか?
よろしくお願いします
0914907
04/09/15 11:41:10ID:???0915軟式PHP
04/09/15 11:44:30ID:???0916nobodyさん
04/09/15 12:11:20ID:dKmLYC94誰か「絞込み検索」のフリースクリプトが
置いてあるサイト知らない?
0917nobodyさん
04/09/15 12:31:44ID:UvnPqyoT0918nobodyさん
04/09/15 12:42:56ID:???0919nobodyさん
04/09/15 12:57:04ID:MDFIDuDl0921nobodyさん
04/09/15 14:30:23ID:???php.iniってどこに置いたらいいんですか?
0922nobodyさん
04/09/15 14:41:06ID:???適切なとこ。マニュアル嫁
0923nobodyさん
04/09/15 15:35:11ID:???読めと言われても困るだろうからね。
ttp://php.s3.to/man/faq.installation.html#faq.installation.phpini
0924nobodyさん
04/09/15 15:48:32ID:???0927nobodyさん
04/09/15 17:12:03ID:???書き直しが必至」というレスがありましたが、俺がハマってるところはバージョンの違いに関係ありますか。
==========
【 状況 】 PHP5 で、以下のようなものを作った。
[class file]
class A {
var $hoge;
var $fuga = array();
// 以下、メンバ変数とか配列の初期化のみ。子クラスで使われる変数と配列はすべてここで宣言されている。
}
class B extends A {
function B {
あんなこととかこんなこととか;
}
}
class C extends A {
function C {
そんなこととか;
}
}
[another file]
// クエリによって、B か C のいずれかのクラスからオブジェクト $obj を生成。
function channel2($obj) {
$obj->$hoge = "ひろゆき";
$obj->$fuga = "2ちゃんねる";
}
【 問題点 】 PHP4.1.2 の環境では想定していた動作が得られない。
ユーザ定義関数の外からメソッドを呼び出すことはできるが、ユーザ定義関数内でメンバ変数への値の代入が行われていないようだ。
以上、よろしくお願いしましま。
0928nobodyさん
04/09/15 17:28:01ID:???4だと function channel2($obj){} とやると、ローカル変数 $obj は参照ではなく、
複製される。ので、関数内で $obj を弄っても、呼び出し側の object は変更されない。
function channel2(&$obj){} と書いて参照渡しにする必要がある。
0930nobodyさん
04/09/15 17:46:16ID:???そりゃPHP5準拠で書かれたスクリプトがPHP4で動かない可能性は高いでしょ。
なんの問題もなく動いたらむしろ何じゃそらって思うよ。
しかし、上の例だと & で参照を明示する4向けのスクリプトは変更なしで5でも動く。
そういうわけで、バージョンによる互換性のなさに嵌ったというよりは、
単に、PHP4じゃ動かないスクリプトを書いちゃいましたってことじゃないかな。
少なくとも、
> PHP4 でオブジェクト指向のプログラムを書くと、PHP5に移行したとき書き直しが必至
PHP4で書いたからPHP5じゃ動きませんでしたっていう事例ではないと思う。
0931nobodyさん
04/09/15 17:53:14ID:???アクセス関係の修飾子つずに、予約語にも気を使ったつもりが、
$hoge->foo()->bar(); みたいのでこけたことはある。
けどphp4から5へは思ったよりきっちり下位互換されてて変更なしで動くな。
# pearなんかもそうだけど、php4でOOPの限界に挑戦してるとエラー出る印象。
0932nobodyさん
04/09/15 18:00:56ID:???4だと、関数の戻り値がObject型のとき、
&function ret_foo() {
$foo = new Class;
return $foo;
}
$bar =& ret_foo();
とやらないと、最終行でObjectがドカーンとコピーされちゃって処理負荷になるので
これにも気をつけてね。
0933nobodyさん
04/09/15 18:02:15ID:???function &ret_foo() {} ね。
0934nobodyさん
04/09/15 18:08:38ID:???関係ない話ですまないが でインデントしたコードは
IEなんかでコピペした場合はそのまま動いて便利なんだが
うちのJaneでは、「 」としてコピーされてしまうので
全角空白でインデントされているのと利便性は変わらないな
ということに気づいた今日だった
0935nobodyさん
04/09/15 18:12:18ID:???0936nobodyさん
04/09/15 18:14:43ID:???まともな質問者にはこのスレでもちゃんと回答が出るということか。
0937nobodyさん
04/09/15 18:16:42ID:???0938927
04/09/15 18:36:04ID:???ポインタがわからなくて C で 3回挫折した俺だが、その説明はうまくイメージできた気がする。
OOP は初めてだけど、これからちょこちょこ組んで自分のものにしますわ。
>>930
勢いでローカル環境をバージョンアップしてしまったのです。
借りてる鯖はバージョンが古くて PEAR もなければたいしたモジュールも入ってないので、
せめて自宅の環境だけは最新にしてみたくなったのさ。
友人のサイトのスクリプト改造とか手伝ってる中で OOP をちゃんと理解せんといかんなあと
思い立ったのが PHP5 を入れた理由の一つだけど、今回つまずいたのも一つ勉強になったから
まあこれでいいやと思ってる。
>>936-937
次回がんばります。
0939nobodyさん
04/09/15 19:00:09ID:???ただの間接アドレッシングだろ
何が難しいことがあるんだろうか
0940nobodyさん
04/09/15 19:20:37ID:???お前はhttp://pc5.2ch.net/tech/kako/1040/10408/1040820373.htmlの54だな!
まあポインタはCの入門書で文法覚えた段階では「どうやって何に使うのか」ってのは
そのときは分からないままだからな。初心者がポインタが理解できないというのは正しいんだ。
そこで止まるかほっといて進むかだと俺は思う。
まあPHPのリファレンスはポインタではないのでスレ違いはこのへんで止めるが。
0941nobodyさん
04/09/15 19:28:04ID:???つーかオイラは、CのポインタよりPHPのリファレンスの方が分かり辛い。
今やってるのはディープコピーなのかシャローコピーなのか
いつも不安になりながら書いてる。
PHPはCとは違うんだし慣れるしかないやね。
で、何事も無かったかのように次の質問どうぞ。
0942nobodyさん
04/09/15 19:48:04ID:???MYSQLに直接つっこんでる画像データを出力する際に
縦横サイズの変更を行いたいんですけど、どうすればよいでしょうか?
getimageで縦横取得してからと思ったのですが
Warning: failed to open stream: No such file or directory
みたいな感じで怒られました。
DBに突っ込む際に縦横サイズも格納しておかなければならないのでしょうか?
0943nobodyさん
04/09/15 19:51:19ID:dKmLYC94よく分かってないけど多分そんな感じです。
出会い系とかで例えてみると、
年齢と性別を同時検索してやるやり方が分かりません。
あと年齢だと
「○歳〜○歳までで検索」
とかいう方法もどうやったらいいものか。
かなり初歩的な質問で申し訳ない。
なんで、いいソース場所知りませんか?
0944nobodyさん
04/09/15 19:56:22ID:???違うよ、そんな昔から2chには居ないよ。
#つかそのスレ読んで思ったんだが
#「アセンブラと言っている時点で(ry」と言うような頑固な人っていつの時にも居るんだなぁって思ったよ
#そんな細かなこといちいちつっこまれてもねぇ。。「アセンブリ」じゃないと納得しないのかね
以後何も無かったように質問どうぞ
↓
0946nobodyさん
04/09/15 20:05:34ID:???0947nobodyさん
04/09/15 20:06:40ID:???0948nobodyさん
04/09/15 20:09:50ID:???0951nobodyさん
04/09/15 20:57:07ID:???データの作りや格納方法でやり方は全然違う。
まずそれをきちんと把握すること。
DBMSの場合なら、データの絞込み抽出はそのものが持っている機能。
多くのDBMSはSQLをサポートしており、それにより該当する機能を使うことができる。
なので標準的なSQLを勉強してください。
0952nobodyさん
04/09/16 07:19:05ID:???そういうことが出来ると聞いたのですが。。
0953nobodyさん
04/09/16 07:19:54ID:???どうも上手くいきません。
header("Content-type: video/x-ms-wmv");
readfile($hoge);
のようにしています。
調べてみると、ファイルサイズが小さいものは
ちゃんと表示されるのですが、ファイルサイズが大きいものは
「ページが表示されません」と表示されてしまうようなんです。
freadでちょっとずつ読み込んで出力してもだめみたいです。。。
どなたか、解決策をお願い致します。
0954953
04/09/16 07:21:51ID:???すいません。ちょっと修正です。
「ぺージが表示されません」ではなく、
「ページを表示できません」でした。
0955nobodyさん
04/09/16 08:07:14ID:???適切にコンパイルし、適切に設定する。
http://www.php.net/manual/ja/installation.php
0956nobodyさん
04/09/16 08:32:58ID:wopdBrj5「競走成績」→「2004年4回阪神2日(9月12日)」→「11R」
と押して表示されるページの内容を取得して
変数に格納したいのですがどうすれば?
0957nobodyさん
04/09/16 08:44:51ID:???すぐ出かけるので詳しく書けないが、
POST /JADB/accessS
CNAME=〜
xW01=〜
てのを送信すれば良い。
要するに実際のブラウザが送っている情報と同じ物を送れば当然同じ物が返ってくる。
ieHTTPHeaders
ttp://www.blunck.info/iehttpheaders.html や
proxomitron
ttp://www.proxomitron.org/
のようなリクエストヘッダや応答ヘッダを表示できる物を使うと楽。
0958942
04/09/16 09:25:45ID:???画像表示ソースを
<img src="gazou.php">
みたいに呼び出して
gazou.phpの中身は
$sql="画像取得クエリ";
$res = mysql_query($sql,$conn);
header("Content-Type: image/jpeg");
$image = mysql_result($res, 0, "格納カラム");
$image_size = getimagesize($image);
$img_old = imagecreatefromjpeg($image);
$img_new = imagecreate($image_size[0] * 2,$image_size[1] * 2);
//拡大
imagecopyresampled($img_new,$img_old,0,0,0,0,$image_size[0] * 2,$image_size[1] * 2,$image_size[0],$image_size[1]);
print $img_new
こんな感じで書いてみたんですけど、
ソース自体がおかしいですか?
0959956
04/09/16 10:27:58ID:wopdBrj5string file_get_contents ( string filename [, int use_include_path [, resource context]])
引数をどのように指定すればよいのでしょうか?
0960nobodyさん
04/09/16 11:10:46ID:ysqshSNVheader("Location : input.php");は使えないの?
飛ばないんだけど、なぜ?
0961nobodyさん
04/09/16 11:39:08ID:RlFTlQn8データベースから抽出です。
そのSQL文教えてください。
「a条件のみ」「b条件のみ」「a+b条件」みたいに
どうやって条件代えて出力させるんですか?
0962nobodyさん
04/09/16 12:08:26ID:???0963nobodyさん
04/09/16 12:18:16ID:PHMt0rSl0964nobodyさん
04/09/16 12:19:25ID:???あーたしか、携帯の場合、機種(キャリア?)によって、
フルパスじゃないと飛ばないやつがあったぞ。
まったく携帯サイトは面倒でやってられんよなぁ。
0965nobodyさん
04/09/16 12:31:02ID:9nyxCloV例えばPHPで作られた掲示板なんかで、ログファイルの所有者がapacheだったら、
その鯖の他のユーザーからPHPで改変されちゃう恐れがあるの?
0966966
04/09/16 12:40:18ID:RlFTlQn8書き込まれた絵文字の相互変換ってできますか?
3キャリアはキャリア毎の文字列、PCは画像みたいな出力方法で。
デフォルトだと、ドコモとauならある程度互換性あったと思うけど
ボーダフォンが見当違いな絵文字が出力される。
実際に試した人ご教授よろしく。
0967nobodyさん
04/09/16 13:20:22ID:epbnr+ELFALSE条件でなくTRUE条件で実行したいものとか書きたいんだけど
どうしたらいいですか?
これの or の文法はPHPマニュアルのどこあたりに書いてありますか?
0968nobodyさん
04/09/16 13:41:13ID:GBVH7aBq0969nobodyさん
04/09/16 14:03:40ID:???0970nobodyさん
04/09/16 14:03:58ID:???http://jp2.php.net/manual/ja/function.mb-convert-kana.php
0971970
04/09/16 14:04:48ID:???0973nobodyさん
04/09/16 14:12:56ID:???0975nobodyさん
04/09/16 15:06:10ID:???0976nobodyさん
04/09/16 15:07:18ID:???作れば?
0977nobodyさん
04/09/16 15:09:59ID:???0978nobodyさん
04/09/16 15:12:02ID:???printで出力するんでなくimagegifとかimagejpeg関数使わないと駄目だったような・・・
出力した後はimagedestroyでメモリ解放もしといた方がいいかも。
0979958
04/09/16 16:15:09ID:???お返事ありがとうございます。
出力に関してですが、
$sql="画像取得クエリ";
$res = mysql_query($sql,$conn);
header("Content-Type: image/jpeg");
$image = mysql_result($res, 0, "格納カラム");
print $image
だと問題なく出力されるんです。
$image_size = getimagesize($image);
ここで先に記述しましたワーニングがでてしまって。。。
クエリで取得した際になんならかの処理が必要なのでしょうか。
Warning: failed to open stream: No such file or directory
↑ワーニング
0980nobodyさん
04/09/16 16:15:23ID:???0981nobodyさん
04/09/16 16:32:02ID:???コードは上から順番に実行される。
0982nobodyさん
04/09/16 16:37:38ID:5ifGdNVOいわゆる解析対象時間をちょっと改造したいんだけど、
これって難しいでしょうか?
たとえば、普通は1時間おきにアクセスを表すのが多いですが、
夜の10時〜12時に関しては30分おきのアクセス数を表示する、
といった改造をしようと考えてます。
PHPは本見ながら、超簡単なスクリプトを作れる程度の知識です。
0983nobodyさん
04/09/16 16:45:38ID:???0984nobodyさん
04/09/16 16:46:53ID:???俺を含めてここにいる奴の殆どにとっては簡単だと思うが
多分、キミには難しい
っか、難しいと思う根拠を述べてくれ。素でわからん
0985nobodyさん
04/09/16 17:16:29ID:???おそらくプログラムの変更は簡単だと思われるが、
1部分だけ30分間としてしまうと集計の意味があるかどうかが
難しいところなのだろう。
0986nobodyさん
04/09/16 17:21:08ID:???0987nobodyさん
04/09/16 17:34:59ID:???HTTP/1.1では絶対アドレスで書くべきところなので
相対アドレスで可なのは融通を利かせすぎなU/Aな訳であって。
規格外の相対アドレスじゃないと駄目(受け付けない)な設定にしてある
レンタルサーバが存在するのが困りモン。
0988nobodyさん
04/09/16 17:48:30ID:???ほんの一連の動作でもクラスとしてまとめておいた方が良い
って説明あったけど、これだと逆に大変じゃないですか?
0989nobodyさん
04/09/16 17:53:54ID:???場合によりけりだろ。
0990nobodyさん
04/09/16 18:05:43ID:???非常に初歩的な質問スマソ
$test->d->abc
この->ってよく見かけるんですけど何ですかこれは?
上記一文は何を表しているんでしょう?
検索エンジンでは調べにくいし・・・
0991nobodyさん
04/09/16 18:11:18ID:???ここらでも熟読してくるよろし
0992nobodyさん
04/09/16 18:16:56ID:???30分までに立たなかったら誰か代わりにお願い
0993nobodyさん
04/09/16 18:17:42ID:???読みましたが、俺頭悪いからよくわかんね
誰かあほの俺でもわかる様に教えてください。
おながい(はぁと
0994992
04/09/16 18:19:52ID:???【PHP】質問スレッドpart22【php】
http://pc5.2ch.net/test/read.cgi/php/1095326257/
0995nobodyさん
04/09/16 18:22:32ID:???0996nobodyさん
04/09/16 18:27:43ID:???0997nobodyさん
04/09/16 18:42:52ID:???「(PHP 5はオブジェクト指向言語ではありません)」
http://www.php.net/manual/ja/language.oop.object-comparison-php5.php
あらー。マニュアルでそんなこと言い切ってたのね。
0999nobodyさん
04/09/16 19:08:02ID:???1000nobodyさん
04/09/16 19:08:32ID:???10011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。