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

【PHP】下らねぇ質問はここに書き込みやがれ 61

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2007/12/19(水) 03:33:51ID:???
まず読め→【PHP マニュアル】http://www.php.net/manual/ja/
PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り

◆前スレ
【PHP】下らねぇ質問はここに書き込みやがれ 60
http://pc11.2ch.net/test/read.cgi/php/1196511516/

◆質問する時の注意
・ 自分のIDを表示させること。(メール欄に何も記述しないこと。空白も入力しちゃダメ)
・ サーバーのOS(Linux、Windows他)、WebサーバーとPHPの種類やバージョン等を明記すること。
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。

◆質問後の注意
・偽者防止に必ずIDを表示させること。(メール欄に何も記述しない)
・2回目以降は最初に質問した際のレス番号を名前欄に入れること。
・解決しなくても回答をもらった場合はお礼を言うこと。
 (荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)

◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。

【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで
03743702007/12/28(金) 03:17:21ID:???
> キーと値に宛えば

詳しくキボンヌ
0375nobodyさん2007/12/28(金) 04:14:13ID:???
「キーと値に使えば」と予想

つまり
home2/hoge4
を分割して
$hoge["home2"] = "hoge4";
って形にすれ
0376nobodyさん2007/12/28(金) 04:44:15ID:???
まず読め→【PHP マニュアル】http://www.php.net/manual/ja/
PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り

◆前スレ
【PHP】下らねぇ質問はここに書き込みやがれ 60
http://pc11.2ch.net/test/read.cgi/php/1196511516/

◆質問する時の注意
・ 自分のIDを表示させること。(メール欄に何も記述しないこと。空白も入力しちゃダメ)
・ サーバーのOS(Linux、Windows他)、WebサーバーとPHPの種類やバージョン等を明記すること。
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。

◆質問後の注意
・偽者防止に必ずIDを表示させること。(メール欄に何も記述しない)
・2回目以降は最初に質問した際のレス番号を名前欄に入れること。
・解決しなくても回答をもらった場合はお礼を言うこと。
 (荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)

◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。

【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで
03772552007/12/28(金) 06:41:54ID:rEU4Fn3c
環境fedora7

<?php


if (mail('[email protected]','titile','message'))


echo "<b>SUCCESS TO SEND</b><BR>";


else


echo "<b>fail to mail</b><BR>";


?>
でfail to mailという方が出ます。



恐らくphp.iniの設定が不足しているんだと思いますが、
php.iniのsendmail_pathについてまだよく分かっておらず、とりあえずデフォのままにしてます。
ポート25は開けていませんがこれでいいのでしょうか。
03782552007/12/28(金) 06:46:39ID:rEU4Fn3c
sh: /usr/sbin/sendmail: Permission denied
というログが出ました。
03792552007/12/28(金) 06:48:30ID:rEU4Fn3c
が、lrwxrwxrwx root root system_u:object_r:bin_t sendmail
とあったので別にパーミッションは良いかと思います、、、もしかしたら
bin_tをhttpd_sys_content_tにしなければならないですか。
0380nobodyさん2007/12/28(金) 07:40:41ID:???
/var/logを (って/var/logがFedoraにあるのかしらないけど)
良く調べてみたら。隅々まで。

http://bbs.fedora.jp/read.php?FID=2&TID=1428

