【PHP】下らねぇ質問はここに書き込みやがれpart20
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2006/04/28(金) 04:12:33ID:???ここなら本スレで回答のないお前の下らない質問に回答があるかも知れません。
まず読め【PHP マニュアル】
http://www.php.net/manual/ja/
本スレ【PHP】質問スレッドpart34【php】
http://pc8.2ch.net/test/read.cgi/php/1142903954/
【PHP】下らねぇ質問はここに書き込みやがれ Part19
http://pc8.2ch.net/test/read.cgi/php/1144513878/
過去スレは>>2-3あたり
0449nobodyさん
2006/05/11(木) 22:20:49ID:???0450nobodyさん
2006/05/11(木) 22:25:02ID:???ちゃんとサイトライセンス組んで契約どおりに使ってくれる客ばっかりじゃないよ。
スクリプト売り(但し再販は不可)とか、サイトライセンス作ってどっちにします?
と提示して、安いのが良いから特定サイトにのみに限定したライセンスにしてくれ
と言われて納品したらコピーしまくり、スクリプト転用しまくりのたちの悪い客も結構多い。
それでこっちから苦情を申し入れても平然としたもんだったり...
まあソースごと渡すなら改造可、コピー可のライセンスで
値付けも最初からそういったものにしてりゃ良いんだけどね。
汎用性のないアプリなら問題は少ない。
表示に関してはテンプレ使うだろうから、レイアウトとかの体裁に関して
弄るのはソース隠蔽しても普通は大丈夫だと思うよ。
IE以外云々は、最初から条件に含めなとけって。
0452nobodyさん
2006/05/12(金) 00:36:52ID:???echo require("hoge.html");
とする場合、"を考慮して <FONT size=\"2\"> のようにエスケープしとかなきゃいけない
と思いますが、それのみに適した関数ありますでしょうか?
addslash()でOKでしょうか?
または str_replace()で " を \" に置き換えとかでも問題ないしょうか?
またどの時点でエスケープは必要になるのでしょうか?
こんがらがってきました orz
0454nobodyさん
2006/05/12(金) 05:40:59ID:???お前みたいなバカに安く買い叩かれないように、ソースを隠蔽するんだよ。
修正とかはもちろん保守契約または随時追加費用をもらえばやるよ。
あと>>450も書いてるように、ソースが欲しいならそれなりの値段で渡すけど、
お前(の会社)では出せない金額になると思うがなwwww
0456nobodyさん
2006/05/12(金) 08:56:57ID:???アクセスして時間を取得して実行させるしかないのでしょうか。
0457nobodyさん
2006/05/12(金) 09:51:27ID:p/0gq46aテンプレート用変数$templeteの内容によってCSSが変化するとします。
if($templete=="赤"){
<link href="css/red/style.css" rel="stylesheet" type="text/css" />
}elseif($templete=="青"){
<link href="css/red/style.css" rel="stylesheet" type="text/css" />
}elseif($templete=="緑"){
<link href="css/green/style.css" rel="stylesheet" type="text/css" />
}elseif(同様に続く)
この方法でも問題はないのですが、ソースが増えすぎます。
何か良い方法はないでしょうか?
0458nobodyさん
2006/05/12(金) 11:05:30ID:???俺なら$templateをディレクトリ名にしておいて
<link href="css/<?php echo $template; ?>/style.css" rel="stylesheet" type="text/css" />
0459nobodyさん
2006/05/12(金) 11:13:05ID:???PHPだけでやるならソレかスクリプトを常駐させるしかないと思う。
ただWindowsにタスクマネージャがあるようにそのサーバにもcronがあると思う。
cronについてはこのスレじゃないから割愛・・・というか、ググればすぐ出てくる
0460457
2006/05/12(金) 11:44:27ID:???$templeteがディレクトリ名なら良いのですが、名称を付ける場合もあります。
例えば「夏デザインA」「スポーツB」など。
登録する時などは日本語名で登録するので、そのような場合に
ディレクトリ名に変換する方法はないでしょうか?出来るだけソースが短くて。
0462nobodyさん
2006/05/12(金) 12:12:20ID:???じゃあ名称とディレクトリを配列にしておく
$css_dir = array('赤'=>'red', '青'=>'blue', '緑'=>'green', '夏デザインA'=>'summerA', 'スポーツB'=>'sportsB');
?>
<link href="css/<?php echo $css_dir[$template]; ?>/style.css" rel="stylesheet" type="text/css" />
0465nobodyさん
2006/05/12(金) 15:45:10ID:tJvRMikHregister globalsをonにしろと書いてあるのですが、
使っているレンタルサーバはoffになっています。
こういうときはどうすればいいのでしょうか?
色々と調べていたら、register globalsがonなのは
ダメだということが分かったのですが、
offの状態でフォームによる値の受け渡しを行うには
どうしたらいいでしょうか?
0466nobodyさん
2006/05/12(金) 15:49:19ID:???$_GETとか$_POST配列で取得
0467465
2006/05/12(金) 16:03:36ID:tJvRMikHロリポップのサーバのアカウントももっているのですが、
そちらは同じフォームのスクリプトでも問題なく動きます。
この場合、ロリポップはセキュリティ的に問題があるということですか?
0468軟式PHP
2006/05/12(金) 16:40:11ID:???>register globalsをonにしろと書いてあるのですが
まず、その本を窓から投げ捨てろ。
0469nobodyさん
2006/05/12(金) 16:48:53ID:???ロリポップは聞いたことあるけど使ったことはないので
・register globals に関係ないスクリプトである
・セキュリティが重要なスクリプトは動かさないのが前提
・セキュリティポリシーの相違
・etc
と、色々ある。
おまいさんの言葉だけでセキュリティが高いだの低いだの判断することはできない。
商用でSSL対応のサーバプランとかあるなら、それで環境が違ってるという可能性もあるし
0470nobodyさん
2006/05/12(金) 17:16:46ID:???プププ、苦しい煽り乙wwwwwwwwwwww
そんなら文句ばっか言ってないで、自分でスクリプト書けばぁ???www
なぁ、>>443よ。お前みたいなケチな馬鹿に無料でソースくれてやるほど
こちらは「いい人」じゃないぜwwwwwwwwwwwww
0472nobodyさん
2006/05/12(金) 17:56:42ID:???phpの書籍でお勧めできる物がありましたらお願いします。
当方田舎なもので立ち読みして品定めしたいところなのですが、
phpなんてマニアックな本の取り扱いがありません(´;ω;`)ブワッ
Amazonのレビュー読んでも余計に混乱してどれを買えば良いのか分かりませんorz
金銭的にも余り余裕が無いのでできればあまり大量に買わずにマスターしたいです。
0473nobodyさん
2006/05/12(金) 19:18:59ID:???ばーか。どこの誰だかわからん低脳のソースなんかくれたほうが迷惑だろ?
まあせいぜい人様の迷惑にならないようなプログラム書けるようになろうね。
0474465
2006/05/12(金) 19:21:51ID:tJvRMikHどっちにしてもこの本は捨てないとだめですかね?
何冊か買ったPHP本の中ではかなり参考になった本なのですが...。
>469
ロリポップでphpinfo()をしたらregister globalsはonでした。
自分はメールフォームを作ったのですが、
基本的には、$_POST["hoge"]で受け取っておけばいいのでしょうか?
例えば、name="fuga"を$_POST["fuga"]で受け取って、
その直後に$fuga = $_POST["fuga"]とやった場合は
あんまり意味ないんですかね?
egister globalsはonである時点で$_POST[]でもダメなのかな?
0475nobodyさん
2006/05/12(金) 19:48:54ID:???プププゲラゲラ プゲラゲラwwwwwww
お前は>>443で自分が書いたマヌケな文章をもう一度よく読み返すこったなwww
だからそんな偉そうなこと言ったり他人に文句つけてるヒマがあったら
自分で開発しろっつーのwww どうせ出来ないから暴れてんだろうけどwww
0476nobodyさん
2006/05/12(金) 19:52:26ID:???0477nobodyさん
2006/05/12(金) 19:58:37ID:???0479nobodyさん
2006/05/12(金) 20:05:06ID:???0482nobodyさん
2006/05/12(金) 23:42:52ID:???プログラム全体が見えてない奴が勝手に触ってそれが次回の機能追加のときの障害になるとか、考えないの?
うちでは、勝手に触った場合は、以後、そこに起因するトラブルが起きても責任とらないってことにしてる。
ブァカ客に触らせるとプログラマの士気に関わるんで。
0483nobodyさん
2006/05/13(土) 00:01:06ID:???0485nobodyさん
2006/05/13(土) 04:21:46ID:???ウチではソースはクライアントに開示してるよ。
マスターソースはこっちで持ってるんで、クライアントがサーバ上のソースをいじっても
次の仕様追加・変更がされたときにこっちが持ってるソースで上書きされるんで無意味。
というか、ソース云々言う以前に契約で勝手に触らないようにしてあるし。
コンパイルなんかしなくてもWebアプリの速度なんてたかが知れてるし、
余計な手間増やしたくないしね。
あ、ソースはSubversion(CVSっぽいヤツ)で管理してるから変更履歴とかも残ってるよ。
0487nobodyさん
2006/05/13(土) 06:46:28ID:???正直もううんざりだぜ!
これからはPHPとJavaScriptの時代か?
JavaScriptはもっとブラウザ同士が同じ動きしてくれたらな〜
PHPは・・・その・・・もっとグラフィックスを・・・
0488nobodyさん
2006/05/13(土) 08:50:03ID:???なぁに、数年後にはWeb3.0にうんざりしてるさ。
どうでもいいけどそろそろW3Cみたいにブラウザ間の取り決めをちゃんとして欲しい。
何がIEオリジナルタグだ。ばっかじゃないの。少しはおりこうなFxも見習えての。
0489nobodyさん
2006/05/13(土) 09:27:11ID:???たぶんもう見ていないと思うけど、自分も同じ症状に陥ったのでとりあえずの回避策を。
IISが停止している・Apache関連のフォルダがないのにもかかわらず
ApacheのMSI版インストーラで”Installation Wizard Interrupted”エラーが出る人は、
古いバージョンで試してみるとうまくいくかも。
http://archive.apache.org/dist/httpd/binaries/win32/
私の環境では、apache 1.3.31 または apache 2.0.52 ならうまくいきますた。
CPU:Pentium3 MobileCPU: 866MHz
Memory: 512MB
OS:WinXP Pro SP2
アンチウイルスソフト:ノートンインターネットセキュリティー2006
CドライブにWin2000、DドライブにWinXPの構成
apacheインストール暦:2000・XPともになし
IIS:Windowsコンポーネントから削除済み
0490nobodyさん
2006/05/13(土) 21:15:37ID:???$a = ($b) ? $c : $a ;
みたいな文法があったんですが、これはどういう意味ですか?
0491nobodyさん
2006/05/13(土) 21:19:24ID:???0492nobodyさん
2006/05/13(土) 21:19:50ID:???三項演算子でぐぐってみ。
0493nobodyさん
2006/05/14(日) 00:48:40ID:???0494nobodyさん
2006/05/14(日) 01:06:23ID:???なるほどね。勝手に触った部分はないものとして無視。
これシンプルでいいかも。いじりたきゃいじれ。だけど次の機能追加までの命ね。ってことか。うちも今度それやってみよう
0495nobodyさん
2006/05/14(日) 02:58:39ID:???契約違反にはどう対処してる?やっぱ泣き寝入り?
0496nobodyさん
2006/05/14(日) 04:17:12ID:???0498nobodyさん
2006/05/14(日) 10:16:50ID:???初心者、上級者一切問いません。ダーツを愛する方ならどなたでも結構です。
実はあるダーツ店のマスターが客が来なくてとても困っているようです。
↓↓↓ 詳細はこちら ↓↓↓
http://sports9.2ch.net/test/read.cgi/bullseye/1111230059/431-452
できればこのマスターに励ましの言葉をお願いします。
また、もしこの店の近くにお住まいの方はお店の方にも行ってあげてください。
困ったときはお互い様です。ダーツを愛するもの同士助け合いましょう!
0499nobodyさん
2006/05/14(日) 12:39:59ID:AA1LZHii0502nobodyさん
2006/05/14(日) 14:42:05ID:???オートコンプリートOFFは<input>の属性でautocomplete=offって指定するだけ
特定データ削除はムリ
0503nobodyさん
2006/05/14(日) 14:44:05ID:???ひょっとして止まったら24時間対応やってんの?すげーなおい。
サーバ管理なんて金もらえばできるってもんじゃないぞ。
0504nobodyさん
2006/05/14(日) 14:50:10ID:???ファイルの指定で絶対パスの指定ってできますか。
0505nobodyさん
2006/05/14(日) 14:57:16ID:???0506nobodyさん
2006/05/14(日) 14:57:50ID:???まっとうな業者なら自分の得意分野をきちんと理解した上で
得意でない分野はパートナー業者に依頼するのが普通。
0507nobodyさん
2006/05/14(日) 14:58:51ID:???客側のサーバに納品したら、それはそれで
何かトラブれば24時間365日呼び出されるんじゃないの?
しかもこちらの想定しない設定とか運用がされてるサーバだから
原因特定に時間かかりそうだし。こちらのせいじゃないトラブルまで責任押し付けられそうだし。
>>503はそういう経験なかった??
0508nobodyさん
2006/05/14(日) 15:26:45ID:???トラブルの内容にもよるけど、サイトが停止するようなトラブルを
プログラムミスで発生させることはかなり稀な事態だから
土日祝はともかく夜中呼び出し食らった経験は無いなぁ。
ほとんどの場合、平日昼間の対応だけで済んでるよ。
一体どんなの作れば夜中に即修正が必要なバグを出せるの?
ただ、サーバー側の問題をこっちに押し付けられることはあるね。
でも不得手な仕事を引き受けてそれが改善できるとは思えない…
>>506にあるように親切なパートナー業者を見つけるのが手なのか。
でも結局、すべての問題がまとめてやってきて忙しくなるのは変わらないような…?
お客に「サーバー側の問題はこちらへ連絡してください」とか通達してるのかな。
0509nobodyさん
2006/05/14(日) 16:25:54ID:???echo TEMPLATE::fill($this->getTemplate(log),$data);
という文でデータを出力しているのはわかるのですが、
::と->がわかりません
ぐぐで検索しても区切り文字になってしまってなかなか目当ての検索結果が得られないので
質問してみます。
とりあえず朝からにらめっこして、->は
データの構造体(?)にアクセスする表記(?)ためのポインタというものを
指しているのではないかと思うのですが、
::と->と上記の行の説明を出来ればお願いしたいです。
0510nobodyさん
2006/05/14(日) 16:27:02ID:???0511nobodyさん
2006/05/14(日) 16:28:02ID:???うちの場合は、サーバ管理とプログラム開発をはっきり分けて、
たとえばルートのパスワードを教えてもらっても即廃棄して、
どんな小さなサーバの設定の変更でもいちいち管理者を通す。
常にそうやった上で、システムの不調で
緊急対応した場合は、プログラム開発のミスか、運用ミスかをはっきりさせて
運用ミスなら報告書をつくって緊急手当を上乗せして費用を請求する。
あらかじめ責任範囲を明確にしておけば、きちんと費用は出してくれるよ。
でもやっぱり角が立つから、信用のおけるホスティング会社以外では極力運用と
開発を分けない事にしてる。これが呑めない新規客なら仕事を断ることもある。
ホスティングって、けっこうひどい所もあるからねぇ。
0512nobodyさん
2006/05/14(日) 16:29:02ID:???思って間違いないと思う。
0514509
2006/05/14(日) 17:13:05ID:???見当がつかないと、しらべようがないので助かりました。
読んでまたわからなければ参上させてもらうかもしれません。
いってきます。
0515509
2006/05/14(日) 17:22:40ID:???http://www.php.net/manual/ja/language.oop.php
ここを参照したのですがここの説明で->が出てくるのですが
->についてはどこを調べたらよいでしょうか?
何を表すものなのかがわからないので、どこを調べて良いかわからなくて・・・すみません。
0516nobodyさん
2006/05/14(日) 17:24:03ID:???なんでだろう、マニュアルだと分かりにくいと感じるのは
0517nobodyさん
2006/05/14(日) 17:25:15ID:???0518nobodyさん
2006/05/14(日) 17:31:54ID:???ttp://www.scollabo.com/banban/php/php_11.html
オブジェクト指向のみだけど、ここも読んでみたら?
ttp://www.rfs.jp/sb/perl/04/01.html
ページ自体はPerlの説明だけど、「パッケージ」について
勉強してみてくらはい
上記の二つのページだけど、お前の疑問の大半は解決できると思う
0519nobodyさん
2006/05/14(日) 17:41:31ID:???0520nobodyさん
2006/05/14(日) 17:42:25ID:???0521nobodyさん
2006/05/14(日) 17:42:51ID:???> パス名のセパレータは、 -> となります。
この辺。要するにオブジェクトに入ってるメソッドやメンバを示すための単なる区切り記号。
0522nobodyさん
2006/05/14(日) 17:46:34ID:F/h4hhycセッションへ値を追加する。
と言ったことがやりたくて、
<a href='hoge.php?val=1'></a>
GETで受け取ってセッションへ渡して行こうかと思って以下のようにして見たのですが、うまくいきません。
$_SESSION['valval[]'] = $_GET[val]
<a href='hoge.php?val=1,2,3,4'></a>
後はこんな感じに、クリックされる度にリンクを生成するしかないでしょうか?
0526nobodyさん
2006/05/14(日) 19:02:16ID:5bNipnnQまずは落ち着け。落ち着いたらレスアンカーに注目。
0527nobodyさん
2006/05/14(日) 21:37:55ID:???Cとかならコンパイル時に教えてくれるけどPHPは実行時にしかチェックしないし
そもそも融通が利きすぎるから文法チェッカーとかも作るのが難しそうだ
0529nobodyさん
2006/05/14(日) 23:05:50ID:/vYEQzDW$idに値が入っていない(つまりデータが登録されていない)場合、
「登録されていません」というメッセージを出したいと思っています。
$conn=mysql_connect("localhost","hoge","hoge");
$sql = "select * from list where id='$id'";
$rst=mysql_query($sql,$conn);
while($row=mysql_fetch_array($rst)){
echo $row[$id];
}
whileの中にifを入れて出来ると思ったのですが、無理でした。
どうすればいいのでしょうか?
0530nobodyさん
2006/05/14(日) 23:21:59ID:???whileの中は「データがある場合」しか実行されないんだから出るわけねーし。
whileの前にmysql_num_rows()で件数出して、0件ならエラーメッセージ。
0531nobodyさん
2006/05/14(日) 23:28:11ID:???質問の文章もスクリプトも適当すぎるなぁ。。
やりたい事は、PHPの変数$idとMySQLのフィールドidの値が同じになるレコードが1つも無かった場合に
「登録されていません」って出力したいんだよね。
mysql_num_rows()を使うと結果セットの行数を取得できるから、whileより前でチェックすればよい。
0533nobodyさん
2006/05/15(月) 00:00:22ID:ZEWPSNXY例えば、静的なページを作りその下部にコピーライトのようなものを書くとします。
いくつもの静的なページを作りその全てにコピーライトを書きます。
しかしコピーライト中の一部を改変する(メアド変えるとか)全部のページを修正するので手間です。
方法を二つ考えました。
1.フレームにしてコピーライトだけのhtmlを読み込む
2.インラインフレームにして同上
3.phpにしてincludeとかrequireで読み込む
1はページ最下部というデザイン上の要求が満たせません
2はスクロールとかで使い辛い感じになるので出来たらイヤです
3はできたらphpを使わないでデザインしたい
何か他の方法は無いでしょうか?
phpスレなのにphp使わないでって辺りがスレ違いなんですけどよろしくお願いします。
0534nobodyさん
2006/05/15(月) 00:05:07ID:???そんなことのためにフレームやPHPを使うという発想が理解できない。
俺なら、DWのテンプレート機能や、DWやテキストエディタの一括置換を使う。
以上。
0537533
2006/05/15(月) 00:17:49ID:???置換はファイルの数が増えると手間かなぁと。
とりあえずDWをググってみます。
>>535
phpが使えない鯖に置くかもしれないんです。
あとつかえるとしても検索エンジンで拡張子がphpだと
ちゃんとクロールしてくれないと聞いて。
0538nobodyさん
2006/05/15(月) 00:18:22ID:???> phpスレなのにphp使わないでって辺りがスレ違いなんですけどよろしくお願いします。
自分で分かってるんだから他所池よ
0539nobodyさん
2006/05/15(月) 00:20:48ID:???.htmlでPHP動かせば検索エンジンの問題は回避できる。
PHPが入ってない鯖はすでに論外だわな。
その場合、SSIも使えない場合を考慮すべきなの?
だったら後はJavaScriptでdocument.writeとかしかないんじゃないかと思うぞ。
俺もそれはDreamWeaverでテンプレートにしちゃうかなー
0541533
2006/05/15(月) 00:32:18ID:???>htmlでPHP動かせば検索エンジンの問題は回避できる。
なるほど、そんな方法があるんですね。
Javaはまだあんまよく分からないっすがメモだけしときやす。
安い鯖は当然SSIもダメなんすね。へこむわ。
DWってDreamWeaverの事でしたか。もってないもんくすん。
0542nobodyさん
2006/05/15(月) 01:25:08ID:???そういう動的に差し替えるにも値しない箇所は、
アップロード前に事前にツール使って差し替えてるけど。
ただ作業者が複数いる場合は、アップロード後にhtmlを書き換え、
ちゃんと正常に書き換えられたことが容易に確認できるような
ツールをPHPで組んで置いとく。無論書き換えツールのセキュリティは強固にね。
0543nobodyさん
2006/05/15(月) 02:38:53ID:???gooleとyahooとMSNしかチェックしてないが
0544nobodyさん
2006/05/15(月) 03:01:53ID:???googleとMSNはそうではないが、
Ya!Japanは拡張子の違いであからさまに結果が違う。
(回収ロボットの動作に差は無いが、回収したデータの扱いに差がある)
まあYa!の出来が悪いと言えばそうだが、SEOのためにはそうも言ってられん訳で。
# 検索結果の最適化はともかくロボットの熱心さの点では、最近のMSNは感心するな。
0545nobodyさん
2006/05/15(月) 04:22:14ID:???客の認識不足で、「サーバとプログラムは別で・・・」って言っても理解してくれなさそうな希ガス。
「いいから直せ!」って。それと親切なパートナーってどういうこと?? 鯖の運用部分を客の代わりに委託するってこと?
>>511
ごめ、最後の3行がいまいち意味が分かりにくいんだが。。。
特に「運用と開発を分けない事にしてる」ってどういう意味?
0547nobodyさん
2006/05/15(月) 05:26:26ID:???客が運用する鯖や客の指定する鯖運用業者でなく
プログラムとセットで鯖もこっちから提供&その業者はこっちのパートナー企業、
ってことじゃない?
確かにうちで使った外注でもそんな条件を出してきたとこが1箇所あった。
で、そのあっちで指定した鯖運用会社ってのがセキュリティに無頓着なとこだったんで
その開発会社含めて初回こっきりで2度と仕事しないことにした覚えが。
0548nobodyさん
2006/05/15(月) 05:29:55ID:???別にDWじゃなくても、オリジナルのHTMLにはCopyright部分にキーワードを埋め込んどいて、
アップロード前に全ファイル一括置換した上でアップ実行、くらいは簡単にできるんじゃない?
複数ファイル一括置換くらいならその辺のテキストエディタでもできるしフリーのツールもあるし
なんならPHPで組んだっていいと思うけど。
■ このスレッドは過去ログ倉庫に格納されています