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

△▲ WebProg 初心者の質問 Part23 ▼▽

レス数が950を超えています。1000を超えると書き込みができなくなります。
0001nobodyさん2011/01/06(木) 21:52:00ID:???
2ちゃんねるは初めて。 WebProg 板は初めて。
質問したいけど、どうしたら良いか分からない。

そんなときは、ここに書き込んでください。
板の住人や、その他が、けなしながら、厳しく教えてくれるかも。

質問する前に、まずはここを読んでね。
【注意事項】
・質問する前にGoogleで検索してみましょう
http://www.google.co.jp/
・環境(ソフトウェアのバージョンなど)は、必ず書いてください。できるだけ詳しく。
 後から情報を書き足す、いわゆる情報の小出しは極力避けてください。
・何がしたくて、何ができて何ができないのかを書きましょう
・マルチポスト(複数のスレッドで質問する行為)は絶対に禁止です。
・過去ログは必ず読みましょう。あなたと同じ質問をしてる人がいるかも知れません。

2ch 総合ガイド
http://www.2ch.net/guide/

お願い。
適切な、板、スレ、を発見した場合、誘導してあげましょう。
スレの性質上 age 進行でお願いします。

関連情報は
>>2-4辺り

☆前スレ☆
△▲ WebProg 初心者の質問 Part22 ▼▽
http://hibari.2ch.net/test/read.cgi/php/1272872528/
0853nobodyさん2011/07/01(金) 20:20:46.92ID:???
1+1=2を1+3=4にしたが、1+3=2となる

HAHAHA!
0854nobodyさん2011/07/01(金) 20:37:43.35ID:???
>>850
とりあえず以下の点だけ確認させてください。

「変更前のスクリプトがそのまま実行されてしまうことがあります」
「常に変更前のスクリプトが実行されています」

どっちですか?
08558502011/07/01(金) 20:38:50.76ID:???
失敬、>>854>>852宛です。
0856nobodyさん2011/07/01(金) 20:40:25.74ID:???
勘違いだったら裸で町内一周な
0857nobodyさん2011/07/02(土) 01:06:12.95ID:???
>>854
オレは850じゃないけど、ミョーに偉そうだな。

マァ、サーバ側で負荷軽減の為にキャッシュやらなんやら入れる事はあるし、PHPのsmartyやらtwigのようにプログラム的にキャッシュしちまうって事もある。
だから、自分のプログラムがそういう性質のものかを調べて、サーバ側にそういう仕組みを使っていないかを聞いてみるまで確かな答えは分からん。
0858nobodyさん2011/07/02(土) 02:33:40.58ID:???
このレベルの人間がそんなことわかるわけないでしょ
0859nobodyさん2011/07/02(土) 02:37:17.99ID:???
echo "あいうえお";
って付け足してみればいいだろ
0860nobodyさん2011/07/02(土) 11:25:17.61ID:???
>>857
前提を確認してるだけだろう
そこを取り違えると誤回答をすることになる
0861nobodyさん2011/07/02(土) 18:15:04.23ID:???
入力確認のinputフィールドについて質問ですが、
受け取った入力内容をそのままエスケープしないで表示していいんですか?

<input type="text" name="test" value="ユーザから受け取った文字列">

" onmouseover="javascript:alert('XSS');