ちょっとググってみたかんじだと SELinuxがどうのこうの、って
話がいくつか出てくるけど
03812552007/12/28(金) 08:10:09ID:rEU4Fn3c
有力情報ありがとうございます。SELinux disableにして実行してみたんですけど、やはりfail to mailでした。
ろぐ追加です。
[Fri Dec 28 06:18:37 2007] [notice] caught SIGTERM, shutting down
[Fri Dec 28 06:18:48 2007] [notice] SELinux policy enabled; httpd running as context user_u:system_r:httpd_t:s0
[Fri Dec 28 06:18:48 2007] [notice] suEXEC mechanism enabled (wrapper: /usr/sbin/suexec)
[Fri Dec 28 06:18:48 2007] [notice] Digest: generating secret for digest authentication ...
[Fri Dec 28 06:18:48 2007] [notice] Digest: done
[Fri Dec 28 06:18:49 2007] [notice] Apache/2.2.6 (Unix) DAV/2 mod_layout/4.0.1a PHP/5.2.4 mod_ssl/2.2.6 OpenSSL/0.9.8b configured -- resuming normal operations
sh: /usr/sbin/sendmail: Permission denied
もう少しググってみることにします。selinuxには気づきませんでせした。
03822552007/12/28(金) 08:12:50ID:rEU4Fn3c
あ、ほんとくだらない質問になるんですが、メル鯖立ててなくてもmail関数使えますよね。
sendmailpathの意味するところが分からなくて、、、
0383nobodyさん2007/12/28(金) 08:19:14ID:/nAj2CVO
会員システム作ってるんだけど kaiin/以下が会員領域だとして
その中にあるファイルはリファラがkaiin/内のファイルじゃない場合強制ログアウト
という処理にしたらセキュリティ上がるかなぁと思ってます
この処理をする場合、効率よくリファラチェックする方法はないでしょうか?
ひたすらif&orでやってけばいいんでしょうが何かみっともないので、、

また、そもそも↑みたいなことやっても意味ないですか?
ファイルをDLして手を加えられる侵入に対策したいと思ったんですが…
0384nobodyさん2007/12/28(金) 08:30:44ID:???
>>382
mail()を実行すると、
 Windowsの場合 : メールサーバに接続する(ネットワーク越し) - php.iniのSMTP
 Linuxなど : メール送信用のプログラムを呼び出す(プログラムの引数) - php.iniのsendmail_path
のように、OSごとに違った挙動をする。

>>383
ノートン先生のようにデフォルトの設定でrefererを送信しないものもある。
>ファイルをDLして手を加えられる侵入に対策したい
何をしたいのかよく分からないが、特定の人言い換えりゃ特定の情報を送信してくるブラウザを
識別するには次のどれかだろうね。
・cookie
・セッション(まぁ、これもcookieの場合もあるが)
・WebサーバのBasic認証とかDigest認証とか
03852552007/12/28(金) 08:34:06ID:rEU4Fn3c
>>384 ありがとうございます。
windows:mail()→ネットワークに接続
linux:mail()→mail program呼び出し→ネットワークに接続
みたいな感じに理解しました、(あってるかな。。。)
0386nobodyさん2007/12/28(金) 08:47:14ID:/nAj2CVO
>>384
ノートンてリファラ送信しないんですか じゃあダメですね、やめときます
ありがとうございました
0387nobodyさん2007/12/28(金) 11:31:19ID:???
今日で仕事納めです。
早速、phpも仕事を土管とやってみましたが、
やはりmb_系の関数が絵文字処理で悩まされました。

mb_をpregと統一して総合文字列関数として再スタートさせるべきではないでしょうか?
それでは、来年も良いお年をお過ごし下さい。
0388nobodyさん2007/12/28(金) 12:52:34ID:gGF8c07c
処理が遅い時、ブラウザを勝手に閉じると、
サーバーのスクリプトが終了したときに返却されるレスポンスのパケットはどこにいくのでしょうか?

サーバーの動作が遅いのですが、このパケットが行き先を失って、
ルーター内で無限ループしているってことは考えられますか?

送信要求しておいて、ページが表示されないからって閉じられるクライアントをどうにかしたいのですが、そうもいかないので。
0389nobodyさん2007/12/28(金) 13:04:54ID:???
横槍だが、メール送信を使いたいだけで自鯖にメール機能をインストする必要はなっしん。
無料レンタ鯖にデータ飛ばして、そこから送信して、必要なら戻ってくるようにすれば無問題。
使い慣れないメール設定やほーと設定で悩んでいる人にオススメ。
0390nobodyさん2007/12/28(金) 13:14:14ID:???
>>388

http://jp2.php.net/ignore_user_abort
http://ja.wikipedia.org/wiki/Transmission_Control_Protocol
0391nobodyさん2007/12/28(金) 17:13:21ID:???
こんど、
「天皇陛下もやっているPEARの活用講座」
という本を出すことになりました。宜しくお願いします。
0392nobodyさん2007/12/28(金) 18:45:23ID:???
こんど、
「将軍様もやっているPECLの活用講座」
という本を出すことになりました。宜しくお願いします。
0393nobodyさん2007/12/28(金) 21:09:26ID:41MrW7lh
作成中のシステムが
[notice] Parent: child process exited with status 3221225477 -- Restarting.
というメッセージをApacheのログに残して落ちるようになってしまいました。

