【PHP】下らねぇ質問はここに書き込みやがれ 59
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2007/11/16(金) 18:09:05ID:kurqBmt1PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り
◆前スレ
【PHP】下らねぇ質問はここに書き込みやがれ 58
http://pc11.2ch.net/test/read.cgi/php/1194084457/
◆質問する時の注意
・ 自分のIDを表示させること。(メール欄に何も記述しないこと。空白も入力しちゃダメ)
・ サーバーのOS(Linux、Windows他)、WebサーバーとPHPの種類やバージョン等を明記すること。
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
◆質問後の注意
・偽者防止に必ずIDを表示させること。(メール欄に何も記述しない)
・2回目以降は最初に質問した際のレス番号を名前欄に入れること。
・解決しなくても回答をもらった場合はお礼を言うこと。
(荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)
◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。
【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで
0655IT土方 ◆5m1CB.BcLA
2007/11/27(火) 14:45:42ID:s8Xdilbo昔職場でそんな話題が出てたのを思い出した&最近XEADなんてモノを見つけて遊んでいるので、サクっと設計してみた。
スケジュール表組むだけだと本当に「HTMLエディタ覚えろよ」になるので、一応は嬢が自分でスケジュールが申請できるようにしてみたが……。
コミコミなら50画面近くイクな、これ(苦笑) 確かに設計から始めたら「最低300万」だわ。
固めて60KBくらいになったが、誰か見てみる?
冷やかしてやろうというお方はUPローダーの紹介ヨロシク。
0656nobodyさん
2007/11/27(火) 15:10:21ID:???http://www.axfc.net/uploader/
別にどうでもいいわけだが。
0659nobodyさん
2007/11/27(火) 15:37:48ID:???それよりも、要求仕様なしで作った雛形を見て、
>>657 が、どの程度風俗通いをしているかを
見極めてみたいと思いませんか?
0661nobodyさん
2007/11/27(火) 15:45:53ID:OQsEuWQD他のソースで定数名として宣言されてるからかもしれないって言う理由かもしれないけど
他の依存ソースもみてくれりゃいいじゃん。Javaから移ってきたんだけど
$つけ忘れのエラーが多くて、困るんだよ。どうしてそんくらいのことしてくれないのかな?コンパイラは。
0662nobodyさん
2007/11/27(火) 15:53:18ID:???0663661
2007/11/27(火) 16:13:19ID:OQsEuWQD0665nobodyさん
2007/11/27(火) 16:28:50ID:???できの悪い661がご迷惑をお掛けしました。
0668nobodyさん
2007/11/27(火) 17:22:13ID:???【政治】 「放置すると、日韓関係にヒビ」 外国人参政権付与、成立への流れ加速も…公明に各党同調、自民反対派は沈黙、首相次第か★4
http://news22.2ch.net/test/read.cgi/newsplus/1196149001/
0669IT土方 ◆5m1CB.BcLA
2007/11/27(火) 17:30:36ID:???http://homepage2.nifty.com/dbc/xead.html
>>656
感謝。
>>657
だってツールで遊んでみたかっただけだから(笑
でも>>89って
・スケジュール一覧表表示させたい
・スケジュールを嬢側から入力させたい
ってことだよね? ならまぁこんなモンかと、さっくりとね。
>>658
ヨロ。いやマヂで。
>>659
まぁ毒男だし、行ったことないとは言わんが……(笑
いや、女だったら無いのかというのは置いておいて(爆)
>>666
獣の数字おめでとう(笑
0670nobodyさん
2007/11/27(火) 17:38:23ID:???0671IT土方 ◆5m1CB.BcLA
2007/11/27(火) 17:51:44ID:???http://www11.axfc.net/uploader/20/so/He_49930.zip.html
アップロードしたら30KBだったわ(苦笑)
0672nobodyさん
2007/11/27(火) 18:00:53ID:???しかし仕事を奪うようなことはしちゃならんよ、業界人として。
0673nobodyさん
2007/11/27(火) 18:44:31ID:???フレームワークだけで作ったのか
0674nobodyさん
2007/11/27(火) 18:45:15ID:???字句解析時に$が付いてりゃ変数として、
なけりゃ定数の名前やら関数名やらと一緒に分類される。
そして定数やら関数は実行時に定義される。
なのでパースが終わった時点ではまだエラーを出せない。
ポカミス減らしたかったらIDEに頼ろうぜ。
0676nobodyさん
2007/11/27(火) 19:09:40ID:???0677nobodyさん
2007/11/27(火) 19:14:21ID:???これがSEってやつか?
0678nobodyさん
2007/11/27(火) 19:41:00ID:???まんまと盗もうとしてるバカが多いスレはここですか?
0679nobodyさん
2007/11/27(火) 19:41:59ID:???0680nobodyさん
2007/11/27(火) 19:48:36ID:???0681nobodyさん
2007/11/27(火) 19:53:22ID:???xslは見てません。htmlだけ見させてもらいましたw
インターフェイスは、結局はPHPで動的に吐かせることになるわけだし、あえて突っ込む必要も無いのだが、
マスタ表示テーブルはページングのためのリンクが必須。
システム面に関しては、従業員管理に携帯電話固有番号があるあたり、モバイル意識してるとは思うが、
モバイルの簡易ページが後々必要になりますな。
催促のメールは、ちょっとやりすぎ感が否めない感じ。でも悪くは無い。
シフト入力は1週間単位では少ない気がする。俺なら2週間単位。
ありきたりすぎて全体的に見ても、そんなに冷やかしどころは無いよ。
メシ前のいい暇つぶしでした。以上。
0682デリヘル店長
2007/11/27(火) 20:06:07ID:???ありがとうございました。早速外注のプログラマに当店用にモデレートしてもらいます。
今夜は旨い酒が飲めそうです ^^
0683nobodyさん
2007/11/27(火) 20:06:16ID:???0684nobodyさん
2007/11/27(火) 20:08:05ID:???0685nobodyさん
2007/11/27(火) 20:08:40ID:???0686nobodyさん
2007/11/27(火) 20:19:00ID:???ありがとうございました
プログラミングってやっぱ難しいんですねwikipedia読んだだけでもさっぱりでした
0687ソープ店長
2007/11/27(火) 20:23:56ID:???0688イアン・ソープ
2007/11/27(火) 20:25:39ID:???0689デリ店員
2007/11/27(火) 20:26:32ID:???0690nobodyさん
2007/11/27(火) 20:34:43ID:???0691nobodyさん
2007/11/27(火) 20:38:40ID:???0692nobodyさん
2007/11/27(火) 20:40:49ID:???で、得られた結果をそのままprint_rすると、きちんと表示されるのですが、
その中から「〜」を消したい場合、どうすればいいですか?
print_rで表示されたソースを見ると、「〜」の部分が?となっています。
$tes1 = str_replace("〜","",$tes1);
としてもなりません。
0693nobodyさん
2007/11/27(火) 20:44:20ID:???0694692
2007/11/27(火) 21:04:03ID:???マルチバイトでしたね。ありがとうございます。
ところでmb_というのはmb_replaceとか、mb_str_replaceの事ですか?
マニュアルにはなくて…
また、こういった記号がいくつかあるのですが、どう対応するのが一般的でしょうか?
最終的には$tes1から条件に従って文字列(複数)を抜き出し
if($tes1=="?となってしまう記号を含んだ文字列"){
としたいのです。
0695692
2007/11/27(火) 21:25:20ID:???urlencodeして比較すると上手くいきます。
どういった理由でソースにこういった?表記がなされるのでしょうか?
エンティティかと勝手に思ってたんですが、デコードしてもならないし…
0696692
2007/11/27(火) 21:48:03ID:???0697692
2007/11/27(火) 21:55:32ID:hIC2+TtKごめんなさい。IDだしてませんでしたね。
ところで、自分の質問の仕方ですが、何か悪かったですか?
0698nobodyさん
2007/11/27(火) 22:01:41ID:???/日本語/hoge → /%93%fa%96%7b%8c%ea%0d%0a/hoge
/hoge/hoge/日本語 → /hoge/hoge/%93%fa%96%7b%8c%ea%0d%0a
みたいに
日本語部分だけにURLエンコードをかけたいのですが、
どんな方法があるでしょうか?
0699nobodyさん
2007/11/27(火) 22:04:34ID:???0702nobodyさん
2007/11/28(水) 06:09:31ID:pNrSaAxOfunction toString() {
return $this->str;
}
function __toString() {
return $this->str;
}
これを
function toString() or __toString() {
}
みたいなかんじで・・・
普通同じ動作をするメソッドが2つ以上あるっていうのはおかしいでしょうか?
0703nobodyさん
2007/11/28(水) 06:11:51ID:???0704nobodyさん
2007/11/28(水) 06:12:34ID:???0705nobodyさん
2007/11/28(水) 06:29:31ID:pNrSaAxOprint(new Integer(500));
こんな感じに呼び出されますが、
toString()に書いた場合、
$object = new Integer(500);
print($object->toString);
こんな感じで呼び出します。
どっちがいいのでしょうか?・
0706nobodyさん
2007/11/28(水) 06:39:28ID:pNrSaAxO>こんな感じに呼び出されますが、
ではなく、こんな感じでも呼び出すことができますがに訂正。
toString()に書いた場合、
$object = new Integer(500);
print($object->toString());
という風に呼び出し、
マジックメソッドである__toString()に書いた場合、
上記の方法以外にも
インスタンス化したときにprint(echo)すれば呼び出すことができますが、
print(new Integer(500));
どちらがよいのでしょう?
見てもらえば想像できると思いますが、IntをStringとして返すメソッドです。
0707nobodyさん
2007/11/28(水) 10:14:44ID:???0708nobodyさん
2007/11/28(水) 12:04:23ID:jXo0ZF630709nobodyさん
2007/11/28(水) 12:11:24ID:???0710IT土方 ◆5m1CB.BcLA
2007/11/28(水) 12:45:57ID:???>>675
これ設計ツール(苦笑) まだコードは一行も書いてない。
でもやっぱPHPになると思うよ。このくらいならちょうどいいでしょ?
>>677
ただのIT土方だ(笑)
>>678
商売なんかするか、この程度のことで(笑)
>>681
コメント感謝。
やっぱページングはいるか。まぁこの程度のツールで20人も30人も管理しないとは思うが。
簡易ページは……作ってはいるんだけどね。auだと全角空白がズレるのさ。等幅ぢゃないのかね。
入力単位を一週間にしたのは直感優先。
やっぱりカレンダーから入力するならああだろうと思ったんだけど、他に何かイイ方法ある?
「ありきたりすぎて」は誉め言葉と受け取っておこう。狙い通りだ(笑)
>>682
>>687-689
やれるモンならやってみろ(笑)
0712nobodyさん
2007/11/28(水) 13:34:09ID:???class B extends A
だった場合、Aのメソッド内でホントはBですって知りたいんだけど。
やりかたわからんので、BのコンストラクタからAのコンストラクタ呼ぶときに
__CLASS__を渡してAのメンバに保存してるのだが。
0713nobodyさん
2007/11/28(水) 13:46:12ID:???やり直し。
0714nobodyさん
2007/11/28(水) 14:09:27ID:???基になるメソッドを決めて
他のメソッドから呼び出すようにするのがいい。
toString を明示的に呼び出すか __toString を暗黙的に呼び出すかは
自分らで決めるコーディング規約次第だな。
>>712
get_class($this);
0715712
2007/11/28(水) 14:12:16ID:???AにcopyFromAssoc($param)ってメソッドがあって、
連想配列$paramの内容に従ってメンバの値を埋めることをしたい。
JavaのBeanUtils::copyProperties()みたいなこと。
なのでAのcopyFromAssocで具象クラスがわかれば、
ReflectionClassとinvoke()駆使できるんだが。
0717nobodyさん
2007/11/28(水) 14:13:46ID:1+zqVeOG/testphp/mkdir.php 中に
<?php mkdir ("testdir", 0700); ?>
って書いて実行したんだけどうまくいきません イメージでは/testphp/testdir/ っていう
ディレクトリが出来るつもりだったのですが、、 どこがまずいでしょう?
環境はphp5 apache2 です
0718nobodyさん
2007/11/28(水) 14:15:27ID:???0719nobodyさん
2007/11/28(水) 14:27:43ID:1+zqVeOGありがとう 以下のように試してみましたが…
<?php
$thisPath = realpath('./');
$mk = mkdir($thisPath."testDir", 0700);
mkdir($thisPath."testDir", 0700);
echo "ディレクトリできたかな? > ".$mk;
?>
反応ないです、出来てません 何でかなぁ
0720nobodyさん
2007/11/28(水) 14:31:38ID:???0721717
2007/11/28(水) 14:33:15ID:1+zqVeOGごめんなさい、セーフモードってなんですか?
osはwindowsXPです
0722nobodyさん
2007/11/28(水) 14:37:54ID:???phpinfoでsafe_modeがonか確認してみ
もしセーフモードかかってんならmkdirは使えない
セーフモードをきるかCGIとして動作させるかで使えるようになるが
0723717
2007/11/28(水) 14:45:00ID:1+zqVeOG本当にありがとうございます (windowsのセーフモードかと思って調べてました)
しかし、phpinfoの結果ではsafe_modeオフになってます
safe_mode - Off - Off
safe_mode_exec_di - no value - no value
safe_mode_gid - Off - Off
safe_mode_include_dir - no value - no value
根本的に>>719のコーディングに問題があるんでしょうか
0725717
2007/11/28(水) 15:33:34ID:1+zqVeOG返事遅れてすみません
書き込み可能かどうかはわかりません。どうしたら確認できるんでしょうか?
自分のマシンの中で動かしてるサーバなら大丈夫って問題じゃないのですね
0726nobodyさん
2007/11/28(水) 16:00:10ID:???0727nobodyさん
2007/11/28(水) 16:04:01ID:???ためしに、適当なとこにフォルダ作って、プロパティのセキュリティで
Everyone が書き込みできる許可があるか確認して
そこをフルパス指定してみては?
0728nobodyさん
2007/11/28(水) 16:19:21ID:???異常が発生した時に、エラーの呼び出し元のクラス名を知る方法はないでしょうか?
あるクラスのあるメソッドを1000箇所を超える箇所から呼び出されているのですが、
そのメソッドで不具合が発生した際に、どこから呼び出されているか分からずに苦労しています。
宜しくお願いします。
0729nobodyさん
2007/11/28(水) 16:20:43ID:KISMRzgZ0730717
2007/11/28(水) 16:27:30ID:1+zqVeOGwindowsのセーフモードかなぁと思って、 msconfigでBOOT.INIを見てみたら、
セーフモードにチェックははいってませんでした。(確認の仕方が間違ってるかもしれないですが)
あと、rmdirを試してみたら、これもうまくいきません
…ですが、今マシン何度か再起動してみたら、さっき出来てなかったディレクトリが
出来てました。さっきは何度も最新の状態に更新しても出来てなかったのに
それに今別名のディレクトリを新しく作ったら、今度はすぐに出来ました。
何も設定変えてないんですが。今度はうまくいった原因が不明です
一番ツマランオチになってしまってすみません いろいろ勉強になりました 皆さんありがとう
0731nobodyさん
2007/11/28(水) 16:36:13ID:ECuSXzPA<html>
<head>
</head>
<body>
<?php
exec('/bin/cp /var/www/html/aaa.txt /var/www/html/bbb.txt');
?>
</body>
</html>
なぜかbbb.txtが作成されません。
よろしくお願いします。
0732nobodyさん
2007/11/28(水) 16:42:15ID:???0734nobodyさん
2007/11/28(水) 16:57:18ID:???0735731
2007/11/28(水) 16:59:06ID:jgnr6sNpcopy関数使用すれば作成できました。続けて質問で申し訳ないが、
spamassassin(メールフィルタリングソフト)を起動させるphpの作成も行っていて、
端末で/etc/rc.d/init.d/spamassassin startと打てば起動するので、
<html>
<head>
</head>
<body>
<?php
exec('/etc/rc.d/init.d/spamassassin start');
?>
</body>
</html>
と作成したのですが、起動できませんでした。 よろしくお願いします。
0736731
2007/11/28(水) 17:16:10ID:jgnr6sNp0738nobodyさん
2007/11/28(水) 17:29:26ID:???spamassassin のオーナーとパーミッションは?
あとセーフモードとか
0739731
2007/11/28(水) 17:53:55ID:ECuSXzPAspamassassinのオーナーはrootでした。
safemodeはoffでした。
sudoを使えばいいのかなとは素人ながら思いますが・・・。
よろしくお願いします。
0740nobodyさん
2007/11/28(水) 18:47:34ID:???実行ユーザーがapacheとして、visudoで
apache ALL=NOPASSWD: /etc/rc.d/init.d/spamassassin start
とかいれて、
exec('/usr/bin/sudo /etc/rc.d/init.d/spamassassin start');
とかか?
まあいろいろやってみて
0741IT土方 ◆5m1CB.BcLA
2007/11/28(水) 22:51:48ID:???だね。流石にもうスレ違いだろう。
続きコメントくれるならスレ立てるけど?
>>672
>>681
0742nobodyさん
2007/11/29(木) 00:24:05ID:QqrQD8Do03<>さしすせそ
01<>あいうえお
---------------------
↑と書かれているファイルを「file関数」で開いてソートしてまたファイルに書き直す、
といった処理をしたいのですが、どうしても挙動がおかしくなってしまいます・・・
理想としては↓
---------------------
01<>あいうえお
02<>かきくけこ
03<>さしすせそ
---------------------
と、いう風にファイルに書き直されていたらいいのですが、なぜか↓のようになってしまう時があります。
---------------------
01<>あいうえお
02<>かきくけこ03<>さしすせそ
---------------------
$sort_ary = file("data.cgi");
sort($sort_ary);
$file=fopen("data.cgi","w");
foreach($sort_ary as $data){
fputs($file,$data);
}
fclose($file);
そのソースの一部なのですが、何か突っ込みどころがあったらお願いします。
0744nobodyさん
2007/11/29(木) 00:36:27ID:???02<>かきくけこ03<>さしすせそ
みたいになる行の、この例で言うと02<>かきくけこ ってさ、
ファイルの一番最後に書かれてる行だったりしない?
そしたら改行がなくてそうなっちゃう場合はおおいに考えられると思うんだが。
0745nobodyさん
2007/11/29(木) 00:40:09ID:NeePXSbk作り方を教えてください
0749nobodyさん
2007/11/29(木) 00:54:07ID:???元々デーモンじゃないやつをデーモンとして動作させるのが
inetdの仕事みたいですから。
inetd.confに必要な記述をして試してみたらどうでしょう。
http://x68000.q-e-d.net/~68user/net/inetd-2.html
ここらへんが参考になると思います。
0752nobodyさん
2007/11/29(木) 01:21:13ID:???例えば
1,1,1,1,1,1,2,2,2,2,3
を 1,2,3 のように整形したいのですが。
0753nobodyさん
2007/11/29(木) 01:23:11ID:5Kv1f9efまた、対策はありますか?
0755nobodyさん
2007/11/29(木) 01:31:21ID:???ごめんなさい、ちょっとよく分かりません…
<body>
<?php
if($hyouzi == 1){
include_once(test.php);
echo "$data";
}
?>
</body>
test.phpは最終的に$dataには<table>データが入るのですが、実際に表示されたソースをみると
?
<table>ほにゃらら</table>
となって、ブラウザ上では<table>ほにゃらら</table>を直接書いたときに比べ1行分の隙間があります。
■ このスレッドは過去ログ倉庫に格納されています