とかしても特に問題にならないようなのですが、
ブラウザが消してくれてるんですかね?
それともinputフィールドはエスケープしないでいいようになってるんでしょうか?
エスケープすると元の入力と文字数が違ってきたりするので、
<>とクオートだけエスケープして本登録時に戻せばいいですかね?
08628612011/07/02(土) 18:37:04.17ID:???
勘違いでした。
やっぱエスケープしないとXSSになりますね。
上のコードでちゃんとなりました。
0863nobodyさん2011/07/05(火) 17:05:37.26ID:GCiV3fmJ
パスワードをドキュメントルート上のテキストに保存する場合平文で大丈夫でしょうか?
データベースに入れる時と同様ハッシュ化したほうがいいのでしょうか?
アプリケーション実装不備以外で、
ドキュメントルート上を見られる事態になると、サーバを乗っ取られたようなものなので、
いくらパスワードを隠していても意味ないですよね?
下位フォルダの認証部分のコードもダダ漏れでしょうし。
0864nobodyさん2011/07/05(火) 17:26:58.50ID:???
HTTP では見れないところに置けばいい (deny でアクセスさせてないとかじゃなくてね)
08658632011/07/05(火) 17:32:54.44ID:GCiV3fmJ
>>864
ありがとうございます。
平文で大丈夫ということでいいでしょうか?
0866nobodyさん2011/07/05(火) 17:33:42.28ID:???
パスワードを平文保存して rwxrwxrwx な状態で置いてたせいで
年始早々に謎の騒動が起きた巨大掲示板があったな。
0867nobodyさん2011/07/05(火) 17:36:06.23ID:???
ドキュメントルート配下に置く場合は、

ソースが見られないという大前提があるなら暗号化
ソースも見られちゃうかも!って考えるなら可逆の暗号は無駄
不可逆なら暗号化が有効
0868nobodyさん2011/07/05(火) 17:56:36.55ID:???
ようするにみんなよくわかってないんだね
誰一人回答になってない件
0869nobodyさん2011/07/05(火) 18:03:48.77ID:???
否定ならゾウリムシでも出来る
0870nobodyさん2011/07/05(火) 18:13:54.79ID:???
Q.ドキュメントルート上で平文でパスワードを保存しても大丈夫ですか?

A.ドキュメントルート上に置けばいい 平文かは知りません
A.平文保存したら謎の騒動が起きた ドキュメントルート上に置いてあったかは知りません
A.ドキュメントルート下では暗号化 ドキュメントルート上では知りません


   完璧な答え
↓↓↓↓↓↓↓↓↓
0871nobodyさん2011/07/05(火) 18:46:26.44ID:???
そんな質問する奴は首突っ込まないように。
セキュリティ関係の話は本質的に相手との知恵比べなんだから。

っつか、こんなとこで言質取っても意味ねーんでね?
そんなことして安心してるよーなバカはさっさと去ね
0872nobodyさん2011/07/05(火) 19:09:29.89ID:???
PHPスレに閉じこもってろよ・・・
0873nobodyさん2011/07/05(火) 19:11:19.36ID:???
結局は知識無いだけですやんうんこちゃん o(^-^)o
0874nobodyさん2011/07/05(火) 19:48:28.22ID:???
セキュリティ系の質問はどいつも自信がないから的確に答えない
どのスレでもそれが真理

