【PHP】下らねぇ質問はID出して書き込みやがれ 114
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2012/01/02(月) 02:03:25.50ID:???過去スレ、関連スレ、FAQなどは>>2-10辺り
次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。
◆前スレ
【PHP】下らねぇ質問はID出して書き込みやがれ 113
http://kohada.2ch.net/test/read.cgi/php/1322564127/
◆質問用テンプレ
【OS名】CentOS
【PHPのバージョン】5.3
【連携ソフトウェア】MySQL ImageMagick
【質問内容】
◆質問する時の注意
・ スレを上げて自分のIDを表示させること。(メール欄に何も記述しない。専ブラのsageチェックを外す)
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に関連リンクの公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
(PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。)
◆質問後の注意
・2回目以降は最初に質問した際のレス番号を入れて、偽者防止に必ずIDを表示させること。
・解決しなくても回答をもらった場合はお礼を言うこと。
(荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)
◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。
【その他諸注意】
・SQL・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
0177nobodyさん
2012/01/04(水) 18:43:44.40ID:???【Apache】mod_rewriteについて語るスレ
http://kohada.2ch.net/test/read.cgi/php/1023791370/
0178nobodyさん
2012/01/04(水) 18:43:46.89ID:???すごくちがいます
失礼ですが、これ以上説明しても理解できるレベルじゃないと誰もが思ってると思います
ですのでもう少し自分なりに学習してください
0179nobodyさん
2012/01/04(水) 18:47:20.75ID:???そして正月終わっても定着しちゃうんだよね┐(´д`)┌
0180nobodyさん
2012/01/04(水) 19:32:06.64ID:???0181nobodyさん
2012/01/04(水) 19:32:56.14ID:UqtcALC3PHPでフォームを作成しているのですが、データの受け渡し方法が分かりません。
「PHPの絵本」という本を見ながらやっているのですが、
<form action="実行するPHPのURL" method="post">と書かれてあります。
この「実行するPHPのURL」というのがよくわかりません。
あらかじめ「実行するPHPのURL」というものを用意しておくということでしょうか?
まだプロバイダー申し込み等していないのですが、それをしてからということでしょうか?
0182nobodyさん
2012/01/04(水) 19:40:16.39ID:???0183nobodyさん
2012/01/04(水) 19:44:24.86ID:???マジで初心者だな。
実行するPHPのURL=hello.phpとする
<form action="hello.php" method="post">
を書いたhtmlを入れてあるファルダにhello.phpを入れる。
例えばhello.phpを
<?php
echo "hello"\n;
?>
としてブラウザには正常に表示されない。
普通はサーバーソフトを自分のpcで立ち上げ、
urlはhttp://localhost/にアクセスする。
0184nobodyさん
2012/01/04(水) 19:47:35.63ID:???フォームを受け取るPHPのURLってことだよ
そのフォームを表示するhtmlからの相対パスで指定しとけばおk
<form action="form.php" method="post">
実際にフォームの受け渡しについてテストするなら
xamppとか入れてローカルでテストする
ところで今はどうやってphpテストしてる?
コマンドラインならform.phpの最初の方で
$_POST['key'] = "値"; // <input name="key" value="値">
ってしとけばローカルサーバー不要でテストできるね
0185nobodyさん
2012/01/04(水) 19:47:47.36ID:???<?php
echo $_POST['hoge'];
?>
[index.html]
<form action="hoge.php" method="post">
<input type="text" name="hoge">
<input type="submit">
</form>
あとは
<body onload="alert('Hello')">
と入力して送信おしてHelloと出てきたら成功です
0186nobodyさん
2012/01/04(水) 19:50:21.70ID:???<form action="hello.php" method="post>
を書いてあるのがhello.htmlとして
http://localhost/hello.htmlにアクセスするんだよ。
たとえばxamppならC:\xampp\htdocsにhello.htmlとhello.phpを入れとく。
0187nobodyさん
2012/01/04(水) 21:16:20.20ID:UqtcALC3みなさん、ありがとうございます。
教えていただいた通りにやったらできました!!
0188nobodyさん
2012/01/04(水) 21:30:54.32ID:???0189nobodyさん
2012/01/04(水) 23:21:41.75ID:s9lYOiI40190nobodyさん
2012/01/04(水) 23:48:16.96ID:???クライアントサイドの仕事だからJavaScriptスレで聞いたほうがいいよ
0191nobodyさん
2012/01/05(木) 00:17:41.50ID:YvCiXMC9アプリケーションスコープ相当を実現することはできますか?
0192nobodyさん
2012/01/05(木) 00:39:35.64ID:???0194nobodyさん
2012/01/05(木) 00:59:15.22ID:YvCiXMC9具体的に方法はありますか?
0195nobodyさん
2012/01/05(木) 01:04:20.51ID:???0196nobodyさん
2012/01/05(木) 01:07:57.28ID:YvCiXMC9ケースバイケースになるくらい難しいことですか?
0197nobodyさん
2012/01/05(木) 01:10:10.17ID:YvCiXMC90198nobodyさん
2012/01/05(木) 01:16:29.08ID:YvCiXMC9他のサーバーサイド言語では主に3つのスコープがあります。
1.リクエスト
2.セッション
3.アプリケーション
私見だとPHPには1,2相当はありますが3がないので困っているのです。
どうしたらよろしいでしょうか?3がないとすると大幅にパフォーマンスが
変わりかねないので悩んでいるのです。
0199nobodyさん
2012/01/05(木) 01:20:01.65ID:???>大幅にパフォーマンスが 変わりかねないので悩んでいるのです。
ほう、それは具体的にどういうケースでパフォーマンスの低下が発生するの?
実装次第で回避出来るかもしれんよ。
0200nobodyさん
2012/01/05(木) 01:25:30.10ID:YvCiXMC9サイトへアクセスする全員が利用するデータがDBにあります。
0203nobodyさん
2012/01/05(木) 01:29:24.23ID:YvCiXMC9たとえば一定期間に1000人がアクセスしたとします。
最低1000回DBへのアクセスが発生します。
データは共通なのだから本来であればDBへのアクセスは1回で
よいはずです。
0204nobodyさん
2012/01/05(木) 01:32:17.91ID:YvCiXMC9基本的にPHPは重いしサーバーのメモリを食うのでできる限り
使用したくないのです。
そこで、jsonなどの静的ファイルに置き換えてjsで読むという方法は
取っていますが、結局サーバーサイドとクライアントサイドで書く必要
があるのでめんどくさいのです。
0207nobodyさん
2012/01/05(木) 01:35:26.23ID:???0208nobodyさん
2012/01/05(木) 01:42:34.82ID:YvCiXMC9使う側の利便性を考えるとやはりDBです。
やっぱり方法は無いんでしょうね。
memcachedと使うという手法は知っていますが、
PHPの仕組み上ではどうしてもサーバーに負荷がかかってしまう。
アプリケーションスコープがある言語にどうにかして切り替えます。
ありがとうございました。
0209nobodyさん
2012/01/05(木) 02:35:16.36ID:???0211nobodyさん
2012/01/05(木) 03:05:43.15ID:???悪いけど究極的にウンコみたいな設計だな。
根本的におかしい。
どうやったらそんな謎設計になってしまうのか詳しく聞きたい。
0215nobodyさん
2012/01/05(木) 03:23:45.71ID:???0218nobodyさん
2012/01/05(木) 03:25:37.26ID:???そうあわてんなって。
こんなウンコみたいな設計で動いてるサイトの詳細ってお前らも知りたくないか?
本人が来たら詳しく聞いてみようぜ。
0223nobodyさん
2012/01/05(木) 03:33:34.93ID:???レベル低すぎ。
0224nobodyさん
2012/01/05(木) 03:38:42.21ID:???「PHPはおかしなコードを助長する言語」
同意だよね。ヒヒヒwwww。
0228nobodyさん
2012/01/05(木) 03:46:05.91ID:???あらあらなるほど
ちゃっちゃと作る分にはPHPは楽だからな。
人が集まった時点で作り直せばよかったんだろうけどなぁ。
0229nobodyさん
2012/01/05(木) 03:47:09.77ID:???無知ですまんかった。
0230nobodyさん
2012/01/05(木) 03:50:18.84ID:???そんなわけがわからないものを作るよりは
初めからC++で作っとけば良かったんだ。
HipHopにしてもネイティブのC++に比べると
オーバヘッドがあるわけでムダだよね。
0232nobodyさん
2012/01/05(木) 03:58:28.05ID:???C++で作ったからといって、1000ユニークアクセスに対して1000DBアクセスが発生しなくなるわけじゃあないからな。
なんの工夫もなしにそれは変わることはない
0233nobodyさん
2012/01/05(木) 04:44:02.06ID:???0234nobodyさん
2012/01/05(木) 04:50:42.28ID:???HipHopはPHPの開発ツールとしての優位性が強まる、つまり「PHP最強だろ!」って話だからね
PHP憎しで完全に狂ってるけど、はたから見ると面白い
0235nobodyさん
2012/01/05(木) 08:46:23.61ID:???もういいから早く代替案を答えて。
0236nobodyさん
2012/01/05(木) 08:57:14.69ID:???C++で作ったからといって、1000ユニークアクセスに対して1000DBアクセスが発生しなくなるわけじゃあないのに、
なぜHipHopで「PHP最強だろ!」になるのですか?
0238nobodyさん
2012/01/05(木) 09:14:31.17ID:???よく死にたくならないなと感心するよ
0240nobodyさん
2012/01/05(木) 11:42:14.54ID:ACIe1UJA0241nobodyさん
2012/01/05(木) 11:48:53.94ID:???じゃなければmyTrim()とかmyPhpinfo()みたいにプレフィックスでも付けて差別化するしかない
0242nobodyさん
2012/01/05(木) 11:55:13.54ID:ACIe1UJAPHPコードからではできないですか。
諦めて別名でやってみます。
0243nobodyさん
2012/01/05(木) 12:05:52.58ID:???それはC/C++ソースをコンパイル時にアセンブラ出力して書き換えるようなもの。
無駄をなくすとすれば機械語、アセンブラにたどり着く。
しかし開発効率からそのあたりには手を出さず、PHPやC/C++のコードの範囲でできる事をした方が良い。
0244nobodyさん
2012/01/05(木) 12:15:28.46ID:???Matzも知らないから素人なんだろうと思ってたけど納得だわ>>218
facebook級のサイトのを運営してるSEというなりきり設定がワロタ
PHPの高速化に HipHop vs APC てのがあるみたいだけど
現時点でほとんど性能は変わらないようだし安定性の面でAPCに軍配が上がるのかな。
サクッと作って高速で動かすという技術はPHPが先を行ってる感じ
http://blog.candycane.jp/archives/491
http://dsas.blog.klab.org/archives/51978647.html
0245nobodyさん
2012/01/05(木) 12:28:51.85ID:???どれだけPHPが高速化できたとしても、リソースの少なさ、速度の速さではネイティブ実行形式が上だろ。
0246nobodyさん
2012/01/05(木) 12:43:16.59ID:WqkweKyi0247nobodyさん
2012/01/05(木) 12:50:18.95ID:???0248nobodyさん
2012/01/05(木) 12:52:26.30ID:???0249nobodyさん
2012/01/05(木) 12:57:19.29ID:???シングルトン・マルチスレッド・アプリケーションスコープ、全部理解してないからな
0250nobodyさん
2012/01/05(木) 13:02:42.94ID:???精神病むには最適な職種と言える
0251nobodyさん
2012/01/05(木) 14:48:43.61ID:r8xFdMd/$ary[expr1 ? expr2 : expr3]ってしたとき
expr3の結果を$ary[]にする方法ってないよね
ちなみにnullや''は空文字列で[]とは違う
0252nobodyさん
2012/01/05(木) 14:56:30.73ID:FPSYlk7pclass SQLというのがありまして
function getRecord($limit = NULL, $offset = 0) {
if ($limit) return array_slice($this->record, $offset, $limit);
else return $this->record;
}
というファンクションがあったんですが、
$this->record;のrecordが何を指しているかがわかりません。
recordてもともとPHPに用意されているファンクションなんでしょうか?
0253nobodyさん
2012/01/05(木) 14:57:37.19ID:???0254nobodyさん
2012/01/05(木) 14:58:56.94ID:???0255nobodyさん
2012/01/05(木) 15:09:18.10ID:???0256nobodyさん
2012/01/05(木) 15:09:19.83ID:???0257nobodyさん
2012/01/05(木) 15:20:05.60ID:???0258nobodyさん
2012/01/05(木) 15:22:06.79ID:FPSYlk7pclass SQLの中にrecordというファンクションがなかったので
もともと用意されている何かだとおもったのですが
ググってもでてこなかったので聞いてみました。
まだよくわかっていないのでちょっとクラスについて調べてきます
0259nobodyさん
2012/01/05(木) 15:25:35.51ID:yQXwn+vlDB操作しやすいライブラリとかでおすすめないかな?
プログラム自体は大したことないのに、
テーブルやらカラムやらを大量に作らなきゃいけない予定なんで、
SQLで書くのめんどくさいから、
ソースコードだけで片付くものを探してるとこなんだけど
0260nobodyさん
2012/01/05(木) 15:26:13.26ID:???$this->recordが必ずしもファンクションとは限らないのにファンクションと決めつけてるだろ
そんなことだといつまでも謎のままだぞ
>if ($limit) return array_slice($this->record, $offset, $limit);
これ見たらあー配列なんだなってわかるし
つーことは、名前からしても$this->recordにはどこかでSELECTの結果かなにかを配列としてセットしてるメンバだとわかるだろう
0262252
2012/01/05(木) 15:29:33.28ID:FPSYlk7pprivate $count = 0;
private $host = "localhost";
private $error = null;
protected $link = null;
protected $record = null;
function connect() {
$this->link = mysql_connect($this->host, "???", "?????");
if (!$this->link) return false;
if (!mysql_select_db('recnomi', $this->link)) return false;
return true;
}
function disconnect() {
mysql_close($this->link);
}
function getRecord($limit = NULL, $offset = 0) {
if ($limit) return array_slice($this->record, $offset, $limit);
else return $this->record;
}
0263nobodyさん
2012/01/05(木) 15:30:55.18ID:???そーゆーことならフレームワークのスレへ
ただSQL書かないで最適なクエリを発行することはまず無理だと思う
DB抽象化ライブラリがインデックスまで把握して最適なクエリを発行してくれるものがあればオレも欲しい
0264252
2012/01/05(木) 15:31:28.29ID:FPSYlk7p5行目のprotected $record = null
で定義しているからしたで使えているということなんですか?;
0267252
2012/01/05(木) 15:35:46.96ID:FPSYlk7p$this->recordでrecordに$がついてなかったので
ファンクションだと思ってました。。
勉強してきます
0269nobodyさん
2012/01/05(木) 15:38:38.34ID:???使う機能だけを関数化すればよい。
SQLはコマンドラインでも動作する。難しければそこからやってみてそのあとPHPにするというのもある。
0271252
2012/01/05(木) 15:45:28.44ID:FPSYlk7p5行目のprotected $record = nullでは配列が入っていないとおもうんですが
recordには配列はどうやって入れているのでしょうか?
0272nobodyさん
2012/01/05(木) 15:50:04.64ID:???0273262
2012/01/05(木) 15:51:51.85ID:FPSYlk7p0274nobodyさん
2012/01/05(木) 16:09:56.66ID:???$recordという変数を探して、
名無しの変数なんてねえよ。とわめいたり、
素知らぬ顔で空データ返してくれるPHPを見てると
ちょっと萌えるよね。
こんな技法滅多に使わないけど。
0275nobodyさん
2012/01/05(木) 16:19:40.25ID:???/hoge/fugaというアクセスはclass hogeのfugaメソッドを実行とかね
どんな名前でアクセスしてくるかわからないものを一箇所で処理しようと思ったら便利でしょ
0276nobodyさん
2012/01/05(木) 16:26:11.82ID:???>if ($limit) return array_slice($this->record, $offset, $limit);
クエリ発行時点でoffsetとlimitつけとけよ…
これごっそりレコード取って後から切り出してるだろ
とりあえずこんなクソコード捨てちまえ
■ このスレッドは過去ログ倉庫に格納されています