多分、再帰に失敗してスタックオーバーフローか何かになっているのだと思うのですが、
例えば例外をスローしてくれたりする設定のような、場所を特定する良い方法はないでしょうか?

環境は、PHP5.2 Apache2.0 WindowsXP です。
フレームワークは使用していません。

ご存知の方、教えてください。よろしくお願いします。
0394nobodyさん2007/12/28(金) 22:07:55ID:/nAj2CVO
自力で会員システム作ってるんですが、二重ログインという問題があることに気づきました
この問題はどう解決したらいいんでしょう? 同一IDで後から入ってくる人を有効にすべき?
仕組みとしてはどういうものが理想ですか?

今考えてるのは、会員情報の管理テーブルに、現行のセッション名を保持するカラムを作って、
各アクションごとにブラウザが持ってるものと保存してるセッション名とを比較する
→不一致の場合強制ログアウト
というものです
どうなんでしょう ご意見いただければ幸いです よろしくお願いします
0395nobodyさん2007/12/28(金) 22:12:07ID:???
>>394
その処理が君のシステムにおける理想ならそれでいいじゃん
0396nobodyさん2007/12/28(金) 22:20:49ID:???
>>395
調子に乗ってんじゃねーぞ。このニート!!!
03973942007/12/28(金) 22:28:49ID:/nAj2CVO
自分のアイディアや知識に自信がないから聞いているので、
それでいいじゃんと言われても…
念のためググって調べて考えた上で質問させてもらいました
不快にさせたんならすみません
03983642007/12/28(金) 22:38:10ID:???
>>373
返事が遅くなりました。
試してみたら eval() で希望の動作が実現できました。
どうもありがとうございました。
03993932007/12/28(金) 22:44:02ID:41MrW7lh
例外を生成し、そのスタック長がある上限を超えていたら throwする関数を作って、
これを再帰している箇所に埋め込む事にしました。
0400nobodyさん2007/12/28(金) 22:44:30ID:???
>>394
二重ログイン禁止したいならそれでいいんじゃないかな。

後から来た方を拒絶しようにも、明示的にログアウトしてくれる人ばかり
じゃないしね。
一定時間経ったらログアウトって仕組みにしても、その間最ログインできないし。
0401nobodyさん2007/12/29(土) 04:16:39ID:???
冬休みを利用して、何か簡単なwebアプリを作ってみようと思い
開発を始めてみたのですが、一点質問させていただいてもよろしいでしょうか。

a.html 内でに b.phpというファイルをインクルードし、a.html内でb.phpの関数を呼び出し
実行したいのですが、うまく実行することができずに悩んでいます。

<?php include('./b.php'); ?>
<html><head></head>
<body>
<?php b_test(); ?>
</body>
</html>

といった具合です。
b_testの内容は、単純に文字列をprintしているだけなのですが
実行されず、ブラウザ上でソースを見るとそのままphpの記述が
残されている状況です。
各所で見て回った簡単なカウンタ等のアプリで同様の記述を行っているものもあり
自分も同じようなことをやってみようと思ったのですが、何か問題がありますでしょうか。
もしくは、他にhtml内でphpの関数を呼び出すのに適したやり方はございますでしょうか。
ご教示お願いいたします。

環境は、windowsXPにxamppを使用し、apache2.2.6とphp5.2.5をインストールしています。
mb_string系を有効にした程度で、ほとんど設定ファイルは弄っていません。
0402nobodyさん2007/12/29(土) 04:44:46ID:???
まず読め→【PHP マニュアル】http://www.php.net/manual/ja/
PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り

◆前スレ
【PHP】下らねぇ質問はここに書き込みやがれ 60
http://pc11.2ch.net/test/read.cgi/php/1196511516/

◆質問する時の注意
・ 自分のIDを表示させること。(メール欄に何も記述しないこと。空白も入力しちゃダメ)
・ サーバーのOS(Linux、Windows他)、WebサーバーとPHPの種類やバージョン等を明記すること。
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。

◆質問後の注意
・偽者防止に必ずIDを表示させること。(メール欄に何も記述しない)
・2回目以降は最初に質問した際のレス番号を名前欄に入れること。
・解決しなくても回答をもらった場合はお礼を言うこと。
 (荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)

◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。

【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで
0403nobodyさん2007/12/29(土) 04:45:44ID:???
.htmlという拡張子をphp扱いで動かさないとphpは実行できんよ
04043942007/12/29(土) 09:51:58ID:???
>>400
わかりました ありがとう!
0405nobodyさん2007/12/29(土) 11:02:50ID:???
softbankの一部の機種じゃ
GETでマルチバイト文字を送れないので
変換すべきと思われるンですが
どんな関数でそれをやればよいですか?>
0406nobodyさん2007/12/29(土) 11:25:51ID:???
マルチバイトが送れんつーか、逆に送れる文字つーのが決まってるんでURLエンコードすりゃええ
04074052007/12/29(土) 11:39:30ID:???
>>406
なるほど。
サンクスです。
0408nobodyさん2007/12/29(土) 15:00:42ID:???
なんか、ここのスレってサービスが劣化したなぁ。
前は、質問したら丁寧に教えてくれたし5分以内には的確な回答がきた。

今は、質問するとニートとか氏ねとかそんなのが殆ど。
ストレスを発散する場所を間違えないで欲しい。
0409nobodyさん2007/12/29(土) 15:08:36ID:???
なんだよもう…面倒くさいなあ。
仕方ない、面倒見てやるか

>>408
ニートとか氏ね
0410nobodyさん2007/12/29(土) 15:11:14ID:???
ま、2chだし
0411nobodyさん2007/12/29(土) 15:11:36ID:???
>>408
ニートとか氏ね
0412nobodyさん2007/12/29(土) 15:36:55ID:???
相手をニートと断定しないあたりに、プログラマらしさを感じた。
0413nobodyさん2007/12/29(土) 16:14:18ID:???
>>408
もしお前がニートなら氏ねそうでないならイ�`
0414nobodyさん2007/12/29(土) 17:09:40ID:???
if( >>408 == 'ニート' ){
   $anser = '氏ね';
}else{
   $anser = '市ね';
}
0415nobodyさん2007/12/29(土) 17:11:40ID:???
>>414
ちょwwwwおまwwwスペルがwww俺氏ねorz
0416nobodyさん2007/12/29(土) 17:27:27ID:???
確かに、誰からも参照されなくなったニートオブジェクトは、ガベージコレクトされるべきではある。
0417nobodyさん2007/12/29(土) 17:56:44ID:tcLiBXaz
array("Apple" => "りんご", "Orange" => "みかん");
という連想配列を、
array('Apple' 'りんご' 'Orang' 'みかん');
という配列に変換したいんですが、どうすれば良いでしょうか?
0418nobodyさん2007/12/29(土) 18:06:27ID:???
>>417
foreach ($array as $key => $val) {
$new_array[] = $Key;
$new_array[] = $val;
}
0419nobodyさん2007/12/29(土) 18:19:38ID:???
$a = array("Apple" => "Ringo", "Orange" => "Mikan");
$b = array_keys($a);
$c = array_values($a);
$d = array();
for ($i = 0; $i <= count($a) - 1; $i++) {
array_push($d, $b[$i], $c[$i]);
}
print_r($d);
0420nobodyさん2007/12/29(土) 18:23:01ID:tcLiBXaz
すげー
天才だ!
有り難うございます。
04214192007/12/29(土) 18:23:05ID:???
配列の値がローマ字に変わってたのはさっきなぜか日本語がうてなかったからだ
気にしないでくれ
0422nobodyさん2007/12/29(土) 18:48:40ID:WA8jVfpj
PHPでコンストラクタのvisibility (public とか privateなどの指定) をsuper classより厳しく出来ないのは何で?
仕様というより、何の不都合があるのかという意味で。
0423nobodyさん2007/12/29(土) 18:52:50ID:???
継承じゃねーからだろ
0424nobodyさん2007/12/29(土) 18:56:45ID:yIBMpd50
ちりりDUKEの使い方を教えてほしい
0425nobodyさん2007/12/29(土) 18:56:45ID:WA8jVfpj
>>423
むしろ、継承だと出来ないんじゃないの?
0426nobodyさん2007/12/29(土) 20:06:36ID:???
>>414,415
しゅくだいはおわったのかい
0427nobodyさん2007/12/30(日) 01:39:18ID:???
ブラウザからPOSTして送るデータの改行コードって
何に依存するんでしょうか?
CRLFになったり、LFになったりして困ってまつ
0428nobodyさん2007/12/30(日) 01:42:14ID:???
phpでcookieの内容を受け取るにはどうすればええの?
自分でsetしたcookieではなくて、外部鯖から返されるcookieの値を取得したいんだけど
0429nobodyさん2007/12/30(日) 01:43:35ID:???
>>1 も読めないのか。このヴァカども
0430nobodyさん2007/12/30(日) 01:46:14ID:???
事故解決
0431nobodyさん2007/12/30(日) 02:34:00ID:+D3WOxGf
2点質問させていただきます。


1. htmlに書くname属性に日本語を利用しても問題無いでしょうか?

2. htmlのフォームからphpの変数に変換するツール等は無いでしょうか?
    例:html:<INPUT type="text" name="name"> ⇒ php:$name = $_POST['name'];
0432nobodyさん2007/12/30(日) 02:50:16ID:???
>>431
2はextract()でできるけど危険
0433nobodyさん2007/12/30(日) 02:57:27ID:???
>>431
foreachで回せ
つか$_POST['name']で使うのがそんなに嫌なのか
0434nobodyさん2007/12/30(日) 02:57:38ID:???
1 は html 的には何の問題もない
0435nobody2007/12/30(日) 03:15:18ID:8C08uScj
PHPで多次元配列の値を半分だけとりだすのはどうすればいいでしょうか?
0436nobodyさん2007/12/30(日) 03:21:54ID:???
半分だけってどう半分なの
0437nobody2007/12/30(日) 03:35:21ID:8C08uScj
$a["a"][0]=>1
[1]=>1
[2]=>0
[3]=>1
[4]=>0
の$a["a"][0],$a["a"][1],$a["a"][2]の値です

0438nobodyさん2007/12/30(日) 03:38:15ID:???
forなりforeachなりで回して半分まで行ったらbreakすりゃいいでしょ
0439nobodyさん2007/12/30(日) 04:45:05ID:???
まず読め→【PHP マニュアル】http://www.php.net/manual/ja/
PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り

◆前スレ
【PHP】下らねぇ質問はここに書き込みやがれ 60
http://pc11.2ch.net/test/read.cgi/php/1196511516/

◆質問する時の注意
・ 自分のIDを表示させること。(メール欄に何も記述しないこと。空白も入力しちゃダメ)
・ サーバーのOS(Linux、Windows他)、WebサーバーとPHPの種類やバージョン等を明記すること。
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。

◆質問後の注意
・偽者防止に必ずIDを表示させること。(メール欄に何も記述しない)
・2回目以降は最初に質問した際のレス番号を名前欄に入れること。
・解決しなくても回答をもらった場合はお礼を言うこと。
 (荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)

◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。

【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで
0440nobodyさん2007/12/30(日) 05:31:14ID:???
>>439
お前いい加減うざいよ
わざわざ>>1貼る必要ないだろ
冬休みだからって何回繰り返してるんだよ池沼
せめて>>1嫁ぐらいに留めとけ
0441nobodyさん2007/12/30(日) 05:38:36ID:???
>>440
まず読め→【PHP マニュアル】http://www.php.net/manual/ja/
PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り

◆前スレ
【PHP】下らねぇ質問はここに書き込みやがれ 60
http://pc11.2ch.net/test/read.cgi/php/1196511516/

◆質問する時の注意
・ 自分のIDを表示させること。(メール欄に何も記述しないこと。空白も入力しちゃダメ)
・ サーバーのOS(Linux、Windows他)、WebサーバーとPHPの種類やバージョン等を明記すること。
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。

◆質問後の注意
・偽者防止に必ずIDを表示させること。(メール欄に何も記述しない)
・2回目以降は最初に質問した際のレス番号を名前欄に入れること。
・解決しなくても回答をもらった場合はお礼を言うこと。
 (荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)

◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。

【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで
0442nobodyさん2007/12/30(日) 05:44:17ID:???
予想通りの流れだな
さすが冬休み
0443nobodyさん2007/12/30(日) 06:49:36ID:???
冬休み (笑
04442552007/12/30(日) 07:51:44ID:G9WMPe2A
やはりsendmailの設定を何もしていないとまづいんじゃないかと思ってます。が、、、
04452552007/12/30(日) 08:01:43ID:G9WMPe2A
でも #sendmail 〜 でメールは送れました。。。混乱しながら1週間くらい悩んでます。
0446nobodyさん2007/12/30(日) 08:41:04ID:???
そのスクリプトでエラー表示させてる?
エラーが出てて表示させないで真っ白になってるんと違う
04472552007/12/30(日) 08:52:27ID:G9WMPe2A
出せてます ifでmail()がtrueを返したらok falseならno をprintさせてます。

、、、先ほど少し進展がありました。
#setenfoce 0
#restorecon -R /var
を設定することでメール関数がokを返すようになりました。
上のはselinuxを無効にするという意味で、下のは、、、どういう意味だろう。
(cd http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=20619&forum=10
でもメールがこない。。。httpdのerroelogを見てみると
Domain of sender address [email protected]
→やっぱりsendmailの設定をいじらないといけないのかなと思い、
とりあえず#sendmail 自分のメルアド
〜〜〜
としてsendmailをテストしてみると無事に自分のアドレス(プロバイダからもらったやつ)に届く

sender addressを設定しなくてもグローバルな環境でメール送れるじゃん
となって今また悩んでいるところです。
04482552007/12/30(日) 08:54:11ID:G9WMPe2A
失礼しました。Domain〜のところですが、Domain〜〜〜does not exitです。

0449nobodyさん2007/12/30(日) 09:06:56ID:???
Fedoraって /var/log/maillog とかないの?

あとif文でOKとか、そういうんじゃなくて、
PHPが吐くwarningとかnoticeとかもみてるのかな?

> Domain〜〜〜does not exit

does not exist? 自分宛に送ったメイルの差出人も localhost.localdomainに
なってるのかな?
04502552007/12/30(日) 09:46:25ID:G9WMPe2A
maillogの内容です。基本的にerrorlogと同じようなことがエラーになってま
す。
Dec 30 08:39:28 localhost sendmail[4414]: lBTNdBJQ004412:
to=<:::::::::@fb3.so-net.ne.jp>, ctladdr=<[email protected]>
(48/48),
delay=00:00:17, xdelay=00:00:17, mailer=esmtp, pri=120328,
relay=mxin2.ms.so-net.ne.jp.
[202.238.83.12], dsn=5.1.8, stat=User unknown
Dec 30 08:39:28 localhost sendmail[4414]: lBTNdBJQ004412:
lBTNdSJQ004414: DSN: User unknown

>>Does not exitst
自分宛(?.so-net.ne.jp)に送ったメールの差しだし人が
localhost.localdomaiになってる可能性大です。
この場合やはりsendmailの設定を変更すべきなのでしょうか。
上にも書いた通り端末からsendmailを利用して自分宛(?.so-net.ne.jp)に
送った場合成功するので、
どこを変更すればいいのかで悩んでいます。
0451nobodyさん2007/12/30(日) 10:04:09ID:???
もう完全に PHP とはかけ離れてるな
0452nobodyさん2007/12/30(日) 11:35:19ID:???
なんか面白い関数とかありませんかね
正月っぽいの
0453nobodyさん2007/12/30(日) 11:40:04ID:???
omikuji();
でおみくじが引けるよ!
0454nobodyさん2007/12/30(日) 11:48:59ID:???
php_logo_guid()だろ、、、常考
0455nobodyさん2007/12/30(日) 11:59:43ID:???
>>450

> メールの差しだし人が
> localhost.localdomaiになってる可能性大です。

俺mail関数使ったことないんで間違ってるかもしれないけど

これ見た感じだと→ http://jp.php.net/manual/ja/function.mail.php

「メールを送信する際には、必ず From ヘッダが含まれていなければなりません」
とかいてあるけど「可能性大」ってのは自分で「localhost.localdomail」のメアドを
指定した、っていう意味?
04564552007/12/30(日) 12:13:57ID:???
なんか変なこと書いてるな俺。気にしないで
0457nobodyさん2007/12/30(日) 12:28:12ID:???
PHPに関係するのは、ctladdrの所だけだぁね。
ctladdr=<[email protected]>
ctladdr - The ``controlling user'', that is, the name of the user whose credentials we use for delivery.
こいつは mb_send_mailの4だったか5番目だったかのパラメータで設定したものが使われる。
指定してなきゃ、sendmailを呼び出したプロセスの所有者が使われるんだったかな。
で、apacheになるっと。

その部分を除いてPHPには全く関係無く、”sendmailを適切に設定していないことが原因” だから板違い。
Linux板か自宅鯖板のsendmailスレで、どういうメル鯖の構成(ISPのメル鯖に全部投げとか)にするかを書いた上で聞けばいいよ。
0458nobodyさん2007/12/30(日) 13:13:30ID:???
ユーザー認証のページの作成をしています。
登録後のIDとPASSの管理をファイルでしようと思うんですが、
セキュリティを向上させるための定石というのはあるのでしょうか。

また、どのようにユーザーがログインする時はPOSTでデータを送信、
その後はセッションでログイン情報を維持という風にしたいのですが
これは特に問題ありませんよね?
0459nobodyさん2007/12/30(日) 13:29:12ID:???
>>458
とりあえず、オライリーの「入門PHPセキュリティ」を読むことを勧める。
04602552007/12/30(日) 16:15:22ID:G9WMPe2A
不本意ながらこの泥沼から逃げることで一応解決しました。つまりpostfixに移行しました。
0461nobodyさん2007/12/30(日) 16:50:41ID:???
逃げちゃだめ
とりあえず、オライリーの「sendmail」を読むことを勧める。
04624592007/12/30(日) 16:56:03ID:???
>>461
別に逃げても良いんじゃないの?
0463nobodyさん2007/12/30(日) 19:23:36ID:???
<tr>
<td class="aaa">あああ</td>
<td class="bbb">いいい</td>
</tr>

↑をまるごと変数に入れるにはどうすればいいでしょうか・・・
04644632007/12/30(日) 19:26:45ID:MvMxVYb6
ID出し忘れました
申し訳ない
0465nobodyさん2007/12/30(日) 19:27:27ID:???
1読め屑
0466nobodyさん2007/12/30(日) 19:29:49ID:???
$hoge = "<tr>\n<td class="aaa">あああ</td>\n<td class="bbb">いいい</td>\n</tr>";
$hoge = "
<<< HTML
<tr>
<td class="aaa">あああ</td>
<td class="bbb">いいい</td>
</tr>
HTML;
";
0467nobodyさん2007/12/30(日) 19:33:13ID:???
>>466は「"」→「\"」で。
下の方法が合ってるかはわからn
0468nobodyさん2007/12/30(日) 19:42:11ID:???
>>466
なんか、色々間違ってる気がする。
http://www.php.net/manual/ja/language.types.string.php#language.types.string.syntax.heredoc
0469nobodyさん2007/12/30(日) 20:02:47ID:1r819gof
聞きたいんですが、php5のマニュアルってどこかでダウンロードできないですか?
昔マンモス本の中身ダウンロードできるサービスがあったような気がするんだけど、
ああいうの今もないでしょうか?
あったら教えてほしいです、田舎に帰って勉強したいんだけど、
でかい本持ち歩くのキツイ、、
0470nobodyさん2007/12/30(日) 20:08:55ID:lUFWIq2Z
MVCでテンプレートエンジン使わずにVIEWをやりたいんだけど
コントローラーで
$title = "タイトル";
require("hoge.php");
exit;
とかみたいなやりかたってダメ?
他に何かいい方法あるかなー?
っていうかviewを別にするならテンプレート使わないといけないのかな?
0471nobodyさん2007/12/30(日) 20:12:51ID:lUFWIq2Z
>>469
ttp://www.php.net/download-docs.php
0472nobodyさん2007/12/30(日) 20:18:46ID:???
>>459
すいませんわがままだと思うんですが
Web上で参考になるセキュリティ対策のサイトというのはないでしょうか・・・
04734692007/12/30(日) 20:24:49ID:1r819gof
>>471
すごい! ほんとにあったんですね!! 大感謝です
ありがとう!
0474nobodyさん2007/12/30(日) 20:33:01ID:???
>>472
>>1
■ このスレッドは過去ログ倉庫に格納されています