最初から黙ってればいいのにな
0875nobodyさん2011/07/05(火) 20:55:20.44ID:???
ハッシュ化は意味あるよ
0876nobodyさん2011/07/05(火) 20:59:28.33ID:???
なんで外におかねーんだよ
0877nobodyさん2011/07/05(火) 21:03:36.20ID:???
あれほど中出しは危険だと…
0878nobodyさん2011/07/05(火) 21:09:15.06ID:???
>>863
ハッシュ化した方がいい
0879nobodyさん2011/07/05(火) 21:09:52.85ID:???
ハッシュにしたらパスワード再発行ができない←これで揉めたことがある
0880nobodyさん2011/07/05(火) 21:12:35.77ID:???
まあリセットしかないわな
あと平文はスタッフが見えてしまうと言うのもあまりよろしくないな
0881nobodyさん2011/07/05(火) 21:19:06.41ID:???
データベースの設定ファイルをハッシュ化するか?接続できないからしないだろ
外部との接続をするわけではないにしてもドキュメントルート上での平文が危険ならDBなんて使えないことになる
0882nobodyさん2011/07/05(火) 21:20:55.86ID:???
>>879
メールアドレス情報に持たせてメールすればいいだけ
0883nobodyさん2011/07/05(火) 21:33:05.17ID:???
>>881
君の言うドキュメントルートとは、どこのことを言ってるんだ?
0884nobodyさん2011/07/05(火) 21:39:49.57ID:???
/usr/public_html/
0885nobodyさん2011/07/06(水) 16:07:04.19ID:???
phpのhtmlentitiesで変換した文字列を
javascriptでデコードしたいんですけど
デコードする方法ってありますか?
0886nobodyさん2011/07/06(水) 16:20:21.52ID:???
1.htmlentitiesで変換される文字列を調べる
2.javascriptで元に戻すスクリプトを書く
0887nobodyさん2011/07/06(水) 17:12:51.17ID:???
>>886
やっぱりそれしかないですよね。
mysqlにhtmlentitiesした文字列をインサート。mysqlの検索結果をjsonとしてjavascriptに返す。javascriptでjsonから文字列を取得。文字列をデコード。という流れを作りたかったのですが。
0888nobodyさん2011/07/06(水) 17:27:05.53ID:???
>mysqlにhtmlentitiesした文字列をインサート
何のために?
mysqlならmysql_real_escape_stringあるいはORMで用意されてるエスケープ用関数
でSQLインジェクション用の文字列を取り去る
取り出したものはhtmlspecialcharsでjson出力
javascriptではデコードせずそのまま出力
でいいじゃん
0889nobodyさん2011/07/06(水) 17:27:47.58ID:???
取り去るじゃないな
エスケープするね
0890nobodyさん2011/07/06(水) 17:29:32.13ID:???
UTF-8とUnicode(たぶんUTF-16のリトルエンディアン?)は同じように使っていいんですかね?
データベースがUnicodeでUTF-8で入れたり取り出したりしても特に文字化けとかは起きてないのですが
試しにSJISで入れると文字化けしました
0891nobodyさん2011/07/06(水) 19:39:00.04ID:???
まぁほぼ同義って考えで良いかと
0892nobodyさん2011/07/06(水) 19:40:23.21ID:???
不安なら、データ量増えるけど URL デコードとか
0893nobodyさん2011/07/08(金) 23:38:49.67ID:???
2chで>>1と書くと1にリンクはられるのはどうやってるの?
0894nobodyさん2011/07/08(金) 23:44:06.33ID:???
>>[数字] を正規表現で検索してリンクしてるだけ
0895nobodyさん2011/07/09(土) 06:39:07.90ID:???
>>893
/>>?(\d+)/<a href="#$1">>>$1<\/a>/
0896nobodyさん2011/07/10(日) 13:21:15.04ID:???
今までperl使ってて、新しくPHP覚えたんだけどこれ便利すぎwww
なんでperlとかあんの?ww正直いらなくね?ww
perlの存在理由誰か教えてくれよww
0897nobodyさん2011/07/10(日) 13:41:37.65ID:???
PHPは動作するサーバーが多い。フリーでスクリプト動くなら第一がPHP。
0898nobodyさん2011/07/10(日) 19:31:51.82ID:???
PHPは元々、perlで作られてたんだから、perlが存在しなかったらPHPもなかった
まあ、おまいのカーチャソのマムコみたいなもんだ
悪く言うなw
0899nobodyさん2011/07/10(日) 20:59:24.41ID:???
んじゃjQueryもCで書きなおしてついでにブラウザに組み込んどいてくれよ
0900nobodyさん2011/07/11(月) 19:12:07.82ID:???
>>896
元々Perlはコマンドラインなどで文字列処理に使うものであって、Webのための言語じゃなかった
まだWebを最優先にした言語が無かった時代に、たまたま
「文字列処理が得意」ってのがCGIに都合が良かっただけ
PHPというWebを念頭にした言語がある今、Perlは元のコマンドラインでの文字列処理に戻ればよかろう
0901nobodyさん2011/07/11(月) 19:52:41.08ID:???
>>896みたいなことを言うやつがPerlにせよPHPにせよ十全に使いこなすことができてる(た)とは到底思えん
0902nobodyさん2011/07/11(月) 20:16:54.04ID:???
お前よりは使いこなしてるから心配スンナ
09038962011/07/12(火) 00:27:01.97ID:???
皆さんレスありがとうございます。
草生やして煽り気味に書いたのに、perlのメリットが出てこないってことは
Web制作ならやはりPHPがよさそうですね。
0904nobodyさん2011/07/12(火) 00:47:32.26ID:???
その程度のアドバイスで満足ならこれからも草生やし続ければいいんじゃないかね
09058962011/07/12(火) 01:14:58.19ID:???
>>904
満足も何もこれ以上何か出てきますか?
一応お礼言わないと人として。
0906nobodyさん2011/07/12(火) 01:26:49.02ID:???
Perl、PHP、Ruby

