【PHP】下らねぇ質問はID出して書き込みやがれ 81
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2009/02/18(水) 21:09:16ID:xNLzAD7T過去スレ、関連スレ、FAQなどは>>2-10辺り
次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。
◆前スレ
【PHP】下らねぇ質問はID出して書き込みやがれ 80
http://pc11.2ch.net/test/read.cgi/php/1233479457/
◆質問用テンプレ
【OS名】vine linux
【PHPのバージョン】php5.26
【連携ソフトウェア】mysql
【質問内容】
◆質問する時の注意
・ スレを上げて自分のIDを表示させること。(メール欄に何も記述しない。専ブラのsageチェックを外す)
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に関連リンクの公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
(PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。)
◆質問後の注意
・2回目以降は最初に質問した際のレス番号を入れて、偽者防止に必ずIDを表示させること。
・解決しなくても回答をもらった場合はお礼を言うこと。
(荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)
◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。
0453nobodyさん
2009/02/26(木) 01:55:08ID:???スクリプト中でechoとかprint()使ってるのかなぁ。。
なら、heredocにすれば少しは気を使う部分が減るかもしれない。
$text = 'ちんこ' ;
echo <<<__E_O_T__
<button name="tinko" onclick="alert( '{$text}' ) ;" />
__E_O_T__
HTMLとかJavaScriptは完全に別ファイルにして
<button name="tinko" onclick="alert( '<php echo $text ?> ' ) ;" />
のほうがいいと思うけど。
0454nobodyさん
2009/02/26(木) 02:05:21ID:91pUGaxV<input type="text" name="test" value="">←に、test'sと入力して送信すると、
PHP4だと、
$_GET["test"]の値は、test'sとなりますが、
PHP5だと、
$_GET["test"]の値は、test\'sとなります。
送信された時点でエスケープされているのですが、これはphp.iniで変更可能でしょうか?
0455nobodyさん
2009/02/26(木) 02:08:20ID:???マジックなんちゃらやね
0456nobodyさん
2009/02/26(木) 02:20:57ID:???SQLインジェクションの対策で
そういう変なオプションがある。
自動的に'とかを勝手にエスケープしてくれるっていう。
0457nobodyさん
2009/02/26(木) 03:45:51ID:91pUGaxV0458418
2009/02/26(木) 04:00:48ID:GtV/r+inhttp://www.stackasterisk.jp/tech/php/php02_06.jsp
【form.html】
<html><body>
<form action="display.php3" method="POST">
<input type="text" name="fName" size="30"><br>
<input type="submit" value="submit">
</form>
</body></html>
【display.php3】
<html><body>
<?
print $fName;
?>
</body></html>
今日はこれにチャレンジしてみたのですが、うまく動きません。
どこが悪いのかご指摘下さい。
0459nobodyさん
2009/02/26(木) 04:06:33ID:???そこの情報古すぎるから違うとこのほういいよ
0461nobodyさん
2009/02/26(木) 04:08:51ID:7qsKyuky5分ごとに1減らす、ってどう書けばいいの?
cronとかじゃなくて。
0462418
2009/02/26(木) 04:08:56ID:GtV/r+in有り難うございます。
> $_POST['fName']
をドコと入れ替えるのでしょうか?
0463418
2009/02/26(木) 04:10:48ID:GtV/r+inあ、なるほど。.php3ってそういう意味なんだ。
私の環境はPHP Version 5.2.6でしたw
0464nobodyさん
2009/02/26(木) 04:10:55ID:7qsKyuky計算してるようなんだけど。
だから、例えばページが過疎ってて、
3日間アクセスがなかったら、その間は
計算しない感じ。
そんで3日ぶりにアクセスがあったら、
「えーーっと、、、、前回のアクセスから
3日だから、3(日)X24(時間)X12(5分の単位)
減らせばいっかな、、、」
とかって計算しているようなんだけど??
0465418
2009/02/26(木) 04:17:39ID:GtV/r+in0466nobodyさん
2009/02/26(木) 04:21:18ID:???<html><body>
<form action="display.php3" method="POST">
<input type="text" name="fName" size="30"><br>
<input type="submit" value="submit">
</form>
</body></html>
【display.php3】
<html><body>
<?
print $_POST['fName'];
?>
</body></html>
0468nobodyさん
2009/02/26(木) 04:24:25ID:???【form.html】
<html><body>
<form action="display.php" method="POST">
<input type="text" name="fName" size="30"><br>
<input type="submit" value="submit">
</form>
</body></html>
【display.php】
<html><body>
<?
print $_POST['fName'];
?>
</body></html>
0470418
2009/02/26(木) 04:42:12ID:GtV/r+in有り難うございます。
form.htmlこれで入力枠が表示されます。
で、aaaaaとか入力して、ボタンを押すと、真っ白の画面に変わり何も表示されません。
どうしたらいいでしょうか?
0471nobodyさん
2009/02/26(木) 04:44:09ID:???この行はあってる?
それと、
display.php
ファイル名これに変更したから。
0473nobodyさん
2009/02/26(木) 04:51:12ID:???アパッチは起動してる?
ブラウザのURL欄に
http://localhost/form.html
とかって入力しないとだめだよ
ダブルクリックしてブラウザで見たらだめってこと
今はURL欄に
file:///C:/display.php
とかって表示されてるでしょ?それだとだめ
0474418
2009/02/26(木) 04:56:26ID:GtV/r+inつーか、この状態でソースを表示させると、
<html><body>
<?
print $_POST['fName'];
?>
</body></html>
これがマンマ表示されます。
だから、変数の中に何も代入されてなくて、print関数でnullを表示してるのではないでしょうか?
0475418
2009/02/26(木) 04:57:41ID:GtV/r+inhttp://localhost/php/phpinfo.php
これを入れると、紫色の表がずるずる出て来ます。
0476418
2009/02/26(木) 05:01:07ID:GtV/r+inこれではなく、
http://localhost/php/display.php
これになってて、真っ白の状態です。
0477418
2009/02/26(木) 05:24:06ID:GtV/r+in<?
を
<?php
としました。
有り難うございました。
0478418
2009/02/26(木) 06:41:16ID:GtV/r+indisplay.phpが表示されなくて、ファイルのダウンロードってのが表示されるようになったw
0479nobodyさん
2009/02/26(木) 06:56:40ID:zwlsZYIS外部とのIOはどうなりますか?
たとえば、オープンしてあるファイルとか、
DBとの接続とか。
複数プロセスからファイルがオープンされているような状態になるのはまずいんじゃないかと
思うのですが・・
0480418
2009/02/26(木) 06:57:27ID:GtV/r+inちゃんと、http://localhost/php/form.htmlと打つと。
0481nobodyさん
2009/02/26(木) 07:10:01ID:???0482nobodyさん
2009/02/26(木) 08:12:14ID:WDGjNsPdtxt、cgiや、datファイルなどなどに書き込めることがわかったのですが、
ふと、.phpにもインサートできるのかな?と疑問におもいました。
phpに書き込んで、それぞれ変数に格納していって、参照〜
みたいなのを1000件くらいしたときtxt cgi dat などと比べて速度は変わらないでしょうか?
0483nobodyさん
2009/02/26(木) 09:10:36ID:???拡張子が変わったところでプレーンテキストのデータということには変わりないんだろ?
0484nobodyさん
2009/02/26(木) 09:45:22ID:???DBが使えないといっても、txtが使えるならSQLiteぐらい使えるんじゃない?
まぁ、それが無理として、更新が重ならないという条件が付くなら、phpファイルに
var_export($hoge, true);の結果を書きこむ手はある。
速いよ。
しかし、一気に読み込むからメモリは食うけどな。メモリ割り当て次第。
0485nobodyさん
2009/02/26(木) 10:20:05ID:???なんでvar_export?
取り出すときevalすんの?しかも遅いじゃん
serializeの方が安全で高速
0486nobodyさん
2009/02/26(木) 10:24:40ID:???マイクロ秒単位の誤差などどうでもいい
好きにしろ
0487nobodyさん
2009/02/26(木) 10:36:38ID:???0488nobodyさん
2009/02/26(木) 10:45:56ID:???0489nobodyさん
2009/02/26(木) 12:49:24ID:???0490nobodyさん
2009/02/26(木) 12:49:59ID:???dw8から乗り換えるわwwwwwwwww
0491nobodyさん
2009/02/26(木) 12:50:37ID:???0492nobodyさん
2009/02/26(木) 12:54:45ID:hOiLi7h5文字列を1byteじゃなく1bitを取得することってできますか?
0493nobodyさん
2009/02/26(木) 13:06:37ID:???0494nobodyさん
2009/02/26(木) 13:15:31ID:???0495nobodyさん
2009/02/26(木) 13:22:02ID:???はぁ?
試したのかよ。$data = 付けて保存したら、includeするだけだぜ。
unserializeの方が遅いよ。
0496nobodyさん
2009/02/26(木) 14:12:33ID:YD+Z+nCMしかしPHP内で
header("Not Found", true, 404);
と書くと、設定している404エラー画面ではなくブラウザの404エラー画面が出ます。
設定しているエラー画面を表示させるにはどう書けばいいでしょうか?
0497nobodyさん
2009/02/26(木) 14:15:08ID:???0498nobodyさん
2009/02/26(木) 14:22:20ID:???404エラーのファイルになりませんか?
0500nobodyさん
2009/02/26(木) 14:28:09ID:???そのheaderを出した後、自前のエラー画面をreadして出力。
ブラウザは404ヘッダーと404用のソースを受け取る
0501nobodyさん
2009/02/26(木) 14:35:56ID:???その問題に関係あるか分からないけど
IEだと512バイト?以下のエラーファイルは無視して
自前のエラーファイル使うらしい。
インターネットオプションの詳細設定から変えられるけど。
0502nobodyさん
2009/02/26(木) 15:03:08ID:???まとめて失礼します。
たくさん教えてくださってありがとうございます。
無事できるようになりました。
>>501
それは知りませんでした。デザイン頑張ります。
0503nobodyさん
2009/02/26(木) 15:32:12ID:6qh6YAhfなるべく3人グループができるようにします
関数にて処理したいと思います
よろしくおねがいします
function get_group (n) {
/*
計算するところ
*/
return array('3' => ? ,'2' => ?);
}
n=2の場合
array('3' => 0 ,'2' => 1);
n=7の場合
array('3' => 1 ,'2' => 2);
n=9の場合
array('3' => 3 ,'2' => 0);
n=11の場合
array('3' => 3 ,'2' => 1);
0505nobodyさん
2009/02/26(木) 15:35:02ID:???0506nobodyさん
2009/02/26(木) 15:37:50ID:???0507nobodyさん
2009/02/26(木) 15:38:09ID:???0509nobodyさん
2009/02/26(木) 16:03:26ID:6qh6YAhfありがとうございました
function get_group ($n) {
if((int)$n < 2) return false;
$total = (int)$n;
$sannin = 0;
$futari = 0;
$amari = $total % 3;
if($amari === 1) {
$sannin = floor(($total / 3)) - 1;
} else {
$sannin = floor($total / 3);
}
$futari = ($total - ($sannin * 3)) / 2;
return array('3' => $sannin ,'2' => $futari);
}
0510nobodyさん
2009/02/26(木) 16:04:28ID:???0511nobodyさん
2009/02/26(木) 16:06:21ID:???0512nobodyさん
2009/02/26(木) 16:11:53ID:???n=7のときは2人グループが二つできるの?
0513nobodyさん
2009/02/26(木) 16:18:30ID:???0514nobodyさん
2009/02/26(木) 16:21:51ID:???switch ($n) {
case 1 : return false;
case 2 : return array(0, 1);
case 3 : return array(1, 0);
case 4 : return array(0, 2);
case 5 : return array(1, 1);
case 6 : return array(2, 0);
case 7 : return array(2, 1);
・・・略
}
}
0515nobodyさん
2009/02/26(木) 16:32:40ID:???print_r(getGroup($n));
function getGroup($n) {$a=floor($n/3);$b=fmod($n,3);switch ($b) {case 0:return array('3'=>$a,'2'=>0);break;case 1:return array('3'=>$a-1,'2'=>2);break;case 2:return array('3'=>$a,'2'=>1);break;}}
0516nobodyさん
2009/02/26(木) 16:33:56ID:???0517nobodyさん
2009/02/26(木) 16:35:59ID:???あとは好きにしろ
0519nobodyさん
2009/02/26(木) 16:44:24ID:???ループ処理内にreturnもなんか違和感を感じる
0521nobodyさん
2009/02/26(木) 16:53:00ID:???ttp://www.google.co.jp/search?hl=ja&client=firefox-a&rls=org.mozilla%3Aja%3Aofficial&hs=9eG&q=return+switch+%E6%B0%97%E6%8C%81%E3%81%A1%E6%82%AA%E3%81%84&btnG=%E6%A4%9C%E7%B4%A2&lr=lang_ja
0522nobodyさん
2009/02/26(木) 16:59:46ID:???0523nobodyさん
2009/02/26(木) 17:02:39ID:???0525nobodyさん
2009/02/26(木) 17:14:45ID:???もしかして、まじでオレだったりしてな。
0526nobodyさん
2009/02/26(木) 17:21:44ID:???それは、そういう奴をさっさと見抜いてクビにできなかった上司の責任。
ふつうに考えればよいコードを書く方がクビになりにくいのは自明だから、
それができなくて辞めた奴を憎んでもしょうがないべ
逆に、良いコード書いても評価されないならとっとと辞めたほうがよさげ
0527nobodyさん
2009/02/26(木) 17:24:01ID:???0528nobodyさん
2009/02/26(木) 17:29:28ID:???$fp=fopen($filename1,"a");
flock($fp,LOCK_EX);
fwrite($fp,$str)
fclose($fp);
$fp=fopen($filename2,"w");
flock($fp,LOCK_EX);
fwrite($fp,$str)
fclose($fp);
0531nobodyさん
2009/02/26(木) 17:33:13ID:???雑談でネタ振りしてろカス
0532nobodyさん
2009/02/26(木) 17:38:21ID:???function ahoaho( $filename, $filemode, $str ){
$fp=fopen($filename, $filemode); flock($fp,LOCK_EX); fwrite($fp,$str) fclose($fp);
}
ahoaho( $filename1, "a", $str1 );
ahoaho( $filename2, "w", $str2 );
0533nobodyさん
2009/02/26(木) 18:02:42ID:???0534nobodyさん
2009/02/26(木) 18:07:13ID:???class sql {
function getUser() {}
}
class subsql extends sql {
function getParam(){}
}
class sub2sql extends subsql
0535nobodyさん
2009/02/26(木) 18:12:54ID:???この3つからgetUserを呼び出す際
呼び出しを統一のクラスで管理したいのですがsql,subsql,sub2sqlとクラス名が違うためできません。
クラスを上書きみたいなことはできないのでしょうか?
subsqlではなくsqlの追加ファンクションとして別ファイルで定義したいのです
途中で送信してしまい変な分になってます。ごめんなさい
0536nobodyさん
2009/02/26(木) 18:40:47ID:???おまえさん、スレタイが読めないように、クラスのこともわからないんだろうなぁ。
自分が何を聞きたいのかもう一度整理して、ID出してやりなおしてみたらどうよ
0538nobodyさん
2009/02/26(木) 21:31:11ID:???契約の金額が増えるほど
ディスクの容量が減る
ステキなヤフーのホスティングサービス
0539nobodyさん
2009/02/26(木) 22:27:45ID:???俺は逆にswitchの中には極力return以外を置かないようにしてる。
breakも不要になるからbreak忘れ防げるし、全てのcaseが即returnになってれば読みやすい。
0540nobodyさん
2009/02/26(木) 23:09:38ID:???って英語で質問したら、いっぱい回答きて
収拾つかなくなったよ
たすけて
どうしたらいい?
http://stackoverflow.com/questions/590464/how-do-you-write-a-process-to-do-something-every-24-hours
0542nobodyさん
2009/02/26(木) 23:46:35ID:lNT2RMd9http://example/test/
と言う場合、このディレクトリを取得する方法ってないでしょうか?
0545nobodyさん
2009/02/27(金) 00:44:14ID:???そのURL叩いて何らかのPHPスクリプトが実行されるのなら、__FILE__でそのスクリプトへのパスが取得出来る。
そのパスから親ディレクトリ取ってくる。
これで回答になってる?
0547nobodyさん
2009/02/27(金) 01:05:50ID:JrfelggM自分でビルドするしかないんでしょうか?
アプリを配布するにあたって、環境はなるべく本家(に近いところ)から落としてもらおうと思ってたんですけど。
0548nobodyさん
2009/02/27(金) 02:00:01ID:GwQuSr9T0549547
2009/02/27(金) 02:42:59ID:???試しにスクリプトとして実行しても、ヒット数増えなかったし。(一応古いバージョンのなら手元にバイナリがある)
PHPのコンパイル、ワケがわからん。
試しにPHP本体も作ってみるかと思ったんだが、
http://jp.php.net/manual/ja/install.windows.building.php
≫ the Windows build tools をダウンロードし、それを C:\work に展開する
ってあるのも、いきなりリンク切れしてるし。
apcも、とりあえずVCでコンパイルしようとしたら、VCのヘッダファイルでサイズが0の配列ってエラーが出るし。
どこから手をつけたらいいものやら。
0550nobodyさん
2009/02/27(金) 04:12:18ID:lL0tvrw7このページなんだけど、
getにしたのに、リロードしたら
カウントアップしてしまうんだよ
なんで?POSTだったら、そうなるってわかるけど、
getだったら、ならないはずなのに?
0551nobodyさん
2009/02/27(金) 04:15:05ID:???| ここでボケて!! |
|_________|
∧∧ ||
( ゚д゚)||
/ づΦ
0552nobodyさん
2009/02/27(金) 04:18:21ID:lL0tvrw7慎重に選考を進めてまいりましたが、
残念ながらご希望に添えない結果と
なりましたのでご連絡申し上げます。
今後ますますのご健康とご活躍をお祈り申し上げます。
0553nobodyさん
2009/02/27(金) 04:24:52ID:lL0tvrw7<form method=post action=2.php>
そこから元ファイルに飛ばせばフォームデータ消えるから、F5更新しても大丈夫
header("Location: http://example.com/1.php");
↑こんなめんどくさいこと
しないとだめなの?
■ このスレッドは過去ログ倉庫に格納されています