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

【PHP】下らねぇ質問はID出して書き込みやがれ 120

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2012/06/21(木) 19:37:07.93ID:???
質問者はまず>>1を良く読むこと(必須!)
過去スレ、関連スレ、FAQなどは>>2-10辺り
次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。

◆前スレ
【PHP】下らねぇ質問はID出して書き込みやがれ 119
http://kohada.2ch.net/test/read.cgi/php/1337172256/

◆質問用テンプレ
【OS名】CentOS
【PHPのバージョン】5.3
【連携ソフトウェア】MySQL ImageMagick
【質問内容】

◆質問する時の注意
・ スレを上げて自分のIDを表示させること。(メール欄に何も記述しない。専ブラのsageチェックを外す)
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に関連リンクの公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
(PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。)

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

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

【その他諸注意】
・SQL・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
0426nobodyさん2012/07/07(土) 00:11:53.41ID:???
>>425
そういえばそいつも荒れた原因が自分だったのを謝ってたな

なんだやっぱりそういうことだったのか
0427nobodyさん2012/07/07(土) 00:22:38.14ID:???
>>425
それ、実際に重いだろ。
0428nobodyさん2012/07/07(土) 00:32:18.38ID:???
それがPHPをバカにした発言と捉えられて叩かれたと本人は思ったらしいなw
その後のやり取りを見れば何が悪いのかは明確なのに
0429nobodyさん2012/07/07(土) 00:49:27.51ID:???
phpが重いのはなんの間違いでもない。
誰かベンチ出して↓
0430nobodyさん2012/07/07(土) 00:53:05.64ID:???
蒸し返したから思い出したみたいだよ。
0431nobodyさん2012/07/07(土) 00:54:47.58ID:???
たまにphp重いからperl、python、ruby使えとか言ってる勘違いバカいるけど
インタプリタがコンパイラに比べて構造的に重いってだけ
phpはパーソナル用途なら十分早いし
他のインタプリタも総じてコンパイラに比べて遅い
0432nobodyさん2012/07/07(土) 01:11:03.67ID:???
phpはDB周りが致命的に悲惨。

テンプレートとして使うだけなら便利。
0433nobodyさん2012/07/07(土) 01:14:32.59ID:???
phpは多数のDBに対応してることが目玉なのに
つうか気に要らないならexecでシコシコ低レベルのプログラムすればいいだろ
0434nobodyさん2012/07/07(土) 01:16:23.39ID:???
>>432
どう悲惨なの?
テンプレートってどういう使い方?
0435nobodyさん2012/07/07(土) 01:23:48.10ID:???
>>433
>>434
memcached入れないと悲惨だね。無駄にDBアクセス増える。

テンプレートは単なるコーディングを楽にするためのインクルードという意味で書いた。
たとえば共通のfooter.phpをインクルード、とかね。
0436nobodyさん2012/07/07(土) 01:31:43.22ID:???
そういえばコネクションプーリングも荒らしの好きな言葉だったな
0437nobodyさん2012/07/07(土) 01:32:34.76ID:???
コネクションプーリングってPHPでどうするの?
0438nobodyさん2012/07/07(土) 01:33:24.31ID:???
いや、PHPはって書いてるじゃない。

ほかの言語は、言語の機能として memcachedの機能があるの?
0439nobodyさん2012/07/07(土) 01:45:28.08ID:???
>>438
サイト全体で使い回しができるキャッシュ機能はある
0440nobodyさん2012/07/07(土) 01:50:23.15ID:???
コネクションプーリングあたりは、個別DBによる話で