どれも出来る事は同じ。
仕事で考えるなら PHP>>>Perl≧Ruby じゃないかな?
初めから mod 環境があるし、CGI としても動かせるし、今覚えるなら PHP 一択でいいと思うよ。


それでも自分は Perl 使うけど・・・
09078962011/07/12(火) 01:37:13.73ID:???
>>906
perlを使う理由は?
0908nobodyさん2011/07/12(火) 01:48:34.94ID:???
化石ってことだよいわセンナ
0909nobodyさん2011/07/12(火) 01:54:26.95ID:???
WebプログラミングはPHPでいい。
Perlも使ってるが、主な生息域は端末の中だな。
0910nobodyさん2011/07/12(火) 03:28:00.29ID:???
>>907
作業量が違うとは言え同じ事が出来るわけだし、新しく言語を覚える気がないだけ。

perl の開発が止まれば乗り換えは考えるかも。
0911nobodyさん2011/07/12(火) 03:56:44.16ID:???
メリット、デメリットって結局主観になってしまうんで話がかみ合わないんだよね。
だからスレを荒れ気味に誘導するときの定石。
よほどの馬鹿じゃない限り始めから答えなんて求めてなくて
先に何か別の目的があるんだと思う。
0912nobodyさん2011/07/12(火) 04:46:46.83ID:???
一つの言語に固執する奴はダメプログラマ
0913nobodyさん2011/07/12(火) 08:14:16.73ID:???
>>904
釣られた回答を期待して草を生やしてるんでしょ
君の小馬鹿にした態度が回答の質を下げてることに気がつかない?
09148962011/07/12(火) 11:24:20.96ID:???
>>910
覚える気がない?ていうことはPHPやったことない?

>>913
大変失礼いたしました。質の高い回答願います。
0915nobodyさん2011/07/12(火) 11:44:34.46ID:???
昔、BASICが席捲してたのと似てるな、PHP
0916nobodyさん2011/07/12(火) 15:51:43.17ID:???
>>914
php は過去に何回か使ってはいる。
構文が変化球ってワケじゃないから、覚えようとすればそこそこには扱えるようにはなるかな。
というのもあるから「perl が開発停止とかになったら使おう」ぐらい。
趣味で perl 弄ってるんだし、こんなもんかなと。

ただ 「何覚えればいい?」 と聞かれれば php の一択だよね。現状は。
0917nobodyさん2011/07/12(火) 18:07:21.61ID:???
利点という訳じゃないが、Perlの方が面白くて使っててワクワクするかな

まぁ、面白さの分だけ覚える事が多くなって訳分からなくなるから、Perl嫌いだ!Perl覚えたくない!っつーなら、それはそれでいいと思うよ。
0918nobodyさん2011/07/12(火) 18:51:35.86ID:???
xampp1.7.4をwindowsXPにインストールしました。
apacheなどは起動するのですが、PHPmyadminに入ろうとすると、以下のエラーが表示されPHPmyadminに接続できません。

エラー #2002 - サーバが応答しません (あるいはローカルの MySQL サーバのソケットが正しく設定されていません)

