【PHP】質問スレッドpart28【php】
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2005/05/05(木) 17:17:11ID:???・新規質問の方は上げてください。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-10辺り
0333332
2005/06/05(日) 12:44:07ID:???0334nobodyさん
2005/06/05(日) 12:44:49ID:fHB//NoEやってみます
ありがとうございます
0335328
2005/06/05(日) 12:57:04ID:WUf4gILF上のフレーム
print "<FORM name=form1 method=POST target=up action=$PHP_SELF ";
print "<INPUT TYPE=TEXT NAME=comment SIZE=50><INPUT TYPE=SUBMIT NAME=Submit VALUE=送信>\n";
上のフレームで↑のように「送信」を押した時に、上の画面を別の画面を更新させつつ、
下のフレームが別のページが表示されるようにするにはどうしたらよいですか?
例えば、「送信」を押す前は下のページはYAHOOのページ。「送信」を押した後の下のページはGOO。
「画面」
上フレーム
画面A【送信】
----------------
下フレーム
YAHOOページ
↓
【送信】ボタンを押す
↓
「output」の処理
「画面」
上フレーム
画面B
----------------
下フレーム
GOOページ
0337328
2005/06/05(日) 13:17:57ID:WUf4gILFJavaScriptをOffにされた時はどうしましょう?
0338nobodyさん
2005/06/05(日) 13:23:15ID:???phpでやりたいのか?
<frame>…を書いているphpに、POSTデータを送る。
送られたPOSTデータによって、上下フレームのsrcをphpで変更。
0339nobodyさん
2005/06/05(日) 13:23:45ID:???動く訳が無い。
JavaScriptをOnにさせないと正常に動作しない旨を明記する。
それか、構造自体を変えるしかない。
つまり1画面にする。
携帯用とPC用のページを作るのと同じように、JavaScriptのON/OFFによって
表示させるページを変えるとかね。
0342nobodyさん
2005/06/05(日) 15:34:20ID:lYJETCr8どなたもご存知ないでしょうか。
申し訳ないですが、別の場所にもマルチさせてもらいます。
0343nobodyさん
2005/06/05(日) 15:42:12ID:???0344Imo ◆.jC7ANgFY.
2005/06/05(日) 17:03:23ID:???ヒアドキュメントとは違うけど
?>
ああああ
<?=$flag?"true":"false"?>
ああああ
<?
0345nobodyさん
2005/06/05(日) 18:34:59ID:???0346nobodyさん
2005/06/05(日) 19:55:55ID:bZeUemJDWEB上でメールアカウントの発行を行いたいと考えておりますが、
どのような関数を使ったらよいのかわかりません・・
ヒントだけでももらえませんでしょうか?
今は
PHP
↓
データベース
↓
手動メルアカ発行 ←この部分を自動化したいのですが・・
0347nobodyさん
2005/06/05(日) 20:07:58ID:???コマンドラインからメールアカウントを発行する時のコマンドを、
system()とかのプログラム実行関数で実行する。
0348nobodyさん
2005/06/05(日) 20:40:24ID:sNIsIaeCUTF-16で保存したPHPスクリプトを実行しようとすると
何故か<?php〜?>の部分がそのまま出力されてしまうのですが、
これはPHPの仕様によるものでしょうか?
それとも当方のPHPの設定によるものでしょうか?
同様のスクリプトをUTF-8やEUCで保存した場合はすんなり動きます。
PHPはUTF-8もUTF-16も問題なく扱えるものと思っていたのですが、
UTF-16でコードされたPHPスクリプトを動作させる方法等、
ご存じの方が居られましたら何卒ご教授頂けますようよろしくお願い申し上げますm(__)m
0349nobodyさん
2005/06/05(日) 20:50:37ID:???そんな方法など無い。
UTF-16は全ての文字を2バイトで表現し、PHPのパーサはそれを解釈できない。
入出力のエンコーディングにUTF-16を使うことは可能。
0350nobodyさん
2005/06/05(日) 22:09:44ID:fHB//NoE記述が間違ってました
ありがとうございます
0351348
2005/06/06(月) 00:35:39ID:???ぐはあ、2バイトだからか…orz
近い将来対応される事を祈りつつUTF-8で行く事にします。
どうもありがとうございました。
0352nobodyさん
2005/06/06(月) 11:13:53ID:???メールアカウントをそのデータベースで管理すれば
データベースに追加=メールアカウント発行となる。
データベース認証と連携できるSMTP/POPサーバを探してみ。
0353nobodyさん
2005/06/06(月) 11:15:32ID:???シングルバイト圏のマルチバイト対応のスタンスを知れば
そんなのは甘い幻想だということが判る。
待ってても辛いぞ。
0354nobodyさん
2005/06/06(月) 12:21:14ID:???日本の開発者が頑張ってマルチバイトに対応させてきたのを蔑ろにするかのように
mb_*関数をiconv_*関数でリプレースさせようとしてる連中だからな〜。
かといって日本人がメインでやってるRubyは書式が好かん。
LLとしてはPHPがいちばん性に合うんだよなぁ。
Tickで茶を濁すんじゃなくてユーザレベルスレッドが欲しいとか
ネイティブにイベントドリブンなプログラムが書きたいとか
欲を言えばきりがないけど。
0355nobodyさん
2005/06/06(月) 13:02:47ID:6gysl0iCありがとうございますた。
鯖でCpanelを使っていたので、そこから発行している
コマンドがわかれば使えるかなと思って、調べていたら、
そのまんまクラスが落ちてましたw
>>352
噂には聞いた事ありますが、sudoとかmtaとか
サバーにも詳しくならないといけないなと思いますた
0356nobodyさん
2005/06/06(月) 18:40:19ID:AU1ko05N資料がなく、アルゴリズムもイメージできません。辞書ファイルなど作って一致したものを抽出させるのでしょうか?
なにか助言ください。
0357nobodyさん
2005/06/06(月) 18:53:53ID:???0359nobodyさん
2005/06/06(月) 20:32:12ID:cu+btNTGある曜日の時刻からある曜日の時刻の範囲内であるかどうかを
チェックするには
どのようなコーディングをすればよろしいでしょうか。
多分、機能の実現自体は出来ると思うのですが、
いかに綺麗なプログラムで実装するかという意味では
こちらで識者の意見を仰いだほうがよいと思ったので
質問させていただきました。
よろしくお願いします。
0360nobodyさん
2005/06/06(月) 20:50:23ID:???ある曜日と時刻という意味が良く判らんが、ある日時の範囲内という意味なら
以下でいいんでないかい。外してたらスマソ。
$start = '2005/06/06 00:00:00';
$end = '2005/06/06 23:59:59';
$between = (time() >= strtotime($start) && time() <= strtotime($end));
if ($between)
echo '範囲内';
else
echo '範囲外';
0361359
2005/06/06(月) 21:01:59ID:???レスありがとうございます。
何故「ある曜日と時刻」かと申しますと、
1週間の中で曜日と時刻で変化するパラメータを設けたいのです。
なので、ある日時の範囲ではなく
ある曜日と時刻からある曜日の時刻の範囲内で在るかを
見ていきたいというわけなのです。
0362nobodyさん
2005/06/06(月) 21:21:50ID:7fi2eBpp(株価やランキングの数値など)ものを
IFRAMEを使わずに表示するには
どうしたらできるでしょうか?
表にその数値を入れたいので、レイアウトがくずれないようにしたいからです。
phpでできるようなことを聞きました
助言おねがいします
0365nobodyさん
2005/06/06(月) 21:54:33ID:???function in_the_range()
{
$today = to_seconds(date('D'), date('H'), date('i'), date('s'));
$from = to_seconds(3, 12, 0, 0); // 水曜日12時
$to = to_seconds(5, 18, 30, 0); // 金曜日18時30分
// 曜日は 0 が日曜日 - 必要に応じて調整して。引数にするもよし。
$gap1 = $today - $from;
if ($gap1 < 0) $gap1 += 604800;
$gap2 = $to - $today;
if ($gap2 < 0) $gap2 += 604800;
return ($gap1 + $gap2 < 604800);
}
function to_seconds($d, $h, $m, $s)
{
return $d * 86400 + $h * 3600 + $m * 60 + $s;
}
0366nobodyさん
2005/06/06(月) 22:13:08ID:???IFRAMEを使わずにってことはブラウザ側でも一定間隔で自動更新したいって意味?
それだったらXMLとかの形でJavaScriptで定期的にロードすればそのまま整形できるし(スレ違いだけど)ページ全体を更新する必要もない。
別にブラウザ側で自動更新しなくていいなら>>363の方向で。
>>364はよーわからん。
0367362
2005/06/06(月) 22:48:00ID:7fi2eBpp>>363
cgiやperlはやったことがありますが、phpは
ないので、今のところできません
>>364
24時間に一回更新すればそれでいいです。
>>366
とりあえずやってみます。
0368362
2005/06/06(月) 22:54:40ID:7fi2eBpp自動更新されるデータはxmlなのですが
htmlの中のtableの中にどうやって組み込むのですか?
0370362
2005/06/06(月) 23:47:41ID:7fi2eBpp具体的に、
http://xml-jp.amznxslt.com/onca/xml3?t=miseinennnoka-22&dev-t=1AMVZMZT2SZPSET21J82&AsinSearch=4797314133&type=heavy&locale=jp&f=xml
の32行目の<SalesRank>25,200</SalesRank>をhtmlのページに表示するには
どうすればいいのですか?
0373nobodyさん
2005/06/07(火) 00:39:29ID:???下記のような流れの登録フォームがあったとします。
(1)IDとパスワード入力 ↓
(2)個人情報入力 ↓
(3)アンケート回答 ↓
(4)内容確認 ↓
(5)登録完了
formのactionをpostにしていると、IEでは3の時にブラウザの
「戻る」を押した時にエラーになります。(セッションエラー?)
これを解消するにはどうしたらいいのでしょうか?
GETにするしかないのでしょうか?
0374362
2005/06/07(火) 01:36:45ID:3zfTLLTtJavascript(XMLHttpRequest) + DOM + DHTML
はどうやるのですか?
簡単でしたら下のを作ってくださいです。。。
http://xml-jp.amznxslt.com/onca/xml3?t=miseinennnoka-22&dev-t=1AMVZMZT2SZPSET21J82&AsinSearch=4797314133&type=heavy&locale=jp&f=xml
の32行目の<SalesRank>25,200</SalesRank>をhtmlのページに表示
0377361
2005/06/07(火) 08:27:51ID:umy9na94どうもありがとうございます!
参考にさせていただきます。
0378nobodyさん
2005/06/07(火) 09:32:47ID:???Post時、情報を2重送信しないためのIEの仕様。掲示板とかでも出るから試してみ。更新を押すと見れるはず。
0379nobodyさん
2005/06/07(火) 16:02:52ID:jA26TwdAPHPでWebサイトの製作を計画しているのですが
ページのリンクにより
�@PHP→�AHTML→�BPHP
と遷移した場合、�@のPHPで作られたセッション情報というのは
�BのPHPでも参照できるのでしょうか?
よろしくおねがいします。
0380nobodyさん
2005/06/07(火) 16:04:47ID:???やってみればいいじゃん。
1のPHPでセッションに何か情報記録しておいて、
3のPHPで表示できるかどうか。
0381nobodyさん
2005/06/07(火) 16:17:19ID:???いや、htmlやhttpの知識があってマニュアルをよく見ていれば、質問する必要すらないんだけどね。
セッションの実装には、cookieとURL埋め込みの2種類があって、
URL埋め込みの場合は(2)の部分でセッションが切断される。
cookieとURLのどっちが使われるかは、鯖の設定とブラウザの設定に左右される。
よって、参照できる時もあれば、参照できない時もあらーな。
0382nobodyさん
2005/06/07(火) 16:54:29ID:jA26TwdAPHPはやったことがないというか。いまから開発環境の選定をしている
最中でして・・・・・
Javaで作るServletコンテナの場合は、
�@JAVA→�AHTML→�BJAVA で引き継ぐことがてきたので
PHPの場合はどうか質問してみましたのよ。
まあ、よく考えればPHPは所詮CGIなのでできないはずですね。
失礼ー。
0383nobodyさん
2005/06/07(火) 17:01:56ID:???>PHPはやったことがないというか。いまから開発環境の選定をしている
>最中でして・・・・・
自分の使ってるパソコンにでもインストールしてテストすれば良いじゃないか?
インターネットで調べながらでも2,3時間もあれば初心者でも十分過ぎる。
>まあ、よく考えればPHPは所詮CGIなのでできないはずですね。
PHPが分かってない。
そして、結果的に言えば出来る。
0384nobodyさん
2005/06/07(火) 17:06:10ID:kfATXNgN一時的にDBにセッション情報を保存しておけば出来るじゃん。
0385nobodyさん
2005/06/07(火) 17:17:18ID:???PHPであろうとJavaであろうとセッション保持の仕組みそのものはたいして変わらない。
>まあ、よく考えればPHPは所詮CGIなのでできないはずですね。
セッションの仕組みを理解していないのに、CGIだからという理由で結論を出すのは浅はか過ぎる。
そもそもPHPはCGI版と共有オブジェクト版があるわけで。
しかも、>381には
>いや、htmlやhttpの知識があってマニュアルをよく見ていれば、質問する必要すらないんだけどね。
って書いてあるんだが。
スマン、ストレスがたまってるみたいだ。
0386nobodyさん
2005/06/07(火) 17:38:48ID:jA26TwdA>>384は論外として
誘導尋問のつもりは無かったのですが
おかげさまで必要な情報が取れました。
これで実現に向けてGOをかけれます。
ありがと。
0387nobodyさん
2005/06/07(火) 20:59:44ID:???>PHPは所詮CGIなのでできないはずですね
バカじゃねーの?こいつ。
知ったかぶってるけど基本が分かってないな。
0389nobodyさん
2005/06/07(火) 21:03:42ID:kfATXNgNGOをかける前にセッションの勉強したほうがいいよ、キミ。
あとクッキーの勉強もな。
他人に質問しといて「論外として」はないだろう。
見てて不愉快だ。
0390nobodyさん
2005/06/07(火) 21:21:45ID:???再認証するなら使えるけど、クッキーオフだとセッション切れちゃうよね。
クッキー使う事前提ならDBに保存する必要はないわけだし。
(別に最初からDBでセッション管理してもいいけど)
0391nobodyさん
2005/06/07(火) 21:29:25ID:???388だけど、384の趣旨はセッション管理にDBを使うということと読んでた。
でも読み返すと微妙な気がするなあ。
どのみちPHP以外の言語と連携するならセッション情報のシリアライズに
serialize()関数の代わりにwddx_serialize_vars()を使うとか、
セッション自体を独自に実装するとか、ちょっとした工夫は必要だけど。
0392カポコン
2005/06/07(火) 22:31:37ID:???UNIXで使う場合の変換とか頭がこんがらがってしまう。
何か良いネタ無いかプリーズ。
0394nobodyさん
2005/06/07(火) 23:14:14ID:???$a = new A();
class A {
var hoge;
function get() {
print $this->hoge;
}
}
これで$a->get()してもhogeの内容が取得できません。hogeにはコンストラクラで文字列を代入しています。
何がおかしいですか?
0396nobodyさん
2005/06/07(火) 23:22:50ID:???var hogeは var $hoge の間違いだとして、
上記のコードにコンストラクタで代入と$a->get()を付け足せば、きちんと動作したよ。
0399nobodyさん
2005/06/08(水) 00:10:47ID:???情報小出し失礼しました
class commonClass {
var $mysqlHost;
function commonClass() {
$mysqlHost = 'localhost';
}
function get() {
print $this->mysqlHost;
}
}
$a = new commonClass();
print $a->get();
やはり何も出てきません。。
0400nobodyさん
2005/06/08(水) 00:14:27ID:???>$mysqlHost = 'localhost';
ローカル変数に代入してる件について。
それとな、
function get() {
print $this->mysqlHost;
}
getterの中でprintキモス。
0401nobodyさん
2005/06/08(水) 00:20:11ID:???あっそれでした!ありがとうございました!
# getterの中でprintは編集時のミスでした
0402nobodyさん
2005/06/08(水) 00:53:20ID:aX6bI7hV糞鯖ぶっとびで利用してるのですが、
どうも画像のUPがおかしいのです。
というのは、UPできないJPGがあるのです。
いろいろ試した結果、Exif情報が埋め込まれたJPGで起こるようです。
エラーは「500 Internal Server Error」が出ます。
他の鯖(x-beatやpc1)ではこういう現象は起こらなかったのですが、
なぜなんでしょう???
鯖側がなにかJPGをチェックしているのでしょうか?
それとも鯖のPHPがよくないのでしょうかね?
よろしくお願いいたします。
0404402
2005/06/08(水) 01:15:00ID:aX6bI7hVそうですね。
ただ、問題がどこにあるのかが分からないので、
推測でも構いませんので、おかしいなと思えるような点を
明示していただければ助かります。
0405nobodyさん
2005/06/08(水) 01:37:40ID:???その画像掲示板スクリプトを全く知らないんだけど、
resize処理しているのが自力なのかGDを使っているのかわからないが、
他の鯖で動くのなら、GDライブラリを使っているってことかなぁ。
で、phpinfo()が使えるのならGDライブラリのバージョンを見比べてみるとか。
他には、Exif情報の埋め込まれた小さな画像で試してみて、
鯖に負荷を与えないようにしてみるとか。負荷がかかりすぎて
エラー扱いになっているかもしれんし。
以上、推測、憶測、ほんまにてきとー。
0406nobodyさん
2005/06/08(水) 12:02:03ID:???http://www.eucaly.net/
http://www.eucaly.net/
http://www.eucaly.net/
http://www.eucaly.net/
http://www.eucaly.net/
http://www.eucaly.net/
http://www.eucaly.net/
http://www.eucaly.net/
http://www.eucaly.net/
http://www.eucaly.net/
0407nobodyさん
2005/06/08(水) 12:02:38ID:???http://www.eucaly.net/
http://www.eucaly.net/
http://www.eucaly.net/
http://www.eucaly.net/
http://www.eucaly.net/
http://www.eucaly.net/
http://www.eucaly.net/
http://www.eucaly.net/
http://www.eucaly.net/
http://www.eucaly.net/
0408402
2005/06/08(水) 19:58:06ID:???リサイズはGDバージョンです。
GDの1、2の設定があったのですが、両方試してもダメでした。
容量は指定以下でやってますので、関係ないようです。
他の鯖で問題ないようなんで、「ぶっとび」はやめますわ。
PHPがダメならとCGIにしてみたけど、rejpegとか働かないみたいだし、
どうもぶっとびはぶっとんでる感じでした。
0410nobodyさん
2005/06/09(木) 00:05:08ID:???やり方を教えてください。
0411nobodyさん
2005/06/09(木) 00:18:42ID:???0412nobodyさん
2005/06/09(木) 00:51:26ID:???・cURL関数を使う
・PEARのHTTPエージェント(だっけ?)ライブラリを使う。
0413nobodyさん
2005/06/09(木) 14:58:57ID:RW1olHwC0415nobodyさん
2005/06/09(木) 15:08:57ID:yRdQnuICfopenでファイル名を指定すればコードwで自動作成されるのかな?
0417nobodyさん
2005/06/09(木) 15:17:20ID:Ni6QuDwq0418nobodyさん
2005/06/09(木) 15:17:55ID:Ni6QuDwq0420nobodyさん
2005/06/09(木) 17:08:52ID:yZsyb8/90421nobodyさん
2005/06/09(木) 17:24:05ID:???0422nobodyさん
2005/06/09(木) 17:24:51ID:???0423nobodyさん
2005/06/09(木) 17:37:57ID:???0424nobodyさん
2005/06/09(木) 17:57:28ID:???0425nobodyさん
2005/06/09(木) 19:23:06ID:zoe0L2G9のしたHPを紹介して今の会社おとついはいりました。
いきなり検索システムをつくってくだささいといわれまったくなにを
したらいいかわかりません・・・・どうなってるといわても
すみません設定がまだといいつつ二日になりました・・・
もう言い訳できそうにありません・・検索システムって初心者の
僕がつくるにはどうしたらいいでしょうか?
PHPの文法もまったくわかりません・・・
どこかにまるまるコピできるやつで短めで簡単ぽいのおしえてください
お願いしますTT
0426nobodyさん
2005/06/09(木) 19:27:17ID:???のしたHPを紹介して今の会社おとついはいりました。
いきなり検索システムをつくってくだささいといわれまったくなにを
したらいいかわかりません・・・・どうなってるといわても
すみません設定がまだといいつつ二日になりました・・・
もう言い訳できそうにありません・・検索システムって初心者の
僕がつくるにはどうしたらいいでしょうか?
PHPの文法もまったくわかりません・・・
どこかにまるまるコピできるやつで短めで簡単ぽいのおしえてください
お願いしますTT
0427nobodyさん
2005/06/09(木) 19:36:01ID:???$point = $_GET['pos'];
$word1 = array("N","E");
$word2 = array(".",".");
$point = str_replace($word1,$word2,$point);
list($dummy,$N1,$N2,$N3,$N4,$E1,$E2,$E3,$E4) = split( ".",$point);
という文を組み立てたんだが
ハイラねえ(´A`;)
$point = str_replace($word1,$word2,$point);
の時点で
.32.29.77.366.134.85.11.384
が$pointに格納されていたんだが
list($dummy,$N1,$N2,$N3,$N4,$E1,$E2,$E3,$E4) = split( ".",$point);
で各変数に格納できない・・・
なぜだ・・・
>>426
釣りか?
0428nobodyさん
2005/06/09(木) 19:47:11ID:???多分、想いっきり勘違いしてる
↓splitのマニュアル
>pattern は正規表現であることに注意して下さ い。
explodeを使うべきかと
0429nobodyさん
2005/06/09(木) 19:51:05ID:???split( string regex, string source )
正規表現で . は任意の文字列。つまり全てにマッチしてる。
explode() のが動作早いし目的に合ってるからそっち使え。
0430427
2005/06/09(木) 19:59:43ID:???正常に動いたよ(・∀・)b
0431自動返信
2005/06/09(木) 21:58:57ID:jH9aJbMCユーザーに空メールをおくってもらい、そのメールアドレスをとりだしデータベースに登
録するというサンプルを作りたいんですがどうしたらいいでしょうか?
qmailだとメールが届いたら特定のスクリプトを実行というものがあるようですが、今の
Postfix+Dovecotの環境でメールが届いたらデータベース登録のPHPスクリプトを読み出
すという形にしたく悩んでいます。
PostfixはMaildir/形式にしてあります。
最終手段として定期的に/home/(user)/Maildir/の中をチェックという方法しかないかと
思っていますがもし何か解決策ご存知でしたら教えてください。
PHPとは直接は関係ないかもしれませんが、メールを受信したかどうかをどう取得するか。
0432nobodyさん
2005/06/09(木) 22:05:40ID:???/etc/aliasesに
hoge: "/path/to/php -f hoge.php"
で、ええんちゃうの?
0433nobodyさん
2005/06/09(木) 22:06:43ID:???hoge: "| /path/to/php -f hoge.php"
ね。
■ このスレッドは過去ログ倉庫に格納されています