【PHP】質問スレッドpart26【php】
レス数が1000を超えています。これ以上書き込みはできません。
0001nobodyさん
04/12/21 22:34:55ID:???0002nobodyさん
04/12/21 22:42:24ID:???0003nobodyさん
04/12/21 22:46:10ID:???・新規質問の方は上げてください。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
0005nobodyさん
04/12/21 22:46:50ID:???【PHP】質問スレッドpart25【php】
http://pc5.2ch.net/test/read.cgi/php/1101111942/
関連スレ
【PHP】くだらねぇ質問はここに書き込みやがれ
http://pc5.2ch.net/test/read.cgi/php/1099322141/l50
Pear
http://pc5.2ch.net/test/read.cgi/php/985665522/l50
【PHP】Smarty【Template】
http://pc5.2ch.net/test/read.cgi/php/1047225437/l50
0006nobodyさん
04/12/21 22:48:16ID:???http://pc5.2ch.net/test/read.cgi/php/1094725439/l50
PukiWikiスレ Part1
http://pc5.2ch.net/test/read.cgi/php/1084907353/l50
[PHP-users MLヲチ6] 教えていただけませんか?
http://pc5.2ch.net/test/read.cgi/php/1096871691/l50
★負荷軽減対策委員会(Perl、PHP)★
http://pc5.2ch.net/test/read.cgi/php/1034645635/l50
PHPBB
http://pc5.2ch.net/test/read.cgi/php/1065334037/l50
PHPでPDF
http://pc5.2ch.net/test/read.cgi/php/983858078/l50
【PHP】Phrameを使う【フレームワーク】
http://pc5.2ch.net/test/read.cgi/php/1093238107/l50
【PHP】セッションについて語ろう!【PHP】
http://pc5.2ch.net/test/read.cgi/php/1064399467/l50
PHPエディタって、どうよ?
http://pc5.2ch.net/test/read.cgi/php/1079460638/l50
【PHP】自作スクリプト発表会
http://pc5.2ch.net/test/read.cgi/php/1017456911/l50
PHPで2chを真似てこんなモン作ってみますた。
http://pc5.2ch.net/test/read.cgi/php/1019451204/l50
PHP + PostgreSQL
http://pc5.2ch.net/test/read.cgi/php/983128806/l50
PHPで構築されたサイト
http://pc5.2ch.net/test/read.cgi/php/1085302527/l50
0007nobodyさん
04/12/21 23:12:32ID:???ボンレススリーナイン
0008nobodyさん
04/12/21 23:14:40ID:???0009nobodyさん
04/12/21 23:22:43ID:???画像を携帯の待ちうけ画像ぴったりにするには、どうしたらいいですか?
GD使って、数百種類以上ある機種ごとにサイズを変えなければいけないのでしょうか?
0010nobodyさん
04/12/21 23:25:43ID:???00129
04/12/21 23:41:28ID:???0013nobodyさん
04/12/21 23:49:57ID:4yQ5agWL1つのcsvファイルを1つのテーブルと見なして、
DBを扱うようにcsvファイルに対してSQL文を発行できるような、
モジュールってないでしょうか?
ちなみに、PerlだとDBD::CSVモジュールってのがあります。
これと同じようなものがあればと。
http://homepage3.nifty.com/hippo2000/perltips/DBD/csv.htm
よろしくお願いします。
0014nobodyさん
04/12/22 00:03:43ID:???1. ハードウェア、OSのバージョン等には一字一句触れない。
2. 大切な個人情報が漏れるとまずいので、己の行った操作、変更などは秘密。
3. エラーメッセージの類は決して書かない。「エラーが出るんです」で留める。
目の前で生じている現象をそのまま具体的に書くなどもっての外。
事実より俺様の脳内解釈を優先すべし。
4. 独り言文体で必勝。
「…なんだけど、どうすればいいのかなぁ」「何が悪いんだろう?」
5. 「急いでいます」「困っています」等、自分の都合を全面に押し出す。
6. もう試したことを得意げに指摘してくる奴には、厳しく対応。
「それが駄目だったから質問してるんです」「それはもう試してみて駄目でした」
"どう"だめだったのか、本当に実際それを行ったかどうかなんか問題じゃない。
7. ストレートに答えを書かないもったいぶったレスには、逆切れで対応。
「だからどうすればいいんですか?」「分からないなら引っ込んでろやゴルァ」
示されたURL等を参照するなんて態度は、回答者を甘やかすことに他ならないので
絶対に避ける。
8. 情報は小出しに。
「エスパーきぼんぬ」 補足
上の八ヵ条を「一つでも」満たす者は質問者として不適格だということだ。
そのような悪い質問に対して答えられるのは,
質問者の意図をすべて汲み取ることのできるエスパーでもなければムリ,
という意味であって,決して,高度な技術を持つユーザに対する尊称でなはい。
まちがっても「エスパーの方,回答お願いします」
なんて痛い質問するな。つうか氏ね。
0017nobodyさん
04/12/22 04:06:29ID:???http://pc5.2ch.net/test/read.cgi/hp/1097490756/536
0018軟式PHP
04/12/22 10:23:26ID:???実際に携帯用サイトの画像振り分けの時に使ってる
<img src="img.php?qvFile=test.gif">とかして。
0019nobodyさん
04/12/22 10:39:21ID:gfkRdrPI対象gif画像がアニメーションgifなのか普通のgif画像なのか判定したいのですが
既にそのような関数とかって有るのでしょうか?
自分でgifフォーマットの解析をしないと無理なのでしょうか?
0021nobodyさん
04/12/22 11:30:48ID:gfkRdrPIなるほど。諦めて自作します。
ありがとうございました。
0023nobodyさん
04/12/22 21:19:00ID:4IslWF9p0024nobodyさん
04/12/22 23:46:31ID:???0027nobodyさん
04/12/23 05:01:38ID:???によるとget_object_vars
オブジェクトで未定義なプロパティを返さないようですが、
なぜか空の値を返してきます。
仕様変更でしょうか?
0028nobodyさん
04/12/23 05:07:48ID:???未定義かどうかにかかわらずプロパティを返しやがりますね。
はあ
0029nobodyさん
04/12/23 06:18:13ID:???結果、Warning Notice 出まくり状態です。
もぅ @ だらけにしてやろうかと・・・
皆さんはいかがですか?
0030nobodyさん
04/12/23 08:38:06ID:MF5l0s/rよっぽど無理矢理なソース書いてたとか?
0033nobodyさん
04/12/23 13:06:48ID:???0034nobodyさん
04/12/23 13:53:32ID:???なんでわざわざ@でコントロールするんですか?
php.iniを書き換えるなり.htaccessでコントロールするなり、
ソースの先頭でコントロールすれば済むのに。
いちいち@をつけたり外したりするのは面倒なだけじゃなくて、
重要なエラーが確認できなくて困りませんか?
0035nobodyさん
04/12/23 19:50:27ID:???0037nobodyさん@29
04/12/23 20:40:49ID:???△みたいなのが多数・・・
△ $key=htmlspecialchars($_GET[key]);
○ $key=htmlspecialchars($_GET['key']);
まぁ一応動きますたが・・・
0038nobodyさん
04/12/23 23:45:00ID:???どこかに転がってないですか?
0039nobodyさん
04/12/24 00:32:17ID:???自分が考えた方法は、月の初めに新しいログファイルを作成して、そっちを読ませる、というものなのですが、どう書けば良いのかがよくわかりません。
(それとももっと良い方法があるのでしょうか?)
どなたかご教授いただけませんでしょうか。
004139
04/12/24 01:12:01ID:???なるほど…。ありがとうございます。
ログに書いてある日付と月が違えば新しいログを作成する…といった感じでしょうか。
しかし、スクリプトの書き方がわかりません。(汗
自分が日付関連が初めてなせいか、いかんせん上手く書けません。
どのように書いたらいいのでしょうか。。。
何度もすみませんが、ご教授いただけませんでしょうか。
0042nobodyさん
04/12/24 03:37:10ID:GgUnFp9z$filepath = "data{$ym}.log";
・・・
ログのファイル名を月ごとに変えるだけじゃないの?
適当・・
0044nobodyさん
04/12/24 09:57:21ID:???define('key', 'nullpo');
echo key; // nullpo
これで表示が変わるから△はやめたほうがいいと。
0046nobodyさん
04/12/24 10:44:23ID:???指定されたURLからソケット通信してHTML取得してるんですけど、
その指定されたURLが
http://xxxx/aaa
だったときに、そのaaaがディレクトリ名なのかファイル名なのかって
わかる方法あるんですか?
IEならhttp://xxx/aa.htmlってやってもaa.htmlがディレクトリ名なら最後に/を付けてくれるんですよね
そういうことサーバーに問い合わせしてるのでしょうか?
phpと関係ないかもしれないけどphpで作ってるので。。
いろいろググってみたけど見つからなかった。。
知ってる人いたら教えて下さい。
試してみてはどうですか。
そこがディレクトリなのに"/"で終わっていなければ
200は返さないとだけは言っておきましょ。
0049nobodyさん
04/12/24 11:05:09ID:???あ、本当ですね。
正確なURLじゃなきゃ、ロケーションされたりしてたんですね。
なんかいろいろやってるうちにわけわかんなくなってました。
ありがとうございました。
0051nobodyさん
04/12/24 14:08:54ID:qwX5VviGいま、PHPでアクセス制限をしようとしているのですが、
なかなかうまく動きません。
http://keitai.s92.xrea.com/pass.txt
某所のスクリプトの改造なのですが、正しいID/パスを入れても
404Errorがでます。
こんなかんじです。
http://keitai.s92.xrea.com/404.JPG
ためしに自分の借りているレンタルサーバーにアップしても同様の現象でした。
どなたかご存知の方原因を教えてください_(._.)_
環境
OS:WinXP SP1
サーバーソフト:phpdev5にはいっていたアパッチ
0052軟式PHP
04/12/24 16:32:22ID:???ここが原因くさい。
0054nobodyさん
04/12/24 20:07:48ID:???RDBは使いたくないんですが。
0056nobodyさん
04/12/24 21:00:34ID:???配列とかオブジェクトは一旦分解してテキストデータにしてからセッション変数に保存するといいよ。
んでページごとに配列に戻せばOK。
0057nobodyさん
04/12/24 21:50:24ID:???配列に配列を入れていたら、複雑になりすぎてたことがあるが・・・・
005854
04/12/24 22:38:40ID:???http://ml.postgresql.jp/pgsql-jp-old/pgsql-jp/1999Sep/msg00307.html
>>56
分解するというのは、例えばこんなコードがあったら
$a = array('aaa', 'bbb', 'ccc');
こうするってことでしょうか。
$a_0 = $a[0];
$a_1 = $a[1];
$a_2 = $a[2];
これって、データ構造がちょっと複雑になると難しくないですか?こうするしかないんですかね。
0059nobodyさん
04/12/24 22:59:10ID:???というかセッションってデフォルトで serialize 使ってるんじゃないの?
0060nobodyさん
04/12/25 02:38:52ID:???0062nobodyさん
04/12/25 03:41:46ID:???Windows XP起動時に、PHP Startup: Unable to load dynamic library 'C:/php/ext/php_mysql.dll" - 指定されたプロシージャが見つかりません
というエラーがでるようになりました。
どのようにしたら解決できますか?
PHP5、Apache 、Windows XP SP2
という環境です。
0063nobodyさん
04/12/25 03:43:53ID:???php.iniは
extension_dir = "C:/php/ext/"
extension=php_mysql.dll
となってます。
0064nobodyさん
04/12/25 04:18:54ID:???0065nobodyさん
04/12/25 09:31:52ID:???0066nobodyさん
04/12/25 09:37:50ID:???0072nobodyさん
04/12/25 14:29:01ID:???007358
04/12/25 14:38:00ID:???できないはず・・・と思って試してみたら、できちゃったよ!びっくり。
配列をそのまま$_SESSIONに格納できただけでなく、配列の配列も格納できた。
これはいい情報をありがとう。ほんと助かった。
007762
04/12/26 04:04:23ID:???0078nobodyさん
04/12/26 18:45:57ID:???どうしたらいいでしょうか?
0081nobodyさん
04/12/26 21:17:27ID:???【PHP】くだらねぇ質問はここに書き込みやがれ
http://pc5.2ch.net/test/read.cgi/php/1099322141/l50
0083nobodyさん
04/12/27 03:35:00ID:???みなさんの開発環境ってどんなものですか?
しらべてみたらウェブの統合開発環境は
EclipseのプラグインTruStudio
と
XOOPS
の二つあるみたいです。
0084nobodyさん
04/12/27 04:01:01ID:???XOOPSが統合開発環境…(;´Д`)?
趣味プロならエディタでべた書きで十分だと思うが?
PHPに限らんけど、最初からIDEに頼るのはお勧めできない
0086nobodyさん
04/12/27 07:46:18ID:dSbLZ0J00087軟式PHP
04/12/27 08:55:42ID:???0088nobodyさん
04/12/27 10:37:44ID:???0089軟式PHP
04/12/27 10:47:10ID:???009083
04/12/27 11:01:32ID:???とある場所で
掲示板を作って公開してたら攻撃にあい、
それでXOOPSを採用したって話がありました。
だから、セキュリティ対策とかもろもろの
他の部分を考えなくてもXOOPSなら
手軽に作成できるのかなと思っています。
XOOPSはPHPを操って開発するユーザーサイドよりの
開発環境なのかなと勝手に思っていました。
0091nobodyさん
04/12/27 11:05:14ID:???他のPHPスクリプトをいじって自分好みにするってことでしょ?
0092nobodyさん
04/12/27 11:17:21ID:???なんかバグがあったと思うんだ。
よく覚えてないけど、コネクション数が増え続けるみたいな。
それ以来、怖くてpconnect使ってないんだけど、
今は解決されてるのかな?
それから、このバグってSybase限定のバグで、
MySQLとかだと大丈夫なのかな?
0093nobodyさん
04/12/27 13:47:11ID:???<?php
<a href="../">秘密のページ</a>
?>
このPHPファイルを他のPHPファイルからrequire文かinclude文で呼び出したと
しましょう。しかしそのPHPファイルが違う階層に存在するとき、
”秘密のページ"をクリックしていく場所はそれぞれ別個の場所になってしまうでしょう。
詳しくは呼び出したそれぞれのPHPファイルの上の階層にいってしまうと思います。
そうではなく、呼び出されたPHPファイルのひとつ上の階層へ行くにはどうしたらいいでしょうか?
0094nobodyさん
04/12/27 13:55:02ID:???なんで偉そうなんだ
009693
04/12/27 14:16:03ID:???どうもです。
0098nobodyさん
04/12/27 14:28:49ID:???0100nobodyさん
04/12/27 14:44:07ID:???優しさが仇になる事もある
0101nobodyさん
04/12/27 14:46:51ID:???__FILE__知らない時点でオワットル
0102nobodyさん
04/12/27 15:18:10ID:dSbLZ0J00104nobodyさん
04/12/27 18:09:33ID:???セッション変数っていうのはいつ削除されるものなのでしょうか?
削除するロジック通らないとずーっと残ってるのですか?
0105nobodyさん
04/12/27 18:51:34ID:???ググってからいってるんだよね?
0106nobodyさん
04/12/27 19:17:09ID:???pconnectの性質を理解して使っている上での
問題点は特に無いけどね<MySQLでの
ただ、Sybase特有の現象というのも腑におちないのだが。
あれはPHPの永続的リソースの仕組みが賄っている機能であって
特にDBMSに依存するものでもないから。だから問題があったとしたら
Apacheとかhttpdに絡む部分が影響したのだと思う。
010792
04/12/27 19:45:25ID:???返信ありがとうございます。
もしかしたら、これ?という記事を見つけました!
ttp://blog.drecom.jp/saito/archive/101#comments
前に遭遇したのが本当にこれなら、
4.3.4以上で解決ってことですね。
010892
04/12/27 19:56:33ID:???0109nobodyさん
04/12/27 20:28:30ID:???そこからのリンクだけど
http://bugs.php.net/bug.php?id=25404
確かにここの記述と同様に、Sybaseにも影響が出る可能性があるね。
0110nobodyさん
04/12/27 22:00:05ID:???掲示板の投稿表示方法で悩んでるんですが、
件数を指定して表示する際に(例えば10件)
1つ目の投稿内容と2つ目の投稿内容の間にだけ広告入れるスマートな方法ってどうやったらいいですかね。
今はforeachで回してる途中array_sliceで前半と後半をぶった切って
途中でecho $koukoku;と入れて力ずくでやってます。
0111nobodyさん
04/12/27 23:37:25ID:ZN2DRBjE漏れだったら表示する件数に何件目みたいな番号を振る。
もちろん、表示させる必要はない。
奇数だったら、これを入れるみたいな感じでやるな。
志摩志摩にして見やすくするのもこの手でやってますがなにか?
php&mysql歴3ヶ月で初めて質問に答える立場になって
得意になってすいません。1ヶ月目のころこれで一週間くらい悩みますた。
0113nobodyさん
04/12/28 00:54:32ID:???サイズ(200KBまで)制限かけて、幅と高さの制限はしてないのですが
サイズが3KBで幅と高さが1600×1600でアップできないのです。
幅と高さってデフォルトで制限されてるのでしょうか?
よろしくおねがいします。
0116113
04/12/28 01:27:19ID:???ローカルサーバーではうまくアップできますが
外部のサーバーだと幅が大きすぎるとアップできません。
これってスクリプトの問題というよりサーバーの問題でしょうか?
0117nobodyさん
04/12/28 01:50:09ID:???0119nobodyさん
04/12/28 02:10:39ID:???だから、あなたが何を言っているのか理解できる人間は、
このスレに存在していないので、
スクリプトをそのまま晒してください。
0120nobodyさん
04/12/28 02:49:55ID:???私も素人に近いから自信は無いヨ。
配列にどう持ってきてるかはしらんが
foreach使うときに
$key=>$value とかやったらどうじゃね
0121nobodyさん
04/12/28 02:55:21ID:???0122nobodyさん
04/12/28 03:00:21ID:???こんだけかずあんだから、何件かは見せてくれるんじゃないかなー?
0123nobodyさん
04/12/28 03:02:44ID:???そもそも入門書も読まずに何やってるんだろうなと。
0124nobodyさん
04/12/28 03:05:46ID:???>120をコードにしてみると
$toukou =array();//投稿内容が配列に入ってる。
foreach($toukou as $key => $value) {
echo $value;//書き込みを一件表示
if($key == 0) {
//1件目の書き込みの後に広告を挿入。
echo $koukoku;
}
}
こんな感じかな?
0125nobodyさん
04/12/28 03:06:37ID:???$count = 0;
foreach(*****){
if ($cout++ == 2){
addad();
}
}
0126nobodyさん
04/12/28 03:18:57ID:???そんな感じです。まぁ自分が書くなら以下の感じでしょうか。
$toukou =array(); //投稿内容が配列に入ってる。
foreach($toukou as $key => $value)
{
if( 1 == $key)
{
//1件目の書き込みの後に広告を挿入。
print(htmlspecialchar($koukoku));
}
//書き込みを一件表示
print(htmlspecialchar($value));
}
なんかでしゃばった感じですみませんorz
0127nobodyさん
04/12/28 03:20:07ID:???012862
04/12/28 06:53:48ID:64WbgjnWb
c
3つのチェックボックスがあって、
チェックを付けたやつだけ、
inputボタンを押した後に表示したいんですが、
どうすればいいでしょうか?
例:aとcにチェックを付けたら、次の画面で、
aとcを表示させる。
0129nobodyさん
04/12/28 06:55:32ID:???【PHP】くだらねぇ質問はここに書き込みやがれ
http://pc5.2ch.net/test/read.cgi/php/1099322141/l50
0130128
04/12/28 06:55:52ID:64WbgjnWあと、perlだと、フォームで同じnameで複数項目入力させても
配列に格納されます?
perlのスクリプトだとどうもそうっぽいので。
phpじゃこれは無理ですよね?
0131nobodyさん
04/12/28 06:56:50ID:???Perlのこと何でも聞いてきてよ
http://pc5.2ch.net/test/read.cgi/php/1012750353/
0132nobodyさん
04/12/28 09:09:02ID:N/AEZ3trhttp://www.corleone-forever.jp/
0134nobodyさん
04/12/28 12:32:48ID:???0136nobodyさん
04/12/28 14:00:20ID:???0138nobodyさん
04/12/28 15:07:42ID:???0139nobodyさん
04/12/28 15:16:47ID:???0140nobodyさん
04/12/28 15:44:22ID:???PHPとPPPHの関係を教えてください。
0141nobodyさん
04/12/28 16:35:33ID:???0142nobodyさん
04/12/28 17:04:37ID:???PHPのコード問題を突くSantyワームの亜種が出現
> こうした攻撃を防ぐためには安全なやり方で「include()」と「require()」機能を
> 使うよう、サイトのコード修正が必要になるかもしれない。
で、どうしろと( ゚Д゚)?
0144nobodyさん
04/12/28 17:29:25ID:???inclide($_REQUEST['include']);
こういうことなんだろうか??
こんなんありえるの?
0145nobodyさん
04/12/28 17:37:17ID:???0146nobodyさん
04/12/28 17:38:49ID:???0147nobodyさん
04/12/28 18:54:20ID:???0149nobodyさん
04/12/28 19:23:11ID:???0153nobodyさん
04/12/28 21:40:18ID:???クッキーで変な値渡されたり妙なPOSTが来たり得体の知れないGETが来たりすると
とんでもないモン include しちまうのがわからんか?
0154nobodyさん
04/12/28 21:47:44ID:???ネットにあるプログラムには驚くほど低レベルな物もあるからね
0155nobodyさん
04/12/29 08:06:36ID:???↑みたいな書き方してるところだとアウトってこと?
0156nobodyさん
04/12/29 10:30:00ID:???ttp://xoops.sourceforge.jp/wiki/xoops2/index?cmd=read&page=TECH%2FAgenda-X%20%A4%CE%C0%C8%BC%E5%C0%AD%CC%E4%C2%EA
0157nobodyさん
04/12/29 13:11:08ID:???0158nobodyさん
04/12/29 13:22:48ID:???は、関係ないかな?
0159nobodyさん
04/12/29 14:10:29ID:???コンマだとデータの中にコンマが入っていた場合、読み出すときうまくいかないので困ってます。
0161159
04/12/29 14:28:33ID:???レスありがとうございます。
たしかにタブならデータから除去してもいいし、スペース4つにおきかえてもいいですね。
参考になります。
0163162
04/12/29 14:36:51ID:???というのも、場合によってはアリ。
0164軟式PHP
04/12/29 15:10:28ID:???0165nobodyさん
04/12/29 15:33:01ID:???データキャッシュつくるときなんかは簡単でいいけど
0166軟式PHP
04/12/29 16:14:45ID:???戻してから指定のフォーマットに再出力みたいなことしてるけど。
0167nobodyさん
04/12/29 16:17:57ID:???0168matz
04/12/29 21:22:50ID:???しかし、しつこいくらい繰り返しているが「PHPの良さ」はどこにあるのだろうか。
0169nobodyさん
04/12/29 21:48:42ID:???0170matz
04/12/29 22:49:21ID:???0171nobodyさん
04/12/29 22:59:36ID:???あとはくだらない質問スレでやったらどう?なんの生産性もない話題だし
言語信者が流れ込んできて荒れるだけ
0172nobodyさん
04/12/29 23:43:21ID:???その穴を突いたワームが出てきたことが新しいんだと思う。
以前は突くツールはあったんだけど、使う相手はクラッカーが探して
手作業で行ってたのが、自動化によって被害の増大が懸念されるから。
0174nobodyさん
04/12/30 00:12:59ID:???0175nobodyさん
04/12/30 00:32:06ID:???0176nobodyさん
04/12/30 02:01:59ID:???バリバリのWebアプリじゃなくてヘッダーとフッターを各ページに入れますとか
そんな些細なことを手軽にできるのがいい。
0178nobodyさん
04/12/30 09:29:41ID:???試す気も起きん
0179nobodyさん
04/12/30 13:11:29ID:???0182nobodyさん
04/12/30 14:41:16ID:???PHPはホスティングサービスでほぼどこでも使えるので覚えようと思うんだけど
Rubyはあまり聞かないから覚えようと思わないんです。
作ったスクリプトはどこでも使えなさそうだから使いまわしできなさそうだし、配布してもRubyスクリプトイラネって言われそうだし
そもそもRuby使える無料ホスティング知らないです。
0183nobodyさん
04/12/30 15:25:10ID:???幾つかあるが、最大の理由は
俺がRubyを初めて知ったとき、既にPHPを覚えてから2年くらい経っていた
ってこと。
結局、Rubyをやってみても2年分のハンデを埋めるほどの魅力は感じなかったし、
それならば無理にRubyに移行する必要もない。
あとはPHPの方が関連書籍も多いし、海外にも浸透してるし、業務でもそこそこ使える。
Rubyの痛いところは、業務で使おうとするとプログラマが集まらないところだ。
言語ってのはシステム要件を満たすための手段に過ぎないんだから
(個人でやるならともかく)広く浸透してる言語のほうが扱い安く感じるのは当然かと。
0184matz
04/12/30 16:09:22ID:???・環境がない
>>183
・すでに覚えたものがあるから
・情報、実績、ユーザが多い
・広く使われているからなんとなく
は理解できます。
「言語ってのはシステム要件を満たすための手段」に関しては、
道具を選ぶ、という視点が抜けていますね。
両者、ありがとうございました。ちなみに私はあの matz ではありません。
0185nobodyさん
04/12/30 20:21:50ID:6yNCCVX00186nobodyさん
04/12/30 20:50:50ID:???0188nobodyさん
04/12/31 12:55:06ID:AnxsV/s9ホスト名を指定するとpg_connect()がうまくいかないのですが、心当たりあるでしょうか。
pg_connect("dbname=test") はうまくいくのですが、
pg_connect("host=localhost dbname=test") がうまくいきません。
localhostでも127.0.0.1でもちゃんとしたホスト名でもだめです。
なぜでしょうか。
それから、pg_connect()で失敗したときのエラーはどこに出るのでしょうか。
Apacheのログには出てないのですが。
0189nobodyさん
04/12/31 13:48:26ID:???単にホスト名で接続(tcp/ip)を拒否してあるんじゃないの?<unixドメインソケット接続のみ
エラーに関しては、マニュアルのPostgreSQL関数 辺りを読めば分かる。
つーか接続の仕方(tcp/ip、unixドメインソケット)の話もそこに載ってるから
全部見てくる事をお勧めする。
0190188
04/12/31 13:49:21ID:???わかりました。PHPマニュアル「LXXXIV. PostgreSQL 関数」の章にヒントが書いてありました。
つまり、PostgreSQLはデフォルトでUNIXドメインでの通信(プロセス間通信)しかできなくて、起動時に-iオプションを与えてやらないとインターネットドメインでの通信(TCP/IP)の通信ができない、
そしてpg_connect("host=$host")と指定すると後者の通信を試みて失敗するということですね。
これはFAQなんだろうなあ。でもこれはわかりにくいぞ。
0192nobodyさん
04/12/31 18:54:26ID:???JDBCとかでは使えるみたいなんですが。
0193nobodyさん
05/01/01 02:21:51ID:2vKgKMWCSQLiteなら、余裕で使えます。
0194nobodyさん
05/01/01 04:15:07ID:xFPnJTv3echo "あけおめ!";
?>
0195nobodyさん
05/01/01 05:11:40ID:???配列になる場合もあるし、配列にならずに1つの場合もある
変数aで foreachして、配列じゃない場合、上記のような
エラーが出ます。
エラーは出ててもスクリプト上は機能してますが、
これはちゃんと配列の場合とそうじゃない場合で
分岐するよう修正した方がいいんでしょうか?
それとも@でエラー表示させないだけでいいでしょうか?
みなさんならどうします?
0196nobodyさん
05/01/01 06:01:05ID:???>配列になる場合もあるし、配列にならずに1つの場合もある
こんなことになる書き方がそもそもの間違い。
分岐とかじゃなく、配列は配列として使え。
要素が一つしかなくたっていいんだから。
0198nobodyさん
05/01/01 07:30:54ID:???うちじゃちゃんと配列になるが?
例え配列にならないとしても、処理の部分でどうこうするんじゃなくて
$name = is_array($_REQUEST['name']) ? $_REQUEST['name'] : array($_REQUEST['name']);
とかフォームデータを取り出す時に何とかすればいいだけだと思うが
0202nobodyさん
05/01/02 23:29:35ID:???バージョンが書いてないので何ともいえないが、
PEAR DBパッケージにはprepareが実装されてるはず。
0203nobodyさん
05/01/03 03:27:16ID:???PostgreSQLはよう知らんけど、見た感じではpg関数としてはない。
PEARにあるとしても、本当の意味(DBMSの持つクエリの効率的な処理機能)での
プリペアは使えないと思う。
0204nobodyさん
05/01/03 05:09:51ID:KLuklu8Eで、出力結果が
"
となって欲しいんですが、文字コードをUTF-8で作成するとエラーになってしまいます。(euc-jpだと平気でした)
UTF-8だとエスケープシークエンスを全般を認識してくれないようなんですが、原因および回避方法を知りたいです。
0205204
05/01/03 05:33:21ID:???Macの場合どうしたらバックスラッシュを入力出来るんでしょうか。コピペしても「¥」になってしまい・・
0207nobodyさん
05/01/03 10:17:56ID:???どうもありがとう。やっぱりPostgreSQL用の関数としてprepared statementがサポートされてないんだから、PEARでもサポートできるわけがないよね。
まあいいや、PEAR DBにはpreparetd statementはなくてもプレースホルダがあるから、それだけでもありがたいと思うことにする。
ところでおれは生のPostgreSQL用関数かPEAR DBしか触ったことないのだが、PEAR DBを超えるようなお勧めのライブラリなんかあったら教えてください。
0208nobodyさん
05/01/03 13:10:58ID:???ことえりOFF(U.Sにする)で、Option + ¥ でバックスラッシュになる。
ただし、エディタによっては文字化けするので注意。
0209nobodyさん
05/01/03 14:26:15ID:1pWPK0qtRDF API for PHP
データベース保存周りがいまいちわからんのです。
0210nobodyさん
05/01/03 15:23:09ID:???〜と言うように本に書いてあったんですが、うまく動きません。
〜したいのですが、〜としてもうまく動きません。
〜で言う○○と同じような動作をさせたいのですが・・・
以上の様な、知ってる人から見ればバカみたいな質問は↓。
【PHP】くだらねぇ質問はここに書き込みやがれ
http://pc5.2ch.net/test/read.cgi/php/1099322141/
で、具体的なPHPのコードに対する動作不良、エラーが出てしまうなどはここ。
0211nobodyさん
05/01/03 16:00:35ID:???0212nobodyさん
05/01/03 18:53:13ID:KT+/g2GT特定の社名が出てきたらあらかじめ別ファイルに設定しておいた
リンク先に勝手にリンクを貼ってくれるようなことって出来ないでしょうか?
そうすれば仮にある会社のリンク先が変更になっても
読み込んでいる元ファイルだけを変更すれば全てに反映されると思います。
0214sage
05/01/03 19:42:11ID:KSsMVUlGhttp://pc5.2ch.net/test/read.cgi/php/1099322141/ より飛ばされてまいりました。
php+mysql鯖にて下記のようなソースでUPされたファイルとデーターベースに格納されている
文字列で重複削除をかけるために$ngにmysqlの結果セットを格納していきたいのですが
今のfor文ですと時間がかかりすぎてしまってこまっております。
何か一発で添字配列$ngに格納する方法ありませんでしょうか?
$rs="select id from ng";
$rt=mysql_num_rows($rs);
for($i=0;$i<$rt;$i++){
$ng[$i]=mysql_result($rs,$i,'id');
}
$ok=array_diff($up,$ng);
0215nobodyさん
05/01/03 20:04:43ID:???Web制作板から来た人かねぇ。
「出来る 出来ない」で聞かれたら「出来る」ってことになるけど、
既存のCGIでそういうものがあるかどうかって聞かれると
「どうだろうねぇ。探しても無いなら無いんじゃないの?」ってことになるかなぁ。
内容的にはかなり簡単な部類に入るので自分で作ってみるのもいいかと。
>>214
やりたい事が見えてこないから適当に答えるけど、それはSQLで解決できないような事なの?
0216214
05/01/03 20:49:00ID:???まわすことが非常に効率悪いのではないかと思いまして。
phpの関数で何か非常に効率のいいものがあったら教えていただきたいと思った次第です。
UPするtextファイルが大体10万件程度、ngデータとして
データベースに格納されているデータがおよそ1000万件(ngデータはtxtファイルとして保存もしてあります)。
その二つの間で重複削除をかけてngデータとして所持してない文字列のみを出力したいのですが
下記の形式を試し、あまりに時間がかかりすぎるためngのデータを配列に読み込みarray_diff
により差分配列を作成してからそれをファイルに出力するのがより高速かと思い試してみようと思った次第です。
そんなんよりもっと早い方法ご存知の方いらっしゃいましたらぜひとも教えていただきたいです。
$fl_name=$FILES['fl']['tmp_name']
$array_file=file($fl_name);
for($i=0;$i<count($array_file);$i++) //count($array_file)は10万程度
{
$rs=mysql_query("select *from ng where id='".$array_file[$i]."'");
$rt=mysql_num_rows($rs);
if($rt==0){fwrite($fl,$array_file[$i]);}
}
0217212
05/01/03 21:36:15ID:???> Web制作板から来た人かねぇ。
そうです。web制作板から島流しにあってここに来ました。
> 内容的にはかなり簡単な部類に入るので自分で作ってみるのもいいかと。
は、はぁ(;´Д`)
そうですか・・・
PHPで本格プログラムはしたこと無いのですが
似たようなプログラムを書いた人がいないとあっては
ここは一つ自力で解決せざるを得ないですか・・・・・・
0219nobodyさん
05/01/03 21:50:21ID:???file()、preg_split()、preg_match()、preg_replace()くらいかな使うのは。ガムバッテネ。
0220nobodyさん
05/01/03 21:52:17ID:d8mbNFJzんでapache再起動させたら
「mod_php4.cがねぇよ」
とか言われたんで、add module mod_php4.cコメントアウトしたらエラー吐かなくなって
見たところ正常に動いてるんですわ。
何これ、4.3.10からいらなくなったの?
0221217
05/01/03 21:58:21ID:???> file()、preg_split()、preg_match()、preg_replace()くらいかな
ラ、ラジャー(;´Д`)デス
0222nobodyさん
05/01/03 22:00:05ID:???DBに任した方が速そう。
UPされたデータをテンポラリテーブルに全てぶち込む。
SELECT word FROM TempTable WHERE NOT EXISTS (SELECT * FROM ngTable WHERE ngTable.ng=TempTable.word);
で得たwordをファイルに書き出す。ファイル<->Table間のやり取りが容易(SQLにCOPYなどがある)なら、
DBで直接ファイルを吐き出すのもアリかな。
0225nobodyさん
05/01/04 23:55:41ID:AGCbPn2Cしない場合なにか違いはあるのでしょうか?
0226nobodyさん
05/01/05 00:08:14ID:???ホームページからリンクを貼ってダウンロードできるようにしています。
ところが自鯖は24時間立ち上げっぱなしというわけでは無いので
時間帯によってはリンクが切れているときもあります。
そこでPHPを使ってリンクがアクティブの時はダウンロード可能にし、
自鯖をダウンさせているときはダウンロードできない旨を表示させたいのですが
可能でしょうか?できれば1〜3秒以内にそれらの判定をして表示させたいです。
0227nobodyさん
05/01/05 00:21:18ID:???file_get_contentsとかfsockopenとかでアクセスしてみたら?
タイムアウトとか設定できた希ガス
0228nobodyさん
05/01/05 00:27:11ID:???って一言書けばすむ話では?
0229226
05/01/05 01:18:25ID:???> 「ダウンロードできなかったら鯖落ちてますんで後日どうぞ」
> って一言書けばすむ話では?
まぁそれが一番簡単なんですが小さめのファイルは無料鯖にうpしているので
ダウンロードできるファイルと出来ないファイルが混在しているんですね。
それでとあるリンクはダウンロードできて他のリンクは切れているという状況は
ビジターの方に混乱させてしまうかと思いましてリンクの表示時に判別したいと
思ったわけです。
>>227
> file_get_contentsとかfsockopenとかでアクセスしてみたら?
なるほど。リンクが生きていればそのまま、一定時間以上かかるか
リンクが切れていれば鯖ダウンと判別すればいいんですね。
自鯖にファイルサイズが小さいダミーファイルを置いて、ページを読み込むたびに
そのダミーファイルにアクセスしてできなければ鯖ダウンと判別すればよさそうですね。
自鯖内の各ファイルにアクセスして判別してもいいですがそれをやると
判定時間が異様にかかりそうです。
0230nobodyさん
05/01/05 01:19:17ID:???<img name="image1" src="ttp://自鯖/now_avail.png" onError="image1.src='now_unavail.png';">
0231nobodyさん
05/01/05 01:23:20ID:???〜って出来ますか?
〜と言うように本に書いてあったんですが、うまく動きません。
〜したいのですが、〜としてもうまく動きません。
〜で言う○○と同じような動作をさせたいのですが・・・
以上の様な、知ってる人から見ればバカみたいな質問は↓。
【PHP】くだらねぇ質問はここに書き込みやがれ
http://pc5.2ch.net/test/read.cgi/php/1099322141/
で、具体的なPHPのコードに対する動作不良、エラーが出てしまうなどはここ。
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
0232226
05/01/05 01:36:07ID:???なるほど。JavaScriptでも可能ですね。
もしかしたらPHPよりJavaScriptで実装した方が動作速度は速いかもしれませんね。
>>231
了解です。以降「くだらねぇ〜」に以降いたします。
0234nobodyさん
05/01/05 08:16:36ID:vMHNCGxM*.html 内に書かれた、{ }って文法的になになんでしょうか?
{ }内がphpプログラムで作られているのはわかったのですが・・
body1.html
---------------
<div>
<span>{KEY}</span>
{DEFN}
</div>
--------------
それとKEYに対して処理したく
body1.html内に例えば
<a href="http://www.******/***?keyword={ mb_convert_encoding(KEY)} ・・・
なんて、記述できないのでしょうか?
0235nobodyさん
05/01/05 08:29:23ID:???0236nobodyさん
05/01/05 09:22:00ID:???0237214
05/01/05 10:21:35ID:???SELECT word FROM TempTable WHERE NOT EXISTS (SELECT * FROM ngTable WHERE ngTable.ng=TempTable.word);
上記のクエリをmysqlにぶち込んでみたところsomething is wrong in your syntax : EXISTS (SELECT * FROM ngTable WHERE ngTable.ng=TempTable.word); 付近と出てしまいました
これはmysqlに対する副問い合わせができていないのでしょうか。解決方法をご教授ください。
ちなみにmysqlは4ver.0.18です。
0238nobodyさん
05/01/05 10:49:25ID:???http://dev.mysql.com/doc/mysql/ja/Rewriting_subqueries.html
0239nobodyさん
05/01/05 11:42:05ID:k/OgHA/yRSS情報をmovabletypeへ投稿できるスクリプトないですか?
SPIDERING HACKSにはあるが、PERLなんだよね・・・
PHPはないかな?
0240nobodyさん
05/01/05 12:14:31ID:???単なる文字。
pearのHTML_Template_Flexyなんかを使うと、
変数の置き換え場所の指定に{}が使われることもある。
どこかのページや本を参考にしてると思うけど、
最初から全部見た方が良いでしょう。
0242nobodyさん
05/01/05 14:21:31ID:pRFKvcsaこのときに、XML のデータの中におそらく文字化けでコントロールコードが入ってしまっているときに
その行で解析をストップしてしまうようなのです。
日本語は正しく通ります。(shift-jis の XML を読んでいます)
何か回避方法はありますでしょうか。
0244nobodyさん
05/01/05 14:26:01ID:pRFKvcsa$p = &new myParser();
$p->setInputFile($url);
$p->parse();
というように、URLから直接読んでいるので
チェックするには読んだデータそのままを扱わないといけないのですが、
それだとクラスの一部を書き換えないといけないのでしょうか
0245226
05/01/05 14:32:22ID:???> fsockopenとかでアクセスしてみたら?
> タイムアウトとか設定できた希ガス
具体的な話なのでまだこのスレの範疇かと思いお聞きします。
fsockopenでリンクが生きているか死んでいるかを判断するとき
タイムアウトの時間はどのくらいに設定するのが現実的でしょうか?
<?php
$fp = fsockopen ("www.yapoo.co.jp", 80, $errno, $errstr, 30);
if(!$fp) {
echo "cannot connect<br>\n";
} else {
echo "connection established<br>\n";
}
?>
最後の”30”という部分がタイムアウトと判断するまでの秒数だそうで
この値が大きくなればなるほどページの読み込みにかかる時間は増えていきます。
逆に小さすぎると読めるページでもその時間内に読み込めないと
判断されてしまうこともあるようです。
ここらへんの現実的な時間設定はどのくらいでしょうか?
0246nobodyさん
05/01/05 15:13:16ID:PjWbP+V8アプリケーションは他に何がありますか?
ご存知の方がいっらっしゃいましたらご教授ください。
0247nobodyさん
05/01/05 15:20:24ID:???てかスレ違いって言われるだろうから、早く帰りな。
0250246
05/01/05 15:46:24ID:PjWbP+V8どこの板にいくのがいいの?
0251nobodyさん
05/01/05 15:50:14ID:???で、fsockopenのtimeoutはコネクト可否の判定に使うんじゃなかったっけ?
ページサイズに関係してくる方は、socket_set_timeout()かと。
0252nobodyさん
05/01/05 15:52:47ID:???この板なら
http://pc5.2ch.net/test/read.cgi/php/1099322141/
Web制作板なら
http://pc5.2ch.net/test/read.cgi/hp/1097762828/
あたりかな。
0253226
05/01/05 17:37:07ID:???> 8秒
ヒィ----(;´Д`)
結構長いんですね。
プログラムの組み方が悪いのか>>245のPHPスクリプトを使うと
そのページ全体の表示に5秒あるいは8秒かかるようになって
しまうんですよね?
その他の画像や文章の部分は通常と同じ速度で表示され、
鯖の生死によって使い分ける画像の部分だけ5〜8秒表示に
時間を要す、なら問題ないとは思うのですが・・・
0254nobodyさん
05/01/05 19:34:11ID:???別にタイムアウト30秒に指定しても、
1秒でレスポンスが帰ってくれば、
1秒で完了するじゃん。
レスポンスを返す処理が長いのが問題であって、
タイムアウト設定の問題じゃないと思うけど??
0256nobodyさん
05/01/05 19:49:47ID:???すまん。面倒だった。
反省してログ読み直し。
完璧にやりたかったら、
ステータスとして管理するしかないんじゃないかな?
自サーバーを落とすときは、
無料サーバーに「落とすよー」リクエストを送る。
自サーバーを起動したときは、
無料サーバーに「立ち上がったよー」リクエストを送る。
無料サーバー側のスクリプトで、その受け口を作る。
0257nobodyさん
05/01/05 19:57:15ID:???fsockopenのタイムアウト設定を1秒とかにしてみれば?
socket_set_timeoutは30秒とかで。
0259234
05/01/05 21:13:42ID:???結局、body1.htmlに書くのを止めて、
phpプログラム内で新たに{KEY2}を作りました。
0261nobodyさん
05/01/06 15:47:16ID:wyAV9mPsHTMLのフォームに<form action="対象URL" method="post">でなら出来るのですが
(サブミットボタンを押して、対象のトラックバックURLにデータを送信する)
手動でボタンを押すのではなく、スクリプトを実行すると送信できるように
するにはどうすればいいのでしょうか?
0262nobodyさん
05/01/06 15:56:46ID:???スクリプトの中でfsockopenとかを使ってHTTPのpostを実行すりゃいい。
参照すべきものは、マニュアルのfsockopenの項、RFC 1945,2068,2616。
0264nobodyさん
05/01/07 10:07:45ID:pxQ1ftA8とページ移動するとしてCからBに「ブラウザの戻る」を
できないようにするにはどうすれば良いでしょうか?
javaを使用する以外でお願いします。
0266264
05/01/07 11:18:38ID:pxQ1ftA8ありがとう!解決できました
0267264
05/01/07 12:55:43ID:pxQ1ftA8CからBに戻ったときCで指定したセッション変数を参照して
Cへheaderで戻るようにしたんですが戻ったときにブラウザの戻る
の履歴を見たときBのファイル名がありません。
Cで「ブラウザで戻る」→Bでheader→C
を繰り返しできるようにしたいのですが知恵をください
0268nobodyさん
05/01/07 13:51:11ID:???スレ違い
【PHP】くだらねぇ質問はここに書き込みやがれ
http://pc5.2ch.net/test/read.cgi/php/1099322141/
0270226
05/01/07 14:26:05ID:???検出して、それに応じてアイコンの絵を選択するようにしました。
<?php
$fp = @fsockopen ("mysite.com", 80, $errno, $errstr, 0.5);
if(!$fp) {
$icon = "error.gif";
} else {
$icon = "ok.gif";
}
?>
その判断は0.5秒で行うようにしたのですが、それでもページを開くときに
ワンテンポ遅れる感じがします。アイコンとは関係の無い文章の部分だけ
先に表示することはできないでしょうか?そうすればページを開くときに
ストレスも無いかと思うのですが・・・。
0271nobodyさん
05/01/07 15:21:39ID:???非常に逃げな選択だが、iframeを使うと出来るかもね。
俺はそれをやるくらいなら、ワンテンポ遅れても…良いと判断する。たぶん。
0272nobodyさん
05/01/07 20:15:43ID:???ロードできるまではjavascriptで「チェック中」とか出しとけば完璧。
0273226
05/01/07 20:45:20ID:???>>270のようなプログラムを関数かなにかにし、imgタグの中で呼び出すという
ことでしょうか?そうすると一つ目のimgタグの前のパートまでのhtmlは
瞬時に呼び出されるということですね?
※htmlの先頭部分にimgタグがあればあまり速度的には変わらないかもしれません。
0274nobodyさん
05/01/07 20:59:36ID:???Content-typeちゃんとだして。ブラウザにもよるのかもしれないけどhtmlは真っ先にでるはず。
0275nobodyさん
05/01/07 21:07:29ID:???0276nobodyさん
05/01/07 21:12:54ID:???テーブルの中身を全部とれないと表示できないダメブラウザがあるし。
0277nobodyさん
05/01/07 21:28:41ID:???0279nobodyさん
05/01/08 03:45:29ID:???0280226
05/01/08 10:54:23ID:???今までの議論は自鯖が動いているか否かで表示する画像ファイルを
変更する方法について議論していましたが、そこから一歩進めて自鯖が
動いているか否かで
・ <a href="aaa.com"><img src="ON.gif"></a>
・ <img src="OFF.gif">
のそれぞれに割り振ることはできるでしょうか?
今までの議論だとhtmlとimageは別スレッドで並列に取得できるとの
ことでしたが、今回は一方に画像にリンクを貼っているのでhtmlと
imageを切り離し、html部分だけを先に表示出来るかが疑問です。
0282nobodyさん
05/01/08 11:21:11ID:???だからさ、一番最初に言われたとおりに、
自鯖からレン鯖へ定期的にリクエストを送って、
レン鯖で常に自鯖の稼動状態を保持しておきゃぁいいじゃねぇかよ!
最新の自鯖からのリクエスト時間を現時間、および前回リクエスト時間と比較して、
自鯖で設定しているリクエスト間隔を大きく上回っていたら、自鯖死亡。
たったこれだけのことを、なんでそう難しく考えるんだ?
0283nobodyさん
05/01/08 11:24:31ID:???どっかいけや>>280。
ロジック見つけて、PHPでの具体的な実現方法になったら
また来いや
来ても、シカトだが(w
0285nobodyさん
05/01/09 01:49:34ID:QFmRB+Xymysql_fetch_arrayでパラメーターが間違っているとエラーをはきます。
どなたか判る方ご教授ください。
$sql="create table ".$passwd." (num INT UNSIGNED auto_increment not null,address varchar(100) not nukk,primary key(num))auto_increment=1";
mysql_db_query("max",$sql);
for($i=0;$i<$num;$i++)
{
$array_file[$i]=strtolower($array_file[$i]);
$array_file[$i]=mb_convert_encoding($array_file[$i],"Shift_JIS","EUC");
$array_file[$i]=mb_convert_kana($array_file[$i],"rnaskh");
$sql="insert into ".$passwd." (address) values('".$array_file[$i]."')"; このクエリは通る
mysql_db_query("max",$sql);
}
// $sql0="select address from ".$passwd." where not exists(select address from ngaddress where ngaddress.address=".$passwd.".address)";
// $sql0="select address from ngaddress";
$sql0="select address from ".$passwd." order by address";
$rs0=mysql_db_query("max","select address from ".$passwd); このクエリが通らない
while($ok=mysql_fetch_array($rs0)){print($ok."<br>");}
$sql3="drop table ".$passwd;
mysql_db_query("max",$sql3);
0287nobodyさん
05/01/09 01:58:51ID:???クエリが通らない行では、実際に送信しているクエリはどういう風になっているか見てみた?
print("select address from ".$passwd); とかで
0288226
05/01/09 02:00:22ID:???> >>274 がその答えを出してくれているのだが。
> 画像リンクなんかはまた別のリクエストなんです
そうしますと
<? (鯖死亡なら何も無し、生きていれば'<a href="misite.com/file_name/">'を表示) ?>
<img src="status.php">
<? (鯖死亡なら何も無し、生きていれば'</a>'を表示) ?>
とすればよろしいでしょうか(´・ω・`)?
0289nobodyさん
05/01/09 02:11:09ID:???--dl_check.php--
<?php
if 自鯖 === 生きてる
header("Location : http://xxx/download.jpg");
else
header("Location : http://xxx/cannot_dl.jpg");
?>
0290nobodyさん
05/01/09 05:40:54ID:5gC8scbgttp://www.mt312.com/の写メール対応掲示板を設置してみたのですが
imgの読み込み許可してください。とエラーがでます。
色々設定を変えてみたのですが駄目でした。
【使用鯖】携帯用XREA
【ディレクトリ構造】配布元に書いてあるとおりにしてます。
/public_html/img
【パーミッション】配布元に書いてあるとおりにimgフォルダを707に設定
よろしくお願いします。
0294226
05/01/09 14:46:19ID:???すいません。>>280で重要なことを言うのを忘れていたので誤解を生じて
しまったようです(´・ω・`)
PHPを使用して実現したいことは
・自鯖が生きていれば「ダウンロードアイコン」を表示して、それをクリックすれば
ファイルのダウンロードが始まるようにする。
・自鯖が死亡していれば「ダウンロードできませんアイコン」を表示して、それを
クリックしても何も起きない(リンクそのものが貼られていない)。
ということでした。
これ自体はリンク場所に以下のスクリプトを貼ることで実現できました。
<?php
$fp = @fsockopen ("mysite.com", 80, $errno, $errstr, 0.5);
if(!$fp) {
echo '<img src=error.gif>';
} else {
echo '<a href="mysite.com/download.zip"><img src="ok.gif"></a>';
}
?>
ただ目下の問題は自鯖の生死の判断がつくまでの間、html全体が表示
されないというところですね。おそらく上記のスクリプトのところで自鯖の
生死の判断を下す間止まってしまうのでしょうね。
0297nobodyさん
05/01/09 17:36:02ID:???0299nobodyさん
05/01/09 20:49:05ID:???0300nobodyさん
05/01/09 20:53:46ID:???0301294
05/01/09 21:10:50ID:???さようならゴミ共
0303nobodyさん
05/01/09 21:37:51ID:???0304nobodyさん
05/01/09 21:50:15ID:???plugin/attach.inc.phpのAttachPagesクラスの中で$this->pages[$page]->toString($flat)みたいに"->"
を二回書いている部分の意味がわからないんで教えてください。
#ソースはちょっと長すぎて貼れなかったorz
0305226
05/01/09 21:56:20ID:???> それで、言いたい事は?
言いたかったことは>>294のコードを埋めるとその部分で処理が終わるまで
htmlの表示がストップすることです。htmlの部分だけさっさと表示してphpの
コードの部分はおいおい処理して表示されるのであれば全く問題無いはずです。
一方画像の表示だけならば>>289さんが提示された方法や>>230さんのJavaScript
を使う方法を用いれば本文とは別スレッドで実行されます。ただ画像だけでなく
リンク部分も含めて制御するとなると本文にも絡んできてしまうため簡単に別スレッド
とはいかないようです。
>>302
iframeに関してはまだ疎いのですがそれが唯一の解決方法でしたら
採用してみます。以前iframeはあまり使いたくないと言っていた人がいたのも
気になりますが・・・
0308nobodyさん
05/01/10 02:59:48ID:???0309nobodyさん
05/01/10 04:12:25ID:???アクセス毎に毎回チェックするのは無駄だから、
ローカルサーバーの状態をファイルなどに保存しておくといよ。
サーバーのパフォーマンス低下に繋がるかもしれないし、共用サーバーならなおさら。
サーバー側でcronなどが使えないなら、ローカルから通知するように、
ローカルの方からサーバーに定期的にリクエストを送る。
サーバー側でリクエストを受けとったら適当なファイルをtouch()。
チェックはファイルのタイムスタンプで判断。といった感じで。
iframeやjavascriptでも見かけ上の読み込み時間は誤魔化せるけど、
一番ボトルネックになってる部分はfsockopenなのだから、そこの設計の見直しが必要。
0310nobodyさん
05/01/10 06:08:39ID:???結論から言えば、今のプログラミングの手法として
逐次処理を前程にしている以上、無理。
その仕組みを使うなら、判定をする部分を下へもってくる
(後の方で実行する)以外に解決方法はないと思う。
>>309の言う通り、ローカルファイルに状態を記録しておくのが一番いいと思うけど。
0311nobodyさん
05/01/10 13:37:44ID:???\_____ ________________ _____/
∨ ∨
,,,,,,,,,,,,,,,,,,,, ,,,,,,,,,,,,,,,,,,,,
/": : : : : : : : \ /": : : : : : : : \
/-─-,,,_: : : : : : : : :\ /-─-,,,_: : : : : : : : :\
/ '''-,,,: : : : : : : :i / '''-,,,: : : : : : : :i
/、 /: : : : : : : : i /、 /: : : : : : : : i
r-、 ,,,,,,,,,,、 /: : : : : : : : : :i r-、 ,,,,,,,,,,、 /: : : : : : : : : :i
L_, , 、 \: : : : : : : : :i L_, , 、 \: : : : : : : : :i
/●) (●> |: :__,=-、: / /●) (●> |: :__,=-、: /
l イ '- |:/ tbノノ l イ '- |:/ tbノノ
l ,`-=-'\ `l ι';/ l ,`-=-'\ lι';/
ヽトェ-ェェ-:) -r' ヽトェ-ェェ-:) -r'
ヾ=-' / / ヾ=-' / /
____ヽ::::... / ::::| ____ヽ::::... / ::::|
/ ̄ ::::::::::::::l `──'''' :::| / ̄ ::::::::::::::l `──'''' :::|
0312226
05/01/10 17:28:49ID:???プログラムが逐次処理である以上避けられない問題ですか・・・
了解です。借りてるレン鯖でcronが使えるかどうか確認してみます。
アドバイスどうもです( ´∀`)ノ
0313nobodyさん
05/01/10 17:48:41ID:???自鯖のほうでバッチ回して、レン鯖にリクエストかければ?
自鯖がLinux系ならcrontab だし、Winならタスクとか、
DiCeみたいなアプリを適当に使用するのも吉。
0314226
05/01/10 18:45:41ID:???DiCEなら現在使っています。定期的にスクリプトを実行する機能が
あったんでしたっけ?それでレン鯖の特定のファイルを書き換えれるか
更新すればいいわけですね。
0315nobodyさん
05/01/10 19:15:16ID:???error_reporting(E_ALL); と記述しているのにエラーを表示してくれなくなりました。
それどころか、Parse Error 等の文法エラーまで表示してくれません。
おそらくインストール時の初期設定か何かの問題だとは思うのですが、
どの辺りを調整すれば良いのでしょうか?
0317313
05/01/10 19:51:49ID:???チト頭を使おう。
DiCeでIPアドレス検出方法を「指定したURLの表示内容から抽出」する。
レン鯖には、REMOTE_ADORESSを返すスクリプトを置いておく。
返すだけではなく、自鯖ステータスの更新処理も含めておく。
0318226
05/01/10 22:27:33ID:???なるほどそういう使い方もありましたか。
DiCEから呼び出すスクリプトはこのスレッドらしくPHPで実現したら
格好いいですね( ´∀`)。
たぶん大丈夫かと思いますが全く関係ない他人がそのスクリプトにアクセス
してしまったら自鯖ステータスも更新されてしまうので簡単な認証手段を
こうじた方が安心かもしれませんね。
0320nobodyさん
05/01/10 23:33:53ID:???ネギ
/7へ,、
,///スく
,ノ'彡/"´
,/,/'"
,/,/
,./,/
えr'"
ネギ
/7へ,、
,///スく
,ノ'彡/"´
,/,/'"
,/,/
,./,/
えr'"
ネギ
/7へ,、
,///スく
,ノ'彡/"´
,/,/'"
,/,/
,./,/
えr'"
0321nobodyさん
05/01/10 23:34:01ID:???/7へ,、
,///スく
,ノ'彡/"´
,/,/'"
,/,/
,./,/
えr'"
ネギ
/7へ,、
,///スく
,ノ'彡/"´
,/,/'"
,/,/
,./,/
えr'"
ネギ
/7へ,、
,///スく
,ノ'彡/"´
,/,/'"
,/,/
,./,/
えr'"
0322nobodyさん
05/01/12 19:00:38ID:???0323nobodyさん
05/01/12 19:25:14ID:???0325nobodyさん
05/01/12 22:23:19ID:???0326nobodyさん
05/01/12 22:53:37ID:???/7へ,、
,///スく
,ノ'彡/"´
,/,/'"
,/,/
,./,/
えr'"
0327nobodyさん
05/01/14 12:23:15ID:MY633uHv現在、メール送信ができているのですが、
受信したメールのタイトルだけが途中から文字化けしてしまいます。
(アウトルックは大丈夫でしたが、サンダーバードが駄目でした)
一応、下記のように文字エンコーディングを変換しています。
$enc_msg = mb_convert_encoding($message, 'JIS', 'EUC-JP');
$enc_sbj = mb_convert_encoding($subject, 'JIS', 'EUC-JP');
どのようにしたら、うまくできるのか
分かる方がいらっしゃいましたら、ご教授ください。
0328nobodyさん
05/01/14 12:27:03ID:???タイトルなどメールヘッダはmb_encode_mimeheader();
ttp://www.php.net/manual/ja/function.mb-encode-mimeheader.php
0329327
05/01/14 12:52:19ID:MY633uHvありがとうございます。
さっそく下記のようにして実行したのですが、もっと変になりました。。。
$enc_msg = mb_convert_encoding($message, 'JIS', 'EUC-JP');
$enc_sbj = mb_encode_mimeheader($subject, 'JIS', 'EUC-JP');
タイトルに文字コードが表示された感じに文字化けしました。。。汗
0332nobodyさん
05/01/14 16:10:28ID:???0333nobodyさん
05/01/14 16:11:27ID:???0335nobodyさん
05/01/14 16:13:54ID:???0336nobodyさん
05/01/14 16:46:18ID:???$subject を使っているのと、
そもそも PHP の mb_encode_mimeheader()、バグってると思う。
0338nobodyさん
05/01/14 20:32:24ID:???釣りじゃないの?
釣りだと思う・・・・
釣りであることを願う
釣りじゃないとしたら・・・・
0339nobodyさん
05/01/14 21:41:31ID:???0340nobodyさん
05/01/14 22:02:58ID:???馬鹿じゃねーの?
お前程度のチンカスが遭遇するようなバグが残ってるとでもおもうか?
自分の使い方が間違ってるのに、思うように動かなかったらバグだって?
笑わせんな。どっかの斜め右上を行く国の住人と思考回路が一緒だなw
0341nobodyさん
05/01/14 22:23:05ID:???チョン
0343nobodyさん
05/01/15 15:51:21ID:???面白い書き方を見つけたんだけど、標準入力を開くときに、
$tty = @fopen('\con', 'r');
if (!$tty) $tty = fopen('php://stdin', 'r');
こんな風に書いてる。一見すると2行目だけでいいと思うんですが、
このように書く理由はなんでしょうね?
あと、マニュアル見ても2行目の書き方は載ってるけど、1行目の
書き方は無い模様。でも Windows の cli 版で実行すると1行目で
ちゃんとオープンできるんですよね。
0344nobodyさん
05/01/15 20:44:48ID:???0345nobodyさん
05/01/16 00:45:46ID:QR0dYcnM<input type='checkbox' name='cu'>
<input type='submit' value='submit'>
</form>
チェックボックスを空でPOSTすると$_POST['cu']の空変数は
セットされないのですね。今日、はじめて気づいたよ^^;。
valueを付けたら良いのだろうか・・・やってみよ
0346345
05/01/16 00:47:54ID:???$_POST['cu']の空変数を取り出せるタグの書き方等はあるのでしょうか?
0348nobodyさん
05/01/16 00:56:15ID:???受け取る側で使う前に
$cu = isset($_POST['cu']) ? $_POST['cu'] : '';
とかやってみるといいんでは?
0349345
05/01/16 01:26:50ID:???checkboxに使う変数をhidden1つにカンマ区切りで纏めて送信する事にしました。
>>348
それがPOSTを受け取る側ではキーの部分が不特定になる構造なので空変数の
キーが必要だったのです。
0350nobodyさん
05/01/16 02:55:33ID:ChEzpbOrそういや、チェックボックスで漏れも痛い目にあったことあるな。
原因がわかるまで、4日くらい帰れなかった。
セッションとクッキーも絡めて使ってたから、一度チェック入れちゃうと
外してpostしてもチェック入った値が入るので大問題になった。
0352nobodyさん
05/01/16 05:17:32ID:K/l3JAK3アパッチ+postgres+phpと言うサイトで
$memberlist というテーブルがあります。
Create文
create table memberlist (
id int primary key,
name text,
hurikana text,
bag int8,
…
こんな感じのテーブルがあります。
php上で リストに何人いるか表示させたいのです。
nameの総数という感じでしょうか?
<TD> ******** </TD>
この****部分にどんな指定をすれば総数がでるでしょうか?
ダメもとでやっても出来るはずないので聞きに来ました。
これだけではデータが少ないかも知りませんがどなたかお願い出来ませんか?
ちなみにphpファイルを扱うのははじめてなのです。
0354nobodyさん
05/01/16 05:35:14ID:???1. SQLを調べる
2. phpとPostgreSQLの連携を調べる
0355nobodyさん
05/01/16 07:18:17ID:???RedirectをさせたときにGETじゃなくてPOSTにさせることってできますか?
やりたいことはRedirect先にリクエストパラメータを渡したいだけなんで
Location: http://server/path/script?param1=value1
とすればいいんですが、パラメータをURLに出したくないので、POSTでできないかなーと。
0358nobodyさん
05/01/16 08:16:42ID:???「リダイレクト先に指定のデータをPOSTするPHP(別にPHPである必要もないが)」へリダイレクトをかければ良いと思うが??
サーバーを跨がないのであれば、>>357が良いだろうな。
0361nobodyさん
05/01/16 16:53:56ID:???やりたいこととしては、function に渡した引数が
Perl のサブルーチンのように配列に入ってくれれば良いのですが。
呼び出し元では配列を使用せず、変数を列挙したいのです。
foo($a, $b, $c); // 3つとは限らない
function foo($array) {
// 引数を全て$arrayにセットしたい
}
呼び出し元から配列を渡せば良いことは承知ですが
何か上手い方法は無いでしょうか?
0363nobodyさん
05/01/16 16:58:35ID:???0364361
05/01/16 17:43:21ID:???$a, $b, $c, "aaa", "bbb" など、変数や固定値をまとめて渡したいのです。
これを配列やハッシュに代入してから関数に渡すと、
呼び出し元で配列への代入文を記述する必要がある上
ワーク配列を1つ作成しないといけません。
配列を渡したくない理由はその辺りです。
>>363
ありがとうございました。まさにこれです。
0365nobodyさん
05/01/16 18:33:57ID:???例えば student という変数をarrayで配列宣言して、セッション変数に指定した場合、
$_SESSION['student']['no'] といった感じで $student['no']を受け取るのかと思いましたが
駄目なようです。
0366nobodyさん
05/01/16 18:40:36ID:???言ってる意味がわからん
$_SESSION['student']['no'] と $student['no'] はどうみても
別物にしか見えない
0367nobodyさん
05/01/16 18:44:08ID:???要はセッションで配列変数を渡したいのです。
0369nobodyさん
05/01/16 18:47:06ID:???$_SESSION = $a;
print_r($_SESSION);
とか?
0370nobodyさん
05/01/16 18:47:22ID:???0371nobodyさん
05/01/16 18:49:39ID:???まぁ、前の$_SESSIONが消えてなくなるが;
$student = array();
$_SESSION = $student;
0372nobodyさん
05/01/16 18:54:16ID:???その後、 $student=array() で配列にています。
今後サーバーが変わって、PHPのバージョンが上がるために、今のうちに$_SESSIONで対応しておこうと
$_SESSION = $HTTP_SESSION_VARS
で $_SESSION にセッション変数を取り込んでいます。
0373nobodyさん
05/01/16 18:57:42ID:???0376nobodyさん
05/01/16 23:56:26ID:???PHPでwindowsを操作することってできますか?
例えばFormのボタンをおすとコピー(Ctrl+C)などやりたい
0379nobodyさん
05/01/17 00:12:44ID:???じゃあ何だとできますか?
0380nobodyさん
05/01/17 00:15:23ID:???0382nobodyさん
05/01/17 09:05:14ID:???ありがとう!!
IE限定だけどできましたっ
ちなみに別に開いてる窓をPrintScreenとかできないでしょうか?
0384nobodyさん
05/01/17 09:48:42ID:???0385nobodyさん
05/01/17 09:51:39ID:???0386軟式PHP
05/01/18 12:44:00ID:???スレ違いだけど↓面白かった。
ttp://www.blueshoes.org/en/developer/syntax_exam/
0387nobodyさん
05/01/18 20:17:14ID:???のですが、定数が設定されていないようです。
PHPマニュアルによると、定数のスコープはグローバルのはずなのですが、
classや、extendsを使うとダメとかあるのでしょうか?
設定すれば、どこからでも定数を利用できると思っていたのですが違うのでしょうか?
よろしくお願いします。
0388nobodyさん
05/01/18 20:47:38ID:???【PHP】Smarty【Template】
http://pc5.2ch.net/test/read.cgi/php/1047225437/
0389nobodyさん
05/01/18 20:56:05ID:???定数の上書きは出来ない
つまり定数が設定出来ていない
smarty以前の問題
っていうか定数が何か理解してるのだろうか
0390387
05/01/18 21:47:37ID:???smartyだけではなく、違うphpプログラムでも同じく定数が読めません。
>>389
ちょっと間違った書き方をしてしまいました。
定数の上書きはしていません。定数は書き換えられないということは
一応わかっていて、プログラムの最初の方で一度、defineで指定?設定?
しただけです。
それをrequireしたり、classになっているファイルから使おうとしても
使えなかったということです。
あり得るのでしょうか?
0391nobodyさん
05/01/18 21:57:10ID:???0393nobodyさん
05/01/18 22:02:24ID:???<?
class Cparent {
var $data;
function show(){
echo $this->data;
}
}
class Cchild extends Cparent{
function set(){
$this->data = DATA;
}
}
define("DATA",'test');
$obj = new Cchild();
$obj->set();
$obj->show();
?>
--
こういうこと?
結果は正しくdefineされてる。
0394387
05/01/18 22:28:58ID:???ありがとうございます。
複雑なプログラムの中でなっているので、正確にどういう状態っていうのを
言うのが大変です。
ちょっと今コードを見たりデバッグしたりして調べています。
ちなみに
define("DATA",'test');
print "debug: DATA";
っていうのは、無理なんですよね?
print "debug:" . DATA;
ってやるしかない。
0395387
05/01/18 22:54:47ID:???あと、``の中で使おうとしていたのもありました。
この場合は、一回変数に入れるって方法で回避できそうです。
今日は時間がもうないので、明日までにコードをちゃんと見ておきます。
0397nobodyさん
05/01/18 23:27:35ID:???class内や継承しようと問題なく利用できる。 ということでFA。
0398nobodyさん
05/01/19 16:56:17ID:???元になるxoopsとかWikiみたいなソフトがなにかあるのでしょうか?
全くのオリジナルなんですか?
0399nobodyさん
05/01/19 17:02:11ID:???0400nobodyさん
05/01/19 17:08:41ID:???0401nobodyさん
05/01/19 17:22:49ID:???すみません。宣伝じゃなくほんとに質問なのですが、
アドレスを書き込んでもいいものなのでしょうか
会員登録ユーザーにRSSのマイブックマーク機能を提供し
RSSアンテナと、サイトの更新未読既読の自動表示など
盛りだくさんなのです。
0403nobodyさん
05/01/19 18:09:01ID:???すぐには来ないでしょうし、いただけたらラッキーぐらいの気持ちですが、
(先方は私に返事をする義理はないので、という意味で)
少しでも早く情報を得て勉強してサイト作りに取り掛かりたかったので
こちらにも聞いてみました。
0405nobodyさん
05/01/19 18:51:09ID:???0406nobodyさん
05/01/19 21:25:27ID:???作ったメモリ領域にC言語で作ったプログラムから、
アクセスしてデータ取得をしたいのですが、
可能なんですか?
Linux系のヒント(可能であるらしい情報)は見つかるのですが、
Windows系での情報がなかなか無くて困っています。
0409nobodyさん
05/01/21 09:58:42ID:???$_POSTのデータを受け取ってるんですけども、
nameの文字列に.(ピリオド)があると、_に変換されてしまいます。
foreach( $_POST AS $name => $value ){
echo $name."=".$value;
}
こんな風に表示してみたんですけど、ピリオドはアンダーバーに変換されるものなのですか?
ブラウザはIEで、POSTしています。
PHPのバージョンは4.3.9でした。
0410nobodyさん
05/01/21 10:11:14ID:???ttp://www.php.net/manual/ja/language.variables.external.php →外部変数名のドット
0411nobodyさん
05/01/21 10:30:32ID:???そこのマニュアルに気づきませんでした。。。すいません。
それで、みてみたらピリオドはアンダーバーに変換されてしまうって書いてあるんですが、
ピリオドのままうけとれないのですか?
0413nobodyさん
05/01/21 10:43:33ID:???どうしてもやりたきゃ、main/php_variables.c に
/* ensure that we don't have spaces or dots in the variable name (not binary safe) */
って行があるからそこを書き換えれば出来ると思いますよ。
<input type="image" name="a">なんかも、座標値が a.x -> a_x になって渡されます。
spaceも_ になるのか。これは知らんかった。
0414nobodyさん
05/01/21 13:10:43ID:???0416nobodyさん
05/01/21 14:47:33ID:???>>413の言うとおりにすれば可能と思われ
それとも、なぜ現状ではピリオド付きでは
受け取れないのか理解できないとでも?
0417nobodyさん
05/01/21 15:07:12ID:???具体的なPHPのコードに関する質問はここ。
それ以外、コード以前の質問は↓
【PHP】くだらねぇ質問はここに書き込みやがれpart2
http://pc5.2ch.net/test/read.cgi/php/1105218084/
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆
★ ★
☆ 新規質問は名前欄・メール欄を空にして行え ☆
★ ★
☆ 質問者が返信する際は、名前欄に「最初に質問したレス番号」を入れろ ☆
★ ★
☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆
0418軟式PHP
05/01/21 15:41:16ID:???0419nobodyさん
05/01/21 15:52:54ID:6l6oJL9k1つでもあれば別のプログラムを実行する、
というスクリプトは実現可?
0421nobodyさん
05/01/21 15:56:14ID:???0424nobodyさん
05/01/21 21:03:41ID:???質問ばかりしか無かったってことか?
0425nobodyさん
05/01/21 22:40:18ID:???0426nobodyさん
05/01/21 23:10:43ID:EgTTTyzS直してください。
0430nobodyさん
05/01/22 01:53:06ID:???0431nobodyさん
05/01/22 01:54:35ID:???0432nobodyさん
05/01/22 02:53:34ID:???なんで本人がこんなとこで公表するんだよ
0433nobodyさん
05/01/22 07:19:46ID:???0434nobodyさん
05/01/22 12:39:37ID:Drlw2rEk1つ目の画面でsession_startして2つ目の画面で設定して
10個目の画面で参照しても大丈夫?
0436nobodyさん
05/01/22 16:04:36ID:JnEFpsgm他人がつくったソースを参考として拝見して、勉強したいのですが、
「このソースを参考にしたらいい」っていうおすすめあります?
なお、速さ重視より保守性重視なほうがいいです。
ふとおもったんですが、pearとかどうなのかな???
0438nobodyさん
05/01/22 17:04:02ID:???リダイレクトができません。
↓これであってますよね?
header("Location : http://192.168.xxx.xxx/xxxx/xxx.php");
何か他で、設定とかいるんですか?
0442nobodyさん
05/01/22 17:43:20ID:???・自分で考える
・他人に聞かない
・グーグル
0444nobodyさん
05/01/22 18:47:46ID:???だめだった。
<?php
header("Location : http://XXXXXX/XXXX/XXX.php");
?>
これだけの実験なんだけど動かない。
続きは、くだらねえ質問スレ逝ってきます。
すみませんでした。
0445nobodyさん
05/01/22 19:53:24ID:7Lald5AzRDBは使いたくないんですが。
0447nobodyさん
05/01/22 20:23:30ID:???0449445
05/01/22 22:31:44ID:TvWo965lここは質問スレ!!
答えたくないなら黙っとけ。
答えられなくても黙っとけ。
関係ないことは書くな!!
おまえのはただのスレ汚しだ。
0451445
05/01/22 22:42:48ID:TvWo965l何がすれ違いなんだ?
448の馬鹿にこのスレのルールを教えてやっているのに。
0454nobodyさん
05/01/23 01:15:36ID:???よくわからんが、答えるぞw
間違ってたらゆるしてくれ。
文字列をデリミタで区切ってつかう。
では駄目なのか?
だめなら誰かかわりに答えてやってくれ。
0456nobodyさん
05/01/23 02:29:54ID:???PHP5のget_headers();しかないですか?
php4でリモートファイルのHTTPヘッダ取得が出来る方法があったら
教えてください。
0458nobodyさん
05/01/23 12:44:26ID:???スクリプト実行中にPHP以外の動作によって情報に変更が入った場合には
どうなるのでしょうか?
キャッシュした情報のみで処理されてるのかなぁ
0459nobodyさん
05/01/23 12:59:11ID:v8YGggq/どうしてココのスレは性格の悪い人が多いのですか?
0461459
05/01/23 13:14:55ID:v8YGggq/解決しました。ありがとう御座います。
0462nobodyさん
05/01/23 14:24:03ID:???http://jp.php.net/manual/ja/function.filemtime.php
http://jp.php.net/manual/ja/function.clearstatcache.php
PHPがキャッシュするので、PHP以外、場合によっては
別のPHPコードの実行によっても差異が生じる可能性がある。
あるPHPのコードと別のPHPのコードが、"同じPHP"によって
実行されるとは限らんし、"別のPHP"同士でキャッシュを
共有してる訳でもないから。
必要ならOSのロック機構を使用できないか検討する。
0463nobodyさん
05/01/23 22:03:29ID:zrTgGnqoしないのですが私の環境だけでしょうか?
<?php
class count
{
function __construct()
{
session_start();
if(!isset($_SESSION['count']))
$_SESSION['count']=0;
}
function __destruct()
{
echo $_SESSION['count'];
$_SESSION['count']++;
}
}
$obj=new count;
//ここに $_SESSION['count']++; を移動させると正常に動作
?>
0464nobodyさん
05/01/23 22:14:30ID:???今のところ明示的に参照を0にする必要がある。
0465463
05/01/23 22:22:31ID:zrTgGnqoなるほど。レスありがとうございます。
友人のlinux版では正常に動作したのですがwindows版だと
動作が違うのですかね。^^;
0466nobodyさん
05/01/23 22:49:39ID:???代入すれば自動的にsession_startするみたいだけど。
linuxの環境では自動スタートの設定になっていたとか?
0467nobodyさん
05/01/23 23:12:58ID:???うちのWoodyも5.0.3入れてるがWinと同じ動作。
その友人ので動いたとすれば、どこかで参照カウンタがゼロになったかのどちらかだと思う。
あるいはCVS版では既に修正されているかも。
とりあえずはregister_shutdown_func〜を使うか、unsetでオブジェクトを
破棄してデストラクトをコールさせるしかない。
0469nobodyさん
05/01/24 00:29:55ID:???clearstatcache()
filemtime()関数の説明にも書いてある。
>>459
>>458みたいに1分でもマニュアル読めば分かるような事を聞く奴ばかりだと、
段々腹立ってくるから。
0471nobodyさん
05/01/24 01:08:27ID:eTYF+FRLサイトの場所、わからない;;
0475nobodyさん
05/01/24 01:10:48ID:???0476nobodyさん
05/01/24 01:21:12ID:???0477463
05/01/24 01:30:08ID:9W2iCmX2__construct() 内でsession_startしています。^^;
0479nobodyさん
05/01/24 03:33:48ID:???{}の閉じ忘れ、セミコロンのつけ忘れなど原因を調べてみても原因が分からず。
諦めモードで、試しにTabインデントをすべて削除してみたら何故か動いた。
こんな不思議なことが過去に何回かあったんだが、喪前らはどうよ?
0481nobodyさん
05/01/24 03:47:58ID:???全角が含まれているかどうかもハイライト表示でちゃんとチェックした。
置換で \n\t を \n に置換しただけで何故か動いたから、その可能性はない。
0482nobodyさん
05/01/24 03:52:14ID:???0485479
05/01/24 04:29:36ID:???インデント終了宣言部分の行頭に[Tab]が含まれていたのが原因ですた。
[Tab]$str = <<<EOD
[Tab][Tab]Hello, World!
[Tab]EOD;
吊ってきます・・・∧||∧
0486nobodyさん
05/01/24 04:55:40ID:???○ ヒアドキュ メント構文
オイラの環境 php-4.3.5@win2kだと、その類のミスは
「parse error, unexpected T_SL in 〜」と表示されるので、
マニュアルのパーサトークンのページの情報から
「<<」が不適切だと分かる。parse error行前後を見ても気づくし。
(その前にヒアドキュメントでミスなんてしないけどね;p)
0487nobodyさん
05/01/24 06:48:22ID:???print <<<EOT
<a href="javascript:fnc_a('----')";>
EOT;
fnc_a()はjavascriptの関数
上記のような文を書きたいのですが、ヒアドキュメントを使えば
そのままでいいのですが、EOTを禁止されてしまいました。(理由は不明です)
他にどのように書けばいいでしょうか?
0488nobodyさん
05/01/24 07:20:08ID:???>EOTを禁止されてしまいました
EOTを禁止ってなんだ
>他にどのように書けばいいでしょうか?
普通にechoするなりphp構文の外に出すなりすればいいだろ?
俺には何が分からんのかさっぱり分からん
0490nobodyさん
05/01/24 07:57:23ID:???0491nobodyさん
05/01/24 08:06:38ID:???print <<<_UNKO_
<a href="javascript:fnc_a('----')";>
_UNKO_;
これでバッチリ。
0492nobodyさん
05/01/24 11:32:14ID:???error_reporting = E_ALL & ~E_NOTICE
の設定でプログラムを書いてきたのですが、今後
error_reporting = E_ALL
にして書いていきたいと思っています。
ウェブフォームから入力されてくる値は、
$_REQUEST['param']
といった感じで取得するわけですが、いきなり参照するとwarningが出ます。
一切のwarningを出さないようにするためには、
例えばプログラムの先頭で、
if (isset($_REQUEST['param'])) $param = $_REQUEST['param'];
のようなかたちで一旦すべて$param形式の変数に代入して、
以下のプログラムでは$paramを参照等するようにすればOKでしょうか?
すでにE_ALLでこの点に気をつけて書かれている方がいらっしゃいましたら、
ぜひノウハウを教えていただければ幸いです。
0493nobodyさん
05/01/24 12:02:31ID:gh8S2KoaSSL非経由(http)からのアクセスの場合で
ifを使って処理を分けたいのですが、
この場合、どうすれば判断できるでしょうか?
環境変数ってやつを使うっぽいのですが・・・
0495nobodyさん
05/01/24 14:05:08ID:???おれは
if (!isset($_REQUEST['param'])) $_REQUEST['param'] = "";
と空文字をセットしたり
if (empty($_REQUEST['param'])) $_REQUEST['param'] = "初期値";
初期値をセットしたりしてる
0496nobodyさん
05/01/24 14:34:57ID:???なるほど、それだとelseまで書かなくて済みますね。
実は$_REQUEST等はread onlyかと思ってました。
(書き換えて使ったことがなかったので)
これまで、register globalがonからoffに変わった頃からの名残で、
プログラムの先頭ですべて
$param = $_REQUEST['param'];
のように代入していました。
(また$paramをquoteした場合は$quoted_paramに代入)
オリジナル値を操作しないというのは今後も続けようと思いますが、
これまでの先頭のさらに前に処理を追加しようと思います。
ありがとうございました。
0497nobodyさん
05/01/24 14:37:06ID:???現在HTML部に↓のような記述をしているのですが
<input type="checkbox" name="ckbox[0]" value="1" checked>お酒
<input type="checkbox" name="ckbox[1]" value="2">禁煙席
<input type="checkbox" name="ckbox[2]" value="3">送迎
$checkbox[0] = $_POST["ckbox[0]"]
これを[]を用いないで(配列を用いないで)FORMの値を取得する方法はありますか?
0498nobodyさん
05/01/24 14:37:30ID:???どうでも良い事だが、俺は条件式の書き方が好き
$hoge = (条件) ? 1 : 0; ってやつね。
{}でくくってないif文はなんとなく嫌。
0499nobodyさん
05/01/24 14:40:38ID:???>>497
何で配列を使わないのかが分からないが…
<input type="checkbox" name="sake" value="1" checked>お酒
<input type="checkbox" name="kin" value="2">禁煙席
<input type="checkbox" name="sou" value="3">送迎
とでもして、$_POST['sake'] $_POST['kin'] $_POST['sou'] 調べれば終わりだと思うが??
何をしたいのかよく分からん。
0500nobodyさん
05/01/24 14:42:11ID:???ゴメン。チト間違えた。
<input type="checkbox" name="sake" value="on" checked>お酒
<input type="checkbox" name="kin" value="on">禁煙席
<input type="checkbox" name="sou" value="on">送迎
とでもして、$_POST['sake'] $_POST['kin'] $_POST['sou'] 調べれば終わりだと思うが??
に訂正
0501nobodyさん
05/01/24 15:07:35ID:???質問のしかたが悪かったかもしれません・・・。
例えば、
好きな観光地と言う複数選択で
<input type="checkbox" name="kankouti" value="京都">京都
<input type="checkbox" name="kankouti" value="奈良">奈良
<input type="checkbox" name="kankouti" value="宮島">宮島
<input type="checkbox" name="kankouti" value="秩父">秩父
<input type="checkbox" name="kankouti" value="箱根">箱根
こんな感じのHTMLで
奈良と宮島と秩父にチェックを入れた場合
出力で
「奈良,宮島,秩父」という感じにまとめたいのですが、この場合のプログラムはどのように書いたらよいのか
分かりますか?
0503nobodyさん
05/01/24 15:23:02ID:???試してみます
0504nobodyさん
05/01/24 15:24:13ID:???全部name[]としておけば、チェックされたものが
name[0],name[1],...に入ってきたと思いますが。
0505二級 ◆Y7FjQgxfdo
05/01/24 15:30:37ID:???$aの中身が配列であるのか、配列ではないのかを調べる関数ってあります?
0508497
05/01/24 15:36:40ID:???配列を使わない意味はなかったかもしれません^^;
>>506
$_POST["ckbox[0]"] でやってだめだったんでハマってたんですよ。
どうやら解決しそうです。ありがとうございます。
0509nobodyさん
05/01/24 15:44:08ID:???$ckbox = $_POST["ckbox"];
としてから
$chbox[0]
でもアクセスできるよ。
0510nobodyさん
05/01/24 15:58:51ID:???$chbox[0]
じゃなくて
$ckbox[0]
です。
0513nobodyさん
05/01/24 17:23:40ID:???$flag=is_array($a);
これで$flagにTRUEが入ってれば$aは関数として取り扱われていることがわかります。
普通の変数だったらFALSEが返ってきます。
0514軟式PHP
05/01/24 17:47:11ID:???0515nobodyさん
05/01/24 17:53:11ID:???いいんじゃない?
>>513こういう、お節介モノが、
優秀な技術者の芽の一部を摘み取っていくんだろうけど、
所詮、>>505みたいに「調べた」といってるわりに、
調べていない事がバレバレの教えて君なら、どう転んでも、
成長は見込めないんだから。
0517nobodyさん
05/01/24 20:11:00ID:???0518nobodyさん
05/01/24 21:32:40ID:???0519nobodyさん
05/01/24 23:35:32ID:???んな訳ないか
0520nobodyさん
05/01/25 12:33:20ID:???execを使用して実行してるんですが、
ブラウザでその処理を実行するリンクを2度押しとかしちゃうと、
ハングしちゃってるのか、そこで処理が止まったままになってしまうのですが、
この場合、どう対処してあげればいいのでしょうか?
execで実行中何度も実行するとまずいのですか・・・?
0521nobodyさん
05/01/25 16:49:07ID:???・グーグルですべて解決
・回答は3ヶ月待ち
・自分で考えること
・自分で調べること
・人に頼らないこと
0523nobodyさん
05/01/25 18:04:22ID:???0524nobodyさん
05/01/26 16:02:03ID:Xb/tFKyN入力された値が、ある配列の中の文字列のどれかに一致すれば、正という処理
をさせたいのですが、どのように書くのがスマートでしょうか?
簡単なのだとこんなのを考えましたが、プロの方ならもっと簡単に書けそうです。
6行もかかってしまいます。
$clean_value = false;
foreach($array as $key){
if($input == $key){
$clean_value = true;
}
}
0525軟式PHP
05/01/26 16:03:01ID:???0526nobodyさん
05/01/26 16:15:02ID:???サイト構築に際して重要なのは「構造」か!?「内容」か!?はたまた「理念」か!?
お馬鹿なWEB職人達の寒い議論は今日も止まらない。
ものすごろく頭の悪い発言をしてくさい5
http://pc5.2ch.net/test/read.cgi/hp/1106209097/105-
0527524
05/01/26 17:10:59ID:???Thx!!phpって楽ですねー。
良く見たら送られてくるデータが配列だったので、以下のようになりました。
結局こんなにコードを書いてしまいましたが、これももっとスマートに書け
ますでしょうか?
$invalid_input = false;
if(isset($input_array)){
foreach($input_array as $value){
if(!in_array($value,$array)){
print "Error!";
$invalid_input = true;
}
}
}
if($invalid_input){
$input_array = array();
}else{
$sanitized_array = $input_array;
}
0528nobodyさん
05/01/26 17:51:15ID:???根本的に使い方がおかしい
マニュアルぐらい嫁
http://jp2.php.net/manual/ja/function.in-array.php
0529524
05/01/26 19:27:06ID:???ありがとうございます。
あのマニュアルはいつも読むのですが、いつもわからないです...
あれでみなさん理解できているのですかねぇ。
needleの方の配列が、
1. どれかだけのマッチする場合だけ、TRUEを返すのか?
2. 全てマッチする場合だけ、TRUEを返すのか?
があれだけじゃわからないような...理解力不足でしょうか?
使い方もよくわからないです。
両方配列にしたらマッチしなかったので、>>527のようなコーディングを
してみました。
逆引大全も見ていましたが、配列が使えるとは書いてなかったです...
マニュアルの後の投稿されている英語のサンプルをちょっと読んでみます。
0532nobodyさん
05/01/26 20:00:02ID:???0534nobodyさん
05/01/26 20:15:21ID:???ユーザーが減って行くんだよね・・・
0536nobodyさん
05/01/26 20:20:40ID:???0537nobodyさん
05/01/26 20:21:32ID:???0538nobodyさん
05/01/26 20:40:38ID:5qrlpz1Z// カウンタファイル名の設定
$counterfile = "counter.dat";
// ファイルオープン。未作成の場合は新規作成。
$mode = file_exists($counterfile) ? "r+" : "w";
本に載ってたアクセス・カウンタの冒頭からのスクリプトなんですが、
$modeの行の後半の?と:の意味が解りません。他の本を
見てもネットで検索しても解説しているところを見つけられな
かったのですが、これはどういう意味があるんでしょうか?
0540nobodyさん
05/01/26 21:21:27ID:???$foo = $flag ? '1' : '2';
は
if($flag) $foo = '1';
else $foo = '2';
と一緒ってことだよ。
使い慣れるとめちゃ使い易いからガンバレ。
0542nobodyさん
05/01/26 21:56:15ID:???0543nobodyさん
05/01/26 23:14:44ID:???0544nobodyさん
05/01/26 23:57:38ID:???0545nobodyさん
05/01/27 00:15:56ID:???0546nobodyさん
05/01/27 00:43:43ID:???何組?
言って?
何組?
0547nobodyさん
05/01/27 01:15:30ID:???0548nobodyさん
05/01/27 01:17:44ID:???0549nobodyさん
05/01/27 01:22:17ID:???0550nobodyさん
05/01/27 09:12:00ID:???0551nobodyさん
05/01/27 11:31:30ID:???の処理速度の検証をされた方はいらっしゃいません
でしょうか?
何となく気になった・・・自分でやれよ!!笑
0552nobodyさん
05/01/27 11:41:06ID:???0553nobodyさん
05/01/27 12:22:11ID:9YUdbfEg0555nobodyさん
05/01/27 12:33:10ID:D/dtmk8n/ ,r ̄\!!;へ
/〃/ 、 , ;i
i,__ i ‐=・ァj,ir=・゙)
lk i.l /',!゙i\ i
゙iヾ,. ,..-ニ_ /
Y ト、 ト-:=┘i < 敢えて言おう!PHPはCGI言語のチャンピオンだと!
l ! \__j'.l
」-ゝr―‐==;十i _,r--――、
.ト、.j.!レ' ̄三! >ーr‐r‐r‐< _,.r<"「 l_____
____,..r--r=ヾヽj,r―'"≦__ ̄ ̄r―'"\\ \r",.-、, \
∧ ト-'‐'"三へ>ト-‐'"~ ゙i / \\(_.人 ヽ._ ヽ
レ'へ._ノi 「 \ ゙l //./",「 ̄/ / / ヽ-ゝ. \ /
レ'// .l l ! ! i/./ ./ / / / ,( \ ノハ
レ'/ .! ! i ゙'!  ̄ ∠, / ヽ._ ,ター '",〈 !
/゙" ,r'" .l‐=ニ゙,「l ! 「 ̄!. /./ ー==' .l.ト、. -‐'"/!.ト,
/ .ト- ゙ー―┘!└‐'='-‐" ヽ._/ 、 トミ、 ̄ ̄._ノノli\
0556T
05/01/27 12:35:22ID:oDNRzBsVGETメソッドによってURLにつなげて変数を他のページに渡す
場合、変数が丸見えになってしまうのを防ぐために、urlencode
などが使えるとのことですが、この関数では英数字以外の文字しか
エンコードしないのですよね?
となると、変数名および変数の値自体が全て英語や数字の場合、
urlencodeでエンコードしても意味がないと思うのですが、
英数字をGETで渡す必要があるケースで、セキュリティ上これを
丸見えにしないですむようなエンコードの関数、および方法は
ないでしょうか?
初心者のため、ご教授よろしくお願いします!
0558nobodyさん
05/01/27 12:40:18ID:???んでその「セキュリティ上の理由」とやらを聞かせてもらおうか。
0559nobodyさん
05/01/27 12:52:42ID:???>変数が丸見えになってしまうのを防ぐために、urlencode
その認識に大きな誤りがあることを誰か指摘してあげてください。
0560T
05/01/27 12:56:41ID:oDNRzBsVそういう理由ではないんでしょうか?
0562nobodyさん
05/01/27 13:31:27ID:???インターネットを使う上での約束事にRFCというものがあって、
その中のRFC 2396 (3986でobsoleteされた?) に URL(URI)の事が書かれている。
URLに使える文字や使えない文字を含めたい時の扱い方も定義されていて、
それに基づいて作られたのがurlencode関数ってことになる。
で、>>556の質問については、セッションやcookieを使ったらいいんじゃないかな。
0564nobodyさん
05/01/27 14:35:46ID:???ユーザに変数名を知られても問題無い様な仕組みにしないといけないんじゃないかな?
0567nobodyさん
05/01/27 17:26:17ID:???いんや〜〜・・・
入力フォームのmethodをgetにしないといけないんだろ。
(そんな状況は旧J-PHONE向けにしか思い当たらんが…)
ん?そもそも旧J-PHONE向けのサイトだったら、
引数付きのURLなんか見れないんだから、意味不明か…
「GETしか駄目」な状況が見えない…
0569nobodyさん
05/01/27 18:04:06ID:???0571nobodyさん
05/01/27 20:08:34ID:???ごっちゃごちゃぁ〜〜〜〜〜
0572538
05/01/27 21:23:09ID:???>>539 3項演算子っていうのか。何で本に載ってないんだろう。
オライリーの本なら載ってんのかなぁ。
>>540 丁寧にありがと。よく解ったっす。
>>541 そうだす。
0573T
05/01/27 22:03:03ID:oDNRzBsV一晩寝て起きたら誰か私のフリして書き込まれてますね。
563は私ではありませんので。
561さん、562さん、564さんをはじめコメントいただいた方、
ご親切にどうもありがとうございました!!
なるほどです。勉強になりました。
(ちなみにほんもののTです。)
0574nobody
05/01/27 23:32:06ID:???base64_encode()
base64_decode()
とかどお?
ttp://php.s3.to/man/function.base64-encode.html
0575nobodyさん
05/01/28 11:18:07ID:7CVjKDTnPHPで、ある文字列に特定の文字が何個入っているか
調べてくれる関数ってありませんでしょうか?
0576nobodyさん
05/01/28 11:25:30ID:???0577513
05/01/28 14:07:03ID:???>これで$flagにTRUEが入ってれば$aは関数として取り扱われていることがわかります。
× $aは関数として
○ $aは配列として
訂正してお詫び申し上げます。
0578463
05/01/28 16:43:24ID:6uyBWJ8D0579nobodyさん
05/01/28 16:43:45ID:???0580nobodyさん
05/01/28 16:49:11ID:???0581nobodyさん
05/01/28 21:22:22ID:ox6Cyfvrremote_hostは出せないんだろうか…(addrの項目はある)
0583nobodyさん
05/01/29 12:21:24ID:???0584575
05/01/29 15:23:09ID:uZIEcNwj0585nobodyさん
05/01/31 08:59:00ID:???セキュリティ面でエラーを表示させない様にして、display_errors = Offとした
時に気になったのでエロイ人、教えてください。
スクリプトを書くときは特定の条件でスクリプト内でini_set()する予定です。
0586nobodyさん
05/01/31 09:22:23ID:yrnZkyfn自分で調べられないような特別な事がお前に起きてるわけ?
0588nobodyさん
05/01/31 12:06:18ID:qVyRdTkmググっても見つかりませんでした・・・。
0589nobodyさん
05/01/31 12:11:32ID:???MMCacheからforkしたeAcceleratorがあるよ。
http://eaccelerator.sourceforge.net/Home
当方では特に問題なく動いてます。
Apache 1.3.33
PHP 4.3.10
Solaris 8
0590nobodyさん
05/01/31 12:15:46ID:YTm3MD79これってどういった仕組みになっているんでしょうか。
またPHP4だけで実現可能でしょうか。教えてください。
0591nobodyさん
05/01/31 12:23:28ID:qVyRdTkmありがとうございます。
早速試してみます。
0593nobodyさん
05/01/31 12:42:51ID:???やりたい事を分割してみていくとこうなる。
1. ユーザがページを見る
2. ページ内のメールアドレス向けにメールを送信する
3. PHPを使ってメールを受信する
4. 3.のデータを元に登録する。
1,2はHTMLの話なので略。
3.は複数の手段が考えられるので後述
4.は分かるだろうから略。
3-1. 外部からメールを直接受信する(受信専用メールサーバをPHPで実装)
-> 無茶なので考え直す
3-2. PHPがメールソフト(MUA)の振りをしてメールデータを取得
-> やり方としては素直。ipop関数あたりを参照。トリガーをどうするか要考慮。
3-2. 外部SMTPサーバ->自持SMTP->MDA->鯖内メールデータ(ファイル)
MDAの処理中に抜き出す(procmail、forward等) -> 場合によっては使えそう
3-3. 3-2の鯖内メールデータに直接アクセスする
-> 3-1同様強引だが、最後の手段としてはありえそう。
3-4. そろそろ飽きてきた。条件が揃えばPHPで出来るって事は分かったべ?
0594nobodyさん
05/01/31 12:42:56ID:???これだと403が直ぐに返ってしまいます。これを如何にも
サーバーが存在しないように偽装出来ますでしょうか?。
0595594
05/01/31 12:50:31ID:???0596590
05/01/31 13:03:27ID:???非常に丁寧な回答ありがとうございました。
空メール受信用のアドレスを用意してPHPで受信し、登録する方法にします。
トリガーはメールマガジン管理画面へのアクセスに。
参考になりました。
0597nobodyさん
05/01/31 13:26:21ID:???.forwardとか使って、POPサーバへの受信時に
PHPスクリプトをキックする方が楽だしすっきりすると思う。
(3-2の中の自持SMTPはレンタル鯖でも条件があえばできる)
0598nobodyさん
05/01/31 13:43:57ID:???現時点では設定ディレクティブのプリフィックスがmmcacheからeaccelerator
に変わったくらいしか違いは見受けられないけど、実質的に開発を引き継いで
くれたことには意義があると思う。
ロードマップが未掲載なので先は不明。
http://eaccelerator.net/RoadMapUk
0599nobodyさん
05/01/31 14:22:57ID:???0600nobodyさん
05/01/31 16:23:59ID:8FwNP7ph知人の紹介してくれそうな会社がPHP+Solarisを使ってウェブ構築をやっています。
わたしはC/C++/Ruby/VB6と歩いてきて使いこなせる力は
VB6 >> C++/C >> Ruby
です。
SQLは本当に基本的なところだけ抑えていてOracleを使って開発していました。
言語的に好きなのはC++が一番好きです。
好きとかだけで食っていけないのも世の常なので、皆さんに質問したいのですが。
PHPについて
開発速度/効率/再利用性/どの程度分担作業できるか/開発環境(IDE)はどの程度充実しているか
将来性/言語的メリット・デメリット
等について実際に現場で働いてる方の意見をいただきたいのです。
よろしくお願いします。
0601nobodyさん
05/01/31 16:47:40ID:???eAcceleratorってrequireとかしたファイルはキャッシュしてないのだろうか、
なんかキャッシュファイルがMMCacheより小さい気がするんだけど。
ただの圧縮関係なのだろうか。
0602nobodyさん
05/01/31 17:11:10ID:jB8MTmrN実際システムではどのような流れで認証を行っているのでしょうか?
私はとりあえず、IDとパスワードをチェックして、両方とも一致したら
IDとパスワードをセッション変数に格納し、
それ以降のページでは最初にセッション変数のIDとパスワードを調べ、
そのつどIDとパスワードを保存してあるファイルから調べるという方法を
とろうかと思っています。
それとも、IDとパスワードが一致した時点で、認証済みを判断する変数をひとつ用意して
それの値を1にし、それでそのつど判定するのでしょうか?
0603nobodyさん
05/01/31 17:11:43ID:???> 開発速度/効率/再利用性/どの程度分担作業できるか/開発環境(IDE)はどの程度充実しているか
> 将来性/言語的メリット・デメリット
最初から順番に
-人によるけど遅くはない
-人によるけど悪くはない
-設計によるPEARとかmojaviとか使えばそれなりに。
-デザイナとプログラマで分けたいなら、可能。複数プログラマでの作業分担は普通に出来る。
-IDEなんて無くても開発できる。phpEclipseが良いらしい。
-知らないけど、先行きは暗くはない。
-使用人口が多いので情報が豊富。・ノイズも多い。
#ぷーは余計なこと考えずにまず働け
0604nobodyさん
05/01/31 17:24:51ID:???imgタグを抜き出したいのですが、そのイメージをアンカータグが囲っている場合、
そのアンカータグごと抜き出したいのです。
その際マッチの順番は変えたくないので、一回の処理で終わらせる方法はないでしょうか?
preg_match_all('/<a .*?><img (.*?)><\/a>|<img (.*?)>/i', $body, $match);
正規表現が余り得意でないので、書き方さえ間違っているかもしれないですが、分かる方よろしくお願いします。
0607nobodyさん
05/01/31 17:57:27ID:???ってことを聞きたいのか?
アンカータグとイメージタグの間に空白文字\s*は入れておいたほうがいいかもなぁー。
0608604
05/01/31 18:00:59ID:???一回で抜きたいのですが、アンカータグ付きの正規表現しかマッチしていないようなのです。
もしかしてor文の書き方が間違っているのかなぁ?と思って聞いてみたのですが。
0609600
05/01/31 18:09:32ID:???ありがとうございます。
キーワードを頼りにいろいろ見てましたが悪くないなと感じました。
> #ぷーは余計なこと考えずにまず働け
ごもっともorz
0610nobodyさん
05/01/31 18:11:35ID:???アンカー無しも抜けそうな気がするが、PCREライブラリによって違うのかな?
/(<a .*?><img (.*?)><\/a>)|(<img (.*?)>)/i
という感じで全体を()で括ってみるとか。
0611604
05/01/31 18:21:53ID:???/(<a .*?><img .*?><\/a>)|(<img .*?>)/i
こう書いたら$matchに返ってきた配列は別でしたが、imgのみも抜けました。
ちょっと色々試してみます。
ありがとうございました!
0612nobodyさん
05/01/31 19:18:27ID:ZbMy7NkR出来ますでしょうか? なぜこんな質問をしているのかといいますと、
下記のようなメルマガ登録フォームを設置してるんですが、
その登録者数をカウントしたいと思ってるのです。
<FORM ACTION="http://regist.mag2.com/reader/Magrdadd" METHOD=POST TARGET="_top">
メルマガ名<INPUT TYPE=HIDDEN NAME="MfcISAPICommand" VALUE="MagRdAdd">
<INPUT type=text NAME="rdemail" size=30 VALUE="">
<input type=hidden name="magid" value="00000xxxxx">
<INPUT TYPE=SUBMIT VALUE="登録"> </FORM>
上記はまぐまぐで用意されているフォームHTMLですが、
これでデフォルトのまぐまぐスクリプト(http://regist.mag2.com/reader/Magrdadd)
だけでなく、自作の「regcnt.php」も呼び出して、登録してくれた人の
人数を数えたいのです。
こういうことって可能でしょうか?
それとも実は私がすごい勘違いしてて、もっと簡単なやり方があったりして・・・。
0614612
05/01/31 19:29:36ID:ZbMy7NkRもう一つ考えたのは、まず最初のFORM ACTIONをregcnt.phpに変更して、
そこで数だけカウントして、フォームから受け取った各変数をそのregcnt.phpから
直接http://regist.mag2.com/reader/Magrdaddに渡す…という
方法(つまりユーザーからしてみればregcnt.phpの存在にはほとんど気づかずに
すぐにまぐまぐの「登録完了」が表示される)も考えたのですが、
肝心の渡す方法が検索しても分からなくて挫折しました。
もしかしたらこれもまるっきりアホなやり方かもしれませんが。。。
上級者様のご意見を仰ぎたいです。
0615nobodyさん
05/01/31 19:29:40ID:???まずカウントを集計するスクリプトに飛ばして集計処理をした後、
まぐまぐのフォームへデータをPOSTすればよいだけだと思うが。
0616615
05/01/31 19:32:24ID:???思いっきりかぶった(w
それでいいよ。
POSTのやり方分からんのなら
http://www.google.com/search?hl=ja&lr=lang_ja&ie=UTF-8&oe=UTF-8&q=%E3%83%95%E3%82%A9%E3%83%BC%E3%83%A0+post+http%E3%83%98%E3%83%83%E3%83%80&num=50
ほれ。
0617612
05/01/31 19:33:27ID:ZbMy7NkRフォームを複数設置しているため、どのページからの登録が
多いのかを調べたいと思っていまして。。。
>>615
そうですね、たぶん私が614で書いたのと同じ意味で
おっしゃって頂いているのだと思いますが、
その「phpスクリプトからまぐまぐへデータをPOST」の方法がイマイチ分からなくて…。
スクリプト内から「HTMLフォームのsubmit」と同じ動作を命令できるのでしょうか??
なんか無知過ぎてすみません。
0618612
05/01/31 19:36:59ID:ZbMy7NkRあ、私も思いっきりかぶりましたww
教えていただいてありがとうございます!
早速指示していただいたGoogle検索結果を読んで理解しに行きます。
自分でもいろいろ検索してたんですが、
「httpヘッダ」なんて、自分じゃ考えもつきませんでした。
本当に助かりました。ありがとうございます。
0619615
05/01/31 19:37:09ID:???> たぶん私が614で書いたのと同じ意味で
そう。全く同じ意味。考え方としては正しい。
> スクリプト内から「HTMLフォームのsubmit」と同じ動作を命令できるのでしょうか??
できる。↑の検索結果見ながら頑張れ。
0620615
05/01/31 19:37:55ID:???まぁ頑張ってくれ。
0621nobodyさん
05/01/31 20:18:23ID:???0625nobodyさん
05/02/01 14:14:36ID:07WWszEkpath_infoなURLで拡張子無しで、
www.○○.jp/hoge/abcdef/123_456/ (hoge.phpにアクセスしている)
アクセスした場合実機では「リクエストされたページは表示できません。」
Openwave SDK6.2では406エラーになり、
www.○○.jp/hoge.php/abcdef/123_456/
の場合実機(タルビー)では変わらず、Openwave SDK6.2では問題無く表示されます。
UAからSmartyのテンプレートを切り替えで表示キャリアを分けていて、
i-modeとvodafoneに関してはオフィシャルなシミュレータと実機で表示確認済みです。
Openwave SDK6.2には下記のようなログがありました、
HTTP/1.1 406 Error
Date: Mon, 01 Jan 2005 00:00:00 GMT
Server: Apache
Alternates: {"hoge.php" 1 {type application/x-httpd-php} {length 733}}
Vary: negotiate
TCN: list
Connection: close
Content-Type: text/html; charset=iso-8859-1
Transfer-Encoding: Chunked
解決へのポインタもしくは、ezwebサイト用のシミュレータ等でもっと詳細なログを吐いてくれる
ものがあれば教えてください。
Apache 1.3.33
PHP 4.3.10
Smarty2.6.2
0626nobodyさん
05/02/01 14:58:03ID:???mktime, gmmktimeの結果が1970年以前では
壊れた挙句に,9時間毎(OSがJSTの場合)にループしませんか?.
RH7.3, rpmの4.1.2でも同じみたい
Vine(バージョン不明)のrpm 4.2.3 ではうまくいく
PHPではなくOS側の問題ですか?.
設定で回避できるようなら教えてください.
0629nobodyさん
05/02/01 15:49:12ID:???すんません,わからないです.教えて
time_tは符号付32ビットだから有効範囲は1901-2038だと英語版にも書いてある.
1970以前と以降について特にmktime()とgmmktime()の両者の使い方が変わるとは書いてない
Windowsではないから1970年以前の制限はないはず
だとすれば,
mktime(23,59,59,12,31,1969)とmktime(0,0,0,1,1,1970)の差は1のはず
実際には,
<?= mktime( 23,59,59,12,31,1969 ) ?>
-1
<?= mktime( 0,0,0,1,1,1970 ) ?>
-32400
になる
0630nobodyさん
05/02/01 16:26:02ID:???MacOS X 10.3.7 / PHP 4.3.10
% TZ=GMT php -r 'var_dump(mktime(0,0,0,1,1,1970));' => int(0)
% TZ=GMT php -r 'var_dump(mktime(23,59,59,12,31,1969));' => int(1)
% TZ=JST-9 php -r 'var_dump(mktime(0,0,0,1,1,1970));' => int(-32400)
% TZ=JST-9 php -r 'var_dump(mktime(23,59,59,12,31,1969));' => int(-32401)
% TZ=JST-9 php -r 'var_dump(gmmktime(0,0,0,1,1,1970));' => int(0)
% TZ=JST-9 php -r 'var_dump(gmmktime(23,59,59,12,31,1969));' => int(-1)
0631nobodyさん
05/02/01 16:27:54ID:???0632nobodyさん
05/02/01 16:47:15ID:???ありがとう,だめでした
$ env TZ=JST-9 php -q
<?= mktime( 23,59,59,12,31,1969 ) ?>
-1
GMTだと,env TZ=GMT php -q
<?= mktime( 23,59,59,12,31,1969 ) ?>
-1
いけたか?,と思ったが,
$ env TZ=GMT php -q
<?= mktime( 0,0,0,9,15,1965 ) ?>
-14462
$ env TZ=GMT php -q
<?= mktime( 23,59,58,12,31,1969 ) ?>
-1
$ env TZ=GMT php -q
<?= mktime( 23,59,57,12,31,1969 ) ?>
-1
なんかだいぶおかしい,もともと,1970以降はgmmktime()とmktime()の差は
9時間出てたので,TZ設定してなくてもOSのlocaleちゃんと読んではいるみたい・・・・
0633nobodyさん
05/02/01 22:40:14ID:???試さなくていいから、マニュアルのmktimeの説明部分をテキスト入力してみろ。
英語なんか訳さなくていいから和訳されたものをそのまま入力してくれ。
>Windowsではないから1970年以前の制限はないはず
どこにそう書いてあるんだ。都合よく解釈するプロ市民だな。
2038年問題って何かコメントしてくれ。
0634nobodyさん
05/02/02 00:21:44ID:???とりあえず、text/htmlでプレーンテキスト送ると「リクエストされたページは表示できません。」って言われる。
おれはそういう時telnet。
0635nobodyさん
05/02/02 00:36:53ID:???> year は2桁または4桁の値を指定可能で、
> 0-69の間の値は2000-2069に、70-99は1970-1999にマップされます。
> (今日最も一般的なtime_tが32ビットの符号付き整数であるシステムで、
> yearとして有効な範囲は1901から2038の間です)
自分は4桁入力してたから関係ないと思ってたが,よく考えたらintになった時点で
1901-2038なのか1970-2069なのかは判別つかんってことだな.
でOS側のシステムコールのmktime()がどっちに対応してるかによって動作に違いが出てくると
0636nobodyさん
05/02/06 15:04:04ID:???function nemui()
{
return "kyou ha mou kaerimasu.";
}
undef nemui; // こんな感じで未定義にする命令が欲しい。
nemui(); // ここで未定義ですというエラーが発生してほしい。
0637636
05/02/06 15:05:00ID:???ageわすれたのでage.
0638nobodyさん
05/02/06 15:46:14ID:???PHP-I-BOARDの過去ログの表示なんですが、
親記事があってレス1レス2とあったばあい、その記事が過去ログに移動すると
表示がレス2→レス1→親記事の順に表示されてしまいます。
これを通常通り、親記事→レス1→レス2としたいのです。
レッツPHPさんのほうでおききしたところ
確認しましたが確かに現在のログは順に出るのに過去ログは逆向きで出力されて見にくい気がしますね。
ソースを眺めただけなので未検証で無責任で発言をすれば
ibbs.phpの819行目のforステートメントの条件を変更して逆向きに動作するように変更するか、
ステートメント終了後に$arg['past']内の配列を全てひっくり返すような処理を付け加えたら
いいんじゃないでしょうか
と回答いただいたんですが力不足でこの「ひっくり返すような処理」というのがどういうもので
どこにつければいいのかがわかりません。
無知な自分が公式のほうで何度もやりとりするのはかえって迷惑かかりそうなのでこちらで
アドバイスか検索するとっかかりを頂きたいです
マルチになるようだったらすいません(公式では回答いただいて終わってるとおもったので)
0639nobodyさん
05/02/06 16:04:35ID:???chm版のマニュアルのショートカットをクリックしつつ「ひっくり返す」は「reverse」だなと考える - 1秒
chmの検索タブをクリック - 1秒
「reverse」と打ち込み検索 - 2秒
結果リストを見渡しarray_reverseを見つける - 1秒
煽り文句を考えながらレスを書く - 60秒
0641nobodyさん
05/02/06 17:50:33ID:ytGnrXBlありますか?
フォームから受け取った変数が連想配列(チェックボックス)だと分かる
方法ありましたらご伝授下さい。
宜しくお願い致します。
0642nobodyさん
05/02/06 17:55:00ID:???<?php
$file=array();
if($fp=@fopen("./log.dat","r")){
flock($fp,1);
while($buf=fgets($fp)){
array_push($file, $buf);
}
fclose($fp);
}
$counter=trim($file[count($file)-1]);
printf("we have ".$counter." visitors\r\n");
array_push($file,($counter+1)."\r\n");
if($fp = fopen("./log.dat", "w")){
flock($fp, 2);
foreach($file as $f){
fprintf($fp, $f);
}
fclose($fp);
}
?>
</body></html>
のような簡単なPHPプログラムを作ったのですが、
どういうわけか1アクセスごとにカウントが2増えます。
教本殆どそのままなのに、なんでこんな事が起きるのかチンプンカンプンです。
原因と解決法を教えて頂けないでしょうか
0643nobodyさん
05/02/06 18:38:57ID:???0644nobodyさん
05/02/06 20:04:09ID:???コピペして全角スペース取り除いて実行したけど
ちゃんと1ずつ増えました。
>>641
is_arrayとかis_scalerとかあるけどフォームから配列で送れば確認するまでも無く配列に決まってますが。
0645nobodyさん
05/02/06 20:07:02ID:???ちなみにPHPには配列と連想配列の区別はありません。
普通の配列も数字をキーにした連想配列です。
0646nobodyさん
05/02/06 22:13:27ID:???一つ処理が終わったら、1秒ほど待機して次の書き込みを行なうようにしたいのですが、
どういった関数を使えば宜しいでしょうか?
0647nobodyさん
05/02/06 22:22:14ID:???0648nobodyさん
05/02/07 00:34:24ID:???書き込みにアドレス(http://...)が書き込まれたら、
その部分だけ自動でリンク張るのはどうするとよいか?
0649nobodyさん
05/02/07 00:35:16ID:???書き込みにアドレス(http://...)を見つけたらアンカータグで囲うとよいかと
0650nobodyさん
05/02/07 00:39:28ID:WG7KP6M+ini_set関数でスクリプトから設定して回避できる問題でしたら、どう設定したら良いか教えてください。
0651nobodyさん
05/02/07 00:51:52ID:???俺のソースをやろう
auto_linkの引数$valにアドレスを入れればリンク付きで返ってくる
//-------------------------------------------------
// オートリンクの作成
//-------------------------------------------------
function auto_link($val){
//オートリンク
if (config("auto_link"))
return preg_replace("/(https?|ftp)(:.*)([a-z]|[A-Z]|[0-9]|\/)/i","<a href=\"\\1\\2\\3\" target=\"_blank\">\\1\\2\\3</a>", $val);
else
return $val;
}
0652nobodyさん
05/02/07 00:54:34ID:???こっちを使ってくれ
//-------------------------------------------------
// オートリンクの作成
//-------------------------------------------------
function auto_link($val){
return preg_replace("/(https?|ftp)(:.*)([a-z]|[A-Z]|[0-9]|\/)/i","<a href=\"\\1\\2\\3\" target=\"_blank\">\\1\\2\\3</a>", $val);
}
0655nobodyさん
05/02/07 01:06:15ID:WG7KP6M+レスありがとうございます。
Warning: php_network_getaddresses: getaddrinfo failed: Name or service not known in /homeからのphpスクリプトのパス on line 4
Warning: file("http://www.*/index.html") - Bad file descriptor in /homeからのphpスクリプトのパス on line 4
こんなエラーが出ます。
0656nobodyさん
05/02/07 01:17:55ID:???http://ns1.php.gr.jp/pipermail/php-users/2004-June/022456.html
エラーメッセージでググレば出てくるだろ( ゚Д゚)ゴルァ!!
0659nobodyさん
05/02/07 01:26:24ID:WG7KP6M+うまく行きました。
0660nobodyさん
05/02/07 02:08:59ID:???頻度でローカルにバックアップしてまつか?
0662nobodyさん
05/02/07 11:02:51ID:???Warning: Unknown(パス): failed to open stream: No such file or directory in Unknown on line 0
Warning: (null)(): Failed opening 'パス' for inclusion (include_path='インクルードパス') in Unknown on line 0
というエラーを出さずに、
'インクルードファイルがよめねぇYO!'
見たいに自分でカスタムしたエラーを表示する方法ってありますか?
他の命令なら
@meirei() die('エラーだYO!');
って die命令でできるけど includeではできなかったのできいてみますた。
(@マークを先頭に付ける事によってその命令でのエラーを表示しない)
includeでエラーになったときにちょっとかっこ悪いので修正したいのです。
参考になるURLだけでも結構ですので教えてください。
0663nobodyさん
05/02/07 11:09:02ID:???includeの場合はif (!@include(filename)) die('file not found.');
としないとダメみたいよ
0665nobodyさん
05/02/07 11:16:57ID:???0666662
05/02/07 11:20:00ID:???if (!@include('なんたら.php')) die('file not found.');
上でやってたのでできなかったみたいです。
includeでやったらできました。
requireではできないんでしょうかね?
0667662
05/02/07 11:31:05ID:???663氏 サンクス
if( !@require('なんたら.php')) die('file not found.');
if (!@include('なんたら.php')) die('file not found.');
require命令の時点で処理終了してるからdieまでこないのね orz.........
というか、include に dieつけてる時点でrequireと同じ動作(その後実行しない)なのね・・・・。
いまさら気づいた・・・・・・。 orz........
0669nobodyさん
05/02/07 14:08:23ID:FLQt/DDHと
print '内容';
exit;
と同じ事にならない???
0670nobodyさん
05/02/07 14:14:31ID:???マニュアルをちゃんと読んでいれば、そういう恥ずかしい事を言わなくて済みますよ。
die なり exit なりの説明を参照。
0671nobodyさん
05/02/07 14:25:02ID:Um6cfrSt<a href="URN:ISBN:**-****-****-*">hoge</a>
として,実際に表示する時には
<a href="http://www.amazon.co.jp/exec/obidos/ASIN/***********>hoge</a>
と置き換えたいんですが.
Javascriptで置き換えるのは見たことあるんですが,
それをPHPに書き換えることができなかったり・・・orz
0672nobodyさん
05/02/07 14:30:36ID:???|.._ | //. ̄ ̄ ̄,`
| ' l | || `゙` ゙``
| : l=.| ||
|...」 | || / ∧_∧ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
|_ | |/. ( ・∀・)< >>671 頑張れはできますよ!
l文|. | / ( 建前 ) \_______________
| ̄ | ./ 人 ヽノ
| |/ し(__)
| / | ヽ
|. / . | ヽ
. | ヽ _
( ̄ ̄ ̄)本音ヽ ( \
ヽ  ̄ ̄ ./ ヽ ヽ,> )
ミ' |∩| ` / / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
| (~●~) 彡 < 自分でやる気あんの?
ヽ ○ ○ | \___________
|\ ノ
∪ ̄ ̄ ̄∪
0673軟式PHP
05/02/07 15:24:13ID:???<?php
$strValue = '<a href="URN:ISBN:12-3456-7890-1">hoge</a>';
$strUrl = 'http://www.amazon.co.jp/exec/obidos/ASIN/';
$strPattern = "/URN:ISBN:([0-9]{2})-([0-9]{4})-([0-9]{4})-([0-9])/i";
$strValue2 = preg_replace( $strPattern, $strUrl."$1$2$3$4",$strValue);
print $strValue2;
?>
0674671
05/02/07 16:02:43ID:???<?php
$urn = '/href="URN:ISBN:(\d)-?(\d+)-?(\d+)-?([x\d])"/i';
$amzn = 'href="http://www.amazon.co.jp/exec/obidos/ASIN/$1$2$3$4"';
$contents = preg_replace($urn, $amzn, file_get_contents("http://foo/book.html"));
echo "$contents";
?>
結局こんな感じでやることにしました.
本当はbook.htmlを読み込むのではなく,book.html中に追記するだけで
済むようにしたかったんですが….
それとDOM使ってみたりもしたんですが,DOMオブジェクトに展開するときの
文字コードかなんかでうまくいかずに挫折しました.
0675nobodyさん
05/02/07 16:12:52ID:???book.html をphpとしてパースしていると仮定して、
output bufferingを使えば追記のみで行けるんじゃない?
auto_prependが設定できれば追記の必要もないね。
0676nobodyさん
05/02/07 17:44:22ID:???ないよ。どうしてもというならグローバル配列に匿名関数を突っ込む形になると思う。
あるいはフラグ変数で代替するか。
けど、関数を未定義にしたい場合ってどんなん? 設計のレベルで解決したほうがいい気がするよ。
コードレベルだと、たとえば未定義判定したいなら !function_exists() を使をばいいし、
再宣言を防止したいなら ifブロック内で関数宣言する、require_onceを使う、等々の手段が。
So-netが規制されてたから遅レスで悪いけど。
0677nobodyさん
05/02/08 13:56:04ID:???ここのPHPの掲示板作った人おる?
第1回目の投稿が受け付けてくれない他(yylog.phpが開けね〜とか言われる)
各投稿にナンバーが振られないからその後の修正や削除が
全くできない出来損ない掲示板だぞ。
フリーで作ってくれるのはありがたいがオリジナルのKENT-WEBの掲示板の
名を貶めるような劣化コピーはやめてくれ。
0678nobodyさん
05/02/08 13:57:42ID:???552 名前:名無しさん@お腹いっぱい。[sage] 投稿日:05/02/07(月) 19:52:37
ttp://shu.sub.jp/xoops/modules/tinycontent/rewrite/tc_5.html
ここのYY-PHPの掲示板を xreaで設置して動いてる方いますか?
なぜか "Open Error: ./yylog.php" エラーがでてしまう
パーミッションも606で設定して間違いないのに・・・
いい加減作者に直でメールした方がいいんじゃないか?
0681nobodyさん
05/02/08 14:20:56ID:???KENT-WEBにあるWebプログラムってそんなに凄いものか?
ちょっとでも、CGIの知識があれば、簡単に自作できるような物ばっかりのような気がするんだが・・・
0684軟式PHP
05/02/08 14:33:31ID:???0685nobodyさん
05/02/08 14:37:54ID:???> あたかも、KENT-WEBのCGIは凄い!って言ってるように見えたので
まぁシンプルかつ機能はまとまっているとは思うがな
0686nobodyさん
05/02/08 14:40:39ID:???0687nobodyさん
05/02/08 14:42:18ID:???,-ー─‐‐-、
,! || |
!‐-------‐
.|:::i ./ ̄ ̄ヽi
,|:::i | (,,゚д゚)|| < ・・・
|::::(ノ 中濃 ||)
|::::i |..ソ ー ス||
\i `-----'/
 ̄U"U ̄
0688nobodyさん
05/02/08 14:45:02ID:???KENT WEB 総合スレ Part2
http://pc5.2ch.net/test/read.cgi/php/1078991985/
0689nobodyさん
05/02/08 14:55:51ID:???0693nobodyさん
05/02/08 17:26:06ID:???0695あ
05/02/08 17:43:54ID:???HTMLを出力するPHPプログラムを作成希望です。
見出しと、リンク、文書がついたものは、可能なのですが、
タイトルとリンクだけを表示するにはどうやればいいでしょうか?
参考
ttp://www.hawk.34sp.com/stdpls/php/xml_parse.html
0696nobodyさん
05/02/08 17:43:56ID:???0698nobodyさん
05/02/08 17:48:34ID:???0700nobodyさん
05/02/08 17:54:01ID:???0701nobodyさん
05/02/08 18:06:39ID:???0702nobodyさん
05/02/08 18:11:06ID:???次の質問マダー(チンチン
0703nobodyさん
05/02/08 18:22:02ID:???リライトいかれてるな
0705nobodyさん
05/02/08 18:46:29ID:???PHPからメールを送信させているのですが、"件名"の部分の日本語が
メール受信ソフトでは文字化けして表示されてしまいます。(OE6)
Windows用のメールソフトでも文字化けせず件名を日本語で記述するには
どうしたらいいでしょうか?
ちなみに本文の部分は問題なく日本語表記されています。
0707nobodyさん
05/02/08 18:54:03ID:???PHPくだスレで答えられてるように mime encodeする。
鯖によっちゃ 日本語おまかせmb_mail関数が使えるので、それを使うと楽。
「メール 日本語 mime」でググって、なぜややこしい事をしなきゃいけないかという背景を知っておくとよい。
0708nobodyさん
05/02/08 18:56:07ID:???0709nobodyさん
05/02/08 19:01:50ID:???0710nobodyさん
05/02/08 19:08:21ID:???0711nobodyさん
05/02/08 21:11:57ID:???0712nobodyさん
05/02/08 21:21:51ID:???0713nobodyさん
05/02/08 21:59:33ID:???0714nobodyさん
05/02/08 22:01:32ID:mh9JM18Rhttp://pc5.2ch.net/test/read.cgi/php/1107780435/l50
の php, 1107780435, l50と行った値はどのように取得するのでしょうか?
また、apache - http.confに設定は必要なのでしょうか?
質問意図がうまく伝わるか心配ですが、そのときは失礼いたします。。
0715nobodyさん
05/02/08 22:04:54ID:???PHPくだスレでその話題で盛り上がってたよ。
http://pc5.2ch.net/test/read.cgi/php/1107780435/24-
0717nobodyさん
05/02/09 00:10:08ID:???ファイルをアップする方法しりません?
PEARとかでモジュールないかな・・
0718nobodyさん
05/02/09 01:45:21ID:???_SERVER["PATH_INFO"]をパースするだけとかそんな話じゃぁ…。
0721nobodyさん
05/02/09 11:05:56ID:???PEARにsockみたいなのなかったかな。で、ftpに通り道付けてってのは。
やったことないけど。知ったかぶりでごめんね。
0722nobodyさん
05/02/09 22:52:00ID:???0723nobodyさん
05/02/09 23:42:37ID:???0724nobodyさん
05/02/09 23:43:59ID:RCmAm0yEさて、そこで、認証方法ですが、SSLなど、銀行のオンラインシステムでもいける!という
認証方法で、PHPに実装可能な方法を教えて下さい
0726nobodyさん
05/02/10 00:08:07ID:???0728636
05/02/10 00:23:39ID:???確かに設計レベルの解決がいいのですけれども、
既にあるフリーウェアに手を加える形なので設計は変えられないのです。。。
そのフリーウェアっていうのはPukiWikiで、作りたいというのはプラグインなんですけどね。
作りたいと思っているプラグインは都合上、既に定義された関数を、
なにもしない関数に置き換えるか、関数を未定義に設定したいのです。
自分でも結構、調べましたけど未定義にするのは確かになさそうですね。
回答ありがとうございました。
0729nobodyさん
05/02/10 00:33:03ID:???0730nobodyさん
05/02/10 03:43:49ID:???touch($fname);
$hea = filesize("$fname");
if($hea>0){
$head = readfile("$fname");
echo "$head";
}
log.csvを生成してファイルサイズを取得し0バイト以上なら中身を表示。
ってのを作ったつもりなんですが、log.csvに文字を書き込むとその文字とバイト数まで表示されてしまいます。
何故でしょうか?filesizeは「ファイルのサイズを返し、エラーの場合はFALSEを返します。 」とあります。が$heaにサイズを返すんですよね?
表示させてるのは$headなのに。。。
ちなみにlog.csvが空でも0を表示しちゃいます。お助け下さい。
0735nobodyさん
05/02/10 07:49:33ID:???0736nobodyさん
05/02/10 11:02:59ID:bUBIOW3Fどうすればよいでしょうか?
0738736
05/02/10 12:05:44ID:bUBIOW3F済みません…
酔っていたもので変な日本語&質問を間違えていました
クッキーが有効か否かを調べるにはどうすればいいでしょうか?
現時点では
クッキー変数に書く→リダイレクトして読んでみる
という方法を考えたのですが
リダイレクトを使わない方法はないでしょうか。
0739nobodyさん
05/02/10 12:16:04ID:???cookieはHTTPヘッダの中に埋め込まれるので、鯖側に最低2回のアクセスが必要です。
1回目のリスポンスヘッダにSet-Cookieの形で埋め込み。
2回目のリクエストヘッダにクッキー情報を加えて送信。
0741nobodyさん
05/02/11 11:00:23ID:???同じmbの設定でもphp4だと文字化けしないようでした。
文字の途中に入っている場合化けないので、コード判別に失敗してる?
これってphp5のmbstringのバグでしょうか?
0742nobodyさん
05/02/11 11:03:31ID:???0744nobodyさん
05/02/11 15:15:19ID:???0745nobodyさん
05/02/11 15:15:35ID:ABOqtNWJ0747nobodyさん
05/02/11 15:52:53ID:???0748636
05/02/11 17:56:06ID:???おおう、こんにゃろ。俺か?俺に言ってるか?
んじゃ、PukiWikiのソース上に #nomenu とか書くと、
左側のメニューが出なくなるようにしてくれよ、このやろう。
スキンの中で↓のように書かれてたから
<?php if (arg_check('read') and exist_plugin_convert('menu')) { ?>
exist_plugin_convertは最終的にfunction_existsを使ってたから、
menuプラグインが定義したpugin_menu_convertを消してしまえば(略
ごめん、もういいや。
0749nobodyさん
05/02/12 09:13:57ID:???$a[] = array{time = 234;}
.
.
という配列をtimeの値でソートし$aに反映させたいのですが、
array_multisortを使ってソートする事は出来るのでしょうか?。
array_multisort($a,$a['time'])ではエラーが発生してしまうので、
こうい使い方は出来ないのでしょうか?。
0750749
05/02/12 09:20:47ID:???自己レス
array_multisort($a,$a['time'])ではなくarray_multisort($a,$a[int]['time'])と
しなければいけませんね。しかし[int]には何を入れたら良いんだろう。
0751nobodyさん
05/02/12 09:43:00ID:???> $a[] = array{time = 234;}
これの意味がわからん。
0752nobodyさん
05/02/12 10:03:36ID:???あちこち、ぐぐって解決しました
ご迷惑をおかけしました
$a[0] = array('time'=>123);という意味でした^^;
0753nobodyさん
05/02/13 05:43:57ID:zA+VEUwbセッションIDがgetで渡される場合があります。
このあたりはどういう処理になっているのでしょうか?
0754nobodyさん
05/02/13 08:13:59ID:???1回目のアクセスのときはクッキーが使えるかどうか不明なので、
URIにセッションIDをとりあえず埋め込んでいる。
2回目にクッキーでもセッションIDが返ってくるようなら、
クッキーが有効とみなし埋め込まなくなる。
って感じじゃないかな。php.iniでクッキーオンリーに出来るよ。
0755はじめまして
05/02/13 09:15:57ID:u/FwX+Jyweb上で表示され、「正常に送信しました」と、表示されるものの
http://f46.aaa.livedoor.jp/~setu/mail/mail.php
指定のアドレスにメールが届きません。
属性を変えて何度かやり直したのですがお手上げです。
現在ファイルと、phpファイル共に705に設定してます。
どなたか、是非お力をくださいませ。根本的に無理なのかなぁ???
昨日から、悩んでます。現在のファイルの状況です
http://do45.hp.infoseek.co.jp/mail/mail.php
配布元はここです。
http://www.kenjiweb.com/?mode=mail
0756nobodyさん
05/02/13 09:24:12ID:???何でここで聞くかな…
0757はじめまして
05/02/13 09:26:38ID:u/FwX+Jy丸投げの方がいいでしょうか?(^^ゞ
0758nobodyさん
05/02/13 09:38:27ID:???0759はじめまして
05/02/13 09:47:31ID:u/FwX+Jyどっか、行きます・・・
0760nobodyさん
05/02/13 12:39:21ID:???0761nobodyさん
05/02/13 14:02:36ID:???0762nobodyさん
05/02/13 14:57:17ID:???いたのですが、これはfopenとかでURLページをアクセスした時に
入るのでしょうか?
0763nobodyさん
05/02/13 16:45:25ID:???FORM認証を使った場合、PHPスクリプトに対しては確かに認証の可否によって、
実行の可否ができるのですが、
例えば、ディレクトリ構造など知られている場合、
PHP以外のファイル(画像など)を直接URL指定されると
認証の有無に関わらず表示されてしまいます。
特定のディレクトリ以下の全ての種類のファイルを認証によって閲覧権限を付ける場合、
やはりBASIC認証しか無いのでしょうか?
0764nobodyさん
05/02/13 17:05:13ID:???ディレクトリ内の全てのファイルを外部から不可視にしておいて、
PHP経由でそれらのファイルを読み込んで表示かな。
ちょっとしたミスが命取りになるけど。
0765nobodyさん
05/02/13 19:00:50ID:K/AbDSopxml_set_character_data_handler()でセットしたハンドラに渡される文字列が
たとえば "ABC & DEF" だったとき、"DEF"しか渡されないみたいなんですが
どうしてでしょう?
0766nobodyさん
05/02/13 19:00:55ID:???でも、そういう使い方したいならBASIC認証でやったほうがスマートだと思うんだけど、次の人どう思う?
0767nobodyさん
05/02/13 19:10:13ID:???複数の認証がダブったり権限付与が必要なケースではBASIC認証等は不向きなので、
この場合はPHPの認証機構に一元化することが多いかな。
>>765
質問の仕方を勉強して出直してくれ。
0768nobodyさん
05/02/13 22:14:09ID:???PHP4からPHP5に移行する際に、コーディングで特に注意が必要な点はありますか?
0769nobodyさん
05/02/13 22:17:02ID:???http://jp.php.net/manual/ja/migration5.php
0770nobodyさん
05/02/13 23:51:10ID:???「ABC」「&」「DEF」と複数回ハンドラが呼ばれてるのに
最後に呼ばれてるときにしか貴方の作ったプログラムが見て無いから。
もしくは「ABC」を「&」で、その次は「&」を「DEF」で上書きというプログラムの作りだから。
0772nobodyさん
05/02/14 00:23:46ID:???無効なエンティティとして扱われてるなら"ABC "までがCDATAとして渡されるはずだろ。
"DEF"ってことはコード上の問題としか考えられないが、質問文にはコードもXMLのサンプルもないからな。
テストコードやコピペのミスかどうかも判断つかん。
回答することで自分のスキルを実感するのを否定はしないが、質問の仕方は覚えてもらったほうが
本人のためにもなるし、同僚さんの幸福にもつながると思うよ。
>>771には何かローカルな心情があるのかしらんが、「回答の仕方」というのは俺にはよく分からん。
0773nobodyさん
05/02/14 00:32:19ID:fzJwBWF6どんな回答しようが自由だと思うが。少なくとも乞食にどうこう言われる筋合いはない
質問の仕方で能無しかどうかすぐ分かる
質問の仕方でにそれにぶら下がるレスのレベルもある程度決まってくる
0774nobodyさん
05/02/14 00:34:04ID:fzJwBWF6正規スレだっけ?分かる奴には分かるつー文脈なら別にいいんだが
0775nobodyさん
05/02/14 00:53:46ID:???0776nobodyさん
05/02/14 01:07:31ID:???peardocのCVSをチェックアウト後、
# autoconf
# configure --with-lang=ja
# make test
を実行後エラーがでて止まります。
エラーの解決方法をご存知の方が居ましたら、教えてください。
環境はFreeBSD5.3Rで、portsから
textproc/sp
textproc/openjade
textproc/docbook-310
textproc/iso8879
textproc/dsssl-docbook-modular
を導入しています。
configure、make testのログを以下にアップしています
http://www.uploda.org/file/uporg43768.zip
0777nobodyさん
05/02/14 01:14:49ID:???0778nobodyさん
05/02/14 01:35:57ID:???>./phpdocxml.dcl:179:1:E: end of document in prolog
179行1列目って何?prologなんてワカンネ。タグ不整合とか?
0781nobodyさん
05/02/14 01:44:41ID:???オレのESP能力によるとお前はこいつと同一人物に間違いない
http://www.google.co.jp/search?hl=ja&q=%22777get%2C+zuzaa%22&lr=
0782776
05/02/14 01:46:07ID:4jK1nMAEphpdocxml.dclの内容は以下のURLの内容と同じです。
http://cvs.php.net/annotate.php/peardoc/phpdocxml.dcl?rev=1.1.1.1
179行目は最終行の > になります。
0783765
05/02/14 02:02:44ID:8mFM3xspハンドラに渡されたものを全部array_push()して、それをダンプしてみましたが、
"ABC & DEF"とくるはずのものは、"DEF"としか渡されていませんでした。
"ABC"とか"&"とかはまったくハンドラに渡されていません。
xml_parseの仕様でしょうか?
0784nobodyさん
05/02/14 02:14:53ID:???とりあえず上で言われているとおり&のせいかと
実体としてパースされるのでPCDATA領域に&書いたらダメよ
情報不足なのでこれ以上の回答は望めないかと
0785nobodyさん
05/02/14 02:43:43ID:???0786nobodyさん
05/02/14 02:47:26ID:???0788nobodyさん
05/02/14 04:24:51ID:???確かに。DEFの頭の方にスペースがくるとは思わなかった。
サンプル1:<test>ABC & DEF</test>
結果1:
startElement[TEST]
charData[ABC ]
charData[&]
charData[ DEF]
endElement[TEST]
サンプル2:<test><![CDATA[ABC & DEF]]></test>
結果2:
startElement[TEST]
charData[ABC & DEF]
endElement[TEST]
0789nobodyさん
05/02/14 04:27:44ID:???<?php
// $text = '<test>ABC &amp; DEF</test>';
$text = '<test><![CDATA[ABC & DEF]]></test>';
$parser = xml_parser_create('UTF-8');
xml_set_element_handler($parser,'startElementHandler','endElementHandler');
xml_set_character_data_handler($parser, 'charDataHandler');
$result = xml_parse($parser,$text);
if(!$result) {
die(xml_error_string(xml_get_error_code($parser)));
}
xml_parser_free($parser);
function startElementHandler($parser,$name,$attribs) {
echo "startElement[$name]\n";
}
function endElementHandler($parser,$name) {
echo "endElement[$name]\n";
}
function charDataHandler($parser,$cdata) {
echo "charData[$cdata]\n";
}
?>
0790nobodyさん
05/02/14 04:46:55ID:???0791nobodyさん
05/02/14 07:31:39ID:pVfR11DEWarning: No ending delimiter '^' found in /home/www/dbusf000/public_html/seminar.php on line 147
147行目は以下の通りです。
if ( (!preg_match("^[ァ-ヶ?・]*$",$_REQUEST["company_name_kana"])) or strlen($_REQUEST["company_name_kana"]) > 100){
正規表現がまちがってるんでしょうか?
「正規表現メモ」のサイト見ても、どうもマチガイがわからなくて。
お助け願えれば幸いです。
0794nobodyさん
05/02/14 18:06:20ID:???0795nobodyさん
05/02/15 00:02:35ID:FkUTlorqMySQLに保存するようにしたのですが、
時々何かのタイミングでエラーになります。
非常に再現性に乏しいので凹みます。
バージョンは4.3.10です。
ハンドラ書き換えはバギーなのでしょうか?
オリジナルのセッション機構を書いた方が良いのでしょうか…。
0796nobodyさん
05/02/15 01:18:37ID:???DB(MySQL/PostgreSQL)にも、ネットワークファイルにも
書き込んでるけど全然問題ないよ。
貴方のシステム環境が安定してないだけじゃ。
0797nobodyさん
05/02/15 02:30:29ID:???ありがとうございます。
あやうく書き直すところでした。
Unexpected character in input: '
というエラーなのですが、わりと良くある障害のようで、
MLを検索したところ原因はmbstring周りのようです。
セッションハンドラを書き換えたあたりから出始めたので
それが原因と思いこんでいました。
0800nobodyさん
05/02/15 03:56:19ID:???___ ,,.. -' "/ { ` -一-ヾ ヽ. ヽ ☆
/ ▽ / ∧ ヽ、, _,, }}_} ・ ii /
/ { {ゝ{__`ー-Y´f。Vハ'V } * ・ ii
! 〃 i ハ ´{ ヽ 、ソ } く ☆ ii 氏ね
ヾ{{ ☆ `ヾ、_`ヽ'^' ヽ " ! ! i ゚ : ii
ヽ{{ * . ハ く) /.l、! ! ; .ii
ヾ、. { ` ーj‐' {ムノ_ ノ
ヾ , '´  ̄ー‐‐- ' ` く
` ー---─,' 、 、}
,' ,〈 , -ー‐-、i∠⌒ヽ
,' ∧<=ニ二‐ノヽ、二ソ
/ ./ } `"''' "; `7T´
0801512
05/02/15 03:57:28ID:???0802nobodyさん
05/02/15 11:21:45ID:???なんか良く判らないけどエラーが出るようになったつうのは
APCとかのPHPアクセラレータ入れてると出ることがあるので
もし入れてたら切ってみて暫く様子見するのもいい。
0803nobodyさん
05/02/15 17:13:10ID:???// ランダムリンク設定(表示コメント|URL)
$banner = array(
'コメント1|http://***.com',
'コメント2|http://***.co.jp',
'コメント3|http://***.jp',
);
function rnd_banner($banner){
mt_srand((double)microtime()*1000000);
$num = mt_rand(0,(count($banner)-1));
//コメント,URL分割
list($comment,$url) = explode("|",$banner[$num]);
//タグ生成
$display_banner = '<a href="'.$url.'" target="_blank">'.$comment.'</a>';
return $display_banner;
}
?>
------------------
このソースを、表示したいphpに直接貼り付ける形式ではなく、
「random.php」などと名付けて別途保存し、
表示したいphp中に
<?include("random.php");?>
のように挿入して表示できるようにしたいのですが、
どの部分を書き換えれば想定どおりの処理ができるようになるでしょうか?
0804nobodyさん
05/02/15 17:16:33ID:???関数の定義をしているだけなので、それをどこかで呼び出さないと実行されない。
random.phpの中で、echo $display_banner; の一行を入れておけばよい
0805nobodyさん
05/02/15 17:30:29ID:???$display_banner = rnd_banner($banner);
これを加えて random.php としておく。
表示用のPHPのほうで、このファイルをincludeしておき、
表示させたい位置に、
<?=$display_banner?>
を入れる。
0807nobodyさん
05/02/15 20:39:01ID:ELNssm3M0808nobodyさん
05/02/15 22:01:04ID:???指定の箇所に作成する方法がわかりません。
イメージ的に
フォーム送信→ファイル作成(open)→ファイル書き込み(print)
というのはなんとなくイメージ出来るのですが、これを
どうやって毎回テキストファイルを作成するのかよくわかりません。。
すみませんが、ヒントをいただけないでしょうか?
0809808
05/02/15 22:21:44ID:???test.phpにアクセスするとファイルが作成されるという。。
<?php
$lombardia = fopen('test.txt', 'w');
fwrite($lombardia, 'test');
fclose($lombardia);
?>
0810nobodyさん
05/02/15 22:36:14ID:???0811nobodyさん
05/02/15 23:14:11ID:???0812nobodyさん
05/02/15 23:15:57ID:aGG3pDPg/usr/local/bin/pear install http://pear.php.net/get/DB
という具合に。そうしたらzlibが見つかりませんというような
エラーがでました。
調べたところPHPをインストールしたときにzlibなるものを
インストールしていなかったのが原因だと思うのですが、
zlibを組み込むには再度PHPをコンパイルしなおさないと
いけないのでしょうか?
0813nobodyさん
05/02/16 00:24:48ID:???0814nobodyさん
05/02/16 00:32:41ID:???0815nobodyさん
05/02/16 23:11:51ID:kByGIo+tWeb上で多数のユーザーから同時アクセスが想定される状況で
ユニークな文字列を生成したいのですが、
uniqid()の信頼度はどの程度のものなんでしょうか?
サーバーが単一の場合はprefixを付与しただけで十分実用レベルでしょうか?
またホストが複数サーバーに分かれてる場合ではどうでしょうか?
マニュアルに載っているように
> $better_token = md5(uniqid(rand(),1)); // 推測が困難であり、より優れている。
とすればほぼ大丈夫と思って良いですか?
uniqid()の仕組みだけでも教えて貰えたら、と思います。
あいまいな質問で済みませんがよろしくお願いします。
0816nobodyさん
05/02/16 23:26:24ID:???ミリ秒単位でユニークな文字列が作成される。
複数のホスト上で同時に実行して同じ文字列が生成されるのを防ぐために、
ホスト別にprefixを付けると良い。
って書いてありますよ。
uniqidの仕組みについては、ext/standard/uniqid.c を参照。
cvsだと、ttp://cvs.php.net/co.php/php-src/ext/standard/uniqid.c?r=1.40 あたりかな。
0817nobodyさん
05/02/17 13:56:50ID:???「ホスト別に」というところを何故か見落としてましたw
ホスト毎のprefixと乱数の組み合わせで行けそうですね
ありがとうございました。
0818nobodyさん
05/02/17 14:00:03ID:???0819nobodyさん
05/02/17 22:47:38ID:3YY24TUDarray_unshift( $n, array( "value", $v ) );
↑こうやると、↓こんな警告が出る。
Warning: array_unshift(): The first argument should be an array
0820nobodyさん
05/02/17 23:08:56ID:???>あいうえお<BR> >かきくけこ<BR> さしすせそ<BR>
このレスを表示する際、>(引用符)の行の文字カラーを変更したいです。
$com = eregi_replace("(^|/>)(>[^<]*)", "\\1<FONT COLOR=\"FF0000\">\\2</FONT>", $com);
ですと、実際に表示される際の一行目「>あいうえお」 …のみしか適用されません。
これをコメントの全ての行に適用するにはどのようにすれば良いのでしょうか。
0822nobodyさん
05/02/17 23:23:36ID:???正規表現を考える前に
引用符としての">"とタグ<BR>が混在しているのだが、
引用符のところは>ってカキコしたものなのか?
>あいうえお<BR> >かきくけこ<BR>....
なのか、
>あいうえお\n >かきくけこ\n....
どっち?
0823nobodyさん
05/02/17 23:31:43ID:3YY24TUDマニュアルの一部をコピペしただけでわかるかよ。
0824nobodyさん
05/02/17 23:40:48ID:???変数に入ってる値も不明なソースの一部をコピペされただけでわかるかよ。
つか、そのソースとエラーの内容からだと>>821に適合して無いことが原因か、
適合しててもエラーが出るなら、それこそ具体的な値が判らんとわかんねぇよ。
バグの可能性があるんだから。
0825nobodyさん
05/02/17 23:48:01ID:yKXCmIvo0826nobodyさん
05/02/18 00:28:16ID:7WdjA1S7わかりやすい自演の例…
0827nobodyさん
05/02/18 00:31:52ID:???返信が遅くなりすいません。
ログ(書き込み時)は、引用符の">"は>で格納されています。 (ユーザーが">"と書き込みしたものです)
\nは<BR>で格納されています。 (ユーザーが改行したものです)
読み出し時は、
list($no,$re,$dat,$nam,$eml,$sub,$com,$url,$hos,$pw,$col,$ico) = preg_split("/<>/",$line);
("<>"がセパレータ)で読み込みしていますので、
前レスの「レスを表示する際」には、書き込み時の形のまま(前者)が$comに格納されていると思います。
記事展開の周辺は、
# 記事を展開
$i=0;
$flag=0;
$lines = file($logfile) or error("Open Error: $logfile");
$top = array_shift($lines);
foreach ($lines as $line) {
list($no,$re,$dat,$nam,$eml,$sub,$com,$url,$hos,$pw,$col,$ico) = preg_split("/<>/",$line);
です。
0828nobodyさん
05/02/18 00:53:39ID:???0829827
05/02/18 01:05:23ID:???">"が、">"で格納される場合と">"で格納される場合に分かれていたようです。
(この部分の詳細は今は不明です)
最終的に、(>)で格納されているとした場合、下記で大丈夫…だと思います。たぶん。
$com = eregi_replace("(^|>)(>[^<]*)", "\\1<FONT COLOR=\"999999\">\\2</FONT>", $com);
0830nobodyさん
05/02/18 01:06:46ID:???&gtで格納されている場合
$com = eregi_replace("(^|>)(&gt;[^<]*)", "\\1<FONT COLOR=\"999999\">\\2</FONT>", $com);
0831nobodyさん
05/02/19 19:52:30ID:???その中の人数の母体に対するパーセンテージを求めようと思い、
考えて下記のスクリプトを作ったのですが、改良案やもっといい方法が
あればアドバイス頂けないでしょうか。
$percent = substr($num/$amount,2,2);
$percent = preg_replace("/^0/","",$percent);
$num/$amountすると、例えば0.4056414とかいう割り切れない数字が出てくるので、
substrで小数点以降から2桁切り出して、(ここでいうと40)
一桁パーセントの場合は、08とかの結果になってしまうので先頭の0を取る
という処理にしました。
でも、substr(割り算,2,3)としたら、この場合結果が405で、40.5%のようにも
したいなと思っているのですが、そうすると、
substr($result(405が入ってる),1,2) . '.' .substr($result,3,3) . '%';
なんてしなければいけないのかと思うのですが、もっとスマートなやり方
とかありますでしょうか。
長文ですみません。
0832831
05/02/19 19:56:35ID:TVy8jZr4よろしくお願いします。
0833nobodyさん
05/02/19 20:05:25ID:???http://jp.php.net/sprintf
0834nobodyさん
05/02/19 20:05:52ID:???0835nobodyさん
05/02/19 20:09:30ID:???0836831
05/02/19 20:13:23ID:???そう言われてみるとそうでした・・・。
PHPは関数がたくさんあって、計算とかするより関数使わなきゃいけないんだと
強固に思い込んでしまってて、変なことしてました。
お恥ずかしいです。すみません、ありがとうございました。
0837nobodyさん
05/02/19 21:03:02ID:5g9U41P6URLに、?a=1&b=2&c=3ってパラメータを埋め込んだとして、
foreach($_GET as $value){
echo $value;
}
ってした場合、a、b、cの順序で出力されますか?
何がいいたいかというと
パラメータの順序通りに配列にはいってるのかなぁって
疑問に思ったのです。
0838nobodyさん
05/02/19 22:47:47ID:???パラメータの順序通りに入ってたよ
0839837
05/02/20 00:18:51ID:hvCabO8Iもうしわけありませんでした。
説明が悪かったです。
PHPのバージョンや環境に関わらず
常に順番どおりに入っているのかが
疑問点なのです。
よろしくお願いします。
0840nobodyさん
05/02/20 00:36:12ID:???仕様として明記されていない事は不定。
不定なことに対し一定であることを期待して
プログラムを組むのは、ドツボにはまる一要因ナリ。
0841nobodyさん
05/02/20 10:19:13ID:???0842nobodyさん
05/02/20 10:36:02ID:???function quickSort($arr,$left,$right){
if ($left <= $right) {
$p = $arr[($left+$right) / 2];
$l = $left;
$r = $right;
while($l <= $r) {
while($arr[$l] > $p){ $l++; }
while($arr[$r] < $p){ $r--; }
if ($l <= $r) {
$tmp = $arr[$l];
$arr[$l] = $arr[$r];
$arr[$r] = $tmp;
$l++;
$r--;
}
}
}
$this->quickSort($arr, $left, $r);
$this->quickSort($arr, $l, $right);
}
}
見よう見まねで作ったソートなんですけど、実行すると
PHP has encountered a Stack overflow
ってエラーが出ます。
おかしな所があれば修正お願いします。
0843nobodyさん
05/02/20 12:36:47ID:???0844nobodyさん
05/02/20 13:47:32ID:???0847nobodyさん
05/02/22 00:28:25ID:WO7XFPFB呼び出し元の関数の名前を知る方法はないでしょうか?
0848nobodyさん
05/02/22 00:35:54ID:???ありますよ。無名な関数を使いますが。
私が即席で作った下の関数を研究してみてください。
この関数をどの関数から呼び出されたのかを知りたい
関数から呼び出してみてください。名前が返ります。
function whocall() {
$bt = debug_backtrace();
return $bt[2]['function'];
}
0852847
05/02/22 11:53:12ID:???ありがとうございます!
$bt[1]ですよね?
こんな関数があるとは知りませんでした。
>>850
そうしていたのですが出来るなら省略したいなと思いました。
>>851
そうですよね。
0853847
05/02/22 11:54:59ID:???失礼しました。
0854nobodyさん
05/02/22 13:10:07ID:d7ashhNp電源が入ってたり入ってなかったりするサーバに対し、
いま電源が入っている(アクセスできる)かを確認し、
その結果によって [Online] / [Offline] のような文字または画像を表示したいと考えています。
(結果を表示するページのサーバは、常にアクセス可能とします)
file関数で情報を取ってこれるかというやり方をしようと考えましたが(以下にスクリプト)、
この場合は yahoo.co.jp など存在し、アクセス可能なドメインでは[オンライン]、
yahoo.co.jppなどの存在しないドメインは[オフライン]と即表示されます。
しかし、ドメイン登録してあるのにサーバ電源が落ちている場合にはすぐには表示されません。
(set_time_limit関数の使い方は間違っているのでしょうか・・・)
set_time_limit(3);
$a = (@file("http://www.hogehoge.jp/")) ? "オンライン" : "オフライン";
print $a;
何か良い考えが思いついた方は、ご教授頂けるとありがたいです。
環境はPHP4.3.3 on RedHatLinux 7です。
0856854
05/02/22 13:51:59ID:d7ashhNpレスどうもありがとうございます。
set_time_limit(3);
$a = (@fsockopen("www.hogehoge.jp", 80, $errno, $errstr, 3)) ? "オンライン" : "オフライン";
print $a;
としても、「オフライン」の場合には結果表示にデフォルトのタイムアウト時間までかかってしまいます。
即座に表示することはできないでしょうか。
上のスクリプトでは処理を3秒でタイムアウトさせて結果を表示させたいと考えているのですが。。
(上のスクリプトでは、オンライン/ドメインが存在しない場合は即座に表示されます)
0858nobodyさん
05/02/22 17:58:06ID:RE6B17ts例えば、C だと以下のようなことは御法度です。
char* func(){
char *abc = "abcdefg";
return abc;
}
PHPではこんなこと出来ますか?
function func(){
$abc = "abcdefg";
return $abc;
}
0859858
05/02/22 18:03:01ID:???すみません、ちょっと質問の仕方を間違えました
PHPでは関数の返り値に、CでいうAuto変数のポインタを返せますか?
0860858
05/02/22 18:13:34ID:???仕切り直します。
PHPでは関数の返り値に、CでいうAuto変数のポインタを返せますか?
例えば、C だと以下のようなことは御法度です。
char* func(){
char abc[] = "abcdefg";
return abc;
}
PHPではこんなこと出来ますか?
function func(){
$abc = "abcdefg";
return $abc;
}
0861nobodyさん
05/02/22 18:27:01ID:???そもそもPHPにはポインタという概念がないので...
変数そのものを指し示す必要があるなら、「リファレンス返す」かな。
0862858
05/02/22 18:35:13ID:???私の「参照」の概念がイマイチなのが問題のようです。
すみませんでした。
0863nobodyさん
05/02/22 18:46:16ID:???http://www.php.net/manual/ja/language.references.php
0865nobodyさん
05/02/23 20:36:20ID:???どなたかヘルプお願いします。/home/foo/lib/ext/pear以下に、全てのライブラリをまとめようと思っています。
$ wget http://go-pear.org -O go-pear.php
...(略)...
$ php go-pear.php
...(略)...
1. Installation prefix : /home/foo/lib/ext/pear ← ここを任意のディレクトリに変更
...(略)...
Would you like to install these as well? [Y/n] : y
Loading zlib: ok
Downloading package: PEAR-stable......ok
Downloading package: Archive_Tar-stable....ok
Downloading package: Console_Getopt-stable....ok
Downloading package: XML_RPC-stable....ok
Bootstrapping: PEAR...................(remote) ok
Bootstrapping: Archive_Tar............
Warning: mkdir(/tmp/gope11Ui8e/Archive): File exists in /home/foo/bin/go-pear.php on line 622
(remote) ok
Bootstrapping: Console_Getopt.........
Warning: mkdir(/tmp/gope11Ui8e/Console): File exists in /home/foo/bin/go-pear.php on line 639
(remote) ok
Downloading package: DB...............ok
Downloading package: Net_Socket.......ok
Downloading package: Net_SMTP.........ok
Downloading package: Mail.............ok
Downloading package: XML_Parser.......ok
Downloading package: PHPUnit..........ok
Fatal error: Undefined class name 'pear' in /home/foo/bin/go-pear.php on line 675
となります。何かヒントがあれば幸いです。
0866nobodyさん
05/02/23 21:59:50ID:???してみるとか。...面倒か。
0867nobodyさん
05/02/24 03:10:14ID:/1etLdeQエラーを修正することが急務ですが、何よりも、このエラーログの肥大化をストップするように言われました。
あちこち探したのですが、見付かりません。
エラーレポートを吐き出さないようにする方法はありませんか?
0871nobodyさん
05/02/24 07:09:09ID:???配列丸ごと書き換えることはできないんでしょうか?
変数をひとつひとつ書き換えていて、発狂寸前です。
0874nobodyさん
05/02/24 09:20:42ID:???array_map()使わなくても「変数をひとつひとつ書き換え」る馬鹿は、そうはいないと思うけど。
0876nobodyさん
05/02/24 11:54:17ID:???発狂しそうな方法ってこれ位しか思いつかないんだけど、まさかこんなの?
$data['sono1']=htmlspecialchars($data['sono1']);
$data['sono2']=htmlspecialchars($data['sono2']);
$data['sono3']=htmlspecialchars($data['sono3']);
$data['sono4']=htmlspecialchars($data['sono4']);
:
:
ずっと続く
他にあったら知りたい。つーか、普通にループを使う方法しか
思いつかなくて、これ以上効率の悪い方法が考え付かん。
0877nobodyさん
05/02/24 12:00:20ID:???if (!is_array($val)) {
$_POST[$key] = htmlspecialchars($val);
}
}
変数をひとつひとつ書き換えるよりはループで回したほうが
0878nobodyさん
05/02/24 12:01:13ID:???return htmlspecialchars($array);
}
$_REQUEST = cnv($_REQUEST);
0879nobodyさん
05/02/24 12:26:48ID:???{
if (is_array($arr)) {
return array_map('tag_escape', $arr);
}
return htmlspecialchars($arr);
}
0880nobodyさん
05/02/24 14:54:07ID:???>>879が書いてる関数(俺も全く同じものを書こうとしてた)ぐらいは思いつくだろ?
ていうかこのソース、以前PHP MLにも投稿された事があるはず。
>>878
何の釣りでしょうか?
>>876
多分そういうレベルだと思った…
>>877かもしくはforeach使う事ぐらいは思いつけないと…
0881nobodyさん
05/02/24 15:37:12ID:3qj1XZqF外にはSJISで表示しているのですが
EUCで書いたphpファイルから
SJISで書いたview用phpファイルをincludeすると
コードが混在するので問題になる気がします。
(実際、タイミングによって時々エラーが出ました)
こういう場合の定石的な解決方法を教えて下さい。
0883 zzz
05/02/24 16:03:00ID:???下記のような動作(1〜3)を行うシェルをphp(ブラウザ)から動作させたいのですが…
どのように記述したらよいのか何かヒントをください。
1.wget で 圧縮されたファイルを固定したディレクトへダウンロード
2.ダウンロード後、そのまま解凍。
3.解凍後、ダウンロードしたデータは削除
シェルを実行するときだけ 必要なコマンドのみ root 権限を与える方法は
理解できそうなんですけど…
さっき 9ten社
0885nobodyさん
05/02/24 16:13:54ID:???(a)ブラウザ(クライアント)、(b)PHPを動かす鯖、(c)ダウンロード元(鯖) があって、
(a)から(b)にアクセスすると(c)の圧縮データを取りに行って
(b)で解凍して〜
ってことかい?
0886nobodyさん
05/02/24 16:28:52ID:???組み込み関数でarray_map_recursiveができたらいいなあ。
0887nobodyさん
05/02/24 16:43:09ID:???取得がエラーになった時などの処理を除けば
そのまま書けばOKですよ。
解凍できるフォーマットで、コマンドラインツールがあるとしてだけど。
解凍先の指定(展開方法)のオプションとかはツール毎に調べてね。
0888nobodyさん
05/02/24 21:36:15ID:???875 が言いたいのは
$array['a']['x'] = '123';
$array['a']['y'] = '456';
$array['a']['z'] = '789';
$array = array_map('htmlspecialchars', $array);
ということじゃない?checkbox とかで。
再帰で書くしかないよね。
0889nobodyさん
05/02/24 22:37:21ID:???0892nobodyさん
05/02/25 13:57:09ID:mvGHDRpG外部サーバーへ接続して、そのステータスが404か403か302などかどうかの値を取得したいのですが、
当方xreaの為、fsocksopenが使えません。代替となりえる関数はなんでしたっけ?
0893nobodyさん
05/02/25 14:52:48ID:1JhQtPgY0894nobodyさん
05/02/25 16:55:01ID:ExbvFDBohttp://www.amazon.co.jp/exec/obidos/ASIN/4797321288/250-0184447-4333015
これを買おうと思って本屋でチラ見したのですが、サンプルの内容は
phpのバージョンが古くて、たしか4.2.2用のものでした。
この本、今つかえるのでしょうか?それともこれ買うくらいならバージョン5の本を
かったほうがいいのですか?助言お願いします。
0895nobodyさん
05/02/25 17:10:32ID:???「サンプル」をどのように考えてるかによる。
そのまんま入力して動かないと駄目な人はやめときなさい。
プログラムの作りをみて自作の「きっかけ」に使う場合には
古くても充分役立つ。
0896nobodyさん
05/02/25 18:00:16ID:???カテゴリも50近くあるのでそれくらい対応しているものがよいのですが。
0897894
05/02/25 18:00:36ID:???ありがとうございます。「10日で覚える〜」から
1段階上の本を探してまして、勉強のために使おうと思ってたので、
買ってみます。
0898nobodyさん
05/02/25 19:15:03ID:sDC3ZZ80ば→は
ぱ→は
っ→つ
のように変換したいのですが
例 らっぱ→らつは
StrTrを使って文字を羅列すると"ぅ"が"い"に変換されてしまいます。
どのようにすればうまくいくのでしょうか。
0899892
05/02/25 19:23:54ID:mvGHDRpG0900892
05/02/25 19:27:37ID:mvGHDRpG<?php
$ch = curl_init ("http://www.php.net/");
curl_setopt ($ch, CURLOPT_HEADER, 1);
curl_exec ($ch);
$info = curl_getinfo($ch);
echo $info['http_code'];
curl_close ($ch);
?>
お騒がせしました。時間掛かりましたが解決です。
0901nobodyさん
05/02/25 19:41:15ID:ZiS1ZtFaこれだと動きません。どうやったらいいのでしょうか?
if($line == "text"){
print "txt\n";
}
0902nobodyさん
05/02/25 20:35:18ID:???0903nobodyさん
05/02/25 20:40:30ID:???とりあえず、下のように書いたら希望通りになるのですが、 {} 当たりがダサいので…。
ifの反対の命令は無いんですか?
<?php
X=1
if X==1 {}
else { echo "Xは1じゃないですよーっと。"; }
?>
0904nobodyさん
05/02/25 20:47:06ID:mvGHDRpGたぶん誰もレスしないだろうからしようw
<?php
$X = '1';
if ($x != '1') echo 'Xは1じゃないですよーっと。';
?>
以上。解決。
0907nobodyさん
05/02/25 22:31:34ID:QqsT661L新たにMYSQLを入れたので
今入っているPHPにMYSQLをアクセスできるように
configureしようと思うのですが
どうやったらいいのでしょう・・・
0908nobodyさん
05/02/25 22:40:37ID:???DBの作成と新規ユーザの追加を、
Webサイト上(HTML+PHP)で行いたいと思っています。
MySQLのデータベースクリエイトと、新規ユーザの追加を
PHPで操作することは出来ないのでしょうか?
出来るのでしたら方法を教えて頂きたいのですが。
よろしくお願いいたします。
0909903
05/02/25 23:01:55ID:Snm78iCrくだらない質問にレスして頂きありがとうございました。
「==」じゃなくて「!=」にしてば解決ということですね。
0912nobodyさん
05/02/25 23:57:42ID:QqsT661Lphpize
./configure (オプションは作成するモジュールによって異なる)
make
ですね。。。
明日標準拡張モジュールを入手しやってみます!
超うれしいです!感謝です!
0913nobodyさん
05/02/26 20:50:00ID:LIYJX+3jコンストラクタの中で、
$categoryname = $_REQUEST['categoryname'];
とすると
Undefined index: categoryname
となってしまいます。
クラスの中で、$_REQUESTの値を代入するにはどうすればいいのでしょうか?
0914nobodyさん
05/02/26 22:29:38ID:???いや、NOTICEが出てるのって$categorynameじゃなくて$_REQUEST['categoryname']だろ
ここを参照
http://pc5.2ch.net/test/read.cgi/php/1107780435/644-
0915nobodyさん
05/02/26 23:45:28ID:dKMEUCyI0916namazu
05/02/27 00:34:06ID:l905ORwG0917nobodyさん
05/02/27 00:40:16ID:061SWsicバイナリデータの生成、編集は出来ますか?
0918nobodyさん
05/02/27 00:41:52ID:???サーバにxslt周りがインストールされてれば、別に悪くは無いと思うけど。
XMLが別にあって、ってんなら楽勝。
XMLもPHPで作るってんなら、素のPHPだけでは大変かも。
PEARのXMLから自分にあったのを見つけるか、自分でXML構築classを書くかしないと
スクリプトの見通しが悪くなるなぁ…
あぁ、DOMXMLもあるかぁ。
0919917
05/02/27 01:43:53ID:???0920nobodyさん
05/02/27 02:58:09ID:???PHP4 で作成した Namazu モジュールは PHP5 では動かない。
CVS から Namazu モジュールのソースを取ってきて PHP5 の phpize を使用して
コンパイルすれば使えるはず。
0921nobodyさん
05/02/27 03:44:49ID:???0922916
05/02/27 04:06:08ID:f/BfgIj2ありがとうございました。
「ftp://night.fminn.nagano〜」
は使えなくなってるし、cvsのリポジトリ見ても
古いままだったし・・・。あーよかった。
名前が「php4_namazu」なので、てっきりどうにも
ならないかと・・・
0923nobodyさん
05/02/27 14:06:32ID:Quvh5uNrがわかりません。どなたかご存知の方おりましたら、アドバイス頂ければ
と思います。どうか宜しくお願い致します。
0925920
05/02/27 17:54:12ID:???http://cvs.php.net/pecl/namazu/
を見ると 6 週間前に PHP5 への対応パッチが入っているので、
一応、メンテナンスはされているらしい。
0926nobodyさん
05/02/27 19:35:58ID:KdI7O9Tq追加でmysqlをphpizeでいれようとしているのですが、
configureで
/usr/local/lib/mysql/lib/libmysqlclient.a(my_compress.o)(.text+0xbc): In functio
n `my_compress_alloc':
: undefined reference to `compress'
/usr/local/lib/mysql/lib/libmysqlclient.a(my_compress.o)(.text+0x13a): In functi
on `my_uncompress':
: undefined reference to `uncompress'
のエラーが出てうまくいきません。
調べていくと
これは、クライアントライブラリをコンパイルしたときに、クライアント/サーバプロトコルの zlib サポートが組み込まれていたことを意味します。
-lmysqlclient を指定してリンクするときに、最後に -lz を追加することで解決できます。
とありますが、
何も修正したらいいのでしょうか?
configureの -lmysqlclientの部分に全て -lz をつけても
いつもconfigureは上書きされちゃうようだし・・・
LINUX初心者なんでよろしくお願いします。
0927916
05/02/27 21:19:34ID:f/BfgIj2ありがとうございました。
どなたか(作者?)がヘッダファイル
に手入れてくれてたのかぁ〜。
安心、安心。
ていうかこの拡張モジュールなかったら
結構つらいですもんね・・・
CGIとして呼ぶ、とかしか方法ないんですよね・・・
0929nobodyさん
05/02/28 14:08:59ID:3v+7XYLQつけていませんが
最終的に
export EXTRA_LIBS="-lmysqlclient -lm -lz"
をつけたらうまくいきました。
そっか
./configure に --with-zlib
でもよかったんだ・・・
ありがとですぅ
0930nobodyさん
05/02/28 17:52:56ID:???Fatal error: Call to undefined function: virtual()
が出てしまいます。
どうにかしてvirtual関数を使えるようにすることは出来ないでしょうか。
0933nobodyさん
05/02/28 18:40:49ID:???あるプロシージャを非同期に実行したいのです。
0934930
05/02/28 19:11:25ID:???ご回答頂きありがとうございます。
>>932
参考までに方法を教えていただけないでしょうか。
phpとssiを混在させたページを作りたいのですが、どうにもうまく行かなくて。
0935nobodyさん
05/03/01 01:47:51ID:GFbIljASexec()にどのように書けばいいのかが分かりません
osはOSXを使用しています
どのようにすればいいのか教えてもらえませんか?
もしくは参考になりそうなサイトを教えてもらえませんか?
よろしくお願いします
0936nobodyさん
05/03/01 03:06:47ID:???quicktimeでavi→movする時のコマンドラインオプションを教えてもらえませんか。
残りのPHPの範疇のやりかたは回答できると思いますから。
0937nobodyさん
05/03/01 03:35:54ID:GFbIljAS私もそれがしりたくて書き込みしました
ので分かりません。
0939nobodyさん
05/03/01 07:56:42ID:???0941nobodyさん
05/03/01 11:17:00ID:5YlwQk1PFirefox等だと取得できるのですが、IEで取得できない状態です。
どなたかご教授いただけると幸いです。。
0942933
05/03/01 11:53:28ID:C0SmLfojだとすると、非同期実行は皆さんどうやってますか?
0943nobodyさん
05/03/01 14:12:21ID:???確かに言語仕様上、使えたら便利かもしれんが、
Webアプリの開発ではあまり必要に感じたことない。
0944933
05/03/01 14:51:54ID:???処理に時間がかかるプログラムを切り離して実行させる
時に良く使ています(サーブレットですが)。
# あたり前ですが、ブラウザでタイムアウトをサーバから
# 操作できないので。
0945933
05/03/01 14:57:54ID:???0947nobodyさん
05/03/01 15:37:04ID:???system関数で裏に走らせて、そいつの結果を(σ´∀`)σゲッツ!!ってのなら可能かと。
0948nobodyさん
05/03/01 15:57:50ID:???PECL でこんなのがあるんだけど使ったことはない。
ttp://cvs.php.net/pecl/threads/
--enable-maintainer-zts が必要なのであまり使えそうにないけど。
他の手段は 947 と同じようだけど、CLI 版 PHP を popen() で
実行させて結果を待つとか。
PHP 4.3.0 以降だと stream_set_blocking() が使えるので、
non-blocking モードで処理可能だし。
0949933
05/03/01 16:12:19ID:???今回はPHPのリコンパイルは出来ない環境なのでPECLのやつは
ちょっと使えそうにないです。
やはりforkとかスレッド風の非同期は出来ないのですね。
popen(+非ブロックモード?)でイカせてもらいます。ありがとう
ございました。
0950948
05/03/01 16:58:33ID:???一応 fork は --enable-pcntl を有効にしてコンパイルしていれば
PHP でも使えるんだけど。
ttp://jp2.php.net/manual/ja/function.pcntl-fork.php
ただ、Apache モジュール版では fork は不可能なので、CGI 版か
CLI 版で使うことになる。
0952nobodyさん
05/03/01 19:05:44ID:???Apache/1.3.33 (Win32) PHP/4.3.10 running...
と表示されるのですが実際[htdocs]にファイルを入れて見ると
<? phpinfo() ?>
の指示が実行されません。何か思い当たる原因もしくは解決策はありますか?
0954nobodyさん
05/03/01 20:34:34ID:iwruqR6FPHPで書かれたいろんなソースを読もうと思っています。
任意の行で実行をストップさせて変数の値を表示したいのですが何かよい方法はないでしょうか?
また、ソースを読むときのtips見たいなのがあれば教えてください。
0955nobodyさん
05/03/01 21:41:35ID:???そのexit;がある行までの変数を全部表示かぁ。
できるのかな。俺は知らない。
fileで自分自身を配列に入れて、exitが出るまでforで回すとか。
0956nobodyさん
05/03/01 22:13:59ID:???>PHPの勉強をはじめました(PHP4.1.2/apache1.3.26)
PHP4.1.2 って古くない???
今は4.3.10でっせ。
0957nobodyさん
05/03/01 22:15:06ID:???基本的なところでecho、var_dump、print_r、それらに類する私家ライブラリ
その後「PHP DBG デバッグ」をキーワードに(PHP4.1.2とのことなので)
本格的なデバッギングツールを探して試してみること。
ログの出力とかもね。
>ソースを読むときのtips見たいなの
PHPがどういう手順で命令とか関数を処理して行ってるのか
考え(思い浮かべ)ながら読む。
作り手のスタイルでソースの傾向が違うことも多いので、
余り肌に合わなければ手を出さない(アマチュアならそれでOK)
0958nobodyさん
05/03/01 22:22:27ID:???http://www.atomar.de/public/code/debuglib/debuglib.demo.php
↑のページにあるdebuglib.phpのshow_vars()を使えば
グローバル変数なら一括表示ができる。
それ以外ならprint_rやvar_dump()で地道に変数を指定していくしかないだろうね。
どうやって使うの?とかいう質問はなしね。キリがないから
0959nobodyさん
05/03/01 23:49:23ID:???このへんとか。
http://tsuttayo.sytes.net/php/install/win.html
0960nobodyさん
05/03/02 01:04:26ID:EylpmFkzいや、自分で使う気はないのですが、
引継ぎのスクリプトに使われているので、これは大丈夫だろうかと。。
0961nobodyさん
05/03/02 01:27:31ID:???使える。
ただ俺も率先して使ったり大規模に試したりした訳ではない。
本幹でないところで駄目だったりするかも知れない。
あくまでも「それは詰まるところa-z、A-Z、0x7f-0xffの範囲なんだろうな」
と念を押すべき。
0963930
05/03/02 01:29:39ID:???あれから検索等で調べているのですが、どうしてもでてきません。
virtual関数以外で、SSIのinclude virtualと同じ動作をさせることは出来ないものでしょうか。
0964nobodyさん
05/03/02 01:47:10ID:???ログファイルから、終端の10行を読み込みたいときは
どんな方法が負荷を低く仕上げられるでしょうか?
おねがいします。
0965nobodyさん
05/03/02 02:29:02ID:???ああ、やったのは、SSIエミュレータだったかシミュレータというのを
呼んで処理させてました。Perlで書かれたやつだったかな。拾い物
今だったらApache2使ってSSI→PHP→SSIって感じに処理させると思うけど。
でもそこまでSSIに拘らんでもねぇ、今更。
0967960
05/03/02 02:38:46ID:???どうもです。
配列のキーには、割と普通に文字列として使えそうですね。
変数名にも一応使えるんですね。
とはいえ、変数名に日本語使ってるスクリプトってなんか怖い。
小規模なのが救いです。
0972nobodyさん
05/03/02 23:08:28ID:???0973nobodyさん
05/03/02 23:08:35ID:???普通に地道にやるなら。
最初に、count($array)して、配列数を求める。
そしたら、計算したら最後の10行目からの要素数わかるでしょ。
forでファイルを入れた配列をぶん回して、
さっきの値よりおっきくなったところから
新しい配列にarray_pushすれば。
0975nobodyさん
05/03/02 23:43:41ID:???もし、分割無しで設定されたApacheログだったら、
配列とかに入れようとした時点でアウチの可能性も。
昔、70Gのログファイルを見た。
0976nobodyさん
05/03/03 00:09:25ID:???0977nobodyさん
05/03/03 00:11:40ID:???27mbまで溜まってたよ。
0979nobodyさん
05/03/03 09:54:23ID:???11回目からはarray_unshiftしてarray_pushを繰り返す
0980nobodyさん
05/03/03 11:13:24ID:???0981nobodyさん
05/03/03 11:32:30ID:???ファイルポインタを最後に持っていって、
適当なサイズのバッファに読み込み、その中から改行コードを判定。
指定した回数の改行コードを見つけるまでバッファ読込判定作業を繰り返す。
0982nobodyさん
05/03/03 12:36:09ID:1a7MlPRn0983nobodyさん
05/03/03 12:50:52ID:???0984nobodyさん
05/03/03 13:13:40ID:???0986nobodyさん
05/03/03 14:33:19ID:???0987nobodyさん
05/03/03 15:02:24ID:SgcxISz7記事ID,返信記事のID,返信記事の親ID
この情報からツリー表示をしたいのでつが。
どうすればいいでしょうか。
神ガンガレ!
0988nobodyさん
05/03/03 15:15:10ID:???0989nobodyさん
05/03/03 15:23:42ID:SgcxISz7イジワルキタ━━(゚∀゚)━━ヨ
0990nobodyさん
05/03/03 15:41:06ID:???質問なのか?そうなのか?
問題ではないのか?違うのか?
問題だったら、解いてやるが、
質問だったら失礼だから答えてやらん。
0991987
05/03/03 16:18:45ID:SgcxISz7自己解決できた。
再帰コールを思い出したよ。
0992nobodyさん
05/03/03 16:38:13ID:???すべての変数はその都度初期化されますが、
変数の値を初期化せずに保持しておくことはできないのでしょうか。
データキャッシュとして使いたいのです。
共有メモリなどを使わないと無理ですかね。
一応、うちの環境は、apache 2.0.52, php 4.3.10 です。
0993987
05/03/03 16:53:55ID:SgcxISz7mmcacheなら共有メモリか、ファイルか選べる。
0994nobodyさん
05/03/03 16:57:07ID:No59BtVWmmcacheって、phpのコンパイル後のデータをキャッシュしてくれるだけかと思ってた。
調べてみます。
0995987
05/03/03 17:07:52ID:SgcxISz7mmcache_lock('dept');
mmcache_put('dept', $ret);
mmcache_unlock('dept');
$dept = mmcache_get('dept');
var_dump($dept);
0996nobodyさん
05/03/03 17:26:50ID:No59BtVWそれです。ありがとさんくす。
eaccelerator_put / get
という名前になってた。
0997nobody
05/03/03 22:16:07ID:V9TxyZTSphpでID3タグ情報を取得するにはどうすればいいのでしょうか?
php id3 取得などで検索してみましたが
rubyで同じようなことができるスクリプトは見つかったんですが。
FreeBSD + Apache + php4.3.10
0998997
05/03/03 22:37:43ID:V9TxyZTS0999nobodyさん
05/03/03 22:46:25ID:???【PHP】質問スレッドpart27【php】
http://pc5.2ch.net/test/read.cgi/php/1109857283/l50
1000もう一回
05/03/03 22:46:55ID:???【PHP】質問スレッドpart27【php】
http://pc5.2ch.net/test/read.cgi/php/1109857283/l50
10011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。