PHPmyadminに入りたいのですが、どうすればいいですか?
0919nobodyさん2011/07/12(火) 19:38:40.92ID:???
問題です
phpmyadminは何サーバに接続するアプリケーションでしょうか?
09209182011/07/12(火) 19:47:34.36ID:???
>>919
mysqlサーバーです。
0921nobodyさん2011/07/12(火) 19:48:53.93ID:???
正解です
それではどうすればよいでしょうか?
0922nobodyさん2011/07/12(火) 19:51:31.70ID:???
>>917
1つのことをやりたいのに色んなサンプルが多いし、
perl4 までの間にクソサンプルが溢れまくったから、
コピペばかりで自分で考えられない人には辛いかもしれないね。
09239182011/07/12(火) 19:52:14.05ID:???
>>921
すいません。わかりません。教えてください。
0924nobodyさん2011/07/12(火) 21:11:11.66ID:???
>>923
MySQLサーバを起動して下さい
09259182011/07/12(火) 22:01:03.55ID:???
>>924
本当にすいません。mysqlサーバの起動ってどうやるんですか?

xamppのコントロールパネルからmysqlのstartボタンをクリックして
Runningっていう状態にしてるんですが、これは起動したことになってないんですか?

さっきからググってるんですが、答えが見つかりません。
0926nobodyさん2011/07/12(火) 22:02:32.49ID:???
初心者はXAMPP使うな
0927nobodyさん2011/07/12(火) 22:21:53.19ID:???
XAMPPは初心者のためのものだろ。残念ながら彼は超初心者のようだけど。
まーがんばれ。
0928nobodyさん2011/07/12(火) 22:28:47.78ID:???
XAMPP はある程度分かってる人がお手軽に扱おうとするもの。
本気で何も分からない人間が手を出すものじゃない。
0929nobodyさん2011/07/12(火) 22:37:30.37ID:???
うむその通り
0930nobodyさん2011/07/12(火) 23:09:13.00ID:???
PHPやるならUbuntuでやるべき
0931nobodyさん2011/07/12(火) 23:21:09.43ID:???
>>925
コメンドプロンプト起動して
netstat -anってうってみ
TCPの80番と3306番ポートがLISTENINGになってればOK
09329182011/07/12(火) 23:40:00.50ID:???
>>931
3306はlisteningってでます。
80はそもそも何も出てこないです。

余談ですがバージョンを1.7.3に落としてみましたが、状況は変わっていません。
0933nobodyさん2011/07/12(火) 23:44:36.60ID:???
>>932
80はhttpdのLISTEN PORT
Apacheがちゃんと起動してないんじゃね?リスタートしてみな。
俺はインストーラ嫌いだからxamppはliteしか使わないから
普通のxampp使ってるなら知らんけど
liteならsetup_xampp.batってので適当に設定してからじゃないと
パスの指定関係でうまく動作しないと思われる
09349182011/07/13(水) 18:42:20.63ID:???
>>933
解決しました!
ただ原因というか理由がわからないままです。
さっきなんとなくやってみたら、なぜかできたかんじです。
すごいモヤモヤするんですが、とりあえずできたのでよかったことにします。
これ以上考えても時間のムダでしょうし。
他の皆さんもありがとうございます。助かりました。
0935nobodyさん2011/07/14(木) 01:14:29.98ID:???
質問させてください。PHP、MYSQL,Smartyです。

if ($A = $mysqli->query("SELECT文"))
{if (($A->B >= 1) && ($C != 'D'))
$C = 'E';
$A->close();
}

以上の文で二つ目のif文の中で{ }がないのですが
二つ目のif文は条件が真の場合のみ3、4行目は実行されるのでしょうか?
もしそうならばなぜあえて{ }を省略するのでしょうか?
if文などで調べましたがどういう構造になっているかがわかりません。
よろしくお願いいたします。

