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

【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:???
・PHP全般の質問スレです。
・新規質問の方は上げてください。age進行でお願いします。
・質問する際には環境も明記。
・正しい日本語で分かりやすく。
・レスがつかないからって逆切れする厨お断り。
・解決しなくてもこたえてもらったら礼を。
■本家
 http://www.php.net/
■日本 PHP ユーザ会
 http://www.php.gr.jp/
■PHP マニュアル
 http://www.php.net/manual/ja/
■PEAR マニュアル
 http://pear.php.net/manual/ja/
過去スレ, 関連スレ等>>2-4
0004nobodyさん04/12/21 22:46:43ID:???
>>3
乙
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:???
PHP系blogツール part2
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:???
1000 名前: nobodyさん [sage] 投稿日: 04/12/21 23:11:53 ID:???
ボンレススリーナイン
0008nobodyさん04/12/21 23:14:40ID:???
1からsageるスレは嫌いだ。
0009nobodyさん04/12/21 23:22:43ID:???
早速ですが質問させてください。
画像を携帯の待ちうけ画像ぴったりにするには、どうしたらいいですか?
GD使って、数百種類以上ある機種ごとにサイズを変えなければいけないのでしょうか?
0010nobodyさん04/12/21 23:25:43ID:???
なるほど、その通りだとも!
0011nobodyさん04/12/21 23:33:04ID:???
>>9
やりたきゃやればいい。それだけのこと。
0012904/12/21 23:41:28ID:???
いや、それ以外に方法はありませんか?
0013nobodyさん04/12/21 23:49:57ID:4yQ5agWL
データベースが使えない環境で、
1つの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. 情報は小出しに。

「エスパーきぼんぬ」 補足
上の八ヵ条を「一つでも」満たす者は質問者として不適格だということだ。
そのような悪い質問に対して答えられるのは,
質問者の意図をすべて汲み取ることのできるエスパーでもなければムリ,
という意味であって,決して,高度な技術を持つユーザに対する尊称でなはい。
まちがっても「エスパーの方,回答お願いします」
なんて痛い質問するな。つうか氏ね。
0015nobodyさん04/12/22 00:41:50ID:???
>>12
画像を登録するユーザに全部のサイズをつくらせるって手もある。
0016nobodyさん04/12/22 00:43:10ID:???
>>9
ImageMagickもありうる。
0017nobodyさん04/12/22 04:06:29ID:???
おまいら、スーパーハカーが現れましたよ
http://pc5.2ch.net/test/read.cgi/hp/1097490756/536
0018軟式PHP04/12/22 10:23:26ID:???
俺も16と同様にImageMagick使うなぁ。
実際に携帯用サイトの画像振り分けの時に使ってる
<img src="img.php?qvFile=test.gif">とかして。
0019nobodyさん04/12/22 10:39:21ID:gfkRdrPI
お初です。
対象gif画像がアニメーションgifなのか普通のgif画像なのか判定したいのですが
既にそのような関数とかって有るのでしょうか?
自分でgifフォーマットの解析をしないと無理なのでしょうか?
0020nobodyさん04/12/22 11:20:00ID:???
>>19
getimagesizeはファイルの先頭見て判断してるだけみたいだから自分でやってください。
0021nobodyさん04/12/22 11:30:48ID:gfkRdrPI
>>20
なるほど。諦めて自作します。
ありがとうございました。
0022nobodyさん04/12/22 13:53:12ID:???
>>13
ないみたいだからぜひ作ってくれ。俺も使いたい。
0023nobodyさん04/12/22 21:19:00ID:4IslWF9p
そういうのって解ってどうするの?
0024nobodyさん04/12/22 23:46:31ID:???
PHPのgdが使える鯖ってどこがありますか?
0025nobodyさん04/12/22 23:48:43ID:???
>>24
例えば?
0026nobodyさん04/12/22 23:53:08ID:???
>>24
レン鯖板で聞け
0027nobodyさん04/12/23 05:01:38ID:???
http://www.php.net/manual/ja/ref.classobj.php
によるとget_object_vars
オブジェクトで未定義なプロパティを返さないようですが、
なぜか空の値を返してきます。
仕様変更でしょうか?
0028nobodyさん04/12/23 05:07:48ID:???
からじゃないですね。
未定義かどうかにかかわらずプロパティを返しやがりますね。
はあ
0029nobodyさん04/12/23 06:18:13ID:???
大穴があったとの事なので php-4.3.10 に載せ換えました。
結果、Warning Notice 出まくり状態です。
もぅ @ だらけにしてやろうかと・・・
皆さんはいかがですか?
0030nobodyさん04/12/23 08:38:06ID:MF5l0s/r
変更してエラーが出たことなんてない。
よっぽど無理矢理なソース書いてたとか?
0031nobodyさん04/12/23 10:12:14ID:???
>>30
同じく。
3→4への移行でも数個のwarningが出ただけだったからなぁ。
0032nobodyさん04/12/23 13:00:59ID:???
>>27-28
そこに4.2.0から変わったって書いてあるけど
0033nobodyさん04/12/23 13:06:48ID:???
未定義のプロパティが動的に生成されるように改善されたのはもっと前だけどな。
0034nobodyさん04/12/23 13:53:32ID:???
>>29
なんでわざわざ@でコントロールするんですか?
php.iniを書き換えるなり.htaccessでコントロールするなり、
ソースの先頭でコントロールすれば済むのに。
いちいち@をつけたり外したりするのは面倒なだけじゃなくて、
重要なエラーが確認できなくて困りませんか?
0035nobodyさん04/12/23 19:50:27ID:???
cookieの名前って他のサイトとかぶったらタイヘンなコトになるのですか?
0036nobodyさん04/12/23 19:53:31ID:???
>>35
なりません
0037nobodyさん@2904/12/23 20:40:49ID:???
すんまそん。
△みたいなのが多数・・・

△ $key=htmlspecialchars($_GET[key]);
○ $key=htmlspecialchars($_GET['key']);

まぁ一応動きますたが・・・
0038nobodyさん04/12/23 23:45:00ID:???
マルチバイト対応でSQLiteもUTF-8になってるPHP 5.0.3 Windowsバイナリ、
どこかに転がってないですか?
0039nobodyさん04/12/24 00:32:17ID:???
今ランキング形式のリンク集作ってるんですが、1ヶ月ごとにカウント数がリセットされるようにするにはどうすれば良いのでしょうか?

自分が考えた方法は、月の初めに新しいログファイルを作成して、そっちを読ませる、というものなのですが、どう書けば良いのかがよくわかりません。
(それとももっと良い方法があるのでしょうか?)
どなたかご教授いただけませんでしょうか。
0040nobodyさん04/12/24 00:39:44ID:???
>>39
ログのタイムスタンプを調べて現在の月と比較すればいいだろ
00413904/12/24 01:12:01ID:???
>>40