oracleみたいな
接続処理のコストが高いやつでは使わざるを得ないってことでしょう。
Tomcatとかのアプリケーションサーバーの仕組みも使うのに適してる。
そういうのがないPHPでは、Webサーバー側で接続を保持してたりする。
0441nobodyさん2012/07/07(土) 01:56:04.30ID:???
115と同じ流れになるじゃねーか。
見て来いよ。説明があるし、変になりはじめた片鱗も見える。
0442nobodyさん2012/07/07(土) 02:01:20.07ID:???
phpではWebサーバーがコネクションプーリングするんですね!
0443nobodyさん2012/07/07(土) 02:06:32.20ID:???
そうです
0444nobodyさん2012/07/07(土) 02:59:18.90ID:???
>>443
どのウェブサーバーです?
0445nobodyさん2012/07/07(土) 06:36:23.66ID:???
第三次世界サーバーだ
0446nobodyさん2012/07/07(土) 08:58:57.22ID:???
やはりドラゴンボールはまだまだ重要でしょうか?
0447nobodyさん2012/07/07(土) 10:33:12.02ID:???
>>440
それはPHPの機能ですか?
ウェブサーバーの機能ですか?
設定方法を教えてください。
0448nobodyさん2012/07/07(土) 11:19:52.02ID:???
>>446
それはPHPの機能ですか?
ウェブサーバーの機能ですか?
設定方法を教えてください。
0449nobodyさん2012/07/07(土) 12:07:05.83ID:???
回答者様、いつもありがとうございますm(__)m
0450nobodyさん2012/07/07(土) 20:15:41.42ID:y20BZ1vM
Session_start関数を呼び出すとサーバー上でセッションidが作成され
ブラウザのクッキーにセッションidが書き込まれる
って手元の本にあり、このセッションidを削除するときに
クッキーの時間をtime()-3600としているので、
Cookieに書き込まれたセッションidの寿命は1時間なんですか?
0451nobodyさん2012/07/07(土) 20:27:24.24ID:???
現在時刻より以前に設定されれば-1秒でも削除されるよ
cookieの寿命は設定時間から現在時刻を引いたものだからそれを意図的にマイナスに設定してるわけ
0452nobodyさん2012/07/07(土) 20:30:16.80ID:???
セッションはサーバーにデータを保存しておく仕組みです。
クッキーは ブラウザにデータを保存しておく仕組みです。

セッションにはセッションIDをつけてサーバーにデータを保存して、
そのセッションIDをクッキーに保存することがよくありますが、
それは必須ではありません。

たまに セッション機能は、クッキー機能を利用している なんてことを書いてるサイトがありますが、
クッキーの使えない携帯電話でもセッションは使えます。

クッキーには寿命を決められます。 time()-3600は1時間前なので無効になるというわけです。
それは、ブラウザ側で持っているクッキーの寿命でセッションの寿命ではありません。
0453nobodyさん2012/07/07(土) 20:46:29.66ID:y20BZ1vM
ログインしても勝手に時間が経つとログアウトするのは、
sessionとCookieどっちが原因なんですか?
0454nobodyさん2012/07/07(土) 20:52:28.46ID:???
クッキーを通じてセッションにアクセスするわけだからどっちが切れても駄目になる
0455nobodyさん2012/07/07(土) 20:54:35.28ID:???
どっちの可能性もある としか。

まあ、セッションはあんまり長時間保存しとくと、サーバーがセッション情報沢山保管
しないといけなくなっちゃうんで、そこそこで切れるようにしてるのが多いですね。
0456nobodyさん2012/07/07(土) 22:42:37.14ID:PFTNZILs
あるランダムな文字列をpreg_matchの第一引数に指定して、
第二引数の文字とマッチングしてマッチしたらある処理をやりたいと思っています。

ですが、第一引数に指定する文字列には正規表現で使う*+等の文字が含まれている可能性があり、
preg_matchの動作が正しく動かない可能性があります。
そこで事前にpreg_replaceで\を付けてメタ文字をエスケープしてるんですが、エスケープする対象のメタ文字もかなりあり、
漏れる可能性もあるのでこんなことしたくありません。
PHPの関数でこのメタ文字自体をエスケープする(¥をつける)関数みたいなのないですか?
もしくは代替案あったら教えてください。
0457nobodyさん2012/07/07(土) 22:44:57.58ID:???
>>456
文字列の比較関数
0458nobodyさん2012/07/07(土) 22:46:39.16ID:???
preg_quoteってまんまのがあんよ
0459nobodyさん2012/07/07(土) 22:52:43.05ID:PFTNZILs
お二人ともありがとうございました。
strcmpでいけましたね
でもstrcmpだと何か問題があった気がしたのであえて使わなかったんですが理由忘れました
今のところ問題ないのでstrcmp使います。