0936nobodyさん2011/07/14(木) 01:22:12.73ID:???
http://www.php.net/manual/ja/control-structures.if.php
0937nobodyさん2011/07/15(金) 01:51:14.99ID:???
データベースのコネクションは
1ページごとに切れますよね?
コネクションを使い回すことはできないのでしょうか?
それとも毎ページごとにデータ接続処理を入れるのは普通ですか?
0938nobodyさん2011/07/15(金) 03:53:52.92ID:???
できるよ
0939nobodyさん2011/07/15(金) 04:04:44.50ID:???
どうやるんですか?
0940nobodyさん2011/07/15(金) 07:33:20.27ID:???
コネクションプールでぐぐれ
0941nobodyさん2011/07/15(金) 08:40:28.45ID:???
横からですまんが
データベースの1ページってどういう意味なの?
0942nobodyさん2011/07/15(金) 08:51:36.00ID:???
うわ、自分もコネクションプールって知らなかった。ホント恥ずかしいな
みんな、この機能実装してる?SNSみたいなアプリだと使うのが当然かな?
ある程度以上の規模のサービスを作るって言うテーマで、
フロント/サーバ両面でこういう実用的な機能や要件を紹介した本ってないのかな
0943nobodyさん2011/07/15(金) 09:00:50.06ID:???
PHPじゃ使えんし
0944nobodyさん2011/07/15(金) 12:54:28.53ID:???
えっ
0945nobodyさん2011/07/15(金) 13:24:02.33ID:???
SNSとかでリードオンリーな情報ならキャッシュで対処するんじゃないですかね
0946nobodyさん2011/07/15(金) 16:50:52.35ID:???
>>943
http://itpro.nikkeibp.co.jp/members/SI/oss/20031031/1/
0947nobodyさん2011/07/15(金) 23:16:56.50ID:???
デメリットも分かって言ってんのかね?
0948nobodyさん2011/07/16(土) 18:32:42.53ID:iNWAmAdc
amazon apiで取得したxmlデータをXSLTを使いHTML変換しようと考えています。
本当は
[ISBN] 4163280804 [価格] 51 [価格] 54 [価格] 54 [価格] 60 [価格] 65 [価格] 67 [価格] 73 [価格] 99 [価格] 112 [価格] 115
[ISBN] 4766785010 [価格] 900 [価格] 900
と表示させたいのですが、
[ISBN] 4163280804 [価格] 51 [価格] 54 [価格] 54 [価格] 60 [価格] 65 [価格] 67 [価格] 73 [価格] 99 [価格] 112 [価格] 115[ISBN] 4766785010 [価格] 900 [価格] 900
と改行されずに表示されます。
改行のタグなどを使ってみたのですが、
[ISBN] 4163280804 [価格] 51
[価格] 54
[価格] 54
・・・
[ISBN] 4766785010 [価格] 900
[価格] 900 などと表示され
表示させたいようにできませんでした。
どうしたらうまくいきますでしょうか。
よろしくお願いします。
0949nobodyさん2011/07/16(土) 18:33:13.78ID:iNWAmAdc
[xslファイル]
<xsl:apply-templates select="aws:ItemLookupResponse/aws:Items/aws:Item"/>
</body>
</html>
</xsl:template>
<xsl:template match="aws:ItemLookupResponse/aws:Items/aws:Item">
[ISBN] <xsl:value-of select="aws:ASIN" />
<xsl:apply-templates select="aws:Offers/aws:Offer"/>
</xsl:template>

<xsl:template match="aws:Offers/aws:Offer">
[価格] <xsl:value-of select="aws:OfferListing/aws:Price/aws:Amount" />
</xsl:template>

</xsl:stylesheet>
0950nobodyさん2011/07/19(火) 17:17:11.38ID:???
~hoge/public_html/cgi-bin/index.cgi ※hogeはドメイン名

とあった場合、

http://hoge/

でアクセス出来るようにするにはどのような設定方法がスマートでしょうか?
また、index.cgiを消すには.htaccessの「DirectoryIndex index.html」で合っていますでしょうか?

レンタルサーバはsymphonic-netを使っています。
0951nobodyさん2011/07/19(火) 17:26:13.50ID:???
独自ドメイン
0952nobodyさん2011/07/19(火) 18:47:16.80ID:???
>>950
DocumentRootとDirectoryIndexの設定でいいんじゃないかな。
そのレン鯖でできるかどうかまでは知らんけど。
レス数が950を超えています。1000を超えると書き込みができなくなります。