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

【PHP】質問スレッドPart3

■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。02/02/17 13:23ID:N+9Uw5dE
レスは気長に待つのが良い感じかも。
答えられる方、返答よろしくお願いします。

<<参考リンク>>
■本家
http://www.php.net/
■PHP日本語マニュアル
http://www.php.net/manual/ja/
■JapanPHPUsersGroup
http://www.php.gr.jp/
■PHP日本語ページ
http://www.cityfujisawa.ne.jp/~louis/apps/phpfi/index.html
■Pearのドキュメント
http://phpdocu.sourceforge.net/peardocs/

<<過去スレ>>
■【PHP】質問スレッドPart1
http://ebi.2ch.net/test/read.cgi/php/982687820/
■【PHP】質問スレッドPart2
http://pc.2ch.net/test/read.cgi/php/1003283567/

<<教えて君>>
■ここ見習って書き込んじゃ、駄目よ
http://pc.2ch.net/test/read.cgi/unix/1011345180/242-245
0233nobodyさん02/03/10 20:24ID:???
>>232
トリップ生成ツールが使えないからじゃないか?
0234nobodyさん02/03/10 21:49ID:???
>233
なんか本末転倒な雰囲気にワラタ。
023522702/03/10 23:12ID:???
>234
自分がMD5になって萎えていたのは、
まさにそれが理由だし(苦笑>生成ツール使えない

一応ソースのせておくと

if (ereg("#",$name)){
ereg("#(.+)",$name,$array);
$key = $array[1];
$salt = substr($key."H.", 1, 2);
$salt = strtr($salt,":;<=>?@[\\]^_`","ABCDEFGabcdef");
$trip = substr(crypt($key, $salt),-8);
print "◆".$trip;
}

こういう感じ?
なんか忘れてるような・・・。
0236nobodyさん02/03/10 23:19ID:???
PHPで金取れるようなスクリプトってどんなのがありますか?
ソース見て勉強したいんですけど。
0237 02/03/10 23:41ID:???
>>236
お金を払えば見せてあげますよ。
0238nobodyさん02/03/11 00:06ID:???
ワロタ
0239nobodyさん02/03/11 01:06ID:hZmTDUb8
PHPを使って、CPUの使用率をファイルに
書き出したりとかって出来るのでしょうか?
なにか方法があればお願いします。

使用サーバはPHP4.1.1 + Redhat 6.2 という構成になっています。
0240 02/03/11 01:10ID:???
>>239
CPUを測るスクリプトというのは外部アプリでつくり、
それを呼び出して実行結果を保存すればいい。
PHP単体では無理っぴぃ
024123902/03/11 01:37ID:hZmTDUb8
>>240
やっぱPHPだけでは無理ですか。
ありがとうございましたです。
0242nobodyさん02/03/11 02:25ID:???
あ、PHP-MLおなじみの「書き換えるとどうなるの?」シリーズだ。
毎回、「マニュアル見ましょう」と突っ込まれてるし。
0243教えて君02/03/11 04:24ID:???
>>239
微妙なな。。。
SNMP関数使えばできんことないと思うけど
果たしてそれをPHP単体と呼ぶのかどうか。。。
024422702/03/11 08:39ID:???
>242
ひょっとして漏れはネタにマジレスしてしまったんでしょうか
0245nobodyさん02/03/11 11:31ID:tibj4QCu
PHP3で、
WEBページのフォームから、感想などの、
メールを自分あてに送れるようにしようと頑張っています。

で、だいたい出来ているのですが、
メールが4通重複して送られて来てしまうのです。
mailコマンドはこんな感じですが。
<?php mail("mail@address", "test", "This is test mail") ?>
どっかでループ回ってるのかな?と思うんですけど、
ありがちな失敗があったらおしえてください。
0246_ ◆IVXmlxmI 02/03/11 12:51ID:???
>>245
その前後を書かないとわからない
024724502/03/11 13:20ID:???
こんな感じです。

<BODY BGCOLOR="#FFFFFF">

<?
$str="姓:$sei\n名:$mei\nふりがな:$furigana\n\n郵便番号:
$zip\n現住所:$address\n同電話:$tel\n同ファクシミリ:
$fax\n\n勤務先:$kinmusaki\n役職:$yakushoku\n同郵便番号:
$kinmuzip\n同住所:$kinmuaddress\n同電話:$kinmutel\n同ファクシミリ:
$kinmufax\n\n学位称号:$gakui\n最終卒業校名:
$school\n卒業(終了)年月日:$monthday1/$monthday2/$monthday3\n専門分野:
$senmon\n\n";

if ($renraku=="kinmusaki") {
$str2="連絡先:勤務先\n";
} else {
$str2="連絡先:現住所\n";
}

if ($shubetsu=="sei") {
$str3="seikai\n";
} else{
$str3="huseikai\n";
}

$str4="電子メールアドレス:$email\n生年月日:$birthday1/$birthday2/$birthday3\n紹介者:$shoukaisha\n連絡事項:$renrakujikou\n";

mail("user", "USER", "$str$str2$str3$str4", "From: mail@address");
?>
送信しました。
</BODY>
</HTML>






0248nobodyさん02/03/11 13:35ID:???
>>247
フォーム4連打してたとか、そういうオチはないよね?
024924502/03/11 14:19ID:tibj4QCu
もごとにそうでした。
0250_ ◆IVXmlxmI 02/03/11 15:24ID:???
>>249
もごとキタ━━━━━━(゚∀゚)━━━━━━ !!!!!
~~~~~~
原因分かって良かったですね。
025122802/03/11 17:15ID:vV9+nccN
結局DSOとしてインストールしました
問題なく動いています。
付き合ってくださった方々どうもありがと!!
0252nobodyさん02/03/11 18:20ID:???
print '変数1:'.$var.'だよ〜';
という風に、一回閉じてから書いてるのだが、こんな俺の書き方は変なのだろうか(;´Д`)

0253 02/03/11 18:32ID:???
<? 〜 ?>で出たり入ったりするのを繰り返した方がいいのか
それとも全体を<? 〜 ?>で括っちゃった方がいいのか

流儀もあるだろうけど、みんなはどう考える?
025423902/03/11 19:41ID:???
>>253
場合によると思う。
例えばtableをループでまわすとき、
ソース的に見やすいのは<? 〜 ?>とする方だろうけど、
エディタで開いたときに参照し難くなるからおすすめできない。

デザインを他の人に任せる場合なんかは特に。
025523902/03/11 19:46ID:???
>>252
むしろそうしないと駄目かと。
0256nobodyさん02/03/11 21:29ID:???
>>252
print "変数1: $var だよ〜";

でいいだろ
0257教えて君02/03/11 22:58ID:???
これがめんどくさい

define('MYSELF', $PHP_SELF);

print '<A href="', MYSELF, '">戻る</A>';

最近は eval() かな〜と思ってるんだが、
eval() ってどうよ?<?= ?> よりも重たい?
0258nobodyさん02/03/12 00:33ID:???
evalって多用するには汚染チェックとか気を使わない?
0259教えて君02/03/12 00:48ID:???
>>258
んにゃ、クラスの中に閉じ込めるつもりだから多分大丈夫かと。
逆にそゆことするとどんどん重くなる気もしてちと鬱。
0260nobodyさん02/03/12 01:12ID:HtOfM4j8
定数はめったに使わんなぁ
0261 ◆AngelBlk 02/03/12 02:12ID:???
>259
現在、オブジェクト指向と格闘中・・・。
今までべた書きしかしたことなかったから
概念がうまくつかめず(苦笑

クラスとか使うなら、APCとかで高速化したほうが
いいかも。
普通に使うと、かなり重くなっちゃうみたい。
026222102/03/12 04:14ID:or3FKG02
セーフモード理解不能・・・
ど素人はまずどこから学んだ方が良いでしょう?
0263modoki ◆zVn/zRzw 02/03/12 04:20ID:???
>>262
http://www.php.net/manual/ja/features.safe-mode.php
026422102/03/12 05:45ID:or3FKG02
それわかるまで来るなってことですか・・・
0265nobodyさん02/03/12 05:49ID:???
>>264
ここより優しい解説ページはないからねぇ・・・
しょうがないと思うよ。
0266nobodyさん02/03/12 07:56ID:SZRWTyJ2
リストとクリックカウンタ数を表示させてるんですが、↓こんなの。
aaa[500]
bbb[200]
ccc[450]
phpだけでクリック数順に自動的に並び替えるってできるでしょうか。
mysqlと組み合わせた方が簡単ですか?
0267 ◆AngelBlk 02/03/12 08:31ID:???
>264
問題の切り分けしないと。
セーフモードの何がわからないの?

>266
PHPだけでも出来ると思うけど、
SQL使った方がスマートだろうね・・・。
026826602/03/12 14:53ID:SZRWTyJ2
うーん、クリック数を別ファイルからincludeしてきてるんですけど、mysqlでうまく表示できないんですよ。
スレ違いですがどなたか教えていただければ。
while($row=mysql_fetch_array($result)){
echo $row["id"]," ",
"<a href=\"./hoge/",$row["id"],".php","\">",$row["title"],"</a>"," ";
include './hoge,$row["id"],';
print "<p>\n";}
0269nobodyさん02/03/12 21:09ID:???
http://www.dcl.info.waseda.ac.jp/~hasegawa/php/bbs.html
ここのスクリプトで
http://www.dcl.info.waseda.ac.jp/~hasegawa/php/source/bbs1/bbs1.php
これのレスの中身を見るときprint_numbe
使ってますけどこれどういう仕組みなんでしょうか?
0270 ◆AngelBlk 02/03/12 23:42ID:???
>268
というか、MySQLってどういうものかわかってる?(汗
なんか激しく勘違いしてる予感・・・。
0271nobodyさん02/03/13 01:58ID:IXx7qadd
MySQLにはAUTO_INCREMENTなんてのがあるのかぁ。
0272nobodyさん02/03/13 02:02ID:???
つーか Zend Engine 2ってどーよ? 誰か使ってる?
027326602/03/13 09:59ID:WmCmDYl5
>>270
あああああれー?
一生懸命考えたんですが全然違ってます?(;´Д`)
0274nobodyさん02/03/13 11:08ID:???
>>273
掲示板でDB使う必要あんの?
027526602/03/13 12:42ID:???
>>274
掲示板じゃないですが、はて?
0276教えて君02/03/13 17:44ID:wVBmS6c2
とある配列をとあるクラスのメンバにしたいとき、
コピーじゃなくてポインタ渡し(?)みたいにする方法ってないかな?

 $array = array(...);
 $this->array = $array;

ってやると $this->array は $array のコピーになっちゃうよね?
C で言う、

 array = calloc(...);
ptr->array = array;

みたいなことをしたいんだけど。。。
何でかって言うとちょっとでかめの配列なので
何となくメモリ節約したくて。。。
0277nobodyさん02/03/13 18:32ID:???
誰かが話題に出してたSmarty使ってみてるんだけど、ちょっと質問。
セキュリティを有効にしてsecurity_settings等の設定をしてると、
Warning: Undefined offset: Smarty_Compiler.class.php on line 857
がたくさん出る事ないですか?エラー表示レベルはE_ALLで。
0278_ ◆IVXmlxmI 02/03/13 18:48ID:???
http://www.zend.co.jp/products/studio/
誰か買いました?

デバック機能などの使い心地を聞きたいです。
0279nobodyさん02/03/13 18:52ID:d35MZnFu
>>276
$this->array = &$array;
とか出来ない?
0280 ◆AngelBlk 02/03/13 20:51ID:???
>273
「ファイル操作」と「DB操作」は別だよ〜。
どうもファイルとDBを混同してるような気が(^^;

>278
前、一回英語版を仕様してみたけど、どうもいまいち。
どうもクライアントがJAVAで書かれてるソフトは
好きになれない・・・。
ただ、関数とかの補完とか使いやすい機能も多いと思う。
本格的に開発やってるなら買っても良いかも。

//でも、45000円(だったよね)はちょっと高いよなー。
//クライアントだけで売ってくれないものか・・・。
0281教えて君02/03/13 22:24ID:???
>>279
ほんとだ。

http://www.php.gr.jp/php/php4/new_features.php3

にも書いてアターヨ。スマソ。
028226602/03/13 23:53ID:???
>>280
めっちゃ混同してました(;´Д`)
他のやり方考えてみます。。
0283nobodyさん02/03/14 02:19ID:80hRLeB+
トランザクション中にコミットせずにプログラム終了させてんだけどこれってヤバイ?
0284nobodyさん02/03/14 02:21ID:80hRLeB+
あ、DBはPostgresで。
教えて君でスマソ
0285名無しさん02/03/14 02:27ID:???
データベースの勉強したら?
028628302/03/14 09:31ID:n8zcTGGh
コミットせずに終了させてるのはエラーが出たときだけでした。
通常はコミットしてます。スマソ。

ようするにエラーでたときにコミットせずに exit してるって事です。
0287 02/03/14 09:46ID:???
データベースの勉強したら?
0288nobodyさん02/03/14 14:37ID:7AlJ59cB
rollbackしたら?
028928302/03/14 16:53ID:n8zcTGGh
>>288
実際にはデータチェック → データ登録の
データチェックの部分でエラー出してるんで
ロールバック必要ないかな?と思ったりしてるんですが、やっぱり必要ですか?
0290nobodyさん02/03/14 16:55ID:5LxluOYT
http://www.2xes.com/
0291ななし02/03/14 18:15ID:???
http://www2q.biglobe.ne.jp/~terra/cgi/suntack.htm

3択クイズってやっぱりこれがいい?
0292nobodyさん02/03/14 18:32ID:???
>>289
やはり「データベースの勉強」は必要かも。
何のためにトランザクション使っているのか分かってないでしょ。

仮に今のそのシステムでトランザクションなしにして、不都合ある?

029328302/03/14 18:43ID:n8zcTGGh
例えばさ

トランザクション開始

フラグチェック

データ更新

トランザクションコミット

って、やる所を

トランザクション開始

フラグチェック

エラー

exit

って、なんだけどコミット(ロールバック)は要るか?って事で
insert 文や update 文は発行してないから無くてもイイかな?って思うんだけどやっぱダメ?
029428302/03/14 18:47ID:n8zcTGGh
>>292
データチェックって入力されたデータのチェックでなくて
DBに格納されてるデータのチェックね。フラグとか
0295教えて君02/03/14 21:48ID:???
そろそろみんなの言うこと聞きなよ。
みんな出直してこい、ってんじゃん。
0296 02/03/14 23:42ID:???
>>283
なんでそんなことで悩んでるんだ?
他にもっと重要なことがあるだろ。
不安ならrollbackすればいいだろ。

自分で考えられないなら、向いてないから辞めちまえ。
0297nobodyさん02/03/15 04:28ID:sSRdthig
phpファイル内でSSIを動かす方法ってありますか?
0298 02/03/15 04:52ID:???
>>297
echo 'ls';
とかじゃダメ?
0299nobodyさん02/03/15 10:17ID:???
php4.1.0使ってるんですが、
例えばクエリー文字列を取得する場合に
$QUERY_STRINGだけではダメなんですか?
$_SERVER["QUERY_STRING"]とすると大丈夫ですが。
マニュアルの注意書きにある、コマンドラインからでないと使えない変数ってやつ??
0300教えて君02/03/15 11:22ID:jXzuFDrg
PDF扱うことになったんですけど、
ClipPDF と libpdf ってどちらがオススメですか?
OS は FreeBSD4,5R、PHP は 4.1.2 です。
0301nobodyさん02/03/15 16:50ID:zj9b84BU
PHPに文字を何倍かにする演算子ってありますか?
Perlだったら
$stars = '☆' x 4;
ってやれば"☆☆☆☆"って出来たのですが
PHPだとうまくいきません。
0302 02/03/15 18:39ID:???
>>301
4回足せば?
0303nobodyさん02/03/15 18:42ID:???
PHPで無限ループを走らせてしまった場合の回避法ってありますか?
0304nobodyさん02/03/15 18:59ID:???
>>303
shutdown -h now
0305ほげ02/03/15 19:01ID:mEJywi54
>>303
コンピュータ

を窓から投げ捨てろ
0306nobodyさん02/03/15 19:02ID:???
>>303
print "<!-- 誰か止めて -->";
0307 02/03/15 19:10ID:???
>>303
制限時間を10秒にしろ。 ターイム・ショック!
0308nobodyさん02/03/15 19:20ID:???
>>307
いつもより多めに回っています>いす
0309nobodyさん02/03/15 19:53ID:???
>>303
30秒待つ。
031023902/03/15 20:31ID:???
>>301
for ($i = 1; $i < 4; $i++) {
$starts .= $start;
}
0311nobodyさん02/03/15 21:10ID:???
>>306
ワラタ
0312nobodyさん02/03/15 21:29ID:???
>>301
$stars = str_repeat("☆", 4);
0313nobodyさん02/03/16 00:38ID:bJHnWes8
>>299
php.iniで、register_globals=Onにすれば従来どおり。
0314nobodyさん02/03/16 01:51ID:d8wgePDM
GD使えない環境で、画像の生成をしたいのですが
無理でしょうか?

C-BOARD
http://skully.lib.net/atman/c-board3/c-board.cgi?cmd=qvh;hue=0;saturation=
ここまで凄いものではなく、簡単なものでいいんですが
いろいろ探しても、GDが必要なものばかりなので。
0315nobodyさん02/03/16 01:59ID:???
XBM
ひみこーどがそうだっけ?
0316nobodyさん02/03/16 03:35ID:rfiYtYN+
質問です。

以下のファイルがあったとします。

<!-- test.php -->
<img src="./log.cgi?ref=<?php echo getenv("HTTP_REFERER"); ?>">

これの実行結果を変数に入れようと
$bar = include("test.inc");
echo $bar;
とやってもうまくいきませんでした。
fread 関数では処理されずにソースコードがそのまま入れられてしまいました。

方法があれば教えてください。
0317へなちょこ02/03/16 06:14ID:ZL3U7hey
サーバにPHPファイルをアップして(IE以外のブラウザで)表示すると、
ソースが丸見えになってしまいました。
他のサイトのPHPファイルは正常に表示されるのですけど、
自分のサイトのPHPファイルを見るとソース丸見えという状態です。
ちなみにローカルだとどのブラウザでも表示されるんです。
これはどういったことが原因なのでしょうか?
031831702/03/16 06:44ID:???
すんません、サーバでPHPが動いてないだけですね。
0319 ◆AngelBlk 02/03/16 10:03ID:QdJopNnK
register_globals、どうしてる?
offがいいのはわかってるし、利用者が自分だけならいいんだけど
サーバ利用者にその辺のサイトで配ってるスクリプトを
使いたいっていう人がいるとちょっと問題。

まあ、簡単な書き換え方法もあるけど・・・うーん。
0320nobodyさん02/03/16 10:24ID:???
当然Off
0321nobodyさん02/03/16 10:25ID:???
そのスクリプトがどれくらい信用できるものなのかにも
よると思うけど、offってた方が絶対いいよ
0322 ◆AngelBlk 02/03/16 10:54ID:???
>320-321
回答ども〜。
safe_modeも当然offですよね。
0323nobodyさん02/03/16 11:09ID:???
>>322
どういう事してるのか知らないけど、
共有レンタル鯖とか運営してるならonにすれ
0324nobodyさん02/03/16 11:14ID:???
>>322
safe_modeはonに決まってるだろ
0325nobodyさん02/03/16 23:56ID:w4jnixRu
すみません、
mbereg_replace の e オプションはどういう風に使うのでしょうか?

実は、ある文字に囲まれた文字列がデータベース上に
存在しているかをチェックしてから、その文字列を置換
したいのですが、mbereg_replace の説明を見ると、
「eを指定した場合、置換文字列をPHPの式として評価します」と
記載されているので、これが使えないか、と考えてるのですが
このオプションを使ったサンプルが見つからなくて・・・
どなたかお願いします。
0326nobodyさん02/03/17 02:26ID:QsNQTCic
$hoge = 'ほげほげ';
$string = 'あいうえおかきくけこさしすせとたちつてと';
$replaced = mbereg_replace('おかき', '$hoge', $string, 'e');

こんなんでどう?
0327nobodyさん02/03/17 02:45ID:???
>>324
なぜですか?
0328nobodyさん02/03/17 03:46ID:???
>>327
他の人に貸してるから。
032932502/03/17 04:00ID:???
>>326
ありがとうございます。なるほど・・・。
$hogeの代わりに\1を引数に関数を呼んで、置換文字を
返すようにしたら、望み通りの動きをしてくれました。
さんくすです。
0330nobodyさん02/03/17 21:17ID:cMXiknvM
timeoutについて教えてください。
スクリプト中でタイムアウト設定を
set_time_limit(0);
ignore_user_abort(1);
とやってますが、長い処理をやらせると300秒で中断してしまいます。
apacheの httpd.conf 内で Timeout を増やせばその分長くなることがわかりました。
しかし .htaccess にTimeoutディレクティブは書けず(エラーになりました)、
「ここだけtimeout増やしたい(or timeoutさせたくない)」というのをどうやって
実現するのかがわかりません。

使用しているのはPHP4.1.2+apache1.3.22です。
どなたか助言を・・・
0331nobodyさん02/03/17 23:23ID:RVb4+mVn
いきなり漠然とした質問なのですが、
あらかじめ用意したpdfファイルを二つ以上結合し、
ひとつのpdfファイルとして出力することは可能ですか?
可能であれば是非教えてください。
0332 02/03/17 23:29ID:???
>>331
可能だけど、A+B=A になっちゃうな。それでもいい?
■ このスレッドは過去ログ倉庫に格納されています