preg_quoteも調べてみました。
まさにまんまでしたね
本当にありがとうございました。

このスレ最強ですね
0460nobodyさん2012/07/08(日) 00:36:39.99ID:???
sqlite_escape_stringしてもsyntax error 出るんだけどどうすりゃいいの?
0461nobodyさん2012/07/08(日) 00:38:57.71ID:???
エスパーじゃないから無理
0462nobodyさん2012/07/08(日) 00:48:03.10ID:???
>>460
>>1
0463nobodyさん2012/07/08(日) 00:51:48.42ID:6sfBx1AW
sqlite_escape_stringしてもsyntax error 出るんだけどどうすりゃいいんでしょう?
0464nobodyさん2012/07/08(日) 01:07:39.61ID:???
>>463
syntaxの誤りを直す
0465nobodyさん2012/07/08(日) 01:10:07.55ID:6sfBx1AW
ある変数をsqlite_escape_stringにぶち込んで、
そいつをSQLにぶち込んでるだけなんだが。

もちろん他のコードには問題ない
0466nobodyさん2012/07/08(日) 01:19:29.13ID:???
ID出したけどそれだけすればいいってもんじゃない
>>464の回答を考えてもう1回よーく>>1を見て欲しい
0467nobodyさん2012/07/08(日) 01:21:34.11ID:6sfBx1AW
すいませんでした
また明日きます
0468nobodyさん2012/07/08(日) 01:47:55.53ID:no016P1x
ttp://www.host-sweet.com/

に使われてる、メンバー管理のシステムを知りたいです。
0469nobodyさん2012/07/08(日) 01:52:56.53ID:???
>>468
CakePHPです。
0470nobodyさん2012/07/08(日) 02:01:14.10ID:???
>>468
そこに聞け
0471nobodyさん2012/07/08(日) 11:49:27.74ID:mrn+weUh
session_start();
if(isset($_POST["action"])&&$_POST["action"]==="login"){
if(PASSWORD === $_POST["password"]){//パスワード確認
//処理(一部略)
     header("Location:admin.php");
}else{
session_destroy();//セッション破棄
header("Location:login.php");}
} ログインする時、セッションを開始して、パスワードが違うときに
elseでsession_destroy()する必要性ってあるのですか?
これって何十回もログイン失敗してるとsession_destroy()しないと
サーバー側にセッションの情報がたまっていくのでしょうか?
0472nobodyさん2012/07/08(日) 11:58:03.70ID:???
試せクズ
0473nobodyさん2012/07/08(日) 12:00:19.53ID:???
>>472
今日もファンタスティックなご回答ありがとうございますm(__)m
0474nobodyさん2012/07/08(日) 12:02:06.29ID:???
ログイン開始時にセッション変数をなんか登録してるなら
unset変わりにdestroyしちゃうとか
セキュリティをより強固にするために頻繁に変えるとか
長時間ログイン失敗とかも考慮すれば必要なのかもしれないけど
そんなイレギュラーなことは普通考えなくていいので
基本的には変えなくても平気でしょうね

セッションファイルはどんどんたまっていくけど
PHPがちゃんとガベージコレクションしてるから気にしなくていい
0475nobodyさん2012/07/08(日) 12:22:30.69ID:???
単に、セッションがある状態でこのページへのアクセスがあったときに、
ログアウトしたいという動作上の意図なんじゃないのかな。

セッション情報は、ログインの成功とか失敗とか関係ないので、
ログイン失敗したからといって度々新しいのが出来るわけじゃない。