なるほど…。ありがとうございます。
ログに書いてある日付と月が違えば新しいログを作成する…といった感じでしょうか。
しかし、スクリプトの書き方がわかりません。(汗
自分が日付関連が初めてなせいか、いかんせん上手く書けません。

どのように書いたらいいのでしょうか。。。
何度もすみませんが、ご教授いただけませんでしょうか。
0042nobodyさん04/12/24 03:37:10ID:GgUnFp9z
$ym = date("Ym");
$filepath = "data{$ym}.log";
・・・

ログのファイル名を月ごとに変えるだけじゃないの?
適当・・
0043軟式PHP04/12/24 09:52:52ID:???
>>37
△のコードの書き方が俺的には怖いなぁ。
defineで定義されたものとの区別がつきにくい。
0044nobodyさん04/12/24 09:57:21ID:???
defineは普通全部大文字使うだろ
0045 ◆.jC7ANgFY. 04/12/24 10:08:47ID:???
echo key; // key
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で作ってるので。。
いろいろググってみたけど見つからなかった。。
知ってる人いたら教えて下さい。
0047 ◆.jC7ANgFY. 04/12/24 10:50:17ID:???
>>46
試してみてはどうですか。
そこがディレクトリなのに"/"で終わっていなければ
200は返さないとだけは言っておきましょ。
0048nobodyさん04/12/24 10:54:01ID:???
>>47
え、そうなんですか、
ちょっとやってみます
0049nobodyさん04/12/24 11:05:09ID:???
>>47
あ、本当ですね。
正確なURLじゃなきゃ、ロケーションされたりしてたんですね。
なんかいろいろやってるうちにわけわかんなくなってました。
ありがとうございました。
00503904/12/24 11:09:47ID:???
>>42
レスが遅れました(汗

なるほど、それでやってみます。
ありがとうございましたm(_ _)m
0051nobodyさん04/12/24 14:08:54ID:qwX5VviG
ウェブプログラム(PHPも含め)初心者です。
いま、PHPでアクセス制限をしようとしているのですが、
なかなかうまく動きません。
http://keitai.s92.xrea.com/pass.txt

某所のスクリプトの改造なのですが、正しいID/パスを入れても
404Errorがでます。
こんなかんじです。
http://keitai.s92.xrea.com/404.JPG

ためしに自分の借りているレンタルサーバーにアップしても同様の現象でした。
どなたかご存知の方原因を教えてください_(._.)_

環境
OS:WinXP SP1
サーバーソフト:phpdev5にはいっていたアパッチ
0052軟式PHP04/12/24 16:32:22ID:???
echo "<FORM ACTION=$PHP_SELF METHOD=POST ENCTYPE=application/x-www-form-urlencoded>\n";
ここが原因くさい。
0053nobodyさん04/12/24 17:09:33ID:???
>>51
$PHP_SELF は、使わないほうがいい(使えない場合が多い)
0054nobodyさん04/12/24 20:07:48ID:???
セッションで保存できるデータって、文字列や数字だけらしいのですが、配列や、もっと複雑な構造をしたデータ構造を保存するにはどうしたらいいでしょうか。
RDBは使いたくないんですが。
0055nobodyさん04/12/24 21:00:14ID:???
>>54
serialize
0056nobodyさん04/12/24 21:00:34ID:???
>>54
配列とかオブジェクトは一旦分解してテキストデータにしてからセッション変数に保存するといいよ。
んでページごとに配列に戻せばOK。
0057nobodyさん04/12/24 21:50:24ID:???
配列はそのままセッション変数に入れても平気なんじゃないか?

配列に配列を入れていたら、複雑になりすぎてたことがあるが・・・・
00585404/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:???
ファイル名の拡張子をphpにせずhtmlのままでPHPを実行させる方法無いですか?
0061nobodyさん04/12/25 02:40:04ID:???
>>60
あるよ
0062nobodyさん04/12/25 03:41:46ID:???
Steamというソフトをインストールしたら(ゲームソフト)
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:???
Steamっていうソフトを私たちにググりなさいってこと?
0065nobodyさん04/12/25 09:31:52ID:???
それでも結局は、ググっちゃうSAGA
0066nobodyさん04/12/25 09:37:50ID:???
ゲームソフトって言葉に釣られる辺りがガキな証拠w
0067nobodyさん04/12/25 10:36:49ID:???
>>63
libmysql.dllはどこにある?
0068nobodyさん04/12/25 11:09:58ID:???
>>66
別に誰も釣られて無いように見えるが
00696004/12/25 13:51:32ID:???
>>61
どうすればいいのでしょうか?
0070nobodyさん04/12/25 13:56:59ID:???
>>69
さんざん既出のFAQ
0071nobodyさん04/12/25 13:57:09ID:???
>>69
.htaccessとかで鯖の設定変えれば簡単じゃないかな
0072nobodyさん04/12/25 14:29:01ID:???
セーフモードでpear使う方法ってある?
00735804/12/25 14:38:00ID:???
>>59

できないはず・・・と思って試してみたら、できちゃったよ!びっくり。
配列をそのまま$_SESSIONに格納できただけでなく、配列の配列も格納できた。
これはいい情報をありがとう。ほんと助かった。
0074nobodyさん04/12/25 14:39:58ID:???
>>69
それはPHPの問題じゃなくHTTPサーバの設定の問題。
Apacheなら>>71をヒントに調べよう。
00756204/12/25 15:31:36ID:???
>>67
libmysql.dllをsystem32へコピーしたところ
うまく動くようになった。ありがとう
0076nobodyさん04/12/26 03:53:38ID:???
>>75
お前かウチのサイトにMSN検索で来たヤツは……
00776204/12/26 04:04:23ID:???
MSNは使ってないです
0078nobodyさん04/12/26 18:45:57ID:???
ファイルの拡張子を*.phpではなく*.htmlや*.htmのままでPHPスクリプトを実行させるには
どうしたらいいでしょうか?
0079nobodyさん04/12/26 18:49:54ID:???
>>78
>>60=>>69
>>70
00807804/12/26 20:57:48ID:???
>>79
ど、どこにFAQがあるんでしょうか?
0081nobodyさん04/12/26 21:17:27ID:???
>>80
【PHP】くだらねぇ質問はここに書き込みやがれ
http://pc5.2ch.net/test/read.cgi/php/1099322141/l50
00827804/12/26 21:55:37ID:???
>>81
りょ、了解です(´Д`lli)ゞ
0083nobodyさん04/12/27 03:35:00ID:???
これからPHPをはじめて掲示板でも作ってみようかと思っているんですが
みなさんの開発環境ってどんなものですか?

しらべてみたらウェブの統合開発環境は
EclipseのプラグインTruStudio
と
XOOPS
の二つあるみたいです。
0084nobodyさん04/12/27 04:01:01ID:???
>>83
XOOPSが統合開発環境…(;´Д`)?

趣味プロならエディタでべた書きで十分だと思うが?
PHPに限らんけど、最初からIDEに頼るのはお勧めできない
0085nobodyさん04/12/27 05:28:12ID:???
>>83
確かもっとも多い環境がSakuraエディタだったはず
0086nobodyさん04/12/27 07:46:18ID:dSbLZ0J0
ide使ってる椰子っているの?
0087軟式PHP04/12/27 08:55:42ID:???
即席スクリプトはTrustudio使ってるなぁ。
0088nobodyさん04/12/27 10:37:44ID:???
秀丸で書き始めているんですけど、大丈夫かな。
0089軟式PHP04/12/27 10:47:10ID:???
全然OK。ガンガレ。
00908304/12/27 11:01:32ID:???
返事ありがとうございました。

とある場所で
掲示板を作って公開してたら攻撃にあい、
それでXOOPSを採用したって話がありました。

だから、セキュリティ対策とかもろもろの
他の部分を考えなくてもXOOPSなら
手軽に作成できるのかなと思っています。

XOOPSはPHPを操って開発するユーザーサイドよりの
開発環境なのかなと勝手に思っていました。
0091nobodyさん04/12/27 11:05:14ID:???
それは開発と言えるのかも怪しいし、開発環境じゃないと思う。
他のPHPスクリプトをいじって自分好みにするってことでしょ?
0092nobodyさん04/12/27 11:17:21ID:???
PHP4+Sybaseでpconnectすると、
なんかバグがあったと思うんだ。
よく覚えてないけど、コネクション数が増え続けるみたいな。
それ以来、怖くてpconnect使ってないんだけど、
今は解決されてるのかな?
それから、このバグってSybase限定のバグで、
MySQLとかだと大丈夫なのかな?
0093nobodyさん04/12/27 13:47:11ID:???
PHPファイルの中に一つ上へあがるリンクを貼っておくとしましょう。こんな感じです。

<?php
    <a href="../">秘密のページ</a>
?>

このPHPファイルを他のPHPファイルからrequire文かinclude文で呼び出したと
しましょう。しかしそのPHPファイルが違う階層に存在するとき、
”秘密のページ"をクリックしていく場所はそれぞれ別個の場所になってしまうでしょう。
詳しくは呼び出したそれぞれのPHPファイルの上の階層にいってしまうと思います。

そうではなく、呼び出されたPHPファイルのひとつ上の階層へ行くにはどうしたらいいでしょうか?
0094nobodyさん04/12/27 13:55:02ID:???
>貼っておくとしましょう。
なんで偉そうなんだ

0095nobodyさん04/12/27 13:56:56ID:???
>>93
定数__FILE__からファイルの存在位置を認識し、
それを加工して目的のURIを出力するようにする。
00969304/12/27 14:16:03ID:???
その案使えそうですね。
どうもです。
00979304/12/27 14:18:10ID:???
>>94
オメーこそ何様のつもりだ?
ア?
0098nobodyさん04/12/27 14:28:49ID:???
冬だなぁ
0099軟式PHP04/12/27 14:40:55ID:???
>>93は<?php内に直接タグを書く強者
0100nobodyさん04/12/27 14:44:07ID:???
馬鹿を相手にするのは礼儀知らずを育てている様なものだぞ
優しさが仇になる事もある
0101nobodyさん04/12/27 14:46:51ID:???
その案も使えそう、とか
__FILE__知らない時点でオワットル
0102nobodyさん04/12/27 15:18:10ID:dSbLZ0J0
冬ですから
01039304/12/27 15:26:49ID:???
>>97は偽物なんで
本物は私なんで
0104nobodyさん04/12/27 18:09:33ID:???
おしえてくだせぇ〜
セッション変数っていうのはいつ削除されるものなのでしょうか?
削除するロジック通らないとずーっと残ってるのですか?
0105nobodyさん04/12/27 18:51:34ID:???
マニュアル読んでいってるんだよね?
ググってからいってるんだよね?
0106nobodyさん04/12/27 19:17:09ID:???
>>92
pconnectの性質を理解して使っている上での
問題点は特に無いけどね<MySQLでの

ただ、Sybase特有の現象というのも腑におちないのだが。
あれはPHPの永続的リソースの仕組みが賄っている機能であって
特にDBMSに依存するものでもないから。だから問題があったとしたら
Apacheとかhttpdに絡む部分が影響したのだと思う。
01079204/12/27 19:45:25ID:???
>>106
返信ありがとうございます。

もしかしたら、これ?という記事を見つけました!
ttp://blog.drecom.jp/saito/archive/101#comments

前に遭遇したのが本当にこれなら、
4.3.4以上で解決ってことですね。
01089204/12/27 19:56:33ID:???
あれ?でもこれPostgresSQLだけかなぁ…
0109nobodyさん04/12/27 20:28:30ID:???
>>107
そこからのリンクだけど
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
>>110
漏れだったら表示する件数に何件目みたいな番号を振る。
もちろん、表示させる必要はない。
奇数だったら、これを入れるみたいな感じでやるな。
志摩志摩にして見やすくするのもこの手でやってますがなにか?

php&mysql歴3ヶ月で初めて質問に答える立場になって
得意になってすいません。1ヶ月目のころこれで一週間くらい悩みますた。
0112nobodyさん04/12/28 00:46:08ID:???
>>111
それだと1つおきになるが・・・
110は1つ目と2つ目の間にだけと言っている
0113nobodyさん04/12/28 00:54:32ID:???
画像をアップロードするスクリプトを作り、
サイズ(200KBまで)制限かけて、幅と高さの制限はしてないのですが
サイズが3KBで幅と高さが1600×1600でアップできないのです。
幅と高さってデフォルトで制限されてるのでしょうか?
よろしくおねがいします。
0114nobodyさん04/12/28 00:58:03ID:???
>>113
あなたの発言の意味がわかりません。
スクリプト及びそのエラーをそのまま晒してください。
0115nobodyさん04/12/28 01:16:16ID:???
>>114
スクリプトではサイズ制限はしてますけど幅と高さの制限はしてません。。
エラーは出ません
011611304/12/28 01:27:19ID:???
言い忘れてました
ローカルサーバーではうまくアップできますが
外部のサーバーだと幅が大きすぎるとアップできません。
これってスクリプトの問題というよりサーバーの問題でしょうか?
0117nobodyさん04/12/28 01:50:09ID:???
こいつはもう放置でいいだろ
0118nobodyさん04/12/28 02:02:57ID:???
>>112
「奇数だったら」を「○の倍数」とでも置き換えれば良い事。
(○で割ったら余りが0か)

0119nobodyさん04/12/28 02:10:39ID:???
>>116
だから、あなたが何を言っているのか理解できる人間は、
このスレに存在していないので、
スクリプトをそのまま晒してください。
0120nobodyさん04/12/28 02:49:55ID:???
>>110
私も素人に近いから自信は無いヨ。

配列にどう持ってきてるかはしらんが
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:???
>>110
>120をコードにしてみると

$toukou =array();//投稿内容が配列に入ってる。
foreach($toukou as $key => $value) {
    echo $value;//書き込みを一件表示
    if($key == 0) {
        //1件目の書き込みの後に広告を挿入。
        echo $koukoku;
    }
}

こんな感じかな?
0125nobodyさん04/12/28 03:06:37ID:???
>>110
$count = 0;
foreach(*****){
  if ($cout++ == 2){
   addad();
  }


}
0126nobodyさん04/12/28 03:18:57ID:???
>>124
そんな感じです。まぁ自分が書くなら以下の感じでしょうか。

$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:???
(;´д⊂)タブ潰れたー2chの勉強が足りませんでした
01286204/12/28 06:53:48ID:64WbgjnW
a
b
c
3つのチェックボックスがあって、
チェックを付けたやつだけ、
inputボタンを押した後に表示したいんですが、
どうすればいいでしょうか?

例:aとcにチェックを付けたら、次の画面で、
aとcを表示させる。
0129nobodyさん04/12/28 06:55:32ID:???
>>128
【PHP】くだらねぇ質問はここに書き込みやがれ
http://pc5.2ch.net/test/read.cgi/php/1099322141/l50
013012804/12/28 06:55:52ID:64WbgjnW
すいません、私は62じゃないです。

あと、perlだと、フォームで同じnameで複数項目入力させても
配列に格納されます?
perlのスクリプトだとどうもそうっぽいので。
phpじゃこれは無理ですよね?
0131nobodyさん04/12/28 06:56:50ID:???
>>130
Perlのこと何でも聞いてきてよ
http://pc5.2ch.net/test/read.cgi/php/1012750353/
0132nobodyさん04/12/28 09:09:02ID:N/AEZ3tr
上に同じ
http://www.corleone-forever.jp/
0133nobodyさん04/12/28 11:30:33ID:???
>>130
無知は素直に入門書買えよ。
0134nobodyさん04/12/28 12:32:48ID:???
最近は試さないのが基本なの?
0135nobodyさん04/12/28 13:40:11ID:???
>>134
試してパソコン壊れたらどーすんだ?
0136nobodyさん04/12/28 14:00:20ID:???
Cですらとりあえず試すおれは勇者?
0137nobodyさん04/12/28 15:03:30ID:???
質問者はテンプレ嫁(>>14)話はそれからだ。
0138nobodyさん04/12/28 15:07:42ID:???
今日びPCが壊れるなんて、どういう処理したらなるんだよ。
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:???
http://www.itmedia.co.jp/news/articles/0412/28/news006.html
PHPのコード問題を突くSantyワームの亜種が出現

> こうした攻撃を防ぐためには安全なやり方で「include()」と「require()」機能を
> 使うよう、サイトのコード修正が必要になるかもしれない。

で、どうしろと( ゚Д゚)?
0143nobodyさん04/12/28 17:09:33ID:???
>>142
>サイトの設計者がこの機能に受け渡すパラメータを十分チェックしないまま使っていた場合、
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:???
いやいやこのスレの質問のレベルからして・・・・
0148nobodyさん04/12/28 19:12:18ID:???
>>144がなんで危ないの?
0149nobodyさん04/12/28 19:23:11ID:???
エラーが出て2chで質問するからじゃないかな?
0150nobodyさん04/12/28 19:43:40ID:???
なぜ危ないかわからない>>148みたいなのが書いても動くからだろ。
0151nobodyさん04/12/28 19:44:52ID:???
>>144
includeの間違いじゃないか
0152nobodyさん04/12/28 19:49:55ID:???
>>144
似たような事はやってるなぁ…
0153nobodyさん04/12/28 21:40:18ID:???
>>148
クッキーで変な値渡されたり妙なPOSTが来たり得体の知れないGETが来たりすると
とんでもないモン include しちまうのがわからんか?
0154nobodyさん04/12/28 21:47:44ID:???
ありえんことでもないと思うけどな
ネットにあるプログラムには驚くほど低レベルな物もあるからね
0155nobodyさん04/12/29 08:06:36ID:???
http://www.devshed.com/c/a/PHP/PHP-Security-Mistakes/
↑みたいな書き方してるところだとアウトってこと?
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:???
PHP 4.3.0より前のバージョンのWindows版PHPは、現在この関数に関してリモートファイルアクセス機能をサポートしていません。これは、allow_url_fopenを有効にした場合でも同様です。

は、関係ないかな?
0159nobodyさん04/12/29 14:10:29ID:???
テキストファイルに1行に複数カラムでデータを保存するとき分割文字列はどうしてますか?
コンマだとデータの中にコンマが入っていた場合、読み出すときうまくいかないので困ってます。
0160nobodyさん04/12/29 14:18:22ID:???
>>159
とっても繰り返されてる話題だが、俺はタブ。
016115904/12/29 14:28:33ID:???
>>160
レスありがとうございます。
たしかにタブならデータから除去してもいいし、スペース4つにおきかえてもいいですね。
参考になります。
0162nobodyさん04/12/29 14:34:25ID:???
>>159
チョット前の議論ででたのは、

「,」「\t」「<>」「\0」
あたりだったかな?

俺は時と場合で、どれも使てる。
016316204/12/29 14:36:51ID:???
データ自体を登録する段階で、[,]を[,](半角⇒全角)に変換してしまう、
というのも、場合によってはアリ。
0164軟式PHP04/12/29 15:10:28ID:???
最近はシリアライズが多い。
0165nobodyさん04/12/29 15:33:01ID:???
serializeだとPHP以外でデータ使おうとするとき面倒じゃない?
データキャッシュつくるときなんかは簡単でいいけど
0166軟式PHP04/12/29 16:14:45ID:???
それがデメリットかなぁ。他のファイルで使いたい時は
戻してから指定のフォーマットに再出力みたいなことしてるけど。
0167nobodyさん04/12/29 16:17:57ID:???
¾
0168matz04/12/29 21:22:50ID:???
ttp://www.rubyist.net/~matz/20041227.html
しかし、しつこいくらい繰り返しているが「PHPの良さ」はどこにあるのだろうか。
0169nobodyさん04/12/29 21:48:42ID:???
PHPはPerlより書きやすいなぁ、それだけ
0170matz04/12/29 22:49:21ID:???
Perl と比べればね。でも Ruby ではどうでしょう。
0171nobodyさん04/12/29 22:59:36ID:???
phpはかなり広まったからライブラリが充実してていいんだよ
あとはくだらない質問スレでやったらどう?なんの生産性もない話題だし
言語信者が流れ込んできて荒れるだけ
0172nobodyさん04/12/29 23:43:21ID:???
>>157
その穴を突いたワームが出てきたことが新しいんだと思う。
以前は突くツールはあったんだけど、使う相手はクラッカーが探して
手作業で行ってたのが、自動化によって被害の増大が懸念されるから。
0173nobodyさん04/12/29 23:48:33ID:???
>>168
自分にとっては最も扱いやすい。
これ以上の良さがどこにあるだろうか。
0174nobodyさん04/12/30 00:12:59ID:???
Ruby と PHP が使える人とじゃないと話できないしね。
0175nobodyさん04/12/30 00:32:06ID:???
phpはできて当たり前みたいな感じだからなー。
0176nobodyさん04/12/30 02:01:59ID:???
デザイナの俺でもすぐ覚えられたし、なんつーか手軽に楽したいものに便利だね。
バリバリのWebアプリじゃなくてヘッダーとフッターを各ページに入れますとか
そんな些細なことを手軽にできるのがいい。
0177nobodyさん04/12/30 09:28:00ID:???
>>176
ruby は試した?もし試したら覚えるのに何がネックだった?
0178nobodyさん04/12/30 09:29:41ID:???
ホスティングサービスでRuby入ってるところ少ないよなぁ
試す気も起きん
0179nobodyさん04/12/30 13:11:29ID:???
オブジェクト指向ワカンネ…
0180matz04/12/30 14:36:42ID:???
>>178
試す気が起きん、のはなぜでしょう?
179 の言うように OO 分かんね、ということ?
0181matz04/12/30 14:37:38ID:???
>>173
どういった部分が ruby と比べて最も扱いやすかったですか?
0182nobodyさん04/12/30 14:41:16ID:???
>>180
PHPはホスティングサービスでほぼどこでも使えるので覚えようと思うんだけど
Rubyはあまり聞かないから覚えようと思わないんです。
作ったスクリプトはどこでも使えなさそうだから使いまわしできなさそうだし、配布してもRubyスクリプトイラネって言われそうだし
そもそもRuby使える無料ホスティング知らないです。
0183nobodyさん04/12/30 15:25:10ID:???
>>181
幾つかあるが、最大の理由は
俺がRubyを初めて知ったとき、既にPHPを覚えてから2年くらい経っていた
ってこと。

結局、Rubyをやってみても2年分のハンデを埋めるほどの魅力は感じなかったし、
それならば無理にRubyに移行する必要もない。
あとはPHPの方が関連書籍も多いし、海外にも浸透してるし、業務でもそこそこ使える。
Rubyの痛いところは、業務で使おうとするとプログラマが集まらないところだ。

言語ってのはシステム要件を満たすための手段に過ぎないんだから
(個人でやるならともかく)広く浸透してる言語のほうが扱い安く感じるのは当然かと。
0184matz04/12/30 16:09:22ID:???
>>182
・環境がない
>>183
・すでに覚えたものがあるから
・情報、実績、ユーザが多い
・広く使われているからなんとなく
は理解できます。

「言語ってのはシステム要件を満たすための手段」に関しては、
道具を選ぶ、という視点が抜けていますね。

両者、ありがとうございました。ちなみに私はあの matz ではありません。
0185nobodyさん04/12/30 20:21:50ID:6yNCCVX0
(;´д`)
0186nobodyさん04/12/30 20:50:50ID:???
ギガワロス
0187nobodyさん04/12/30 20:52:09ID:???
>>184
なんで、そんなに偉そうなんだ?
0188nobodyさん04/12/31 12:55:06ID:AnxsV/s9
すみません、pg_connect()についての質問です。
ホスト名を指定すると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:???
>>188
単にホスト名で接続(tcp/ip)を拒否してあるんじゃないの?<unixドメインソケット接続のみ
エラーに関しては、マニュアルのPostgreSQL関数 辺りを読めば分かる。
つーか接続の仕方(tcp/ip、unixドメインソケット)の話もそこに載ってるから
全部見てくる事をお勧めする。
019018804/12/31 13:49:21ID:???
>>188
わかりました。PHPマニュアル「LXXXIV. PostgreSQL 関数」の章にヒントが書いてありました。

つまり、PostgreSQLはデフォルトでUNIXドメインでの通信(プロセス間通信)しかできなくて、起動時に-iオプションを与えてやらないとインターネットドメインでの通信(TCP/IP)の通信ができない、
そしてpg_connect("host=$host")と指定すると後者の通信を試みて失敗するということですね。

これはFAQなんだろうなあ。でもこれはわかりにくいぞ。
019118804/12/31 13:50:19ID:???
>>189
おっしゃるとおりです。タッチの差でしたね。
どうもありがとうございます。
0192nobodyさん04/12/31 18:54:26ID:???
PHPとPostgreSQLでprepared statementは使えますか?
JDBCとかでは使えるみたいなんですが。
0193nobodyさん05/01/01 02:21:51ID:2vKgKMWC
>>192
SQLiteなら、余裕で使えます。
0194nobodyさん05/01/01 04:15:07ID:xFPnJTv3
<?php

echo "あけおめ!";

?>
0195nobodyさん05/01/01 05:11:40ID:???
Warning: Invalid argument supplied for foreach() in

配列になる場合もあるし、配列にならずに1つの場合もある
変数aで foreachして、配列じゃない場合、上記のような
エラーが出ます。
エラーは出ててもスクリプト上は機能してますが、
これはちゃんと配列の場合とそうじゃない場合で
分岐するよう修正した方がいいんでしょうか?

それとも@でエラー表示させないだけでいいでしょうか?

みなさんならどうします?
0196nobodyさん05/01/01 06:01:05ID:???
>>195
>配列になる場合もあるし、配列にならずに1つの場合もある
こんなことになる書き方がそもそもの間違い。
分岐とかじゃなく、配列は配列として使え。
要素が一つしかなくたっていいんだから。
019719505/01/01 06:46:33ID:???
>>196
フォームから name="name[]"で受け取った配列は
要素がひとつのとき配列ではなくなるようなんですが・・・
0198nobodyさん05/01/01 07:30:54ID:???
>>197
うちじゃちゃんと配列になるが?
例え配列にならないとしても、処理の部分でどうこうするんじゃなくて

$name = is_array($_REQUEST['name']) ? $_REQUEST['name'] : array($_REQUEST['name']);

とかフォームデータを取り出す時に何とかすればいいだけだと思うが
0199 【大吉】 【51円】 05/01/01 13:55:39ID:???
ん
0200 【大吉】 05/01/01 22:56:40ID:???
さて
0201nobodyさん05/01/02 21:49:55ID:???
>>193
回答ありがとうございます。
でも知りたいのはSQLiteではなくPostgreSQLなんですが。
0202nobodyさん05/01/02 23:29:35ID:???
>>192,201
バージョンが書いてないので何ともいえないが、
PEAR DBパッケージにはprepareが実装されてるはず。
0203nobodyさん05/01/03 03:27:16ID:???
>>201
PostgreSQLはよう知らんけど、見た感じではpg関数としてはない。
PEARにあるとしても、本当の意味(DBMSの持つクエリの効率的な処理機能)での
プリペアは使えないと思う。
0204nobodyさん05/01/03 05:09:51ID:KLuklu8E
echo "¥"";
で、出力結果が
"
となって欲しいんですが、文字コードをUTF-8で作成するとエラーになってしまいます。(euc-jpだと平気でした)
UTF-8だとエスケープシークエンスを全般を認識してくれないようなんですが、原因および回避方法を知りたいです。
020520405/01/03 05:33:21ID:???
UTF-8だと、「¥」と「(バックスラッシュ)」のコードが違うということっぽいですね
Macの場合どうしたらバックスラッシュを入力出来るんでしょうか。コピペしても「¥」になってしまい・・
0206nobodyさん05/01/03 05:35:20ID:???
>>205
右下のキーおしてる?
0207nobodyさん05/01/03 10:17:56ID:???
>>202,203
どうもありがとう。やっぱりPostgreSQL用の関数としてprepared statementがサポートされてないんだから、PEARでもサポートできるわけがないよね。

まあいいや、PEAR DBにはpreparetd statementはなくてもプレースホルダがあるから、それだけでもありがたいと思うことにする。

ところでおれは生のPostgreSQL用関数かPEAR DBしか触ったことないのだが、PEAR DBを超えるようなお勧めのライブラリなんかあったら教えてください。
0208nobodyさん05/01/03 13:10:58ID:???
>>205
ことえりOFF(U.Sにする)で、Option + ¥ でバックスラッシュになる。
ただし、エディタによっては文字化けするので注意。
0209nobodyさん05/01/03 14:26:15ID:1pWPK0qt
RAPって使ってみたことある人いる?
RDF 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
本文中に出てくる社名にリンクを貼る作業をしています。
特定の社名が出てきたらあらかじめ別ファイルに設定しておいた
リンク先に勝手にリンクを貼ってくれるようなことって出来ないでしょうか?
そうすれば仮にある会社のリンク先が変更になっても
読み込んでいる元ファイルだけを変更すれば全てに反映されると思います。
0213nobodyさん05/01/03 18:53:41ID:???
>>212
>>210
0214sage05/01/03 19:42:11ID:KSsMVUlG
【PHP】くだらねぇ質問はここに書き込みやがれ
http://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:???
>>212
Web制作板から来た人かねぇ。
「出来る 出来ない」で聞かれたら「出来る」ってことになるけど、
既存のCGIでそういうものがあるかどうかって聞かれると
「どうだろうねぇ。探しても無いなら無いんじゃないの?」ってことになるかなぁ。
内容的にはかなり簡単な部類に入るので自分で作ってみるのもいいかと。

>>214
やりたい事が見えてこないから適当に答えるけど、それはSQLで解決できないような事なの?
021621405/01/03 20:49:00ID:???
DBの件数が1000万程度までいってしまっているためselect→mysql_resultをfor文で
まわすことが非常に効率悪いのではないかと思いまして。
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]);}
}
021721205/01/03 21:36:15ID:???
>>215
> Web制作板から来た人かねぇ。

そうです。web制作板から島流しにあってここに来ました。

> 内容的にはかなり簡単な部類に入るので自分で作ってみるのもいいかと。

は、はぁ(;´Д`)
そうですか・・・
PHPで本格プログラムはしたこと無いのですが
似たようなプログラムを書いた人がいないとあっては
ここは一つ自力で解決せざるを得ないですか・・・・・・
0218nobodyさん05/01/03 21:47:13ID:???
>>217
この板はスクリプト生成代行でもなければ、既存スクリプト検索代行でもない。
自分でコードを書いている人意外は厳しいよ
0219nobodyさん05/01/03 21:50:21ID:???
>>217
file()、preg_split()、preg_match()、preg_replace()くらいかな使うのは。ガムバッテネ。
0220nobodyさん05/01/03 21:52:17ID:d8mbNFJz
apache2.052にphp4.3.9入っていたんですが、今日4.3.10ぶちこんだんですよ。
んでapache再起動させたら
「mod_php4.cがねぇよ」
とか言われたんで、add module mod_php4.cコメントアウトしたらエラー吐かなくなって
見たところ正常に動いてるんですわ。
何これ、4.3.10からいらなくなったの?
022121705/01/03 21:58:21ID:???
>>219
> file()、preg_split()、preg_match()、preg_replace()くらいかな

ラ、ラジャー(;´Д`)デス
0222nobodyさん05/01/03 22:00:05ID:???
>>216
DBに任した方が速そう。
UPされたデータをテンポラリテーブルに全てぶち込む。
SELECT word FROM TempTable WHERE NOT EXISTS (SELECT * FROM ngTable WHERE ngTable.ng=TempTable.word);
で得たwordをファイルに書き出す。ファイル<->Table間のやり取りが容易(SQLにCOPYなどがある)なら、
DBで直接ファイルを吐き出すのもアリかな。
0223nobodyさん05/01/03 22:30:17ID:???
>>220
最近だといらない。
0224nobodyさん05/01/04 08:15:24ID:???
>>220
apache2だといらない
0225nobodyさん05/01/04 23:55:41ID:AGCbPn2C
DB接続時にconnectするけど、接続後に明示的にcloseする場合と
しない場合なにか違いはあるのでしょうか?

0226nobodyさん05/01/05 00:08:14ID:???
ホームページは一般の無料鯖にて、少し容量の大きいファイルは自鯖において
ホームページからリンクを貼ってダウンロードできるようにしています。

ところが自鯖は24時間立ち上げっぱなしというわけでは無いので
時間帯によってはリンクが切れているときもあります。

そこでPHPを使ってリンクがアクティブの時はダウンロード可能にし、
自鯖をダウンさせているときはダウンロードできない旨を表示させたいのですが
可能でしょうか?できれば1〜3秒以内にそれらの判定をして表示させたいです。
0227nobodyさん05/01/05 00:21:18ID:???
>>226
file_get_contentsとかfsockopenとかでアクセスしてみたら?
タイムアウトとか設定できた希ガス
0228nobodyさん05/01/05 00:27:11ID:???
「ダウンロードできなかったら鯖落ちてますんで後日どうぞ」

って一言書けばすむ話では?
022922605/01/05 01:18:25ID:???
>>228
> 「ダウンロードできなかったら鯖落ちてますんで後日どうぞ」
> って一言書けばすむ話では?

まぁそれが一番簡単なんですが小さめのファイルは無料鯖にう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のコードに対する動作不良、エラーが出てしまうなどはここ。

■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
023222605/01/05 01:36:07ID:???
>>230
なるほど。JavaScriptでも可能ですね。
もしかしたらPHPよりJavaScriptで実装した方が動作速度は速いかもしれませんね。

>>231
了解です。以降「くだらねぇ〜」に以降いたします。
0233nobodyさん05/01/05 05:00:47ID:???
>>225
DBMSとの接続を切るタイミングの違い。
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:???
4.3.10が出たよ。
0236nobodyさん05/01/05 09:22:00ID:???
??
023721405/01/05 10:21:35ID:???
>222
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:???
>>237
http://dev.mysql.com/doc/mysql/ja/Rewriting_subqueries.html
0239nobodyさん05/01/05 11:42:05ID:k/OgHA/y
好きなRSSを巡回して、
RSS情報をmovabletypeへ投稿できるスクリプトないですか?

SPIDERING HACKSにはあるが、PERLなんだよね・・・
PHPはないかな?
0240nobodyさん05/01/05 12:14:31ID:???
>>234
単なる文字。
pearのHTML_Template_Flexyなんかを使うと、
変数の置き換え場所の指定に{}が使われることもある。
どこかのページや本を参考にしてると思うけど、
最初から全部見た方が良いでしょう。
0241nobodyさん05/01/05 12:23:56ID:???
>>239
スレ違い
0242nobodyさん05/01/05 14:21:31ID:pRFKvcsa
XML_Parser クラスを継承して XML パーザを作っています。
このときに、XML のデータの中におそらく文字化けでコントロールコードが入ってしまっているときに
その行で解析をストップしてしまうようなのです。
日本語は正しく通ります。(shift-jis の XML を読んでいます)

何か回避方法はありますでしょうか。
0243nobodyさん05/01/05 14:23:10ID:???
>>242
読む前にチェックしたら?
0244nobodyさん05/01/05 14:26:01ID:pRFKvcsa
このクラスの使い方だと
$p = &new myParser();
$p->setInputFile($url);
$p->parse();
というように、URLから直接読んでいるので
チェックするには読んだデータそのままを扱わないといけないのですが、
それだとクラスの一部を書き換えないといけないのでしょうか
024522605/01/05 14:32:22ID:???
>>227
> 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
phpBBのような、掲示板、PM(のようなもの)などがセットになった
アプリケーションは他に何がありますか?

ご存知の方がいっらっしゃいましたらご教授ください。
0247nobodyさん05/01/05 15:20:24ID:???
xoopsとか?
てかスレ違いって言われるだろうから、早く帰りな。
0248nobodyさん05/01/05 15:22:41ID:???
>>245
5秒
0249nobodyさん05/01/05 15:42:47ID:???
>>245
正常な一般人が、ストレスを感じず待てる時間は5秒だと聞いた。
025024605/01/05 15:46:24ID:PjWbP+V8
>>247
どこの板にいくのがいいの?
0251nobodyさん05/01/05 15:50:14ID:???
8秒ルールなんてものもある。
で、fsockopenのtimeoutはコネクト可否の判定に使うんじゃなかったっけ?
ページサイズに関係してくる方は、socket_set_timeout()かと。
0252nobodyさん05/01/05 15:52:47ID:???
>>250
この板なら
http://pc5.2ch.net/test/read.cgi/php/1099322141/
Web制作板なら
http://pc5.2ch.net/test/read.cgi/hp/1097762828/
あたりかな。
025322605/01/05 17:37:07ID:???
> 5秒

> 8秒

ヒィ----(;´Д`)
結構長いんですね。
プログラムの組み方が悪いのか>>245のPHPスクリプトを使うと
そのページ全体の表示に5秒あるいは8秒かかるようになって
しまうんですよね?
その他の画像や文章の部分は通常と同じ速度で表示され、
鯖の生死によって使い分ける画像の部分だけ5〜8秒表示に
時間を要す、なら問題ないとは思うのですが・・・
0254nobodyさん05/01/05 19:34:11ID:???
>>226
別にタイムアウト30秒に指定しても、
1秒でレスポンスが帰ってくれば、
1秒で完了するじゃん。

レスポンスを返す処理が長いのが問題であって、
タイムアウト設定の問題じゃないと思うけど??
0255nobodyさん05/01/05 19:38:17ID:???
>>254
ログ嫁
0256nobodyさん05/01/05 19:49:47ID:???
>>255
すまん。面倒だった。

反省してログ読み直し。

完璧にやりたかったら、
ステータスとして管理するしかないんじゃないかな?
自サーバーを落とすときは、
無料サーバーに「落とすよー」リクエストを送る。
自サーバーを起動したときは、
無料サーバーに「立ち上がったよー」リクエストを送る。

無料サーバー側のスクリプトで、その受け口を作る。
0257nobodyさん05/01/05 19:57:15ID:???
>>251が正しいこと言ってるね。
fsockopenのタイムアウト設定を1秒とかにしてみれば?
socket_set_timeoutは30秒とかで。
0258nobodyさん05/01/05 20:50:26ID:???
>>253
自鯖の重さによっても適正値は違うと思う
025923405/01/05 21:13:42ID:???
240さん、ありがとう。
結局、body1.htmlに書くのを止めて、
phpプログラム内で新たに{KEY2}を作りました。
026022605/01/05 23:22:58ID:???
>>258
了解しました。
自鯖の適正値を探してみます。
0261nobodyさん05/01/06 15:47:16ID:wyAV9mPs
PHPでトラックバックの送信機能を作りたいと思っています。
HTMLのフォームに<form action="対象URL" method="post">でなら出来るのですが
(サブミットボタンを押して、対象のトラックバックURLにデータを送信する)
手動でボタンを押すのではなく、スクリプトを実行すると送信できるように
するにはどうすればいいのでしょうか?
0262nobodyさん05/01/06 15:56:46ID:???
>>261
スクリプトの中でfsockopenとかを使ってHTTPのpostを実行すりゃいい。
参照すべきものは、マニュアルのfsockopenの項、RFC 1945,2068,2616。
026326105/01/06 18:27:43ID:???
>>262
そうでした。fsockopenを使えば出来ました。
滅多に使わなかったので、忘れていました。
ありがとうございます。
0264nobodyさん05/01/07 10:07:45ID:pxQ1ftA8
A → B → C 
とページ移動するとしてCからBに「ブラウザの戻る」を
できないようにするにはどうすれば良いでしょうか?
javaを使用する以外でお願いします。
0265nobodyさん05/01/07 10:17:56ID:???
>>264
セッション
026626405/01/07 11:18:38ID:pxQ1ftA8
>>265
ありがとう!解決できました
026726405/01/07 12:55:43ID:pxQ1ftA8
すいません
CからBに戻ったときCで指定したセッション変数を参照して
Cへheaderで戻るようにしたんですが戻ったときにブラウザの戻る
の履歴を見たときBのファイル名がありません。

Cで「ブラウザで戻る」→Bでheader→C
を繰り返しできるようにしたいのですが知恵をください
0268nobodyさん05/01/07 13:51:11ID:???
>>264
スレ違い

【PHP】くだらねぇ質問はここに書き込みやがれ
http://pc5.2ch.net/test/read.cgi/php/1099322141/
0269nobodyさん05/01/07 14:16:03ID:???
>>264
無理。
理由:各ブラウザで「戻る」の実装が違うから。
027022605/01/07 14:26:05ID:???
↓次のようなコードをhtmlの先頭部分に記述して自鯖がアクティブか否かを
 検出して、それに応じてアイコンの絵を選択するようにしました。

<?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:???
>>270
非常に逃げな選択だが、iframeを使うと出来るかもね。
俺はそれをやるくらいなら、ワンテンポ遅れても…良いと判断する。たぶん。
0272nobodyさん05/01/07 20:15:43ID:???
ステータスを調べるphpをimgタグで入れたらいいんじゃないの?んで画像出力すれば。
ロードできるまではjavascriptで「チェック中」とか出しとけば完璧。
027322605/01/07 20:45:20ID:???
>>272
>>270のようなプログラムを関数かなにかにし、imgタグの中で呼び出すという
ことでしょうか?そうすると一つ目のimgタグの前のパートまでのhtmlは
瞬時に呼び出されるということですね?

※htmlの先頭部分にimgタグがあればあまり速度的には変わらないかもしれません。
0274nobodyさん05/01/07 20:59:36ID:???
いや普通に<img src="status.php">でphp呼び出して分岐して画像出力すればいいでしょ。
Content-typeちゃんとだして。ブラウザにもよるのかもしれないけどhtmlは真っ先にでるはず。
0275nobodyさん05/01/07 21:07:29ID:???
Proxyログとかhttpdログとか見ると分かるけど、htmlとimageファイルは並列に別スレッドで同時に取得するんだよ
0276nobodyさん05/01/07 21:12:54ID:???
取得できてもブラウザがレンダリングできるかどうかはまた別の話でしょ。
テーブルの中身を全部とれないと表示できないダメブラウザがあるし。
0277nobodyさん05/01/07 21:28:41ID:???
imageに関しては画像を全部取得できるまで全くレンダリングが行われないブラウザってある?
0278nobodyさん05/01/08 02:02:55ID:???
>>277
動画gifに対応しなくていいということかい?
0279nobodyさん05/01/08 03:45:29ID:???
header("Location:");
028022605/01/08 10:54:23ID:???
>>274
今までの議論は自鯖が動いているか否かで表示する画像ファイルを
変更する方法について議論していましたが、そこから一歩進めて自鯖が
動いているか否かで

・ <a href="aaa.com"><img src="ON.gif"></a>
・ <img src="OFF.gif">

のそれぞれに割り振ることはできるでしょうか?
今までの議論だとhtmlとimageは別スレッドで並列に取得できるとの
ことでしたが、今回は一方に画像にリンクを貼っているのでhtmlと
imageを切り離し、html部分だけを先に表示出来るかが疑問です。
0281nobodyさん05/01/08 11:18:17ID:???
>>280
オマエは、全部人任せで自分で考えようとはしないんだな。
0282nobodyさん05/01/08 11:21:11ID:???
>>280
だからさ、一番最初に言われたとおりに、
自鯖からレン鯖へ定期的にリクエストを送って、
レン鯖で常に自鯖の稼動状態を保持しておきゃぁいいじゃねぇかよ!

最新の自鯖からのリクエスト時間を現時間、および前回リクエスト時間と比較して、
自鯖で設定しているリクエスト間隔を大きく上回っていたら、自鯖死亡。

たったこれだけのことを、なんでそう難しく考えるんだ?
0283nobodyさん05/01/08 11:24:31ID:???
ってか、PHP云々以前の話になってるな、
どっかいけや>>280。
ロジック見つけて、PHPでの具体的な実現方法になったら
また来いや



来ても、シカトだが(w
0284nobodyさん05/01/08 13:23:41ID:???
>>280
>>274 がその答えを出してくれているのだが。
画像リンクなんかはまた別のリクエストなんです
0285nobodyさん05/01/09 01:49:34ID:QFmRB+Xy
下記のようなソースでinnsert文は通るのにselect文が通用しません
mysql_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);
0286nobodyさん05/01/09 01:51:47ID:???
>>285
氏ね
0287nobodyさん05/01/09 01:58:51ID:???
>>285
クエリが通らない行では、実際に送信しているクエリはどういう風になっているか見てみた?
print("select address from ".$passwd); とかで
028822605/01/09 02:00:22ID:???
>>284
> >>274 がその答えを出してくれているのだが。
> 画像リンクなんかはまた別のリクエストなんです

そうしますと

<? (鯖死亡なら何も無し、生きていれば'<a href="misite.com/file_name/">'を表示) ?>
<img src="status.php">
<? (鯖死亡なら何も無し、生きていれば'</a>'を表示) ?>

とすればよろしいでしょうか(´・ω・`)?
0289nobodyさん05/01/09 02:11:09ID:???
<img src="dl_check.php">

--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:5gC8scbg
誘導されて来ました。
ttp://www.mt312.com/の写メール対応掲示板を設置してみたのですが
imgの読み込み許可してください。とエラーがでます。
色々設定を変えてみたのですが駄目でした。

【使用鯖】携帯用XREA
【ディレクトリ構造】配布元に書いてあるとおりにしてます。
/public_html/img
【パーミッション】配布元に書いてあるとおりにimgフォルダを707に設定

よろしくお願いします。
0291nobodyさん05/01/09 07:14:48ID:???
>>290
氏ね
0292nobodyさん05/01/09 10:07:48ID:???
>>290
パーミッション。っていうか、作者に聞け!氏ね!
0293nobodyさん05/01/09 10:09:08ID:???
>>285
オマエも氏ね!くそマルチ
029422605/01/09 14:46:19ID:???
>>289
すいません。>>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全体が表示
されないというところですね。おそらく上記のスクリプトのところで自鯖の
生死の判断を下す間止まってしまうのでしょうね。
0295nobodyさん05/01/09 15:14:27ID:???
>>294
こいつ・・・気持ちわる。
0296nobodyさん05/01/09 15:26:19ID:???
我田引水、自己中心、唯我独尊

>>294 = ○○ガ○
0297nobodyさん05/01/09 17:36:02ID:???
iframeにでもしとけばぁ
0298nobodyさん05/01/09 20:48:00ID:???
>>294
それで、言いたい事は?
0299nobodyさん05/01/09 20:49:05ID:???
答えられない雑魚は引っ込んでろよ
0300nobodyさん05/01/09 20:53:46ID:???
まさに自己中心的だな
030129405/01/09 21:10:50ID:???
こんな屑ばかりのスレで聞いた私が愚かでした。
さようならゴミ共
0302nobodyさん05/01/09 21:19:40ID:???
途中経過は、どうであれ、>>297が全ての解決方法を提示しているじゃないか。
0303nobodyさん05/01/09 21:37:51ID:???
丸投げしか能のないやつは失せろ、と
0304nobodyさん05/01/09 21:50:15ID:???
今、PukiWikiのソースを読んでいるんだけど、ちょっとよくわからない部分があります。

plugin/attach.inc.phpのAttachPagesクラスの中で$this->pages[$page]->toString($flat)みたいに"->"
を二回書いている部分の意味がわからないんで教えてください。

#ソースはちょっと長すぎて貼れなかったorz
030522605/01/09 21:56:20ID:???
すいませんでした(;´Д`)・・・

> それで、言いたい事は?

言いたかったことは>>294のコードを埋めるとその部分で処理が終わるまで
htmlの表示がストップすることです。htmlの部分だけさっさと表示してphpの
コードの部分はおいおい処理して表示されるのであれば全く問題無いはずです。

一方画像の表示だけならば>>289さんが提示された方法や>>230さんのJavaScript
を使う方法を用いれば本文とは別スレッドで実行されます。ただ画像だけでなく
リンク部分も含めて制御するとなると本文にも絡んできてしまうため簡単に別スレッド
とはいかないようです。

>>302
iframeに関してはまだ疎いのですがそれが唯一の解決方法でしたら
採用してみます。以前iframeはあまり使いたくないと言っていた人がいたのも
気になりますが・・・
0306nobodyさん05/01/09 22:09:07ID:???
>>304
クラスの中にクラスがあるんだよ
0307nobodyさん05/01/09 22:19:26ID:???
>>304
ソース見てないけど
$this->pages[$page]がなんかのオブジェクトなんじゃないの?
0308nobodyさん05/01/10 02:59:48ID:???
禁煙したら机とキーボードが綺麗になった
0309nobodyさん05/01/10 04:12:25ID:???
>>305 >>282にでてるけど、
アクセス毎に毎回チェックするのは無駄だから、
ローカルサーバーの状態をファイルなどに保存しておくといよ。
サーバーのパフォーマンス低下に繋がるかもしれないし、共用サーバーならなおさら。

サーバー側でcronなどが使えないなら、ローカルから通知するように、
ローカルの方からサーバーに定期的にリクエストを送る。
サーバー側でリクエストを受けとったら適当なファイルをtouch()。
チェックはファイルのタイムスタンプで判断。といった感じで。

iframeやjavascriptでも見かけ上の読み込み時間は誤魔化せるけど、
一番ボトルネックになってる部分はfsockopenなのだから、そこの設計の見直しが必要。
0310nobodyさん05/01/10 06:08:39ID:???
>>305
結論から言えば、今のプログラミングの手法として
逐次処理を前程にしている以上、無理。
その仕組みを使うなら、判定をする部分を下へもってくる
(後の方で実行する)以外に解決方法はないと思う。
>>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 `──''''   :::|
031222605/01/10 17:28:49ID:???
>>309-310
プログラムが逐次処理である以上避けられない問題ですか・・・
了解です。借りてるレン鯖でcronが使えるかどうか確認してみます。
アドバイスどうもです( ´∀`)ノ
0313nobodyさん05/01/10 17:48:41ID:???
>>312
自鯖のほうでバッチ回して、レン鯖にリクエストかければ?
自鯖がLinux系ならcrontab だし、Winならタスクとか、
DiCeみたいなアプリを適当に使用するのも吉。
031422605/01/10 18:45:41ID:???
>>313
DiCEなら現在使っています。定期的にスクリプトを実行する機能が
あったんでしたっけ?それでレン鯖の特定のファイルを書き換えれるか
更新すればいいわけですね。
0315nobodyさん05/01/10 19:15:16ID:???
PHP 4.1.x から4.3.4にアップさせたところ、
error_reporting(E_ALL); と記述しているのにエラーを表示してくれなくなりました。
それどころか、Parse Error 等の文法エラーまで表示してくれません。

おそらくインストール時の初期設定か何かの問題だとは思うのですが、
どの辺りを調整すれば良いのでしょうか?
0316nobodyさん05/01/10 19:34:02ID:???
>>315
display_errors = Off

が設定されている
031731305/01/10 19:51:49ID:???
>>314
チト頭を使おう。
DiCeでIPアドレス検出方法を「指定したURLの表示内容から抽出」する。
レン鯖には、REMOTE_ADORESSを返すスクリプトを置いておく。
返すだけではなく、自鯖ステータスの更新処理も含めておく。
031822605/01/10 22:27:33ID:???
>>317
なるほどそういう使い方もありましたか。
DiCEから呼び出すスクリプトはこのスレッドらしくPHPで実現したら
格好いいですね( ´∀`)。

たぶん大丈夫かと思いますが全く関係ない他人がそのスクリプトにアクセス
してしまったら自鯖ステータスも更新されてしまうので簡単な認証手段を
こうじた方が安心かもしれませんね。
0319nobodyさん05/01/10 22:58:23ID:???
>>226
ここは馴れ合うスレじゃないぞ
なんかお前の書き込みは荒れそう
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:???
test
0323nobodyさん05/01/12 19:25:14ID:???
なんで過疎ってるんですか?
0324nobodyさん05/01/12 19:40:15ID:???
>>323
>>226のせいで、荒らされたから、静観
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:???
>>327
タイトルなどメールヘッダはmb_encode_mimeheader();
ttp://www.php.net/manual/ja/function.mb-encode-mimeheader.php
032932705/01/14 12:52:19ID:MY633uHv
>>328
ありがとうございます。

さっそく下記のようにして実行したのですが、もっと変になりました。。。

$enc_msg = mb_convert_encoding($message, 'JIS', 'EUC-JP');
$enc_sbj = mb_encode_mimeheader($subject, 'JIS', 'EUC-JP');

タイトルに文字コードが表示された感じに文字化けしました。。。汗
0330nobodyさん05/01/14 13:08:38ID:???
>>329
「RFC1522」を嫁。
もしくは、「メール ヘッダ エンコード」で具々れ。
0331nobodyさん05/01/14 15:07:44ID:???
>>327
長いタイトルを禁止する
0332nobodyさん05/01/14 16:10:28ID:???
$_SESSIONをグローバル変数がわりにしてもよいのですか?
0333nobodyさん05/01/14 16:11:27ID:???
オレが333ゲットズザー
0334nobodyさん05/01/14 16:11:54ID:???
>>332
(・A ・)イクナイ!
0335nobodyさん05/01/14 16:13:54ID:???
(´,_ゝ`)プッ  ・・・アッハッハッ八派はアアアアア母は母h
0336nobodyさん05/01/14 16:46:18ID:???
>>329
$subject を使っているのと、
そもそも PHP の mb_encode_mimeheader()、バグってると思う。
0337nobodyさん05/01/14 19:24:07ID:???
>>329
マニュアルをちゃんと読め。mb_encode_mimeheader の使い方が思いっきり間違っているぞ
0338nobodyさん05/01/14 20:32:24ID:???
普通に釣りだろ

釣りじゃないの?
釣りだと思う・・・・
釣りであることを願う
釣りじゃないとしたら・・・・
0339nobodyさん05/01/14 21:41:31ID:???
また独り言か
0340nobodyさん05/01/14 22:02:58ID:???
>>336
馬鹿じゃねーの?
お前程度のチンカスが遭遇するようなバグが残ってるとでもおもうか?

自分の使い方が間違ってるのに、思うように動かなかったらバグだって?
笑わせんな。どっかの斜め右上を行く国の住人と思考回路が一緒だなw
0341nobodyさん05/01/14 22:23:05ID:???
↑
チョン
0342matz05/01/14 23:55:07ID:???
>>340
某国人にママがレイプされて産まれた子なので某国人を恨んでいる
0343nobodyさん05/01/15 15:51:21ID:???
PEARのインストールに使う go-pear.php を読んでいて
面白い書き方を見つけたんだけど、標準入力を開くときに、

$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
<form name='form' method='post' action='./'>
<input type='checkbox' name='cu'>
<input type='submit' value='submit'>
</form>

チェックボックスを空でPOSTすると$_POST['cu']の空変数は
セットされないのですね。今日、はじめて気づいたよ^^;。
valueを付けたら良いのだろうか・・・やってみよ



034634505/01/16 00:47:54ID:???
valueを付けてもダメですね
$_POST['cu']の空変数を取り出せるタグの書き方等はあるのでしょうか?
0347nobodyさん05/01/16 00:53:48ID:???
>>346
hiddenで隠し持つしかないねぇ。(checkboxとhiddenで1セット)
0348nobodyさん05/01/16 00:56:15ID:???
>>346
受け取る側で使う前に

$cu = isset($_POST['cu']) ? $_POST['cu'] : '';

とかやってみるといいんでは?
034934505/01/16 01:26:50ID:???
>>347
checkboxに使う変数をhidden1つにカンマ区切りで纏めて送信する事にしました。

>>348
それがPOSTを受け取る側ではキーの部分が不特定になる構造なので空変数の
キーが必要だったのです。

0350nobodyさん05/01/16 02:55:33ID:ChEzpbOr
>>349
そういや、チェックボックスで漏れも痛い目にあったことあるな。
原因がわかるまで、4日くらい帰れなかった。
セッションとクッキーも絡めて使ってたから、一度チェック入れちゃうと
外してpostしてもチェック入った値が入るので大問題になった。
0351nobodyさん05/01/16 03:52:05ID:???
>>350
うはwwwレベル低すぎwwwwwwwww
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ファイルを扱うのははじめてなのです。

0353nobodyさん05/01/16 05:22:49ID:???
>>352
まず、マニュアル読め!
0354nobodyさん05/01/16 05:35:14ID:???
すげえな。「何が分からないのか分からない」という某CMをも超えてるぜ。ゴクリ
1. SQLを調べる
2. phpとPostgreSQLの連携を調べる
0355nobodyさん05/01/16 07:18:17ID:???
PHPじゃなくてHTTPの質問になっちゃうんだけど、
RedirectをさせたときにGETじゃなくてPOSTにさせることってできますか?
やりたいことはRedirect先にリクエストパラメータを渡したいだけなんで
Location: http://server/path/script?param1=value1
とすればいいんですが、パラメータをURLに出したくないので、POSTでできないかなーと。
0356nobodyさん05/01/16 07:51:28ID:???
>>355
リダイレクトの仕様上ムリ。
0357nobodyさん05/01/16 08:00:55ID:???
>>355
そゆときの為のセッション管理。
$_SESSIONを使う。
0358nobodyさん05/01/16 08:16:42ID:???
>>355
「リダイレクト先に指定のデータをPOSTするPHP(別にPHPである必要もないが)」へリダイレクトをかければ良いと思うが??
サーバーを跨がないのであれば、>>357が良いだろうな。
035935705/01/16 08:37:58ID:???
>>358
ああ、別に質問の条件にあったわけじゃないけど、
サーバを跨ぐ可能性ってのを完全に忘れてたYO。
036035505/01/16 14:34:54ID:???
>>356-359
どうもありがとう。別スクリプトを呼び出すなんて考えもしなかったよ。さんくす。
0361nobodyさん05/01/16 16:53:56ID:???
functionを作成する場合、引数の数を不定にすることはできるでしょうか?
やりたいこととしては、function に渡した引数が
Perl のサブルーチンのように配列に入ってくれれば良いのですが。
呼び出し元では配列を使用せず、変数を列挙したいのです。

foo($a, $b, $c); // 3つとは限らない
function foo($array) {
// 引数を全て$arrayにセットしたい
}

呼び出し元から配列を渡せば良いことは承知ですが
何か上手い方法は無いでしょうか?
0362nobodyさん05/01/16 16:57:56ID:???
>>361
呼び出し元で、配列を渡したくない意味がわからない。
0363nobodyさん05/01/16 16:58:35ID:???
http://jp.php.net/func_get_args
036436105/01/16 17:43:21ID:???
>>362
$a, $b, $c, "aaa", "bbb" など、変数や固定値をまとめて渡したいのです。
これを配列やハッシュに代入してから関数に渡すと、
呼び出し元で配列への代入文を記述する必要がある上
ワーク配列を1つ作成しないといけません。
配列を渡したくない理由はその辺りです。

>>363
ありがとうございました。まさにこれです。
0365nobodyさん05/01/16 18:33:57ID:???
配列をセッション変数にした場合、$_SESSIONで受け取る場合は、どういう風になるんでしょうか?
例えば student という変数をarrayで配列宣言して、セッション変数に指定した場合、
$_SESSION['student']['no'] といった感じで $student['no']を受け取るのかと思いましたが
駄目なようです。
0366nobodyさん05/01/16 18:40:36ID:???
>>365
言ってる意味がわからん
$_SESSION['student']['no'] と $student['no'] はどうみても
別物にしか見えない
0367nobodyさん05/01/16 18:44:08ID:???
すいません。
要はセッションで配列変数を渡したいのです。
0368nobodyさん05/01/16 18:44:33ID:???
>>365
>例えば student という変数をarrayで配列宣言して、セッション変数に指定
これはどうやったんだよ
0369nobodyさん05/01/16 18:47:06ID:???
$a = array('a','b','c');
$_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:???
今のサーバーがPHP4.0.6の為に普通に session_registerで student をセッション変数にして
その後、 $student=array() で配列にています。
今後サーバーが変わって、PHPのバージョンが上がるために、今のうちに$_SESSIONで対応しておこうと
$_SESSION = $HTTP_SESSION_VARS
で $_SESSION にセッション変数を取り込んでいます。
0373nobodyさん05/01/16 18:57:42ID:???
駄目な奴ってほんと何をやらせても駄目なんだなあ
0374nobodyさん05/01/16 18:58:24ID:???
>>371
ハァ?
0375nobodyさん05/01/16 19:14:12ID:???
>>374
馬鹿ってキーでも欲しいのか
0376nobodyさん05/01/16 23:56:26ID:???
質問です
PHPでwindowsを操作することってできますか?
例えばFormのボタンをおすとコピー(Ctrl+C)などやりたい
0377nobodyさん05/01/17 00:02:37ID:???
>>376
夢離
0378nobodyさん05/01/17 00:06:38ID:???
>>376
サーバサイドとクライアントサイドの違いぐらい理解してください
0379nobodyさん05/01/17 00:12:44ID:???
CGIでも無理ですか?
じゃあ何だとできますか?
0380nobodyさん05/01/17 00:15:23ID:???
クリップボードなら JavaScript からいじれなかったっけ
0381nobodyさん05/01/17 00:22:29ID:???
>>380
IE限定でね。
0382nobodyさん05/01/17 09:05:14ID:???
>>380,381
ありがとう!!
IE限定だけどできましたっ
ちなみに別に開いてる窓をPrintScreenとかできないでしょうか?
0383nobodyさん05/01/17 09:17:27ID:???
>>382
スレ違い。
>>378を読んだあと他のスレ行け。ウザい。
0384nobodyさん05/01/17 09:48:42ID:???
関係ないけどJscriptね
0385nobodyさん05/01/17 09:51:39ID:???
初心者質問とかJスク質問スレとかあげだしかねんな。
0386軟式PHP05/01/18 12:44:00ID:???
最近はくだらねぇの方が活発になってるのかな?
スレ違いだけど↓面白かった。
ttp://www.blueshoes.org/en/developer/syntax_exam/
0387nobodyさん05/01/18 20:17:14ID:???
smarty の設定をclassを extends してディレクトリの場所を定数で設定している
のですが、定数が設定されていないようです。

PHPマニュアルによると、定数のスコープはグローバルのはずなのですが、
classや、extendsを使うとダメとかあるのでしょうか?
設定すれば、どこからでも定数を利用できると思っていたのですが違うのでしょうか?

よろしくお願いします。
0388nobodyさん05/01/18 20:47:38ID:???
>>387
【PHP】Smarty【Template】
http://pc5.2ch.net/test/read.cgi/php/1047225437/
0389nobodyさん05/01/18 20:56:05ID:???
>>387
定数の上書きは出来ない
つまり定数が設定出来ていない
smarty以前の問題
っていうか定数が何か理解してるのだろうか
039038705/01/18 21:47:37ID:???
>>388
smartyだけではなく、違うphpプログラムでも同じく定数が読めません。

>>389
ちょっと間違った書き方をしてしまいました。
定数の上書きはしていません。定数は書き換えられないということは
一応わかっていて、プログラムの最初の方で一度、defineで指定?設定?
しただけです。
それをrequireしたり、classになっているファイルから使おうとしても
使えなかったということです。

あり得るのでしょうか?


0391nobodyさん05/01/18 21:57:10ID:???
定数だとrequireする順番に依存しているのではなかろうか・・・
0392nobodyさん05/01/18 22:01:56ID:???
>>390
エラーでてないか?
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されてる。
039438705/01/18 22:28:58ID:???
>>391-393
ありがとうございます。
複雑なプログラムの中でなっているので、正確にどういう状態っていうのを
言うのが大変です。
ちょっと今コードを見たりデバッグしたりして調べています。

ちなみに
define("DATA",'test');
print "debug: DATA";

っていうのは、無理なんですよね?

print "debug:" . DATA;
ってやるしかない。
039538705/01/18 22:54:47ID:???
ヒアドキュメントで使おうとしていたからが、一つ。
あと、``の中で使おうとしていたのもありました。

この場合は、一回変数に入れるって方法で回避できそうです。
今日は時間がもうないので、明日までにコードをちゃんと見ておきます。
0396nobodyさん05/01/18 23:07:15ID:???
>>387
まずは、お前の頭の中のコードを見直して来い!
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:???
398です。
すみません。宣伝じゃなくほんとに質問なのですが、
アドレスを書き込んでもいいものなのでしょうか

会員登録ユーザーにRSSのマイブックマーク機能を提供し
RSSアンテナと、サイトの更新未読既読の自動表示など
盛りだくさんなのです。


0402nobodyさん05/01/19 17:30:03ID:???
>>401
なんでそこの管理人に聞かないの?
0403nobodyさん05/01/19 18:09:01ID:???
お伺いメールは出したのですがまだ返事はいただいてません。
すぐには来ないでしょうし、いただけたらラッキーぐらいの気持ちですが、
(先方は私に返事をする義理はないので、という意味で)
少しでも早く情報を得て勉強してサイト作りに取り掛かりたかったので
こちらにも聞いてみました。
0404nobodyさん05/01/19 18:42:30ID:???
>>403
こういうところで、情報は小出しにしない。
聞いているなら、聞いているという事を最初から書きなさいね。
0405nobodyさん05/01/19 18:51:09ID:???
未知のサイトがオリジナルかどうかなんて聞いてる時点でネタだろ
0406nobodyさん05/01/19 21:25:27ID:???
WinNT+Apacheで、PHP の共有メモリ関数 shmop を使って
作ったメモリ領域にC言語で作ったプログラムから、
アクセスしてデータ取得をしたいのですが、
可能なんですか?

Linux系のヒント(可能であるらしい情報)は見つかるのですが、
Windows系での情報がなかなか無くて困っています。
0407nobodyさん05/01/19 21:35:06ID:???
>>406
不可能です
040840605/01/19 21:58:27ID:???
>>407 さん
ありがとうございます。
そーですか。なんか別の方法を考えてみます。
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:???
>>410
そこのマニュアルに気づきませんでした。。。すいません。
それで、みてみたらピリオドはアンダーバーに変換されてしまうって書いてあるんですが、
ピリオドのままうけとれないのですか?
0412nobodyさん05/01/21 10:38:42ID:???
>>411
よく読んで実験汁
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:???
結局ピリオドの受け取りは無理なんですか
0415nobodyさん05/01/21 13:41:39ID:???
>>414
何がしたいんだ
0416nobodyさん05/01/21 14:47:33ID:???
>>414
>>413の言うとおりにすれば可能と思われ
それとも、なぜ現状ではピリオド付きでは
受け取れないのか理解できないとでも?
0417nobodyさん05/01/21 15:07:12ID:???
■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■

具体的なPHPのコードに関する質問はここ。

それ以外、コード以前の質問は↓

【PHP】くだらねぇ質問はここに書き込みやがれpart2
http://pc5.2ch.net/test/read.cgi/php/1105218084/

■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■

☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆
★                                               ★
☆ 新規質問は名前欄・メール欄を空にして行え                  ☆
★                                               ★
☆ 質問者が返信する際は、名前欄に「最初に質問したレス番号」を入れろ  ☆
★                                               ★
☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆
0418軟式PHP05/01/21 15:41:16ID:???
変数名にピリオド使う時点で精神衛生上よくないな。
0419nobodyさん05/01/21 15:52:54ID:6l6oJL9k
mail boxのメール数をチェックして、0なら何もしない、
1つでもあれば別のプログラムを実行する、
というスクリプトは実現可?
0420nobodyさん05/01/21 15:55:50ID:???
>>419
>>231 >>417
0421nobodyさん05/01/21 15:56:14ID:???
めくらでバカなの?
0422軟式PHP05/01/21 15:57:05ID:???
>>419
IMAPでも使っとけ。
0423nobodyさん05/01/21 16:00:06ID:???
>>419
可能ですが馬鹿には無理です。
0424nobodyさん05/01/21 21:03:41ID:???
ここが最近閑古鳥なのは、やはり元々くだ質へ行くような
質問ばかりしか無かったってことか?
0425nobodyさん05/01/21 22:40:18ID:???
だいたいある程度できる人は自力で解決しちゃうからねえ。
0426nobodyさん05/01/21 23:10:43ID:EgTTTyzS
http://pya.cc/pyaimg/
直してください。
0427nobodyさん05/01/21 23:13:05ID:???
>>426
ババアのマンコ画像 有害
0428nobodyさん05/01/21 23:13:27ID:???
>>426 は、ただの宣伝
0429nobodyさん05/01/21 23:45:43ID:???
>>426 のドメインはあぼーん指定しました。
>>427-428 人柱あり!
0430nobodyさん05/01/22 01:53:06ID:???
pyaはこんなとこで宣伝しなくても十分メジャーだろ。
0431nobodyさん05/01/22 01:54:35ID:???
pyaの中の人乙
0432nobodyさん05/01/22 02:53:34ID:???
セキュリティ問題になるかもしれないエラー表示を
なんで本人がこんなとこで公表するんだよ
0433nobodyさん05/01/22 07:19:46ID:???
ソースわからんと直せない
0434nobodyさん05/01/22 12:39:37ID:Drlw2rEk
sessionってどこまで持つの?
1つ目の画面でsession_startして2つ目の画面で設定して
10個目の画面で参照しても大丈夫?
0435nobodyさん05/01/22 13:20:50ID:???
>>434
タイムアウトまで


ていうか、こんな質問ばっかだな。。
0436nobodyさん05/01/22 16:04:36ID:JnEFpsgm
phpのコーディングをもっとうまくできるようになりたいので、
他人がつくったソースを参考として拝見して、勉強したいのですが、
「このソースを参考にしたらいい」っていうおすすめあります?

なお、速さ重視より保守性重視なほうがいいです。

ふとおもったんですが、pearとかどうなのかな???
0437nobodyさん05/01/22 16:48:55ID:???
>>436
>>417
0438nobodyさん05/01/22 17:04:02ID:???
つるし上げ覚悟で書きます。

リダイレクトができません。

↓これであってますよね?
header("Location : http://192.168.xxx.xxx/xxxx/xxx.php");

何か他で、設定とかいるんですか?
0439nobodyさん05/01/22 17:18:01ID:???
>>438
書いてる場所によるな。
0440nobodyさん05/01/22 17:24:02ID:???
>>438
>>231
0441nobodyさん05/01/22 17:41:14ID:???
もう>>231は「知ってる人から見れば」を「俺から見れば」に変えようぜ
0442nobodyさん05/01/22 17:43:20ID:???
あたらしいテンプレ

      ・自分で考える

      ・他人に聞かない

      ・グーグル
0443nobodyさん05/01/22 18:18:32ID:???
>>439
ありがとう。
なんとなくわかった。
試してみます。
0444nobodyさん05/01/22 18:47:46ID:???
>>443
だめだった。
<?php
header("Location : http://XXXXXX/XXXX/XXX.php");
?>
これだけの実験なんだけど動かない。

続きは、くだらねえ質問スレ逝ってきます。
すみませんでした。
0445nobodyさん05/01/22 19:53:24ID:7Lald5Az
セッションで保存できるデータって、文字列や数字だけらしいのですが、配列や、もっと複雑な構造をしたデータ構造を保存するにはどうしたらいいでしょうか。
RDBは使いたくないんですが。
0446nobodyさん05/01/22 20:05:41ID:???
>>445
>>231>>417
0447nobodyさん05/01/22 20:23:30ID:???
このスレいらねぇから削除依頼ね。
0448nobodyさん05/01/22 20:31:02ID:???
>>442
>・他人に聞かない
質問スレなのにこれあり?

>>445
まず試せ。マニュアル嫁。

明らかに両方していない
044944505/01/22 22:31:44ID:TvWo965l
>>448
ここは質問スレ!!
答えたくないなら黙っとけ。
答えられなくても黙っとけ。
関係ないことは書くな!!
おまえのはただのスレ汚しだ。
0450nobodyさん05/01/22 22:33:40ID:???
>>449
スレ違い
>>231>>417
045144505/01/22 22:42:48ID:TvWo965l
>>450
何がすれ違いなんだ?
448の馬鹿にこのスレのルールを教えてやっているのに。
0452nobodyさん05/01/22 22:52:04ID:???
>>451
m9(^Д^)プギャーーーッ
0453nobodyさん05/01/22 23:15:11ID:???
>>449=451
偽物乙w
0454nobodyさん05/01/23 01:15:36ID:???
>>445
よくわからんが、答えるぞw
間違ってたらゆるしてくれ。

文字列をデリミタで区切ってつかう。

では駄目なのか?
だめなら誰かかわりに答えてやってくれ。
0455nobodyさん05/01/23 02:18:49ID:???
>>445
しつこい
0456nobodyさん05/01/23 02:29:54ID:???
リモートファイルのHTTPヘッダ取得は
PHP5のget_headers();しかないですか?

php4でリモートファイルのHTTPヘッダ取得が出来る方法があったら
教えてください。
0457nobodyさん05/01/23 02:37:09ID:???
>>456
PEAR使うか、ソケット関数でベタに書いて
HEADで取ってくるのもそんなに行数いらんで書ける。
0458nobodyさん05/01/23 12:44:26ID:???
filemtimeで拾得した情報は確かキャッシュされると記憶しているのですが、
スクリプト実行中にPHP以外の動作によって情報に変更が入った場合には
どうなるのでしょうか?
キャッシュした情報のみで処理されてるのかなぁ
0459nobodyさん05/01/23 12:59:11ID:v8YGggq/
質問です。
どうしてココのスレは性格の悪い人が多いのですか?
0460nobodyさん05/01/23 13:05:51ID:???
>>459
>>1
046145905/01/23 13:14:55ID:v8YGggq/
>>460
解決しました。ありがとう御座います。
0462nobodyさん05/01/23 14:24:03ID:???
>>458
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
PHP5.03(windows CGI版)で次のコードを実行すると正常に動作
しないのですが私の環境だけでしょうか?

<?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にする必要がある。
046546305/01/23 22:22:31ID:zrTgGnqo
>>464
なるほど。レスありがとうございます。
友人のlinux版では正常に動作したのですがwindows版だと
動作が違うのですかね。^^;
0466nobodyさん05/01/23 22:49:39ID:???
あれ、session_start()しないと、$_SESSIONは参照できないんじゃなかったっけ?
代入すれば自動的にsession_startするみたいだけど。
linuxの環境では自動スタートの設定になっていたとか?
0467nobodyさん05/01/23 23:12:58ID:???
>>465
うちのWoodyも5.0.3入れてるがWinと同じ動作。
その友人ので動いたとすれば、どこかで参照カウンタがゼロになったかのどちらかだと思う。
あるいはCVS版では既に修正されているかも。

とりあえずはregister_shutdown_func〜を使うか、unsetでオブジェクトを
破棄してデストラクトをコールさせるしかない。
0468nobodyさん05/01/23 23:47:03ID:???
>>467
微妙にアメリカンなレスだな
0469nobodyさん05/01/24 00:29:55ID:???
>>458
clearstatcache()
filemtime()関数の説明にも書いてある。

>>459
>>458みたいに1分でもマニュアル読めば分かるような事を聞く奴ばかりだと、
段々腹立ってくるから。
0470nobodyさん05/01/24 00:31:41ID:???
>>469
無理して答えなくていいですよ。たいした答えじゃないし( ´,_ゝ`)プ
0471nobodyさん05/01/24 01:08:27ID:eTYF+FRL
レンタルのフリーCGIで、裁判形式のBBS(たしか、ジャッジメントとかいう名前だったような)の配布サイトご存知の方、いらっしゃいますか?
サイトの場所、わからない;;
0472nobodyさん05/01/24 01:09:05ID:???
>>459の指しているのは、>>470みたいな奴なんだろうね…
0473nobodyさん05/01/24 01:09:49ID:???
>>471
ローカルルールを読んでみろ
0474nobodyさん05/01/24 01:10:29ID:???
>>471
板違い
Web製作板へ
0475nobodyさん05/01/24 01:10:48ID:???
くだらねぇ質問ばっかしてんじゃねーよ
0476nobodyさん05/01/24 01:21:12ID:???
その内このスレってさ、マニュアルへの個別リンク集と他スレへの誘導だけになりそうだな。(w
047746305/01/24 01:30:08ID:9W2iCmX2
>>466
__construct() 内でsession_startしています。^^;
047846605/01/24 02:16:23ID:???
>>477
見落としてた...スマソ
0479nobodyさん05/01/24 03:33:48ID:???
Parse error: parse error in cal.php on line *** (***は最終行)と表示されて
{}の閉じ忘れ、セミコロンのつけ忘れなど原因を調べてみても原因が分からず。
諦めモードで、試しにTabインデントをすべて削除してみたら何故か動いた。

こんな不思議なことが過去に何回かあったんだが、喪前らはどうよ?
0480nobodyさん05/01/24 03:41:20ID:???
>>479
Tabのつもりが全角スペースだったりしたんだろ
Webからコードをコピペしたりすると結構あるぞ
0481nobodyさん05/01/24 03:47:58ID:???
>>480
全角が含まれているかどうかもハイライト表示でちゃんとチェックした。
置換で \n\t を \n に置換しただけで何故か動いたから、その可能性はない。
0482nobodyさん05/01/24 03:52:14ID:???
知ったか乙
0483nobodyさん05/01/24 03:57:07ID:???
>>479
apache(とは限らないが)再起動してみ。
謎のエラーが発生する時それだけで治る事がある。
0484nobodyさん05/01/24 04:06:27ID:???
>>483
また同じようなエラーが表示されたら試してみるよ。
�dクス。
048547905/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:???
>>487
>EOTを禁止されてしまいました
EOTを禁止ってなんだ

>他にどのように書けばいいでしょうか?
普通にechoするなりphp構文の外に出すなりすればいいだろ?
俺には何が分からんのかさっぱり分からん
0489nobodyさん05/01/24 07:20:57ID:???
>>487
>EOTを禁止
printやらechoやらを使えば代替になるけど、禁止って何?
0490nobodyさん05/01/24 07:57:23ID:???
EOTがだめならOKASIにすればいいじゃない
0491nobodyさん05/01/24 08:06:38ID:???
>>487
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:gh8S2Koa
SSL経由(https)からのアクセスの場合と、
SSL非経由(http)からのアクセスの場合で
ifを使って処理を分けたいのですが、
この場合、どうすれば判断できるでしょうか?
環境変数ってやつを使うっぽいのですが・・・
0494nobodyさん05/01/24 12:10:42ID:???
>>493
apacheなら $_SERVER["HTTPS"] を参照。
0495nobodyさん05/01/24 14:05:08ID:???
>>492
おれは
if (!isset($_REQUEST['param'])) $_REQUEST['param'] = "";
と空文字をセットしたり
if (empty($_REQUEST['param'])) $_REQUEST['param'] = "初期値";
初期値をセットしたりしてる
0496nobodyさん05/01/24 14:34:57ID:???
>>495
なるほど、それだと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:???
>>496
どうでも良い事だが、俺は条件式の書き方が好き
$hoge = (条件) ? 1 : 0; ってやつね。
{}でくくってないif文はなんとなく嫌。
0499nobodyさん05/01/24 14:40:38ID:???
>>497
>>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:???
>>497
ゴメン。チト間違えた。

<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で
奈良と宮島と秩父にチェックを入れた場合
出力で
「奈良,宮島,秩父」という感じにまとめたいのですが、この場合のプログラムはどのように書いたらよいのか
分かりますか?
0502nobodyさん05/01/24 15:12:07ID:???
>>501
checkboxでnameが同じ場合はname=value\0value\0valueと渡される。
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の中身が配列であるのか、配列ではないのかを調べる関数ってあります?
0506nobodyさん05/01/24 15:33:49ID:???
>>497
ちなみに
$_POST["ckbox[0]"]
これはだめだろ
$_POST["ckbox"][0]
こうだろ
0507nobodyさん05/01/24 15:36:06ID:???
>>505
変数用の関数にある
050849705/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]
です。
0511nobodyさん05/01/24 16:05:05ID:???
>>505
ヒント:is_
0512nobodyさん05/01/24 17:22:57ID:???
>>496
ラップして未定義ならFalse
0513nobodyさん05/01/24 17:23:40ID:???
>>505
$flag=is_array($a);

これで$flagにTRUEが入ってれば$aは関数として取り扱われていることがわかります。
普通の変数だったらFALSEが返ってきます。
0514軟式PHP05/01/24 17:47:11ID:???
511が初心者を矯正中だったのに・・・w
0515nobodyさん05/01/24 17:53:11ID:???
>>514
いいんじゃない?

>>513こういう、お節介モノが、
優秀な技術者の芽の一部を摘み取っていくんだろうけど、
所詮、>>505みたいに「調べた」といってるわりに、
調べていない事がバレバレの教えて君なら、どう転んでも、
成長は見込めないんだから。
0516nobodyさん05/01/24 18:43:59ID:???
>>505の成長はどうでもいいが
厨房を増やす空気の読めない>>513は
死んでしまって欲しい
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:???
ImageMagickのconvertを
execを使用して実行してるんですが、
ブラウザでその処理を実行するリンクを2度押しとかしちゃうと、
ハングしちゃってるのか、そこで処理が止まったままになってしまうのですが、
この場合、どう対処してあげればいいのでしょうか?

execで実行中何度も実行するとまずいのですか・・・?
0521nobodyさん05/01/25 16:49:07ID:???
    ・初心者おことわり
    
    ・グーグルですべて解決

    ・回答は3ヶ月待ち

    ・自分で考えること

    ・自分で調べること

    ・人に頼らないこと
0522nobodyさん05/01/25 17:57:23ID:???
>>521
なにムキになってるんですか?
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軟式PHP05/01/26 16:03:01ID:???
in_array
0526nobodyさん05/01/26 16:15:02ID:???
【これまでのあらすじ】
サイト構築に際して重要なのは「構造」か!?「内容」か!?はたまた「理念」か!?
お馬鹿なWEB職人達の寒い議論は今日も止まらない。

ものすごろく頭の悪い発言をしてくさい5
http://pc5.2ch.net/test/read.cgi/hp/1106209097/105-
052752405/01/26 17:10:59ID:???
>>525
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:???
>>527
根本的に使い方がおかしい
マニュアルぐらい嫁
http://jp2.php.net/manual/ja/function.in-array.php
052952405/01/26 19:27:06ID:???
>>528
ありがとうございます。
あのマニュアルはいつも読むのですが、いつもわからないです...
あれでみなさん理解できているのですかねぇ。

needleの方の配列が、
1. どれかだけのマッチする場合だけ、TRUEを返すのか?
2. 全てマッチする場合だけ、TRUEを返すのか?

があれだけじゃわからないような...理解力不足でしょうか?

使い方もよくわからないです。
両方配列にしたらマッチしなかったので、>>527のようなコーディングを
してみました。

逆引大全も見ていましたが、配列が使えるとは書いてなかったです...
マニュアルの後の投稿されている英語のサンプルをちょっと読んでみます。
0530nobodyさん05/01/26 19:56:21ID:???
>>527

>Thx!!phpって楽ですねー。
楽なら聞くまでもないだろ
0531nobodyさん05/01/26 19:59:23ID:???
>>530
いちいちツッかんなよウゼー
0532nobodyさん05/01/26 20:00:02ID:???
おまえが低脳だからだろ
0533nobodyさん05/01/26 20:01:07ID:???
>>532
妄想乙
0534nobodyさん05/01/26 20:15:21ID:???
この手の馬鹿が増えてくると、段々と真面目にレスをしてくれる
ユーザーが減って行くんだよね・・・
0535nobodyさん05/01/26 20:18:54ID:???
>>534
妄想乙
0536nobodyさん05/01/26 20:20:40ID:???
空気嫁
0537nobodyさん05/01/26 20:21:32ID:???
おまえが嫁デブ
0538nobodyさん05/01/26 20:40:38ID:5qrlpz1Z
<?php
// カウンタファイル名の設定
$counterfile = "counter.dat";
// ファイルオープン。未作成の場合は新規作成。
$mode = file_exists($counterfile) ? "r+" : "w";

本に載ってたアクセス・カウンタの冒頭からのスクリプトなんですが、
$modeの行の後半の?と:の意味が解りません。他の本を
見てもネットで検索しても解説しているところを見つけられな
かったのですが、これはどういう意味があるんでしょうか?
0539nobodyさん05/01/26 20:57:22ID:???
>>538
3項演算子。それでググれば分かると思う。
0540nobodyさん05/01/26 21:21:27ID:???
>>538
$foo = $flag ? '1' : '2';
は
if($flag) $foo = '1';
else $foo = '2';
と一緒ってことだよ。
使い慣れるとめちゃ使い易いからガンバレ。
0541nobodyさん05/01/26 21:27:59ID:???
>>538
PHP 実践のツボ セキュアプログラミング編のやつか
0542nobodyさん05/01/26 21:56:15ID:???
phpって楽ですねー。
0543nobodyさん05/01/26 23:14:44ID:???
phpって楽ですねー(笑)
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:???
確かにPerlばっかやってからPHPに移転すると爽快な気分になる
0548nobodyさん05/01/27 01:17:44ID:???
うむ
0549nobodyさん05/01/27 01:22:17ID:???
そうかい
0550nobodyさん05/01/27 09:12:00ID:???
Thx!!phpって楽ですねー。
0551nobodyさん05/01/27 11:31:30ID:???
array_popとarray_shift及びarray_unshif及び$hoge[]=''
の処理速度の検証をされた方はいらっしゃいません
でしょうか?
何となく気になった・・・自分でやれよ!!笑
0552nobodyさん05/01/27 11:41:06ID:???
た、楽しい・・・ですねぇえぇぇええええ
0553nobodyさん05/01/27 12:22:11ID:9YUdbfEg
質問もないことだし無理してスレを進めなくてもいいんでない
0554nobodyさん05/01/27 12:30:41ID:???
>>553
>>551の立場が…
0555nobodyさん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\
0556T05/01/27 12:35:22ID:oDNRzBsV
質問です!!

GETメソッドによってURLにつなげて変数を他のページに渡す
場合、変数が丸見えになってしまうのを防ぐために、urlencode
などが使えるとのことですが、この関数では英数字以外の文字しか
エンコードしないのですよね?

となると、変数名および変数の値自体が全て英語や数字の場合、
urlencodeでエンコードしても意味がないと思うのですが、
英数字をGETで渡す必要があるケースで、セキュリティ上これを
丸見えにしないですむようなエンコードの関数、および方法は
ないでしょうか?

初心者のため、ご教授よろしくお願いします!
0557nobodyさん05/01/27 12:37:45ID:???
>>556
無い

↓ 次の質問どうぞ
0558nobodyさん05/01/27 12:40:18ID:???
変数じゃなくて$_GETのキーだろ。
んでその「セキュリティ上の理由」とやらを聞かせてもらおうか。
0559nobodyさん05/01/27 12:52:42ID:???
>>556
>変数が丸見えになってしまうのを防ぐために、urlencode

その認識に大きな誤りがあることを誰か指摘してあげてください。
0560T05/01/27 12:56:41ID:oDNRzBsV
すみません、最近やりはじめたばかりで知らないので。。。
そういう理由ではないんでしょうか?
0561nobodyさん05/01/27 13:26:45ID:???
>>556
urlencodeって記号とかの文字をそのままurlとして渡すと変になるからするんだよ。
暗号とかじゃないよ

0562nobodyさん05/01/27 13:31:27ID:???
>>560
インターネットを使う上での約束事にRFCというものがあって、
その中のRFC 2396 (3986でobsoleteされた?) に URL(URI)の事が書かれている。
URLに使える文字や使えない文字を含めたい時の扱い方も定義されていて、
それに基づいて作られたのがurlencode関数ってことになる。

で、>>556の質問については、セッションやcookieを使ったらいいんじゃないかな。
0563T05/01/27 14:08:51ID:???
>>562
GETで渡さなきゃいけないと言っているでしょうが。
質問をよく読んでください。
0564nobodyさん05/01/27 14:35:46ID:???
>>Tさん
ユーザに変数名を知られても問題無い様な仕組みにしないといけないんじゃないかな?



0565nobodyさん05/01/27 15:22:41ID:???
>556
>>557
0566nobodyさん05/01/27 16:13:48ID:???
GETでは見られてもよいセッションIDのみ使う
大事な情報はサーバ内でセッション管理
ってことだろ >>563
0567nobodyさん05/01/27 17:26:17ID:???
>>566
いんや〜〜・・・
入力フォームのmethodをgetにしないといけないんだろ。
(そんな状況は旧J-PHONE向けにしか思い当たらんが…)

ん?そもそも旧J-PHONE向けのサイトだったら、
引数付きのURLなんか見れないんだから、意味不明か…

「GETしか駄目」な状況が見えない…
0568nobodyさん05/01/27 18:03:38ID:Es6FJ1X7
>>517
>>513 のサンプル間違ってるか??
漏れ的には正しいと思うのだが??
0569nobodyさん05/01/27 18:04:06ID:???
あ? もう百回読んでこい低脳
0570軟式PHP05/01/27 19:49:35ID:???
>>567
DDI Pocket用(非ブラウザ)かも。なんかメール形式でコンテンツ飛ばすやつ。
0571nobodyさん05/01/27 20:08:34ID:???
かんすぅ〜〜〜〜、へんすぅう〜〜〜〜〜
ごっちゃごちゃぁ〜〜〜〜〜
057253805/01/27 21:23:09ID:???
(MySQLでドツボにハマり中で遅くなったっす。)

>>539 3項演算子っていうのか。何で本に載ってないんだろう。
オライリーの本なら載ってんのかなぁ。

>>540 丁寧にありがと。よく解ったっす。

>>541 そうだす。
0573T05/01/27 22:03:03ID:oDNRzBsV
おはようございます。こちらは今、朝です。。。
一晩寝て起きたら誰か私のフリして書き込まれてますね。
563は私ではありませんので。

561さん、562さん、564さんをはじめコメントいただいた方、
ご親切にどうもありがとうございました!!
なるほどです。勉強になりました。
(ちなみにほんもののTです。)
0574nobody05/01/27 23:32:06ID:???
>556
base64_encode()
base64_decode()
とかどお?

ttp://php.s3.to/man/function.base64-encode.html
0575nobodyさん05/01/28 11:18:07ID:7CVjKDTn
すみません。
PHPで、ある文字列に特定の文字が何個入っているか
調べてくれる関数ってありませんでしょうか?
0576nobodyさん05/01/28 11:25:30ID:???
substr_count()
057751305/01/28 14:07:03ID:???
>>513

>これで$flagにTRUEが入ってれば$aは関数として取り扱われていることがわかります。

× $aは関数として
○ $aは配列として

訂正してお詫び申し上げます。
057846305/01/28 16:43:24ID:6uyBWJ8D
PHPセッションを語ろうのほうで質問にいってきます^^;
0579nobodyさん05/01/28 16:43:45ID:???
まてよ せっかく調べてきたのに
0580nobodyさん05/01/28 16:49:11ID:???
関数が被ってるせいでは?
0581nobodyさん05/01/28 21:22:22ID:ox6Cyfvr
phpinfoを打ち出してみてハタと気づいたのですが
remote_hostは出せないんだろうか…(addrの項目はある)
0582nobodyさん05/01/28 22:22:53ID:???
>>581
サーバの設定によるでしょ

これ以上は板違い
0583nobodyさん05/01/29 12:21:24ID:???
げっとほすとばいあどあー
058457505/01/29 15:23:09ID:uZIEcNwj
>>576 ありがとうございました。
0585nobodyさん05/01/31 08:59:00ID:???
php.iniのerror_reportingの設定でパフォーマンスが変化したりするのでしょうか?
セキュリティ面でエラーを表示させない様にして、display_errors = Offとした
時に気になったのでエロイ人、教えてください。
スクリプトを書くときは特定の条件でスクリプト内でini_set()する予定です。
0586nobodyさん05/01/31 09:22:23ID:yrnZkyfn
それは何?
自分で調べられないような特別な事がお前に起きてるわけ?
0587nobodyさん05/01/31 09:25:22ID:???
>>586

>自分で調べられないような特別な事がお前に起きてるわけ?

それはお前の中で起きている!
0588nobodyさん05/01/31 12:06:18ID:qVyRdTkm
4.3.10対応のMMcacheバイナリを配布しているところはないですかね?
ググっても見つかりませんでした・・・。
0589nobodyさん05/01/31 12:11:32ID:???
>>588
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
>>589
ありがとうございます。
早速試してみます。
0592nobodyさん05/01/31 12:39:44ID:???
>>589
エスパーだね
ところで、eAcceleratorってMMCacheと比較してどんな感じ?
0593nobodyさん05/01/31 12:42:51ID:???
>>590
やりたい事を分割してみていくとこうなる。
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:???
RewriteEngineでIPによるアクセスを[F]してるのですが、
これだと403が直ぐに返ってしまいます。これを如何にも
サーバーが存在しないように偽装出来ますでしょうか?。
059559405/01/31 12:50:31ID:???
げ・・移動します;
059659005/01/31 13:03:27ID:???
>>593
非常に丁寧な回答ありがとうございました。
空メール受信用のアドレスを用意してPHPで受信し、登録する方法にします。
トリガーはメールマガジン管理画面へのアクセスに。
参考になりました。
0597nobodyさん05/01/31 13:26:21ID:???
>>596
.forwardとか使って、POPサーバへの受信時に
PHPスクリプトをキックする方が楽だしすっきりすると思う。
(3-2の中の自持SMTPはレンタル鯖でも条件があえばできる)
0598nobodyさん05/01/31 13:43:57ID:???
>>592
現時点では設定ディレクティブのプリフィックスがmmcacheからeaccelerator
に変わったくらいしか違いは見受けられないけど、実質的に開発を引き継いで
くれたことには意義があると思う。

ロードマップが未掲載なので先は不明。
http://eaccelerator.net/RoadMapUk
0599nobodyさん05/01/31 14:22:57ID:???
Faxつまったw
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:???
>>589
eAcceleratorってrequireとかしたファイルはキャッシュしてないのだろうか、
なんかキャッシュファイルがMMCacheより小さい気がするんだけど。
ただの圧縮関係なのだろうか。
0602nobodyさん05/01/31 17:11:10ID:jB8MTmrN
セッションを使ってユーザー認証を行いたいと思っています。
実際システムではどのような流れで認証を行っているのでしょうか?

私はとりあえず、IDとパスワードをチェックして、両方とも一致したら
IDとパスワードをセッション変数に格納し、
それ以降のページでは最初にセッション変数のIDとパスワードを調べ、
そのつどIDとパスワードを保存してあるファイルから調べるという方法を
とろうかと思っています。

それとも、IDとパスワードが一致した時点で、認証済みを判断する変数をひとつ用意して
それの値を1にし、それでそのつど判定するのでしょうか?

0603nobodyさん05/01/31 17:11:43ID:???
>>600
> 開発速度/効率/再利用性/どの程度分担作業できるか/開発環境(IDE)はどの程度充実しているか
> 将来性/言語的メリット・デメリット

最初から順番に
-人によるけど遅くはない
-人によるけど悪くはない
-設計によるPEARとかmojaviとか使えばそれなりに。
-デザイナとプログラマで分けたいなら、可能。複数プログラマでの作業分担は普通に出来る。
-IDEなんて無くても開発できる。phpEclipseが良いらしい。
-知らないけど、先行きは暗くはない。
-使用人口が多いので情報が豊富。・ノイズも多い。

#ぷーは余計なこと考えずにまず働け
0604nobodyさん05/01/31 17:24:51ID:???
正規表現が分からず困ってます。
imgタグを抜き出したいのですが、そのイメージをアンカータグが囲っている場合、
そのアンカータグごと抜き出したいのです。
その際マッチの順番は変えたくないので、一回の処理で終わらせる方法はないでしょうか?
preg_match_all('/<a .*?><img (.*?)><\/a>|<img (.*?)>/i', $body, $match);
正規表現が余り得意でないので、書き方さえ間違っているかもしれないですが、分かる方よろしくお願いします。
0605nobodyさん05/01/31 17:39:20ID:???
>>603
禿ワロス
0606nobodyさん05/01/31 17:52:08ID:???
>>604
その正規表現でも一応1回で抜けるんじゃないの?
0607nobodyさん05/01/31 17:57:27ID:???
あ、ひょっとして「1回で抜く為にはこの正規表現でいいのか?」
ってことを聞きたいのか?
アンカータグとイメージタグの間に空白文字\s*は入れておいたほうがいいかもなぁー。
060860405/01/31 18:00:59ID:???
>>607
一回で抜きたいのですが、アンカータグ付きの正規表現しかマッチしていないようなのです。
もしかしてor文の書き方が間違っているのかなぁ?と思って聞いてみたのですが。
060960005/01/31 18:09:32ID:???
>>603

ありがとうございます。
キーワードを頼りにいろいろ見てましたが悪くないなと感じました。

> #ぷーは余計なこと考えずにまず働け

ごもっともorz
0610nobodyさん05/01/31 18:11:35ID:???
>>608
アンカー無しも抜けそうな気がするが、PCREライブラリによって違うのかな?
/(<a .*?><img (.*?)><\/a>)|(<img (.*?)>)/i
という感じで全体を()で括ってみるとか。
061160405/01/31 18:21:53ID:???
>>610
/(<a .*?><img .*?><\/a>)|(<img .*?>)/i
こう書いたら$matchに返ってきた配列は別でしたが、imgのみも抜けました。
ちょっと色々試してみます。
ありがとうございました!
0612nobodyさん05/01/31 19:18:27ID:ZbMy7NkR
すみません、フォームからのsubmitで同時に二つのスクリプトを呼び出すことって
出来ますでしょうか? なぜこんな質問をしているのかといいますと、
下記のようなメルマガ登録フォームを設置してるんですが、
その登録者数をカウントしたいと思ってるのです。

<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」も呼び出して、登録してくれた人の
人数を数えたいのです。

こういうことって可能でしょうか?
それとも実は私がすごい勘違いしてて、もっと簡単なやり方があったりして・・・。
0613nobodyさん05/01/31 19:23:18ID:???
>>612
まぐまぐ自体に登録者数の集計機能って無いの毛?
061461205/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:???
>>612
まずカウントを集計するスクリプトに飛ばして集計処理をした後、
まぐまぐのフォームへデータをPOSTすればよいだけだと思うが。
061661505/01/31 19:32:24ID:???
>>614
思いっきりかぶった(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
ほれ。
061761205/01/31 19:33:27ID:ZbMy7NkR
>>613
フォームを複数設置しているため、どのページからの登録が
多いのかを調べたいと思っていまして。。。

>>615
そうですね、たぶん私が614で書いたのと同じ意味で
おっしゃって頂いているのだと思いますが、
その「phpスクリプトからまぐまぐへデータをPOST」の方法がイマイチ分からなくて…。
スクリプト内から「HTMLフォームのsubmit」と同じ動作を命令できるのでしょうか??
なんか無知過ぎてすみません。
061861205/01/31 19:36:59ID:ZbMy7NkR
>>616
あ、私も思いっきりかぶりましたww
教えていただいてありがとうございます!
早速指示していただいたGoogle検索結果を読んで理解しに行きます。

自分でもいろいろ検索してたんですが、
「httpヘッダ」なんて、自分じゃ考えもつきませんでした。
本当に助かりました。ありがとうございます。
061961505/01/31 19:37:09ID:???
>>617
> たぶん私が614で書いたのと同じ意味で
そう。全く同じ意味。考え方としては正しい。

> スクリプト内から「HTMLフォームのsubmit」と同じ動作を命令できるのでしょうか??
できる。↑の検索結果見ながら頑張れ。
062061505/01/31 19:37:55ID:???
なんかシンクロしとるな(w
まぁ頑張ってくれ。
0621nobodyさん05/01/31 20:18:23ID:???
君達、仲いいね。
0622nobodyさん05/01/31 20:25:32ID:???
>>612
くだ質スレでやれよ
062352405/01/31 22:37:00ID:???
結局 >>527のようなコード以外、思いつきませんでした。

正しい in_arrayの使い方を教えてもらえないでしょうか?




0624nobodyさん05/01/31 23:25:36ID:???
>>623
マニュアル読んで わからないなら くだ質
0625nobodyさん05/02/01 14:14:36ID:07WWszEk
ezweb用(xhtml)のサイトをphpで開発している方、デバッグってどうやってます?

path_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:???
FC2, rpmの4.3.10使ってますが,
mktime, gmmktimeの結果が1970年以前では
壊れた挙句に,9時間毎(OSがJSTの場合)にループしませんか?.

RH7.3, rpmの4.1.2でも同じみたい

Vine(バージョン不明)のrpm 4.2.3 ではうまくいく

PHPではなくOS側の問題ですか?.
設定で回避できるようなら教えてください.
0627nobodyさん05/02/01 15:09:47ID:???
>>626
マニュアル嫁アホ
0628nobodyさん05/02/01 15:12:03ID:???
>>627

英語版?
0629nobodyさん05/02/01 15:49:12ID:???
>>627

すんません,わからないです.教えて

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:???
>>629
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:???
おっと、コピペミス。2段目の結果は int(-1) ね。
0632nobodyさん05/02/01 16:47:15ID:???
>>630
ありがとう,だめでした
$ 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:???
>>626,629,632
試さなくていいから、マニュアルのmktimeの説明部分をテキスト入力してみろ。
英語なんか訳さなくていいから和訳されたものをそのまま入力してくれ。
>Windowsではないから1970年以前の制限はないはず
どこにそう書いてあるんだ。都合よく解釈するプロ市民だな。
2038年問題って何かコメントしてくれ。
0634nobodyさん05/02/02 00:21:44ID:???
>>625
とりあえず、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();    // ここで未定義ですというエラーが発生してほしい。
063763605/02/06 15:05:00ID:???
PHPのバージョンは4.3.6以降であればよいのですが。
ageわすれたのでage.
0638nobodyさん05/02/06 15:46:14ID:???
レッツPHPさんの PHP-I-BOARD の不具合?仕様を解決したくお知恵拝借

PHP-I-BOARDの過去ログの表示なんですが、
親記事があってレス1レス2とあったばあい、その記事が過去ログに移動すると
表示がレス2→レス1→親記事の順に表示されてしまいます。
これを通常通り、親記事→レス1→レス2としたいのです。

レッツPHPさんのほうでおききしたところ

確認しましたが確かに現在のログは順に出るのに過去ログは逆向きで出力されて見にくい気がしますね。
ソースを眺めただけなので未検証で無責任で発言をすれば
ibbs.phpの819行目のforステートメントの条件を変更して逆向きに動作するように変更するか、
ステートメント終了後に$arg['past']内の配列を全てひっくり返すような処理を付け加えたら
いいんじゃないでしょうか

と回答いただいたんですが力不足でこの「ひっくり返すような処理」というのがどういうもので
どこにつければいいのかがわかりません。

無知な自分が公式のほうで何度もやりとりするのはかえって迷惑かかりそうなのでこちらで
アドバイスか検索するとっかかりを頂きたいです

マルチになるようだったらすいません(公式では回答いただいて終わってるとおもったので)
0639nobodyさん05/02/06 16:04:35ID:???
>>638を読む。- 10秒
chm版のマニュアルのショートカットをクリックしつつ「ひっくり返す」は「reverse」だなと考える - 1秒
chmの検索タブをクリック - 1秒
「reverse」と打ち込み検索 - 2秒
結果リストを見渡しarray_reverseを見つける - 1秒
煽り文句を考えながらレスを書く - 60秒
0640nobodyさん05/02/06 16:12:06ID:???
>>639
gj
0641nobodyさん05/02/06 17:50:33ID:ytGnrXBl
特定の変数が、ただの変数か、配列か、連想配列か確認する方法って
ありますか?
フォームから受け取った変数が連想配列(チェックボックス)だと分かる
方法ありましたらご伝授下さい。
宜しくお願い致します。
0642nobodyさん05/02/06 17:55:00ID:???
<html><body>
<?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:???
|-`).。oO(\r\nが怪しいな・・と思うけど検証が面倒なので他の人に任せよう・・・・・・・)
0644nobodyさん05/02/06 20:04:09ID:???
>>642
コピペして全角スペース取り除いて実行したけど
ちゃんと1ずつ増えました。
>>641
is_arrayとかis_scalerとかあるけどフォームから配列で送れば確認するまでも無く配列に決まってますが。
0645nobodyさん05/02/06 20:07:02ID:???
scalerじゃなくてscalarでした。
ちなみにPHPには配列と連想配列の区別はありません。
普通の配列も数字をキーにした連想配列です。
0646nobodyさん05/02/06 22:13:27ID:???
データベースへの連続書き込みが上手くいかないことがあるので、
一つ処理が終わったら、1秒ほど待機して次の書き込みを行なうようにしたいのですが、
どういった関数を使えば宜しいでしょうか?
0647nobodyさん05/02/06 22:22:14ID:???
そのまんまsleep関数つーのがあるけど、原因を究明した方がいいかと。
0648nobodyさん05/02/07 00:34:24ID:???
よく掲示板で見かける
書き込みにアドレス(http://...)が書き込まれたら、
その部分だけ自動でリンク張るのはどうするとよいか?
0649nobodyさん05/02/07 00:35:16ID:???
>>648
書き込みにアドレス(http://...)を見つけたらアンカータグで囲うとよいかと
0650nobodyさん05/02/07 00:39:28ID:WG7KP6M+
モジュール関数のfile()でURLを開こうとすると自分のサーバーの/hmoeより上に行けません。
ini_set関数でスクリプトから設定して回避できる問題でしたら、どう設定したら良いか教えてください。
0651nobodyさん05/02/07 00:51:52ID:???
>>648
俺のソースをやろう
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);
}
0653nobodyさん05/02/07 01:01:06ID:???
>>650
詳しく
065464805/02/07 01:04:27ID:???
>>651
感謝、感謝、どもです。
0655nobodyさん05/02/07 01:06:15ID:WG7KP6M+
>>653
レスありがとうございます。

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:???
>>655
http://ns1.php.gr.jp/pipermail/php-users/2004-June/022456.html
エラーメッセージでググレば出てくるだろ( ゚Д゚)ゴルァ!!
0657nobodyさん05/02/07 01:19:39ID:???
>>655
DNS引けてないんじゃない?
0658nobodyさん05/02/07 01:22:33ID:WG7KP6M+
>>656,>>657
ゴメンナサイ
DNSが引けてないらしいです
IPアドレス指定で試してみます
0659nobodyさん05/02/07 01:26:24ID:WG7KP6M+
皆さんありがとうございました。
うまく行きました。
0660nobodyさん05/02/07 02:08:59ID:???
おまいら、外部でホスティング鯖のDBはどのくらいの
頻度でローカルにバックアップしてまつか?
0661nobodyさん05/02/07 10:01:54ID:???
>>660
その日の気分で
0662nobodyさん05/02/07 11:02:51ID:???
include か requireで、

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:???
>>662
includeの場合はif (!@include(filename)) die('file not found.');
としないとダメみたいよ
066466205/02/07 11:15:00ID:???
>>663

やってみたらエラーすら表示されなくなった orz........

file not found. と出ないYO!
0665nobodyさん05/02/07 11:16:57ID:???
今試したができたぞ
066666205/02/07 11:20:00ID:???
if( !@require('なんたら.php')) die('file not found.');

if (!@include('なんたら.php')) die('file not found.');

上でやってたのでできなかったみたいです。

includeでやったらできました。


requireではできないんでしょうかね?
066766205/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........
0668nobodyさん05/02/07 12:20:54ID:???
>>667
includeは読み込みに失敗しても処理を続けるから気をつけた方が良いよ
0669nobodyさん05/02/07 14:08:23ID:FLQt/DDH
die('内容')

と

print '内容';
exit;

と同じ事にならない???





0670nobodyさん05/02/07 14:14:31ID:???
>>669
マニュアルをちゃんと読んでいれば、そういう恥ずかしい事を言わなくて済みますよ。
die なり exit なりの説明を参照。
0671nobodyさん05/02/07 14:25:02ID:Um6cfrSt
XHTML中には
<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軟式PHP05/02/07 15:24:13ID:???
>>671
<?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;

?>
067467105/02/07 16:02:43ID:???
>>672,>>673さんどうも.

<?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:???
>>674
book.html をphpとしてパースしていると仮定して、
output bufferingを使えば追記のみで行けるんじゃない?

auto_prependが設定できれば追記の必要もないね。
0676nobodyさん05/02/07 17:44:22ID:???
>>636
ないよ。どうしてもというならグローバル配列に匿名関数を突っ込む形になると思う。
あるいはフラグ変数で代替するか。
けど、関数を未定義にしたい場合ってどんなん? 設計のレベルで解決したほうがいい気がするよ。

コードレベルだと、たとえば未定義判定したいなら !function_exists() を使をばいいし、
再宣言を防止したいなら ifブロック内で関数宣言する、require_onceを使う、等々の手段が。

So-netが規制されてたから遅レスで悪いけど。
0677nobodyさん05/02/08 13:56:04ID:???
http://shu.sub.jp/xoops/modules/tinycontent/rewrite/tc_5.html

ここのPHPの掲示板作った人おる?
第1回目の投稿が受け付けてくれない他(yylog.phpが開けね〜とか言われる)
各投稿にナンバーが振られないからその後の修正や削除が
全くできない出来損ない掲示板だぞ。
フリーで作ってくれるのはありがたいがオリジナルのKENT-WEBの掲示板の
名を貶めるような劣化コピーはやめてくれ。
0678nobodyさん05/02/08 13:57:42ID:???
>>677

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で設定して間違いないのに・・・


いい加減作者に直でメールした方がいいんじゃないか?
0679nobodyさん05/02/08 14:01:27ID:???
>>677-678邪魔
0680nobodyさん05/02/08 14:14:59ID:???
>>679
作者乙
0681nobodyさん05/02/08 14:20:56ID:???
>オリジナルのKENT-WEBの掲示板の名を貶めるような劣化コピーはやめてくれ。

KENT-WEBにあるWebプログラムってそんなに凄いものか?
ちょっとでも、CGIの知識があれば、簡単に自作できるような物ばっかりのような気がするんだが・・・
0682nobodyさん05/02/08 14:22:07ID:???
>>681
オリジナルの優劣を議論してる訳じゃないだろ
0683nobodyさん05/02/08 14:30:19ID:???
>>682
あぁ…わるいわるい…
あたかも、KENT-WEBのCGIは凄い!って言ってるように見えたので
0684軟式PHP05/02/08 14:33:31ID:???
どっちにしろ質問スレとは関係ないから他スレいっとけ。
0685nobodyさん05/02/08 14:37:54ID:???
>>683
> あたかも、KENT-WEBのCGIは凄い!って言ってるように見えたので

まぁシンプルかつ機能はまとまっているとは思うがな
0686nobodyさん05/02/08 14:40:39ID:???
ソースは見るなよ・・・
0687nobodyさん05/02/08 14:42:18ID:???
>>686
    ,-ー─‐‐-、
   ,! ||     |
   !‐-------‐
  .|:::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:???
global使いまくりで吐き気がしますね^^
0690nobodyさん05/02/08 15:02:05ID:???
>>688
そこは精神科病棟隔離施設だ
0691nobodyさん05/02/08 16:27:09ID:???
>>689
globalは何か悪いかね?
0692nobodyさん05/02/08 16:32:59ID:???
>>691
globalは使ってもいいけど、使いまくりはキモイんだよ雑魚グラマm9(^Д^)プギャー
0693nobodyさん05/02/08 17:26:06ID:???
global $textcolor, $linkcolor, $nanntoka, $kanntoka, $aada, $kouda;
0694nobodyさん05/02/08 17:43:19ID:???
>>692
PHPの仕様上しょうがない。
それがPHPクオリティ。
0695あ05/02/08 17:43:54ID:???
Blog のサイトから、
HTMLを出力するPHPプログラムを作成希望です。
見出しと、リンク、文書がついたものは、可能なのですが、
タイトルとリンクだけを表示するにはどうやればいいでしょうか?

参考
ttp://www.hawk.34sp.com/stdpls/php/xml_parse.html
0696nobodyさん05/02/08 17:43:56ID:???
しょうがなくない。何をいってるんだ。
0697nobodyさん05/02/08 17:46:16ID:???
>>696
あんたこそ誰にいってるんだ?
0698nobodyさん05/02/08 17:48:34ID:???
PHPの仕様とは無関係。設計が糞
0699nobodyさん05/02/08 17:50:45ID:???
>>696
PHPの仕様上(厨プログラマの増産は)しょうがない。
それがPHPクオリティ。

PHPをVBに換えても可。
0700nobodyさん05/02/08 17:54:01ID:???
PHPっていうから言語仕様の話かと思った
0701nobodyさん05/02/08 18:06:39ID:???
↓誰かまとめてくれ↓
0702nobodyさん05/02/08 18:11:06ID:???
KENT-WEBのCGIは凄い! という事で。
次の質問マダー(チンチン
0703nobodyさん05/02/08 18:22:02ID:???
http://www.php.net/phpinfo

リライトいかれてるな
0704nobodyさん05/02/08 18:23:09ID:???
>>699
なるほど、そういう意味なら分かったw
0705nobodyさん05/02/08 18:46:29ID:???
mail ("[email protected]", "件名", "本文1行目\n本文2行目\n");

PHPからメールを送信させているのですが、"件名"の部分の日本語が
メール受信ソフトでは文字化けして表示されてしまいます。(OE6)
Windows用のメールソフトでも文字化けせず件名を日本語で記述するには
どうしたらいいでしょうか?

ちなみに本文の部分は問題なく日本語表記されています。
0706nobodyさん05/02/08 18:50:37ID:???
>>705
マルチは死ねということさ
0707nobodyさん05/02/08 18:54:03ID:???
>>705
PHPくだスレで答えられてるように mime encodeする。
鯖によっちゃ 日本語おまかせmb_mail関数が使えるので、それを使うと楽。
「メール 日本語 mime」でググって、なぜややこしい事をしなきゃいけないかという背景を知っておくとよい。
0708nobodyさん05/02/08 18:56:07ID:???
googleがあるのになぜか減らない質問の一つだな
0709nobodyさん05/02/08 19:01:50ID:???
最近googleって敬遠されているらしいよ
0710nobodyさん05/02/08 19:08:21ID:???
Googleで検索するようなまともな人はそもそも回答が出てるのに糞マルチするような馬鹿なことしない。
0711nobodyさん05/02/08 21:11:57ID:???
phpを使えば僕もスーパーハカーになれますか?
0712nobodyさん05/02/08 21:21:51ID:???
何をハックするかによる。
0713nobodyさん05/02/08 21:59:33ID:???
スーパーバカにならなれるぞ
0714nobodyさん05/02/08 22:01:32ID:mh9JM18R
2ちゃんねるのread.cgiで使われているような、
http://pc5.2ch.net/test/read.cgi/php/1107780435/l50
の php, 1107780435, l50と行った値はどのように取得するのでしょうか?
また、apache - http.confに設定は必要なのでしょうか?

質問意図がうまく伝わるか心配ですが、そのときは失礼いたします。。
0715nobodyさん05/02/08 22:04:54ID:???
>>714
PHPくだスレでその話題で盛り上がってたよ。
http://pc5.2ch.net/test/read.cgi/php/1107780435/24-
071671405/02/08 22:24:25ID:???
>>715
Gee! ありがとうございます。
........何か愉快なことになっているようですが(w
0717nobodyさん05/02/09 00:10:08ID:???
HTTPのあぷなし(file_uploads = Off)で、
ファイルをアップする方法しりません?
PEARとかでモジュールないかな・・
0718nobodyさん05/02/09 01:45:21ID:???
>714-716
_SERVER["PATH_INFO"]をパースするだけとかそんな話じゃぁ…。
0719nobodyさん05/02/09 02:00:56ID:???
>>715
のスレの話は全然別物だぞ
あっちは質問者が意味不明でどうしようもないって状態だった
0720nobodyさん05/02/09 02:13:12ID:???
>>719
答え載ってるんだからいーじゃない
0721nobodyさん05/02/09 11:05:56ID:???
>>717
PEARにsockみたいなのなかったかな。で、ftpに通り道付けてってのは。
やったことないけど。知ったかぶりでごめんね。
0722nobodyさん05/02/09 22:52:00ID:???
【PHP】Phrameのすれがあるが、なぜmojaviのすれはないですか?
0723nobodyさん05/02/09 23:42:37ID:???
何でわずか1文のレスで池沼って分かるんだろ
0724nobodyさん05/02/09 23:43:59ID:RCmAm0yE
PHP を使って銀行のシステムをつくりたいと思います。
さて、そこで、認証方法ですが、SSLなど、銀行のオンラインシステムでもいける!という
認証方法で、PHPに実装可能な方法を教えて下さい
0725nobodyさん05/02/09 23:49:17ID:???
>>724
そういうくだらない質問は「くだ質」スレへどうぞ
0726nobodyさん05/02/10 00:08:07ID:???
平文なら十分実装可能だよ。
0727nobodyさん05/02/10 00:10:53ID:???
>>721
情報サンクスコ。
やっぱソケットレベルで対応しないとダメなのね・・・(ノ_・、)グスン
072863605/02/10 00:23:39ID:???
>>676
確かに設計レベルの解決がいいのですけれども、
既にあるフリーウェアに手を加える形なので設計は変えられないのです。。。

そのフリーウェアっていうのはPukiWikiで、作りたいというのはプラグインなんですけどね。

作りたいと思っているプラグインは都合上、既に定義された関数を、
なにもしない関数に置き換えるか、関数を未定義に設定したいのです。
自分でも結構、調べましたけど未定義にするのは確かになさそうですね。

回答ありがとうございました。
0729nobodyさん05/02/10 00:33:03ID:???
そんな都合は存在しない。
0730nobodyさん05/02/10 03:43:49ID:???
$fname = "log.csv";
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を表示しちゃいます。お助け下さい。
0731nobodyさん05/02/10 04:17:28ID:???
>>730
とりあえずこの辺読んどけ
ttp://www.php.net/readfile
0732nobodyさん05/02/10 04:26:46ID:???
>>730
filesizeの項は読んでるのになんでreadfileの項を読んでないのか不思議でならない
0733nobodyさんNGNG
>>731-732
あり?そこまで目が行きませんでした。ごめんなさい。
0734nobodyさん05/02/10 04:55:22ID:???
>>730
>$hea = filesize("$fname");
これ変数を"で括ってるのって何か意味あるの?
0735nobodyさん05/02/10 07:49:33ID:???
そりゃ個人の自由だべさ
0736nobodyさん05/02/10 11:02:59ID:bUBIOW3F
セッションが有効か否か
どうすればよいでしょうか?
0737nobodyさん05/02/10 11:21:53ID:???
>>736
phpinfo
073873605/02/10 12:05:44ID:bUBIOW3F
>737
済みません…
酔っていたもので変な日本語&質問を間違えていました
クッキーが有効か否かを調べるにはどうすればいいでしょうか?
現時点では
クッキー変数に書く→リダイレクトして読んでみる
という方法を考えたのですが
リダイレクトを使わない方法はないでしょうか。
0739nobodyさん05/02/10 12:16:04ID:???
>>738
cookieはHTTPヘッダの中に埋め込まれるので、鯖側に最低2回のアクセスが必要です。
1回目のリスポンスヘッダにSet-Cookieの形で埋め込み。
2回目のリクエストヘッダにクッキー情報を加えて送信。
074073805/02/10 17:34:41ID:???
>>739
ありがとうございました。
ヘッダに書かれていたとは知りませんでした。
やはりリダイレクトしてから読み出すしかないんですね。
0741nobodyさん05/02/11 11:00:23ID:???
php5で、(UTF8とEUCしか調べていませんが)冒頭に「羨ましい」と入力すると文字化けします。
同じmbの設定でもphp4だと文字化けしないようでした。
文字の途中に入っている場合化けないので、コード判別に失敗してる?
これってphp5のmbstringのバグでしょうか?
0742nobodyさん05/02/11 11:03:31ID:???
↑ちなみに、mbstring.encoding_translationONでも、OFFでmbを使って変換しても同じでした。
0743nobodyさん05/02/11 14:56:09ID:???
>>741
やってみたけど文字化けしないな
0744nobodyさん05/02/11 15:15:19ID:???
エスパーとしては、htmlspecialcharsを使っていると予想したりする
0745nobodyさん05/02/11 15:15:35ID:ABOqtNWJ
あげてみたり
0746nobodyさん05/02/11 15:32:55ID:???
>>743
エー(´・д・`) おっかしいなぁ…。
おいらのミスか・・・。特に変な事はやってないのに。
0747nobodyさん05/02/11 15:52:53ID:???
その昔webdavと併用してたApacheでUTF関連がおかしかった経験あり。
074863605/02/11 17:56:06ID:???
>>729
おおう、こんにゃろ。俺か?俺に言ってるか?

んじゃ、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 = 123;}
$a[] = array{time = 234;}
.
.
という配列をtimeの値でソートし$aに反映させたいのですが、
array_multisortを使ってソートする事は出来るのでしょうか?。
array_multisort($a,$a['time'])ではエラーが発生してしまうので、
こうい使い方は出来ないのでしょうか?。
075074905/02/12 09:20:47ID:???
>>748
自己レス
array_multisort($a,$a['time'])ではなくarray_multisort($a,$a[int]['time'])と
しなければいけませんね。しかし[int]には何を入れたら良いんだろう。
0751nobodyさん05/02/12 09:43:00ID:???
> $a[] = array{time = 123;}
> $a[] = array{time = 234;}
これの意味がわからん。
0752nobodyさん05/02/12 10:03:36ID:???
>>751
あちこち、ぐぐって解決しました
ご迷惑をおかけしました

$a[0] = array('time'=>123);という意味でした^^;
0753nobodyさん05/02/13 05:43:57ID:zA+VEUwb
クッキーを受け入れる環境でも、
セッションIDがgetで渡される場合があります。
このあたりはどういう処理になっているのでしょうか?
0754nobodyさん05/02/13 08:13:59ID:???
>>753
1回目のアクセスのときはクッキーが使えるかどうか不明なので、
URIにセッションIDをとりあえず埋め込んでいる。
2回目にクッキーでもセッションIDが返ってくるようなら、
クッキーが有効とみなし埋め込まなくなる。

って感じじゃないかな。php.iniでクッキーオンリーに出来るよ。
0755はじめまして05/02/13 09:15:57ID:u/FwX+Jy
AAA! CAFE のホームページに、PHPを使って私書箱を設置したいのです。

web上で表示され、「正常に送信しました」と、表示されるものの
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:???
AAAはセンドメール禁止
0761nobodyさん05/02/13 14:02:36ID:???
あはははは!
0762nobodyさん05/02/13 14:57:17ID:???
$_SERVER["REQUEST_URI"]に http://からのアドレスが入って
いたのですが、これはfopenとかでURLページをアクセスした時に
入るのでしょうか?
0763nobodyさん05/02/13 16:45:25ID:???
PHPでの認証について質問させて下さい。

FORM認証を使った場合、PHPスクリプトに対しては確かに認証の可否によって、
実行の可否ができるのですが、
例えば、ディレクトリ構造など知られている場合、
PHP以外のファイル(画像など)を直接URL指定されると
認証の有無に関わらず表示されてしまいます。

特定のディレクトリ以下の全ての種類のファイルを認証によって閲覧権限を付ける場合、
やはりBASIC認証しか無いのでしょうか?
0764nobodyさん05/02/13 17:05:13ID:???
どうしてもPHPでやりたいとなると、
ディレクトリ内の全てのファイルを外部から不可視にしておいて、
PHP経由でそれらのファイルを読み込んで表示かな。
ちょっとしたミスが命取りになるけど。
0765nobodyさん05/02/13 19:00:50ID:K/AbDSop
PHP4のXMLパーサについて教えてください。

xml_set_character_data_handler()でセットしたハンドラに渡される文字列が
たとえば "ABC & DEF" だったとき、"DEF"しか渡されないみたいなんですが
どうしてでしょう?
0766nobodyさん05/02/13 19:00:55ID:???
どうしてもPHPでやりたいなら、>>764の方法だろうね。確実に隠すならDBにぶっこむとか。
でも、そういう使い方したいならBASIC認証でやったほうがスマートだと思うんだけど、次の人どう思う?
0767nobodyさん05/02/13 19:10:13ID:???
データディレクトリをDocルート外におけば無問題。denyを忘れることもない。
複数の認証がダブったり権限付与が必要なケースでは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:???
>>765
「ABC」「&」「DEF」と複数回ハンドラが呼ばれてるのに
最後に呼ばれてるときにしか貴方の作ったプログラムが見て無いから。
もしくは「ABC」を「&」で、その次は「&」を「DEF」で上書きというプログラムの作りだから。
0771nobodyさん05/02/13 23:58:21ID:???
>>765
>>770
セミコロンが区切りとして扱われているものと思われ。

>>767
おまえも回答の仕方を勉強してこい。
0772nobodyさん05/02/14 00:23:46ID:???
ExpatはSAXだということを忘れとらんか。
無効なエンティティとして扱われてるなら"ABC "までがCDATAとして渡されるはずだろ。
"DEF"ってことはコード上の問題としか考えられないが、質問文にはコードもXMLのサンプルもないからな。
テストコードやコピペのミスかどうかも判断つかん。
回答することで自分のスキルを実感するのを否定はしないが、質問の仕方は覚えてもらったほうが
本人のためにもなるし、同僚さんの幸福にもつながると思うよ。
>>771には何かローカルな心情があるのかしらんが、「回答の仕方」というのは俺にはよく分からん。
0773nobodyさん05/02/14 00:32:19ID:fzJwBWF6
>>772
どんな回答しようが自由だと思うが。少なくとも乞食にどうこう言われる筋合いはない
質問の仕方で能無しかどうかすぐ分かる
質問の仕方でにそれにぶら下がるレスのレベルもある程度決まってくる
0774nobodyさん05/02/14 00:34:04ID:fzJwBWF6
そーいや&amp;とかいて投稿して&に変換されてるのにほったらかしの奴とかもいるよなw
正規スレだっけ?分かる奴には分かるつー文脈なら別にいいんだが
0775nobodyさん05/02/14 00:53:46ID:???
自演もたいへんだな。今日はもう寝ていいぞ。プ
0776nobodyさん05/02/14 01:07:31ID:???
peardocの生成に失敗します。
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:???
777get, zuzaa
0778nobodyさん05/02/14 01:35:57ID:???
>>776
>./phpdocxml.dcl:179:1:E: end of document in prolog

179行1列目って何?prologなんてワカンネ。タグ不整合とか?
077977005/02/14 01:38:45ID:???
>>770
言いたい事はいっしょなのだが
「ABC 」「& 」「DEF」が正しい。
つまり>>772が言ってること。

0780nobodyさん05/02/14 01:39:38ID:???
>>775
そのエスパー脳を回答に生かせよ
0781nobodyさん05/02/14 01:44:41ID:???
>>777
オレのESP能力によるとお前はこいつと同一人物に間違いない
http://www.google.co.jp/search?hl=ja&q=%22777get%2C+zuzaa%22&lr=
078277605/02/14 01:46:07ID:4jK1nMAE
>>778
phpdocxml.dclの内容は以下のURLの内容と同じです。
http://cvs.php.net/annotate.php/peardoc/phpdocxml.dcl?rev=1.1.1.1

179行目は最終行の > になります。
078376505/02/14 02:02:44ID:8mFM3xsp
レスくれた方々、ありがとうございます。

ハンドラに渡されたものを全部array_push()して、それをダンプしてみましたが、
"ABC & DEF"とくるはずのものは、"DEF"としか渡されていませんでした。
"ABC"とか"&"とかはまったくハンドラに渡されていません。
xml_parseの仕様でしょうか?
0784nobodyさん05/02/14 02:14:53ID:???
>>783
とりあえず上で言われているとおり&のせいかと
実体としてパースされるのでPCDATA領域に&書いたらダメよ
情報不足なのでこれ以上の回答は望めないかと
0785nobodyさん05/02/14 02:43:43ID:???
一番星は見つかったかい?
0786nobodyさん05/02/14 02:47:26ID:???
俺が思うにexpatはかなり頑固な奴だよ
0787nobodyさん05/02/14 03:16:39ID:???
>>786
厨房相手じゃ肩もこります。
0788nobodyさん05/02/14 04:24:51ID:???
>>786
確かに。DEFの頭の方にスペースがくるとは思わなかった。

サンプル1:<test>ABC &amp; 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:???
default_handlerをセットしていると、&amp;などはそっちがコールされるようだ
0791nobodyさん05/02/14 07:31:39ID:pVfR11DE
PHP4ですが、以下のようなエラーがでてしまいます。

Warning: 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){


正規表現がまちがってるんでしょうか?
「正規表現メモ」のサイト見ても、どうもマチガイがわからなくて。
お助け願えれば幸いです。
0792nobodyさん05/02/14 07:37:23ID:???
>>791
正規表現以前にpreg_matchの使い方が間違ってる。
マニュアルを良く見直してみ
079379105/02/14 07:48:39ID:???
>>792さん

あう、おはずかしい。ありがとうございました。
0794nobodyさん05/02/14 18:06:20ID:???
latin-1 のアクセント付文字を"&egrave;"のような文字列に変換する関数ってありますか?
0795nobodyさん05/02/15 00:02:35ID:FkUTlorq
セッションハンドラ書き換えて
MySQLに保存するようにしたのですが、
時々何かのタイミングでエラーになります。
非常に再現性に乏しいので凹みます。
バージョンは4.3.10です。
ハンドラ書き換えはバギーなのでしょうか?
オリジナルのセッション機構を書いた方が良いのでしょうか…。
0796nobodyさん05/02/15 01:18:37ID:???
>>795
DB(MySQL/PostgreSQL)にも、ネットワークファイルにも
書き込んでるけど全然問題ないよ。

貴方のシステム環境が安定してないだけじゃ。
0797nobodyさん05/02/15 02:30:29ID:???
>>796
ありがとうございます。
あやうく書き直すところでした。
Unexpected character in input: '
というエラーなのですが、わりと良くある障害のようで、
MLを検索したところ原因はmbstring周りのようです。
セッションハンドラを書き換えたあたりから出始めたので
それが原因と思いこんでいました。
0798nobodyさん05/02/15 03:36:05ID:???
>>512
だからまずパンツを脱いで左足で冷蔵庫しめたらいいじゃん
0799nobodyさん05/02/15 03:44:33ID:???
寝る前に>>798がどこの誤爆か探してみるとするか
0800nobodyさん05/02/15 03:56:19ID:???
          ,, -,,' ´ ̄" ` ''ー`、 `ヽ.
   ___ ,,.. -' "/ { ` -一-ヾ ヽ.  ヽ    ☆
 /      ▽ / ∧ ヽ、, _,,  }}_} ・  ii /
/        {  {ゝ{__`ー-Y´f。Vハ'V } * ・ ii
! 〃      i  ハ ´{ ヽ   、ソ  } く  ☆ ii    氏ね
ヾ{{    ☆ `ヾ、_`ヽ'^' ヽ   " ! ! i ゚ : ii
  ヽ{{  * .      ハ  く) /.l、! !  ; .ii
   ヾ、.        { ` ーj‐'  {ムノ_   ノ
     ヾ       , '´  ̄ー‐‐- '   ` く
        ` ー---─,'         、   、}
            ,'   ,〈 , -ー‐-、i∠⌒ヽ
           ,'  ∧<=ニ二‐ノヽ、二ソ
           /  ./ }  `"''' ";  `7T´
080151205/02/15 03:57:28ID:???
残念だが俺はパンツ履いてない。
0802nobodyさん05/02/15 11:21:45ID:???
>>797
なんか良く判らないけどエラーが出るようになったつうのは
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:???
>>803
関数の定義をしているだけなので、それをどこかで呼び出さないと実行されない。
random.phpの中で、echo $display_banner; の一行を入れておけばよい
0805nobodyさん05/02/15 17:30:29ID:???
>>803のコードに

$display_banner = rnd_banner($banner);

これを加えて random.php としておく。


表示用のPHPのほうで、このファイルをincludeしておき、
表示させたい位置に、

<?=$display_banner?>

を入れる。
0806nobodyさん05/02/15 18:04:26ID:???
>>804>>805
アリガトウございます。できました。
include、require のどちらでも動作するみたいですね。
0807nobodyさん05/02/15 20:39:01ID:ELNssm3M
WDDXなしでXMLを連想配列にしたいんだけど、どっかにライブラリとかないかな。
0808nobodyさん05/02/15 22:01:04ID:???
フォーム送信(submitボタンを押した後)に自動でテキストファイルを
指定の箇所に作成する方法がわかりません。
イメージ的に

フォーム送信→ファイル作成(open)→ファイル書き込み(print)

というのはなんとなくイメージ出来るのですが、これを
どうやって毎回テキストファイルを作成するのかよくわかりません。。
すみませんが、ヒントをいただけないでしょうか?
080980805/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:???
だれか「lombardia」の意味を教えてください。
0811nobodyさん05/02/15 23:14:11ID:???
イタリア共和国北西部の州だよ
0812nobodyさん05/02/15 23:15:57ID:aGG3pDPg
現在PHP5を使用してpearをダウンロードしたのですが、
/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:???
ちなみにSharedObjectを作ればオケ
0815nobodyさん05/02/16 23:11:51ID:kByGIo+t
uniqid() について質問です

Web上で多数のユーザーから同時アクセスが想定される状況で
ユニークな文字列を生成したいのですが、
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:???
>>816
「ホスト別に」というところを何故か見落としてましたw

ホスト毎のprefixと乱数の組み合わせで行けそうですね
ありがとうございました。
0818nobodyさん05/02/17 14:00:03ID:???
既存のリソースと比較しろ
0819nobodyさん05/02/17 22:47:38ID:3YY24TUD
配列の配列にはarray_unshift()は使えないの?

array_unshift( $n, array( "value", $v ) );

↑こうやると、↓こんな警告が出る。
Warning: array_unshift(): The first argument should be an array
0820nobodyさん05/02/17 23:08:56ID:???
$comに、下記のような複数行のレスを読み込んでいる状態です。

 >あいうえお<BR> >かきくけこ<BR> さしすせそ<BR>

このレスを表示する際、>(引用符)の行の文字カラーを変更したいです。

$com = eregi_replace("(^|/>)(>[^<]*)", "\\1<FONT COLOR=\"FF0000\">\\2</FONT>", $com);
ですと、実際に表示される際の一行目「>あいうえお」 …のみしか適用されません。
これをコメントの全ての行に適用するにはどのようにすれば良いのでしょうか。
0821nobodyさん05/02/17 23:17:13ID:???
>>819
int array_unshift ( array array, mixed var [, mixed ...])
0822nobodyさん05/02/17 23:23:36ID:???
>>820
正規表現を考える前に
引用符としての">"とタグ<BR>が混在しているのだが、
引用符のところは&gt;ってカキコしたものなのか?

&gt;あいうえお<BR> &gt;かきくけこ<BR>....
なのか、
>あいうえお\n >かきくけこ\n....
どっち?
0823nobodyさん05/02/17 23:31:43ID:3YY24TUD
>>821
マニュアルの一部をコピペしただけでわかるかよ。
0824nobodyさん05/02/17 23:40:48ID:???
>>823
変数に入ってる値も不明なソースの一部をコピペされただけでわかるかよ。
つか、そのソースとエラーの内容からだと>>821に適合して無いことが原因か、
適合しててもエラーが出るなら、それこそ具体的な値が判らんとわかんねぇよ。
バグの可能性があるんだから。
0825nobodyさん05/02/17 23:48:01ID:yKXCmIvo
>>821は割と的を得た回答だと思うけどな・・・
0826nobodyさん05/02/18 00:28:16ID:7WdjA1S7
>>824-825
わかりやすい自演の例…
0827nobodyさん05/02/18 00:31:52ID:???
>>822
返信が遅くなりすいません。
ログ(書き込み時)は、引用符の">"は>で格納されています。 (ユーザーが">"と書き込みしたものです)
\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:???
英語の辞書がひけない奴はプログラム組むな
082982705/02/18 01:05:23ID:???
半分ですが解決しましたので書き込みだけしておきます。(回答不要です)
">"が、">"で格納される場合と">"で格納される場合に分かれていたようです。
(この部分の詳細は今は不明です)

最終的に、(>)で格納されているとした場合、下記で大丈夫…だと思います。たぶん。
$com = eregi_replace("(^|>)(>[^<]*)", "\\1<FONT COLOR=\"999999\">\\2</FONT>", $com);
0830nobodyさん05/02/18 01:06:46ID:???
>>829 修正です
&gtで格納されている場合
$com = eregi_replace("(^|>)(&gt;[^<]*)", "\\1<FONT COLOR=\"999999\">\\2</FONT>", $com);
0831nobodyさん05/02/19 19:52:30ID:???
その中の人数($num)/母体の人数($amount)で、
その中の人数の母体に対するパーセンテージを求めようと思い、
考えて下記のスクリプトを作ったのですが、改良案やもっといい方法が
あればアドバイス頂けないでしょうか。

$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) . '%';
なんてしなければいけないのかと思うのですが、もっとスマートなやり方
とかありますでしょうか。
長文ですみません。
083283105/02/19 19:56:35ID:TVy8jZr4
上げるのを忘れてしまいました。すみません。
よろしくお願いします。
0833nobodyさん05/02/19 20:05:25ID:???
http://jp.php.net/round
http://jp.php.net/sprintf
0834nobodyさん05/02/19 20:05:52ID:???
つーかなんで 100 かけないの?小学校で習ったでしょ?
0835nobodyさん05/02/19 20:09:30ID:???
$foo = floor($n / $a * 100) / 100;
083683105/02/19 20:13:23ID:???
>>834,835さん。
そう言われてみるとそうでした・・・。
PHPは関数がたくさんあって、計算とかするより関数使わなきゃいけないんだと
強固に思い込んでしまってて、変なことしてました。
お恥ずかしいです。すみません、ありがとうございました。
0837nobodyさん05/02/19 21:03:02ID:5g9U41P6
質問があります。

URLに、?a=1&b=2&c=3ってパラメータを埋め込んだとして、
foreach($_GET as $value){
echo $value;

}

ってした場合、a、b、cの順序で出力されますか?

何がいいたいかというと
パラメータの順序通りに配列にはいってるのかなぁって
疑問に思ったのです。
0838nobodyさん05/02/19 22:47:47ID:???
ためせばいいじゃん・・・
パラメータの順序通りに入ってたよ
083983705/02/20 00:18:51ID:hvCabO8I
>>838
もうしわけありませんでした。
説明が悪かったです。

PHPのバージョンや環境に関わらず
常に順番どおりに入っているのかが
疑問点なのです。

よろしくお願いします。
0840nobodyさん05/02/20 00:36:12ID:???
>>839
仕様として明記されていない事は不定。
不定なことに対し一定であることを期待して
プログラムを組むのは、ドツボにはまる一要因ナリ。
0841nobodyさん05/02/20 10:19:13ID:???
一度ソートしてみたら?
0842nobodyさん05/02/20 10:36:02ID:???
class sortclass {
 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:???
Stack OverflowだYo!
0844nobodyさん05/02/20 13:47:32ID:???
再帰的処理が永遠に終了しないから、スタックオーバーフローなんだよ。
0845nobodyさん05/02/21 08:25:16ID:???
>>842
sort関数使ったほうが早いよ
0846nobodyさん05/02/21 10:42:04ID:???
>>845
シーーーッ・・・
それを言っちゃ(ry
0847nobodyさん05/02/22 00:28:25ID:WO7XFPFB
呼び出され側の関数から、
呼び出し元の関数の名前を知る方法はないでしょうか?
0848nobodyさん05/02/22 00:35:54ID:???
あったような気はするけど、それが何だったのかは思い出せない
0849 ◆.jC7ANgFY. 05/02/22 00:36:41ID:???
>>847
ありますよ。無名な関数を使いますが。
私が即席で作った下の関数を研究してみてください。

この関数をどの関数から呼び出されたのかを知りたい
関数から呼び出してみてください。名前が返ります。

function whocall() {
$bt = debug_backtrace();
return $bt[2]['function'];
}
0850nobodyさん05/02/22 07:26:04ID:???
>>847
関数名を引数に追加して呼び出すようにすればいいじゃん
0851nobodyさん05/02/22 11:26:04ID:???
>>847 じゃないけど
めんどくさいやん。
エラー処理なんかする時、あると便利だなぁと思うね。
085284705/02/22 11:53:12ID:???
>>849
ありがとうございます!
$bt[1]ですよね?
こんな関数があるとは知りませんでした。
>>850
そうしていたのですが出来るなら省略したいなと思いました。
>>851
そうですよね。
085384705/02/22 11:54:59ID:???
あ、無名関数を使ったら$bt[2]になるということでしょうか。
失礼しました。
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です。
0855nobodyさん05/02/22 13:21:03ID:???
>>854
自分ならfsockopenを使う
085685405/02/22 13:51:59ID:d7ashhNp
>>855
レスどうもありがとうございます。

set_time_limit(3);

$a = (@fsockopen("www.hogehoge.jp", 80, $errno, $errstr, 3)) ? "オンライン" : "オフライン";

print $a;


としても、「オフライン」の場合には結果表示にデフォルトのタイムアウト時間までかかってしまいます。
即座に表示することはできないでしょうか。
上のスクリプトでは処理を3秒でタイムアウトさせて結果を表示させたいと考えているのですが。。
(上のスクリプトでは、オンライン/ドメインが存在しない場合は即座に表示されます)
0857nobodyさん05/02/22 14:43:55ID:???
>>856
set_time_limit(3);
は関係ないから削除しとけ
@消してエラー表示させとけ
0858nobodyさん05/02/22 17:58:06ID:RE6B17ts
すみません、PHPでは関数の返り値に、CでいうAuto変数を返せますか?
例えば、C だと以下のようなことは御法度です。

char* func(){
char *abc = "abcdefg";
return abc;
}

PHPではこんなこと出来ますか?

function func(){
$abc = "abcdefg";
return $abc;
}
085985805/02/22 18:03:01ID:???
>PHPでは関数の返り値に、CでいうAuto変数を返せますか?

すみません、ちょっと質問の仕方を間違えました
PHPでは関数の返り値に、CでいうAuto変数のポインタを返せますか?
086085805/02/22 18:13:34ID:???
失礼、しかも858で書いたCの例はリテラルのポインタだった、、、、

仕切り直します。

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:???
>>860
そもそもPHPにはポインタという概念がないので...
変数そのものを指し示す必要があるなら、「リファレンス返す」かな。
086285805/02/22 18:35:13ID:???
ありがとうございます。
私の「参照」の概念がイマイチなのが問題のようです。
すみませんでした。
0863nobodyさん05/02/22 18:46:16ID:???
リファレンスについて
http://www.php.net/manual/ja/language.references.php
0864nobodyさん05/02/22 22:52:47ID:???
>>854
>>854
0865nobodyさん05/02/23 20:36:20ID:???
go-pearを使って、任意のディレクトリにpearをインストールしようとしてるのですが、うまくいきません。
どなたかヘルプお願いします。/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:???
phpのパッケージをダウンロードしてきてconfigure; make install-pear
してみるとか。...面倒か。
0867nobodyさん05/02/24 03:10:14ID:/1etLdeQ
phpのエラーで、サーバにレポートを吐き出し、エラーログが膨れ上がっています。
エラーを修正することが急務ですが、何よりも、このエラーログの肥大化をストップするように言われました。

あちこち探したのですが、見付かりません。

エラーレポートを吐き出さないようにする方法はありませんか?
0868nobodyさん05/02/24 03:34:26ID:???
>>867
phpの設定はphp.iniでします。
0869nobodyさん05/02/24 03:41:40ID:???
>>867
とりあえず、エラーを吐いてそうな部分に@でもつけとけw
0870nobodyさん05/02/24 05:36:31ID:???
>>868
ヒントありがとうございます。
とりあえず、htaccessでしのぎました

>>867
何の役にも立ちませんでした
0871nobodyさん05/02/24 07:09:09ID:???
htmlspecialcharsなんですけど、スカラーじゃなくて
配列丸ごと書き換えることはできないんでしょうか?
変数をひとつひとつ書き換えていて、発狂寸前です。
0872nobodyさん05/02/24 07:50:41ID:???
>>871
発狂してください
0873nobodyさん05/02/24 08:26:34ID:???
>>871
そんな人のために配列関数ってのがあるんですよ。
0874nobodyさん05/02/24 09:20:42ID:???
$array = array_map('htmlspecialchars', $array);
array_map()使わなくても「変数をひとつひとつ書き換え」る馬鹿は、そうはいないと思うけど。
0875nobodyさん05/02/24 10:47:19ID:???
>>874
多次元配列で破綻するけどね
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:???
while (list($key, $val) = each($_POST)) {
if (!is_array($val)) {
$_POST[$key] = htmlspecialchars($val);
}
}
変数をひとつひとつ書き換えるよりはループで回したほうが
0878nobodyさん05/02/24 12:01:13ID:???
function cnv($array){
return htmlspecialchars($array);
}
$_REQUEST = cnv($_REQUEST);
0879nobodyさん05/02/24 12:26:48ID:???
function tag_escape($arr)
{
    if (is_array($arr)) {
        return array_map('tag_escape', $arr);
    }
    return htmlspecialchars($arr);
}
0880nobodyさん05/02/24 14:54:07ID:???
>>875
>>879が書いてる関数(俺も全く同じものを書こうとしてた)ぐらいは思いつくだろ?
ていうかこのソース、以前PHP MLにも投稿された事があるはず。

>>878
何の釣りでしょうか?

>>876
多分そういうレベルだと思った…
>>877かもしくはforeach使う事ぐらいは思いつけないと…
0881nobodyさん05/02/24 15:37:12ID:3qj1XZqF
内部コードをEUCで記述し、
外にはSJISで表示しているのですが
EUCで書いたphpファイルから
SJISで書いたview用phpファイルをincludeすると
コードが混在するので問題になる気がします。
(実際、タイミングによって時々エラーが出ました)
こういう場合の定石的な解決方法を教えて下さい。
0882nobodyさん05/02/24 16:02:09ID:???
>>881
includeするphpの先頭でえんこうでぃんぐせってい
0883 zzz05/02/24 16:03:00ID:???
質問です。

下記のような動作(1〜3)を行うシェルをphp(ブラウザ)から動作させたいのですが…
どのように記述したらよいのか何かヒントをください。

1.wget で 圧縮されたファイルを固定したディレクトへダウンロード
2.ダウンロード後、そのまま解凍。
3.解凍後、ダウンロードしたデータは削除

シェルを実行するときだけ 必要なコマンドのみ root 権限を与える方法は
理解できそうなんですけど…

さっき 9ten社
0884nobodyさん05/02/24 16:06:44ID:???
>>881
PHPの内部コードを混在させない。

EUC-JPに統一して、httpでブラウザに
吐くものをSJISコンバート。
0885nobodyさん05/02/24 16:13:54ID:???
>>883
(a)ブラウザ(クライアント)、(b)PHPを動かす鯖、(c)ダウンロード元(鯖) があって、
(a)から(b)にアクセスすると(c)の圧縮データを取りに行って
(b)で解凍して〜
ってことかい?
0886nobodyさん05/02/24 16:28:52ID:???
mb_convert_variablesは多次元配列も再帰的に文字コード変換してくれて楽。(連想配列の添字は対象外だけど)
組み込み関数でarray_map_recursiveができたらいいなあ。
0887nobodyさん05/02/24 16:43:09ID:???
>>883
取得がエラーになった時などの処理を除けば
そのまま書けばOKですよ。

解凍できるフォーマットで、コマンドラインツールがあるとしてだけど。
解凍先の指定(展開方法)のオプションとかはツール毎に調べてね。
0888nobodyさん05/02/24 21:36:15ID:???
>>880
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:???
まぁ、なんだ、自分で書いたスクリプトで多次元配列がくるかどうか分からんつーのはかなり珍しい部類だな
0890nobodyさん05/02/24 22:46:55ID:???
>>888
879 は再起処理ですが?
089188105/02/25 03:57:50ID:???
>>882
途中からエンコーディングを変えることが出来るんですね。
目から鱗でした。
ありがとうございます。
0892nobodyさん05/02/25 13:57:09ID:mvGHDRpG
すみません、ど忘れしてしまったので教えて下さい。
外部サーバーへ接続して、そのステータスが404か403か302などかどうかの値を取得したいのですが、
当方xreaの為、fsocksopenが使えません。代替となりえる関数はなんでしたっけ?
0893nobodyさん05/02/25 14:52:48ID:1JhQtPgY
phplotで日本語表示に成功している方いたら方法教えてください
0894nobodyさん05/02/25 16:55:01ID:ExbvFDBo
PHPによるWebアプリケーションスーパーサンプル
http://www.amazon.co.jp/exec/obidos/ASIN/4797321288/250-0184447-4333015

これを買おうと思って本屋でチラ見したのですが、サンプルの内容は
phpのバージョンが古くて、たしか4.2.2用のものでした。

この本、今つかえるのでしょうか?それともこれ買うくらいならバージョン5の本を
かったほうがいいのですか?助言お願いします。
0895nobodyさん05/02/25 17:10:32ID:???
>>894
「サンプル」をどのように考えてるかによる。
そのまんま入力して動かないと駄目な人はやめときなさい。
プログラムの作りをみて自作の「きっかけ」に使う場合には
古くても充分役立つ。
0896nobodyさん05/02/25 18:00:16ID:???
投稿者や投稿時刻など無駄なものは一切入れないMTのようなものはありませんか?
カテゴリも50近くあるのでそれくらい対応しているものがよいのですが。
089789405/02/25 18:00:36ID:???
>>895
ありがとうございます。「10日で覚える〜」から
1段階上の本を探してまして、勉強のために使おうと思ってたので、
買ってみます。
0898nobodyさん05/02/25 19:15:03ID:sDC3ZZ80
ある文字列の中身の濁点・半濁点を消して小さい文字を大きく
ば→は
ぱ→は
っ→つ
のように変換したいのですが
例 らっぱ→らつは

StrTrを使って文字を羅列すると"ぅ"が"い"に変換されてしまいます。
どのようにすればうまくいくのでしょうか。
089989205/02/25 19:23:54ID:mvGHDRpG
HTTP接続時のステータスコードを取得する方法、お願いします。。
090089205/02/25 19:27:37ID:mvGHDRpG
あ、fsocks使わないでもできました。cURLです。
<?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
変数lineがtextのときtxtを出力したいのですが
これだと動きません。どうやったらいいのでしょうか?

if($line == "text"){
print "txt\n";
}
0902nobodyさん05/02/25 20:35:18ID:???
それ動かないのか・・・
0903nobodyさん05/02/25 20:40:30ID:???
X=1 では無い場合に処理をさせたい場合はどうすれば良いんでしょうか?
とりあえず、下のように書いたら希望通りになるのですが、 {} 当たりがダサいので…。
ifの反対の命令は無いんですか?

<?php
X=1
if X==1 {}
else { echo "Xは1じゃないですよーっと。"; }
?>
0904nobodyさん05/02/25 20:47:06ID:mvGHDRpG
>>903
たぶん誰もレスしないだろうからしようw
<?php
$X = '1';
if ($x != '1') echo 'Xは1じゃないですよーっと。';
?>
以上。解決。
0905nobodyさん05/02/25 21:13:47ID:???
>>900
ソケット関数が使えない制限があるのに、
curlがインストールされてる鯖ってもの面白い(めずらしい)な。
0906nobodyさん05/02/25 22:08:48ID:???
>>893
成功つーか何も特別なことをしなくても動いてるよ。
@WhiteboxLinux ttfフォント使用
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で操作することは出来ないのでしょうか?

出来るのでしたら方法を教えて頂きたいのですが。
よろしくお願いいたします。
090990305/02/25 23:01:55ID:Snm78iCr
>>904
くだらない質問にレスして頂きありがとうございました。
「==」じゃなくて「!=」にしてば解決ということですね。
0910nobodyさん05/02/25 23:15:53ID:???
>>907
mod_mysql バイナリを入手するか、phpize。
0911nobodyさん05/02/25 23:27:32ID:???
>>908
phpmyadmin
0912nobodyさん05/02/25 23:57:42ID:QqsT661L
>>910
phpize
./configure (オプションは作成するモジュールによって異なる)
make
ですね。。。
明日標準拡張モジュールを入手しやってみます!
超うれしいです!感謝です!
0913nobodyさん05/02/26 20:50:00ID:LIYJX+3j
PHP5なんですが、
コンストラクタの中で、
$categoryname = $_REQUEST['categoryname'];
とすると
Undefined index: categoryname
となってしまいます。
クラスの中で、$_REQUESTの値を代入するにはどうすればいいのでしょうか?
0914nobodyさん05/02/26 22:29:38ID:???
>>913
いや、NOTICEが出てるのって$categorynameじゃなくて$_REQUEST['categoryname']だろ

ここを参照
http://pc5.2ch.net/test/read.cgi/php/1107780435/644-
0915nobodyさん05/02/26 23:45:28ID:dKMEUCyI
XML、XSLTとPHPの組み合わせは食い合わせは悪いでしょうか?
0916namazu05/02/27 00:34:06ID:l905ORwG
php4_namazuの拡張モジュールはphp5では動かないのでしょうか・・・
0917nobodyさん05/02/27 00:40:16ID:061SWsic
PHPで音楽ファイルや画像ファイルなどの
バイナリデータの生成、編集は出来ますか?
0918nobodyさん05/02/27 00:41:52ID:???
>>915
サーバにxslt周りがインストールされてれば、別に悪くは無いと思うけど。
XMLが別にあって、ってんなら楽勝。

XMLもPHPで作るってんなら、素のPHPだけでは大変かも。
PEARのXMLから自分にあったのを見つけるか、自分でXML構築classを書くかしないと
スクリプトの見通しが悪くなるなぁ…

あぁ、DOMXMLもあるかぁ。
091991705/02/27 01:43:53ID:???
自己解決しました
0920nobodyさん05/02/27 02:58:09ID:???
>>916
PHP4 で作成した Namazu モジュールは PHP5 では動かない。

CVS から Namazu モジュールのソースを取ってきて PHP5 の phpize を使用して
コンパイルすれば使えるはず。
0921nobodyさん05/02/27 03:44:49ID:???
mojaviで販売サイト立ち上げている人いますか?
092291605/02/27 04:06:08ID:f/BfgIj2
>>920
ありがとうございました。

「ftp://night.fminn.nagano〜」
は使えなくなってるし、cvsのリポジトリ見ても
古いままだったし・・・。あーよかった。

名前が「php4_namazu」なので、てっきりどうにも
ならないかと・・・
0923nobodyさん05/02/27 14:06:32ID:Quvh5uNr
iアプリのAPIからPOSTで送られて来るバイナリデーターの受け取り処理
がわかりません。どなたかご存知の方おりましたら、アドバイス頂ければ
と思います。どうか宜しくお願い致します。
0924nobodyさん05/02/27 17:24:06ID:???
>>923
PHPの問題じゃないじゃん。
092592005/02/27 17:54:12ID:???
>>922
http://cvs.php.net/pecl/namazu/
を見ると 6 週間前に PHP5 への対応パッチが入っているので、
一応、メンテナンスはされているらしい。
0926nobodyさん05/02/27 19:35:58ID:KdI7O9Tq
912です!
追加で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初心者なんでよろしくお願いします。
092791605/02/27 21:19:34ID:f/BfgIj2
>>925
ありがとうございました。
どなたか(作者?)がヘッダファイル
に手入れてくれてたのかぁ〜。
安心、安心。
ていうかこの拡張モジュールなかったら
結構つらいですもんね・・・
CGIとして呼ぶ、とかしか方法ないんですよね・・・
0928nobodyさん05/02/28 12:23:52ID:???
>>926
./configure に --with-zlib はつけた?
0929nobodyさん05/02/28 14:08:59ID:3v+7XYLQ
>>928
つけていませんが
最終的に
export EXTRA_LIBS="-lmysqlclient -lm -lz"
をつけたらうまくいきました。
そっか
./configure に --with-zlib
でもよかったんだ・・・

ありがとですぅ
0930nobodyさん05/02/28 17:52:56ID:???
phpをcgiとして動作させているんですが、この状態でvirtual関数を使おうとすると
Fatal error: Call to undefined function: virtual()
が出てしまいます。
どうにかしてvirtual関数を使えるようにすることは出来ないでしょうか。
0931nobodyさん05/02/28 18:23:21ID:???
>>930
そいつはモジュールとしてコンパイルした時しか有効に出来ないよ。
だからcgiでは無理
0932nobodyさん05/02/28 18:26:47ID:???
>>930
出来ない。まあ似たような機能で再定義する手はあるが。
0933nobodyさん05/02/28 18:40:49ID:???
基本的な質問ですみません。phpでthreadて出来ますか?
あるプロシージャを非同期に実行したいのです。
093493005/02/28 19:11:25ID:???
>>931-932
ご回答頂きありがとうございます。
>>932
参考までに方法を教えていただけないでしょうか。
phpとssiを混在させたページを作りたいのですが、どうにもうまく行かなくて。
0935nobodyさん05/03/01 01:47:51ID:GFbIljAS
phpからquicktimeを使用してファイルをaviからmovにしたいのですが
exec()にどのように書けばいいのかが分かりません
osはOSXを使用しています
どのようにすればいいのか教えてもらえませんか?
もしくは参考になりそうなサイトを教えてもらえませんか?
よろしくお願いします
0936nobodyさん05/03/01 03:06:47ID:???
>>935
quicktimeでavi→movする時のコマンドラインオプションを教えてもらえませんか。
残りのPHPの範疇のやりかたは回答できると思いますから。
0937nobodyさん05/03/01 03:35:54ID:GFbIljAS
>>936
私もそれがしりたくて書き込みしました
ので分かりません。
0938nobodyさん05/03/01 05:05:52ID:???
>>937
じゃあ、スレの管轄外。
0939nobodyさん05/03/01 07:56:42ID:???
以上、聞きたい事と聞く場所があってるか確認しろという典型例でした。
0940nobodyさん05/03/01 11:13:37ID:???
>>938
分かりました
移動します
0941nobodyさん05/03/01 11:17:00ID:5YlwQk1P
PHPでリファラを取得する際、リンク元がFlashの場合はリファラは渡されないのでしょうか?
Firefox等だと取得できるのですが、IEで取得できない状態です。
どなたかご教授いただけると幸いです。。
094293305/03/01 11:53:28ID:C0SmLfoj
いろいろ調べてみたしたが、PHPでスレッドって無理なんでしょうか?
だとすると、非同期実行は皆さんどうやってますか?
0943nobodyさん05/03/01 14:12:21ID:???
参考までに、スレッド使って何をするのか知りたい。
確かに言語仕様上、使えたら便利かもしれんが、
Webアプリの開発ではあまり必要に感じたことない。
094493305/03/01 14:51:54ID:???
>>942
処理に時間がかかるプログラムを切り離して実行させる
時に良く使ています(サーブレットですが)。

# あたり前ですが、ブラウザでタイムアウトをサーバから
# 操作できないので。
094593305/03/01 14:57:54ID:???
s/ブラウザで/ブラウザの/
0946nobodyさん05/03/01 15:18:58ID:???
>>945
ここはPHPスレなので、
preg_replace("/ブラウザで/",'ブラウザの', >>944);
かな。
0947nobodyさん05/03/01 15:37:04ID:???
「PHPで」という要件には満たないかもしれないが
system関数で裏に走らせて、そいつの結果を(σ´∀`)σゲッツ!!ってのなら可能かと。
0948nobodyさん05/03/01 15:57:50ID:???
>>933
PECL でこんなのがあるんだけど使ったことはない。
ttp://cvs.php.net/pecl/threads/

--enable-maintainer-zts が必要なのであまり使えそうにないけど。

他の手段は 947 と同じようだけど、CLI 版 PHP を popen() で
実行させて結果を待つとか。

PHP 4.3.0 以降だと stream_set_blocking() が使えるので、
non-blocking モードで処理可能だし。
094993305/03/01 16:12:19ID:???
>>947さん,>>948さんありがとうございます。
今回はPHPのリコンパイルは出来ない環境なのでPECLのやつは
ちょっと使えそうにないです。
やはりforkとかスレッド風の非同期は出来ないのですね。
popen(+非ブロックモード?)でイカせてもらいます。ありがとう
ございました。
095094805/03/01 16:58:33ID:???
>>933
一応 fork は --enable-pcntl を有効にしてコンパイルしていれば
PHP でも使えるんだけど。
ttp://jp2.php.net/manual/ja/function.pcntl-fork.php

ただ、Apache モジュール版では fork は不可能なので、CGI 版か
CLI 版で使うことになる。
0951nobodyさん05/03/01 17:53:01ID:???
>>942
Rubyを使って...仕事上ではJavaを使うことが多いが。

>>948
ああ、そんなのあるんだ。知らなかった。
0952nobodyさん05/03/01 19:05:44ID:???
PCにアパッチとPHPを入れました。
 Apache/1.3.33 (Win32) PHP/4.3.10 running...
と表示されるのですが実際[htdocs]にファイルを入れて見ると
 <? phpinfo() ?>
の指示が実行されません。何か思い当たる原因もしくは解決策はありますか?
0953nobodyさん05/03/01 20:24:18ID:???
>>952
むしろ貴方が何も思い当たらない時点で...

設定が足りないまたは無効。
参考にでもしたインストール解説を熟読
0954nobodyさん05/03/01 20:34:34ID:iwruqR6F
PHPの勉強をはじめました(PHP4.1.2/apache1.3.26)
PHPで書かれたいろんなソースを読もうと思っています。
任意の行で実行をストップさせて変数の値を表示したいのですが何かよい方法はないでしょうか?
また、ソースを読むときのtips見たいなのがあれば教えてください。
0955nobodyさん05/03/01 21:41:35ID:???
とめるんなら、exit;
そのexit;がある行までの変数を全部表示かぁ。
できるのかな。俺は知らない。
fileで自分自身を配列に入れて、exitが出るまでforで回すとか。
0956nobodyさん05/03/01 22:13:59ID:???
>>954
>PHPの勉強をはじめました(PHP4.1.2/apache1.3.26)

PHP4.1.2 って古くない???
今は4.3.10でっせ。


0957nobodyさん05/03/01 22:15:06ID:???
>>954
基本的なところでecho、var_dump、print_r、それらに類する私家ライブラリ
その後「PHP DBG デバッグ」をキーワードに(PHP4.1.2とのことなので)
本格的なデバッギングツールを探して試してみること。
ログの出力とかもね。

>ソースを読むときのtips見たいなの
PHPがどういう手順で命令とか関数を処理して行ってるのか
考え(思い浮かべ)ながら読む。
作り手のスタイルでソースの傾向が違うことも多いので、
余り肌に合わなければ手を出さない(アマチュアならそれでOK)
0958nobodyさん05/03/01 22:22:27ID:???
>>954
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:???
>>952

このへんとか。

http://tsuttayo.sytes.net/php/install/win.html
0960nobodyさん05/03/02 01:04:26ID:EylpmFkz
配列のキーや変数名に、日本語は使えますか?
いや、自分で使う気はないのですが、
引継ぎのスクリプトに使われているので、これは大丈夫だろうかと。。
0961nobodyさん05/03/02 01:27:31ID:???
>>960
使える。

ただ俺も率先して使ったり大規模に試したりした訳ではない。
本幹でないところで駄目だったりするかも知れない。
あくまでも「それは詰まるところa-z、A-Z、0x7f-0xffの範囲なんだろうな」
と念を押すべき。
0962nobodyさん05/03/02 01:29:19ID:???
>>960
>引継ぎのスクリプトに使われているので
ガクブル
096393005/03/02 01:29:39ID:???
何度も申し訳ありません。
あれから検索等で調べているのですが、どうしてもでてきません。

virtual関数以外で、SSIのinclude virtualと同じ動作をさせることは出来ないものでしょうか。
0964nobodyさん05/03/02 01:47:10ID:???
知恵を貸してください。
ログファイルから、終端の10行を読み込みたいときは
どんな方法が負荷を低く仕上げられるでしょうか?
おねがいします。
0965nobodyさん05/03/02 02:29:02ID:???
>>963
ああ、やったのは、SSIエミュレータだったかシミュレータというのを
呼んで処理させてました。Perlで書かれたやつだったかな。拾い物

今だったらApache2使ってSSI→PHP→SSIって感じに処理させると思うけど。
でもそこまでSSIに拘らんでもねぇ、今更。
096695405/03/02 02:35:30ID:???
>>955-958
ありがとうございます。
とりあえずprint_rやechoを使いながら>>958さんのソースを読んでみます。
096796005/03/02 02:38:46ID:???
>>961
どうもです。
配列のキーには、割と普通に文字列として使えそうですね。
変数名にも一応使えるんですね。
とはいえ、変数名に日本語使ってるスクリプトってなんか怖い。
小規模なのが救いです。
0968nobodyさん05/03/02 16:12:29ID:???
>>964
MySQL
0969nobodyさん05/03/02 17:01:34ID:???
>>964
tail
0970nobodyさん05/03/02 18:21:04ID:???
>>964
書く時に先頭に挿入していくようにして、
読む時は先頭の10行を読む
0971nobodyさん05/03/02 22:59:38ID:???
>>970
array_unshiftだっけ、array_pop?
なんだ酒飲んでるからわかんなくなっちゃった。
0972nobodyさん05/03/02 23:08:28ID:???
酔っ払いの屑はどっかいけ
0973nobodyさん05/03/02 23:08:35ID:???
>>964
普通に地道にやるなら。
最初に、count($array)して、配列数を求める。
そしたら、計算したら最後の10行目からの要素数わかるでしょ。
forでファイルを入れた配列をぶん回して、
さっきの値よりおっきくなったところから
新しい配列にarray_pushすれば。
0974nobodyさん05/03/02 23:32:20ID:???
>>973
普通に最後10行目からループをまわせばいい話じゃ
0975nobodyさん05/03/02 23:43:41ID:???
っていうか、>>964は「ログファイル」っていってるぞ。
もし、分割無しで設定されたApacheログだったら、
配列とかに入れようとした時点でアウチの可能性も。
昔、70Gのログファイルを見た。
0976nobodyさん05/03/03 00:09:25ID:???
どかしてるね
0977nobodyさん05/03/03 00:11:40ID:???
あ、そういやローカルのアパッチェのログ暫くほおりっぱなしだった。
27mbまで溜まってたよ。
0978nobodyさん05/03/03 09:50:30ID:???
>>977
今見たら2003年6月からのaccess.log3.4MBだった
0979nobodyさん05/03/03 09:54:23ID:???
ログファイルが大きい可能性があれば1行ずつ読んで10回までは配列にarray_push
11回目からはarray_unshiftしてarray_pushを繰り返す
0980nobodyさん05/03/03 11:13:24ID:???
Apacheが、apatchやらアパッシェやらアパッチェ等とイタリアの小料理のように呼ばれる件について。
0981nobodyさん05/03/03 11:32:30ID:???
ログファイルが大きい可能性があれば、
ファイルポインタを最後に持っていって、
適当なサイズのバッファに読み込み、その中から改行コードを判定。
指定した回数の改行コードを見つけるまでバッファ読込判定作業を繰り返す。

0982nobodyさん05/03/03 12:36:09ID:1a7MlPRn
会話のなかで使う時はアパッチと呼ぶが、仲間内ではあぱっちぇと呼ばれている
0983nobodyさん05/03/03 12:50:52ID:???
すると仲間内同士の会話のなかではどう発声するのですか?
0984nobodyさん05/03/03 13:13:40ID:???
ハァ?
0985nobodyさん05/03/03 13:26:40ID:???
>>983
シッ!
脳内仲間なんだからそっとしておいてやって!
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
>>988
イジワルキタ━━(゚∀゚)━━ヨ
0990nobodyさん05/03/03 15:41:06ID:???
>>987
質問なのか?そうなのか?
問題ではないのか?違うのか?

問題だったら、解いてやるが、
質問だったら失礼だから答えてやらん。
099198705/03/03 16:18:45ID:SgcxISz7
ごめん。

自己解決できた。

再帰コールを思い出したよ。
0992nobodyさん05/03/03 16:38:13ID:???
あるphpを、apache上で何度も動かすときに、
すべての変数はその都度初期化されますが、
変数の値を初期化せずに保持しておくことはできないのでしょうか。
データキャッシュとして使いたいのです。
共有メモリなどを使わないと無理ですかね。

一応、うちの環境は、apache 2.0.52, php 4.3.10 です。
099398705/03/03 16:53:55ID:SgcxISz7
>>992
mmcacheなら共有メモリか、ファイルか選べる。
0994nobodyさん05/03/03 16:57:07ID:No59BtVW
>>993
mmcacheって、phpのコンパイル後のデータをキャッシュしてくれるだけかと思ってた。
調べてみます。
099598705/03/03 17:07:52ID:SgcxISz7
>>994
mmcache_lock('dept');
mmcache_put('dept', $ret);
mmcache_unlock('dept');

$dept = mmcache_get('dept');
var_dump($dept);
0996nobodyさん05/03/03 17:26:50ID:No59BtVW
>>995
それです。ありがとさんくす。
eaccelerator_put / get
という名前になってた。
0997nobody05/03/03 22:16:07ID:V9TxyZTS
特定のディレクトリにmp3ファイルを保存してその一覧を表示しようと思うのですが、
phpでID3タグ情報を取得するにはどうすればいいのでしょうか?

php id3 取得などで検索してみましたが
rubyで同じようなことができるスクリプトは見つかったんですが。

FreeBSD + Apache + php4.3.10
099899705/03/03 22:37:43ID:V9TxyZTS
自己解決しました
0999nobodyさん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
10011001Over 1000Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。