【PHP】下らねぇ質問はここに書き込みやがれ 64
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2008/02/09(土) 14:51:11ID:???PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り
◆前スレ
【PHP】下らねぇ質問はここに書き込みやがれ 61
http://pc11.2ch.net/test/read.cgi/php/1201425479/
◆質問する時の注意
・ サーバーのOS(Linux、Windows他)、WebサーバーとPHPの種類やバージョン等を必ず明記すること。
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
◆質問後の注意
・偽者防止に必ずIDを表示(メール欄に何も記述しない)、若しくはトリップをつける事。
・2回目以降は最初に質問した際のレス番号を名前欄に入れること。
・解決しなくても回答をもらった場合はお礼を言うこと。
(荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)
◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。
【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで
0458nobodyさん
2008/02/17(日) 23:19:42ID:???0459453
2008/02/17(日) 23:23:00ID:bioqKdBh0460nobodyさん
2008/02/18(月) 01:18:02ID:???Webサービスの1ユーザーのパスワード変更と、サーバのパスワード変更じゃ
危険性の度合いが桁違いってことは分かるだろ?
0461nobodyさん
2008/02/18(月) 01:28:14ID:???SSHでやれば安全で、httpdでやれば危険っていうのは安易すぎるだろ?
セキュリティーとプロトコルの問題を混同しないように。
0462nobodyさん
2008/02/18(月) 01:35:41ID:???確実にサーバの遠隔操作が可能だと思うんだが。
既存の確立した技術を使わずに、敢えてhttp(s)を選ぶならそれなりの
理由が必要だが、その理由は今のところ提示されていない。
だからSSHを勧めたわけでプロトコルに論点を移した覚えはないんだが、
君はhttp(s)でやったほうがいいと思うのかい?
0463nobodyさん
2008/02/18(月) 01:38:12ID:???0464nobodyさん
2008/02/18(月) 01:52:41ID:???OSレベルの物かワカラン。
0465nobodyさん
2008/02/18(月) 02:13:24ID:???俺がhttpsでやった方がいいと思うかじゃなくて、
元の質問者がweb上で何とかしてやりたいと言っているときに、
SSHでやればいいって全然答えになっていないだろ。
それでやれればそんな質問はしないわけだろうし。
俺もその手の仕様は客から言われたことがあるが、
客にSSH使ってやってくれとはいえないから、
"仕方なく"web上で簡単にユーザーの管理ができるようにしてやった。
web上でも安全に実装する方法はいくらでもある。
0466nobodyさん
2008/02/18(月) 02:26:34ID:???単に知らずに言ってるだけかもしれないから、客からの依頼だろうと
SSHをまず勧めるけどね。それでどうしてもWebでってのなら、君と
同じく「仕方なく」そういう機能作るだろうけど。
SSHのように仕組みが出来上がってるものと同程度のセキュリティを
Webサービスで実現するには時間やコストがかかるし、単に技量の
違いかもしれないけど、「web上でも安全に実装する方法はいくらでもある」
なんてことは言えないもんでね。
0467453
2008/02/18(月) 02:33:20ID:otM/IOKBWebからlinuxユーザをサーバに追加したいのですが、その過程でのユーザのパスワードを設定について質問したのです。
今のところPHPでSSHを使うとなると右のような関数を想定しています。ttp://jp.php.net/manual/ja/ref.ssh2.php
ただ、これとは別の問題になるのですが、例えばssh2_execのような関数を使ってpasswdコマンドを打つと、対話形式の入力になるのでうまくいかないという問題もあります。
0468nobodyさん
2008/02/18(月) 02:34:09ID:???話を進めましょうか?
0469453
2008/02/18(月) 02:39:06ID:otM/IOKB0470nobodyさん
2008/02/18(月) 02:50:25ID:???http://www.nabble.com/-PHP-users-32869--CentOS%2BPHP-%E3%81%A7%E3%81%AE%E3%80%81%E3%83%A6%E3%83%BC%E3%82%B6%E7%99%BB%E9%8C%B2(%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%89%E5%AE%9F%E8%A1%8C%E3%81%AE%E5%8F%AF%E5%90%A6)-td13744873.html
0471453
2008/02/18(月) 02:59:50ID:otM/IOKB0472nobodyさん
2008/02/18(月) 05:22:19ID:bug4h3noif(!$kekka){$mes = 'error';}
は
isset($var) or $mes = 'error';
って書けるのに
$kekka = isset($var);
if(!$kekka){return false;}
は
isset($var) or return false;
だと
Parse error: syntax error, unexpected T_RETURN
ってなるのはなぜですか?
ちなみに
isset($var) or (return false);
isset($var) or return(false);
でもダメでした
0473nobodyさん
2008/02/18(月) 05:27:44ID:???0474472
2008/02/18(月) 05:34:37ID:bug4h3no0475nobodyさん
2008/02/18(月) 05:43:36ID:???0476nobodyさん
2008/02/18(月) 07:11:58ID:???調べると0が返ってきます。
fopenを使用すると大丈夫でした。
何か設定が必要なのでしょうか。
0478nobodyさん
2008/02/18(月) 07:53:32ID:???0479nobodyさん
2008/02/18(月) 07:57:45ID:???returnはそもそも関数などから抜けされるものなのに
returnを何かと比較しようとして扱うのが間違いなんじゃない?
0480nobodyさん
2008/02/18(月) 08:10:22ID:???でいいじゃん
0482nobodyさん
2008/02/18(月) 10:54:23ID:???いろいろ原因を探ったところ、ヘッダー内の各ヘッダを区切る\r\nという改行を\nにすればよいようなのですが、
これはどこの設定に起因するものなのでしょうか?
phpの設定が以前と何か違うからなのでしょうか?それともpostfix側の設定の問題なのでしょうか?
あるいはOSの設定に変化があったからなのでしょうか?
0483nobodyさん
2008/02/18(月) 10:56:44ID:???if (isset($var) == false) {
return false;
}
$kekka = $val;
0489nobodyさん
2008/02/18(月) 12:33:45ID:Ja8roiz2all-in-oneのものをインストールして、それに日本語化パッチを当ててみたのですが、
対応していないらしく、2割くらいしか日本語化されませんでした。
どなたか、all-in-oneで日本語化にも対応しているものが落ちているurlを教えて頂けないでしょうか・・・
0490476
2008/02/18(月) 12:38:55ID:dc24Ag74>>476
サーバーOS:Linux
PHP:5
test.php
<?
if(file_exists("http://yahoo.co.jp/index.html")) print "OK";
?>
エラーメッセージ:無し
0492nobodyさん
2008/02/18(月) 12:46:17ID:???http://jp.php.net/manual/ja/function.file-exists.php
0493nobodyさん
2008/02/18(月) 12:51:06ID:???FTPもできるっぽい。
http://jp2.php.net/manual/ja/wrappers.ftp.php
ファイル名が使えるところにURLが使えるんじゃないかって自然に発想できる人が
ある意味うらやましい。fopenで httpとか書かれてると、本能的に身構えてしまう。
>>492
httpラッパは statファミリをサポートしていない。
0494nobodyさん
2008/02/18(月) 13:24:52ID:???http://mergedoc.sourceforge.jp/
0495nobodyさん
2008/02/18(月) 13:28:59ID:???0496nobodyさん
2008/02/18(月) 13:34:08ID:???> ファイル名が使えるところにURLが使えるんじゃないかって自然に発想できる人が
> ある意味うらやましい。fopenで httpとか書かれてると、本能的に身構えてしまう。
知ってるか? メモ帳だってファイル名にURL使えるんだぜ。
EXCELもな。
0498nobodyさん
2008/02/18(月) 13:54:54ID:???0499nobodyさん
2008/02/18(月) 14:03:01ID:???0500nobodyさん
2008/02/18(月) 15:09:19ID:???0501nobodyさん
2008/02/18(月) 16:11:34ID:???0502nobodyさん
2008/02/18(月) 16:30:39ID:???Zend Frameworkで苦しんでるが社用物だからコード晒せないしなあ
問題切り分け中だが、切り分け終わったら自分で対応するしなw
お暇ならなんかエスパーしてくれ 「この辺が落とし穴だze」とか
0503nobodyさん
2008/02/18(月) 16:34:55ID:???メール送信とDBインサート周りでコケてたのだが、
無駄なクオートがあったのでzend_validationに書き換えたらいけた
スレ汚しすまそ
0505nobodyさん
2008/02/18(月) 16:44:22ID:F3LP+Vno2chのbbsmenu.htmlからカテゴリと板名を分けて抽出したいんだが、
うまい方法が思い付かん。
カテゴリリスト→板名リストと遷移するのが前提。
0506nobodyさん
2008/02/18(月) 16:52:58ID:???0508nobodyさん
2008/02/18(月) 17:48:16ID:???つhttp://www.php.co.jp/
0509nobodyさん
2008/02/18(月) 19:05:43ID:???$aaa{0}
ってどういう意味ですか??
$aaa[0]ならわかるのですが。
perlならハッシュのことだというのは分かるのですがPHPでもそうなんでしょうか?
0510nobodyさん
2008/02/18(月) 19:06:46ID:LoQffYNU自分のPCの画面では一分間何も表示されなくて、その後、6回書き込まれた掲示板が表示されます。
別に自分の画面は表示されなくていいんですが、
他の人のPCでこの1分間の間に掲示板にアクセスした場合、表示されるんでしょうか?
あとこの1分間の間に閲覧者が書き込みを行うこともできますか?
その時の書き込みの順番は、自分が6回書き込んだ後に閲覧者の書き込みになるのではなく
ちゃんと割り込んで書き込みできますか?
多分大丈夫だとは思うんですけど心配になったので一応聞いてみました。
0511nobodyさん
2008/02/18(月) 19:14:41ID:O2zzThQYカスタム関数のdefaultを空白('')にして、かつ、もし値があればstring_format(%0.1fなど)して表示するにはどうすればいいですか?(できればif文を使わずに)
現状では、値が無い場合に0.0という表示が必ず出てしまいます。
defaultを先にしても後にしても同様です。
どなたかお願いします。
0512nobodyさん
2008/02/18(月) 19:22:26ID:???>$aaa{0}
>ってどういう意味ですか??
>$aaa[0]ならわかるのですが。
デバッグしてみればわかるでしょうに。
一緒。
0513509
2008/02/18(月) 19:33:04ID:???ありがとうございましたm(_ _)m
0514nobodyさん
2008/02/18(月) 19:59:27ID:???まず何からしたら良いのか徹底的に指導願いします
0515nobodyさん
2008/02/18(月) 20:00:09ID:???0517nobodyさん
2008/02/18(月) 20:16:36ID:???何から、ねえ。
別に公開しなけりゃ好き勝手に遊べばいいんじゃねーの。
てことでローカルホストでwebサーバ走らせる勉強から。レンタルサーバで馬鹿やると恥ずかしいだろうからね
公開サービスを目指すなら、危険性のある事をある程度は把握しといた方がいいな
ttp://www.atmarkit.co.jp/fsecurity/index/index_hoshino.html
なんかがまとまってて判りやすい方かな。
0518nobodyさん
2008/02/18(月) 20:21:20ID:???0519nobodyさん
2008/02/18(月) 20:22:46ID:???0520nobodyさん
2008/02/18(月) 20:22:55ID:???まずプログラム基礎を理解するために、
ブラウザ以外の特別な環境が必要ないJavaScriptでちょっとしたもの書きながら勉強するのがお勧め。
JavaScriptがある程度理解できれば、その他の言語もある程度わかるはず。
とくに目標がないなら、PHPからはじめることはないからね。
0521nobodyさん
2008/02/18(月) 20:32:05ID:???このテキストのこの単語がわからないとか、この機能がわからないってのなら説明できる。
でも全部教えては無理よ。とりあえず>>1-8のテンプレ読んで、
あとは「PHP 初心者」あたりでぐぐって出たサイト一通り見てはどうだろ。
0522514
2008/02/18(月) 20:34:12ID:???テンプレをじっくり読んできます。
0523514
2008/02/18(月) 20:38:02ID:YSts7gLU失礼しました。
0524nobodyさん
2008/02/18(月) 21:56:26ID:???そのまま使うのではなく、自分で考える事が重要だ。
考えずに使ってたらおにいたんがハッキングしちゃうからな。
0526nobodyさん
2008/02/18(月) 22:00:21ID:???0527nobodyさん
2008/02/18(月) 22:08:27ID:???$HENSU[$a] = "".$_POST["$HENSU[$a]"]."";
↑の様に記述したのですが取り込むことが出来ません
具体的にどのようにすれば解決できるのかご教授お願いいたします
(※$aは1〜30まであります)
0528nobodyさん
2008/02/18(月) 22:10:05ID:???正しくは
$HENSU[$a] = "".$_POST["HENSU[$a]"]."";
↑で取り込めません
0529nobodyさん
2008/02/18(月) 22:10:32ID:Cm9tgJOR0531nobodyさん
2008/02/18(月) 22:21:55ID:xGg4BipF確実にstrlenがコールできるなら良いのですが
strlenはmb_strlenに置換されてたりする場合があるかと思うので、
とても不安です。
0533nobodyさん
2008/02/18(月) 22:29:16ID:YSts7gLUマニュアルをコピペしてそれを使うなという事でしょうか?
0534nobodyさん
2008/02/18(月) 22:37:00ID:???0535nobodyさん
2008/02/18(月) 22:56:36ID:???JavaScriptとPHPどっちが難しいと言われればJSのが難しかったなw
あれ色んな記述ができすぎるからプログラム初心者には向かないんじゃね?
0536nobodyさん
2008/02/18(月) 23:02:24ID:???言語の難易度はポインタとオブジェクト指向で決まる
0538nobodyさん
2008/02/18(月) 23:07:59ID:???ActionScriptじゃないのかそれ
0540nobodyさん
2008/02/18(月) 23:19:00ID:Ez7ZH7Qxnewがあるとか関係無いから。
0541nobodyさん
2008/02/18(月) 23:23:05ID:???所謂現状のJavaScriptはプロトタイプベース言語であってクラスベースじゃねーよ
もちろん仕様三版にもクラスって言葉は出て来るけどクラスベースな言語で言う「クラス」としてじゃない。
classって言葉自体は単なるFuture Reserved。
2.0仕様がクラスベース言語として生まれ変わるバージョン。
タマリンや、ある意味での先行実装であるActionScriptが参考になる
0542nobodyさん
2008/02/18(月) 23:24:55ID:???JavaScriptはオブジェクト指向言語なんだけど。
0543nobodyさん
2008/02/18(月) 23:26:53ID:???0544nobodyさん
2008/02/18(月) 23:30:47ID:???ブラウザによっては動かなかったとしても、おおまかなことが学べればいいんだし。
変数の使い方、関数やオブジェクトの使い方、条件処理、ループ処理なんかの基礎的なことができれば。
0545nobodyさん
2008/02/18(月) 23:35:35ID:xGg4BipFstrlenを確実に呼び出すにはどうしたらいいの?
っていうか
$foo="まこ"
$cnt=0;
while($foo as $dummy) { $cnt++;
0546nobodyさん
2008/02/18(月) 23:38:51ID:???0547nobodyさん
2008/02/18(月) 23:40:29ID:???0549nobodyさん
2008/02/18(月) 23:46:03ID:???0551531
2008/02/18(月) 23:50:28ID:???お邪魔したし真下
<?php
function strbyte($str) { $cnt=0; while($str[$cnt]) {$cnt++;} return $cnt; }
$foo="マ○コabdアの川流れ"; $encs = array('sjis-win', 'eucjp-win', 'utf-8');
foreach ($encs as $enc) { var_dump(strbyte(mb_convert_encoding($foo, $enc, 'sjis-win'))); }
0552514
2008/02/19(火) 00:05:59ID:OsGt77+r次から次へと新しい事を発見してキリがないなっ!と思いました。
某所でアップロードプログラムはセキュリティに気をつけてくださいってのがいまいち理解できなかったです。
今日は寝ます。ありがとうでした。
でわ
0554nobodyさん
2008/02/19(火) 00:25:27ID:???>>531 じゃないけど、そうらしい。
http://jp2.php.net/manual/ja/ref.mbstring.php#mbstring.overload
0555nobodyさん
2008/02/19(火) 00:26:17ID:???http://jp2.php.net/manual/ja/ref.mbstring.php#mbstring.overload
0556531
2008/02/19(火) 00:31:38ID:???これでいいっぽいです
失礼しました
http://jp2.php.net/manual/ja/ref.mbstring.php#55832
function str_sizeof($string) {
return count(preg_split("`.`", $string)) - 1 ;
}
0557553
2008/02/19(火) 01:15:18ID:???知らなかった。ありがとう。
0558nobodyさん
2008/02/19(火) 01:28:40ID:???return count(preg_split("`.`", $string)) - 1 ;
rerurnの後のいろいろ処理を付け加えるのは美しくない!
見にくい!
count関数の中に関数いれるのは
処理が重くなる、美しくない
何でもかんでも1行プログラミングにするな!
コーディングで考える優先順位
1.負荷
2.見やすさ
俺ならこう書く
$string = preg_split("`.`", $string);
$string_count = count($string)-1;
return $string_count;
■ このスレッドは過去ログ倉庫に格納されています