ログインに3回失敗したときの処理とか、セッション使ってやったりとかさ。
0476nobodyさん2012/07/08(日) 12:24:55.23ID:???
結論:実装によりけりなので好きにしろ
0477nobodyさん2012/07/08(日) 12:25:31.75ID:???
phpってこうやって配列に値を格納したらどうなるんですか?
$tmp[] = $val;

もしかして順番に要素が増えていってくれるんですか?
いま出先なんで実験できません
回答ねがいます
0478nobodyさん2012/07/08(日) 12:26:39.08ID:???
いま出先なんで
いま出先なんで
いま出先なんで
いま出先なんで
いま出先なんで
0479nobodyさん2012/07/08(日) 12:27:28.95ID:???
>>477
>>1
0480nobodyさん2012/07/08(日) 12:29:12.56ID:???
ヴォケ!
お前らがやってみろって回答しか言わないから、
こうやって嘘つくしかなかったんだよ
やさしい方回答願います><
0481nobodyさん2012/07/08(日) 12:30:49.32ID:???
いま出先なんで
いま出先なんで
いま出先なんで
いま出先なんで
いま出先なんで
0482nobodyさん2012/07/08(日) 12:31:35.85ID:???
出先でPHPを弄ってるのに試せないとかクズだな
0483nobodyさん2012/07/08(日) 12:34:01.35ID:???
>>1
0484nobodyさん2012/07/08(日) 12:35:16.64ID:???
俺ぐらいになると脳みそにPHPのコアとマニュアルが入ってるから
脳内でデバッグ出来ちゃうんだけどな

そんなのもないなんてまだまだだね
0485nobodyさん2012/07/08(日) 12:35:57.61ID:???
お願いします誰かお願いします><
04864772012/07/08(日) 12:37:45.61ID:???
自己解決しました><
0487nobodyさん2012/07/08(日) 12:44:28.99ID:???
ID出さないとやっぱり自演されるな
さっき実験したけど出来たわ
この数十秒のためにお前らを使おうとしたのが失敗だったよ
0488nobodyさん2012/07/08(日) 12:47:03.64ID:???
反省することはいいことだよ。
0489nobodyさん2012/07/08(日) 12:49:12.17ID:???
その一言で救われたわ
次からはめんどくさくてももうちょっと頑張ってみる
0490nobodyさん2012/07/08(日) 12:50:08.78ID:???
イエスかノーぐらいなら利用されてやってもいいよ
0491nobodyさん2012/07/08(日) 12:52:29.78ID:???
こういうわかっててやってるのが明らかなアホは全員スルーできるようにならないとな
0492nobodyさん2012/07/08(日) 12:57:57.44ID:???
嘘つきは俺がもっとも軽蔑する対象
0493nobodyさん2012/07/08(日) 13:09:48.61ID:???
嘘つきはドロリッチの始まり
0494nobodyさん2012/07/08(日) 13:11:37.65ID:???
ドロリッチうめーだろが!
0495nobodyさん2012/07/08(日) 13:17:39.25ID:???
結局自演で荒らすんだな。
0496nobodyさん2012/07/08(日) 13:18:26.71ID:???
嘘つき
0497nobodyさん2012/07/08(日) 13:19:44.98ID:???
こうでもしないと賄えん
0498nobodyさん2012/07/08(日) 13:28:40.91ID:???
やっぱこういう雰囲気にした元凶は腹切らないとだめだな
元凶がいると似たやつが集まって機能しなくなる
0499nobodyさん2012/07/08(日) 13:29:21.83ID:???
IDなし質問に回答しなくても荒れるってことは、
荒らし対策になってないよな。
0500nobodyさん2012/07/08(日) 13:32:16.42ID:???
>>498=元凶
0501nobodyさん2012/07/08(日) 13:35:52.96ID:???
>>499
元凶
0502nobodyさん2012/07/08(日) 13:36:51.55ID:???
>>499
お前がそういうやつらを引き寄せてそういう雰囲気にしたんだよ
>>232
0503nobodyさん2012/07/08(日) 13:40:50.23ID:???
---ここまで自演---------------------------------------------------
---ここからも自演-------------------------------------------------
0504nobodyさん2012/07/08(日) 13:43:27.10ID:???
自演はまかせろー
0505nobodyさん2012/07/08(日) 13:52:03.24ID:???
つうか24時間土日も含めて毎日いるように見えるな
暇人しかいないのか
0506nobodyさん2012/07/08(日) 15:06:11.35ID:0TtRBgeC
ちょっと質問です。

html に埋め込む用の簡易出力で、<?=$hoge?> みたいな表記を見たことがあります。
これについて詳細が載ってる場所はないでしょうか。記号なので調べにくく、環境依存かどうかすら分からず…
0507nobodyさん2012/07/08(日) 15:34:06.13ID:???
short_open_tagってやつだなあ
環境依存だよ
0508nobodyさん2012/07/08(日) 15:38:59.09ID:???
shtmlで調べたら幸せになれるよ
0509nobodyさん2012/07/08(日) 17:31:08.39ID:6sfBx1AW
昨日の質問は解決しました。
ありがとうございました。

また別の質問があるのですが、
例えばユーザがあるページにアクセスしてきたときに、ユーザの情報をDBに書き込むとします。
その処理に5秒かかる場合(実際はすぐ終わるはずですが)、
ユーザがページが表示される前に中止ボタンやページを離れた場合って実行中のphpの処理はどうなるんでしょうか?
離れても継続して実行してくれるのでしょうか?
0510nobodyさん2012/07/08(日) 17:34:23.99ID:???
試せ
0511nobodyさん2012/07/08(日) 17:42:00.80ID:???
実験した限りでは動いてました
でも明確な回答が欲しいんです
誰かわかりませんか?
0512nobodyさん2012/07/08(日) 17:47:42.40ID:???
自分に自信を持て
0513nobodyさん2012/07/08(日) 17:54:04.61ID:???
max_execution_timeないしset_time_limitで設定された時間に至るまで動くと思うよ
0514nobodyさん2012/07/08(日) 18:12:11.62ID:???
何事も自分に自身をもてば乗り越えられる。
君が「できる」と思えばPHPのそのとおりに応えてくれるよ。
0515nobodyさん2012/07/08(日) 18:28:28.64ID:6sfBx1AW
怖いですね
>>513の回答を信じます。
本当に信じますからね
ありがとうございました
0516nobodyさん2012/07/08(日) 18:30:15.06ID:???
なんで初心者がsqliteなんて使うの
荒れた原因になったこの前のsqliteの設計ミスの人でしょ?
まずはmysqlを使いなさいよ
0517nobodyさん2012/07/08(日) 18:31:38.02ID:???
phpのデフォルトが変わったからなあ
0518nobodyさん2012/07/08(日) 18:36:45.97ID:???
初心者はまずSQLITEを使うものだと思ってました
My SQLが使えないレンタルサーバにしようと思ってたので避けてたってのもありますが。
0519nobodyさん2012/07/08(日) 18:37:55.67ID:???
初心者はまずmysql使え
0520nobodyさん2012/07/08(日) 18:39:14.70ID:???
人が言うことを鵜呑みにするのはクズ
0521nobodyさん2012/07/08(日) 18:40:49.91ID:???
sqliteは環境用意するのが楽で始めるのが手軽ってだけで
よくわからない人が使うと自滅する
ある程度滅茶苦茶でもなんとかなるのがmysql
つうか今どきmysql使えないレンタルサーバなんてあるのか・・・
0522nobodyさん2012/07/08(日) 18:43:41.50ID:???
じゃあmysqlにしようかな
アドバイスありがとうございました
0523nobodyさん2012/07/08(日) 18:50:26.24ID:???
人が言うことを鵜呑みにするのはクズ
0524nobodyさん2012/07/08(日) 18:57:26.28ID:???
そのフレーズ気にいったの?
0525nobodyさん2012/07/08(日) 19:02:56.99ID:???
質問を後出しするのはクズ
■ このスレッドは過去ログ倉庫に格納されています