【PHP】質問スレッドpart31【php】
レス数が900を超えています。1000を超えると表示できなくなるよ。
0001nobodyさん
2005/11/27(日) 00:07:12ID:eBvjdczp【基本ルール】
・新規質問の方は上げてください。age進行でお願いします。
・質問者は2回目以降、最初のレス番号を名前欄に入れてください。
・回答者は質問者に対して>>(アンカー)をつけてください。
・煽り・荒らしは放置。荒らしに反応した香具師も荒(ry
・解決しなくてもこたえてもらったら礼を。
【質問テンプレ】
・マニュアルを調べたか、google検索したか(調べたキーワード)
・タイトル(禁:教えてください!etc) 例:requireとinclude
・内容 例:requireとincludeはどう違うのですか?
・質問する際には環境も明記。
【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークはそれぞれの該当スレへ
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで
・オブジェクト指向については良スレがないから本を買え
・速さについては自分でベンチをとってここに書け(違う環境の人も調べてくれるかも)
【PHP マニュアル】
http://www.php.net/manual/ja/
※マニュアル上部の「search for」から検索を活用すべし(便利)。
過去スレ、関連リンク、FAQ等>>2-10辺り
0829nobodyさん
2005/12/28(水) 00:53:05ID:???PHPでタグのセレクトボックスから選んだものを変数に格納して
それを使用したいのですが,選択した瞬間,そのセレクトボックスのフレームを読み込んで
してしまい,選んだものを初期化してしまいます。
選択したものの値を保持したいのですがどうしたらいいでしょうか?
ヒントなり頂ければ幸いです。
0830nobodyさん
2005/12/28(水) 00:56:01ID:??????
セレクトボックスのプルダウンから何か選んだ瞬間に読み込みが起きる?
HTMLの書き方そのものが間違ってない?
0831nobodyさん
2005/12/28(水) 02:15:39ID:???とりあえずヒント
<?
$no = $_REQUEST["selbox"];
?>
<html><body>
<form action="<?=$_SERVER["PHP_SELF"]?>">
<select name="selbox">
<option value="1"<?=($no==1)?" selected":""?>>1</option>
<option value="2"<?=($no==2)?" selected":""?>>2</option>
<option value="3"<?=($no==3)?" selected":""?>>3</option>
</select>
<input type=submit value="送信">
</form>
</body></html>
0832nobodyさん
2005/12/28(水) 07:26:24ID:???0833829
2005/12/28(水) 08:26:53ID:???曖昧で小出しな聞き方でスマソ。
PHPからのHTMLタグでセレクトボックスの中身を指定しているのでおっしゃるとうりだと思います。
やってみます。
0834nobodyさん
2005/12/28(水) 09:50:13ID:OPhVlmGDのdiscover_tbのように対象urlからtrackback:pingを抜き出す関数を
提供しているライブラリをご存知の方いらっしゃいませんか?
blog提供側の問題で
変な方言や提供方法がありそうで在りものが在れば使いたいのですが・・・
0835nobodyさん
2005/12/28(水) 09:54:29ID:???0836nobodyさん
2005/12/28(水) 10:21:40ID:OPhVlmGDどっちでも良いんですが(て自分で作るならどっちでもよくないか・・・)
0839nobodyさん
2005/12/28(水) 12:59:29ID:???FTP経由でファイルを削除したいのですが、
グッドなアイデアはないでしょうか?
ftp_exec()使うしかないですかね・・・
0841839
2005/12/28(水) 13:01:02ID:???0844840
2005/12/28(水) 13:13:30ID:???0845nobodyさん
2005/12/28(水) 14:02:22ID:???http://jp2.php.net/manual/ja/function.ftp-fput.php
で不満なのか?
0846nobodyさん
2005/12/28(水) 18:10:36ID:jQi1GXdbHTMLから生成するスクリプトとかってないですか?
0847nobodyさん
2005/12/28(水) 18:17:03ID:???実行させるグッドアイデアないでしょうか?
0849nobodyさん
2005/12/28(水) 18:31:13ID:???質問の意図を勘違いしてる希ガス
suexec使えば指定ユーザ権限でのコマンド実行ができるのは分かってるが、
それ以外の方法で同様の状態にする方法は無いのか?と問うてるんじゃないの?
0851nobodyさん
2005/12/28(水) 18:44:28ID:???0853nobodyさん
2005/12/28(水) 20:51:30ID:???0856nobodyさん
2005/12/29(木) 00:21:52ID:???0857nobodyさん
2005/12/29(木) 02:10:23ID:???0858nobodyさん
2005/12/29(木) 09:09:32ID:???0859nobodyさん
2005/12/29(木) 10:04:20ID:???PHP 側でその apache2 の機能の利用はまだオススメできないって
話だったはず。
諦めて cgi にして fastcgi とか使ったらいいんじゃねーのと思うけど、
自分で試したことない。
0860nobodyさん
2005/12/29(木) 11:35:54ID:???0861nobodyさん
2005/12/29(木) 12:18:37ID:???ユーザの数だけphpのfastcgiインスタンスを走らせておくというのも
なんだかかっこわるいなぁ。
しかもsetuidされたラッパプログラムを自前で用意する羽目になるし、
なんかやだ。
0862nobodyさん
2005/12/29(木) 12:53:42ID:???0863nobodyさん
2005/12/29(木) 18:08:20ID:???apacheは独自modでスルーさせるだけ。
0864nobodyさん
2005/12/29(木) 19:20:49ID:???0865nobodyさん
2005/12/29(木) 19:23:06ID:???0866nobodyさん
2005/12/29(木) 19:32:53ID:???0867nobodyさん
2005/12/29(木) 21:49:56ID:???必要なやつは金使ってるってだけの話じゃないのか?
0868nobodyさん
2005/12/29(木) 21:59:06ID:???私も前にそれ考えた事あるし
0869nobodyさん
2005/12/29(木) 23:11:14ID:???0870nobodyさん
2005/12/29(木) 23:15:25ID:???個人で使うのみってこと?仕事では使用しないって事なのかね。
仕事だったら、小中規模案件だと圧倒的にPHP、Perlが占めるけど、Java案件以外の中規模案件なんか受注しないポリシーとか?
Java覚えられるなら、PHPなんか結構すぐに覚えられると思うけど、わざわざ捨てる理由が見つからない。
0871nobodyさん
2005/12/29(木) 23:26:04ID:???わざわざ捨ててるって言うか、java使って満足な人が
他の言語に手を出す理由が無いってだけの話でしょ。
逆もそうだし。
0872nobodyさん
2005/12/29(木) 23:45:46ID:???動的にページ生成したければ、占有鯖か自前鯖で弄りたい放題でしょ。
0875nobodyさん
2005/12/30(金) 04:45:27ID:???0876nobodyさん
2005/12/30(金) 05:08:43ID:???毛が生えた素人を大量に安く使い潰せる依頼主だから。
0877nobodyさん
2005/12/30(金) 05:13:54ID:???0878nobodyさん
2005/12/30(金) 10:33:25ID:???0879nobodyさん
2005/12/30(金) 10:44:59ID:???0880nobodyさん
2005/12/30(金) 11:19:27ID:???0882nobodyさん
2005/12/30(金) 11:55:09ID:???0883nobodyさん
2005/12/30(金) 13:24:42ID:0FfWwbS6一応希望通りの動作はしてますが、かなり変ですよね?(;´Д`)
こうしろよみたいなのありましたらご教示よろしくお願いします。
$today = getdate();
if ( $today[year] > $input_year ) { error(); } // 過去はエラー
elseif ( $today[year] < $input_year ) {} // 未来はOK
// 以下同年
elseif ( $today[mon] > $input_month ) { error(); } // 過去はエラー
elseif ( $today[mon] < $input_month ) {} // 未来はOK
// 以下同月
elseif ( $today[mday] > $input_day ) { error(); } // 過去はエラー
// 存在しない日はエラー
if ( !checkdate($input_month, $input_day, $input_year) ) { error(); }
0884nobodyさん
2005/12/30(金) 13:51:27ID:???epoc値(1970/1/1からの秒数)に直して比較すれば一発。
その前に書式はチェックしないといけないけど。
0885nobodyさん
2005/12/30(金) 13:57:28ID:???年/月/日ごとに異なるエラーを出すのでないなら、
まとめてタイムスタンプの大小で現在より過去を判定した方が良いんじゃないか。
タイムスタンプの性質とmktimeの動作を確認して、自分の仕様に適うかどうかだな。
0886nobodyさん
2005/12/30(金) 16:58:33ID:???あと関係ないが連想配列[]内はクォーテーションで囲みましょう。["hoge"]
0887nobodyさん
2005/12/30(金) 18:12:49ID:???それ以外の方法でもあれこれ組み合わせれば結構セキュア
(他の人のスクリプトやデータに干渉しないよう)に
できると思うんだが。
0888nobodyさん
2005/12/30(金) 18:52:17ID:???0889nobodyさん
2005/12/30(金) 20:53:24ID:5CV6IiV6認証部分はどうすればよいのでしょうか?
googleで5時間探したけどわかんね。。
0890nobodyさん
2005/12/30(金) 20:59:33ID:???別に難しく考える必要はなし。
if(date("Ymd") < "{$input_year}{$input_month}{$input_day}"){
echo 'Error!';
exit();
}
※$input_yearは4桁西暦、$input_month $input_dayはあらかじめ2桁に整形済みのこと
0891nobodyさん
2005/12/30(金) 21:05:51ID:???$input_year.$input_month.$input_day){
0893nobodyさん
2005/12/30(金) 21:47:34ID:???$input_monthや$input_dayが一桁だった場合におかしなことになるからsprintf("%04d%02d%02d",ってやらないとまずくない?
>>889
ページってことはHTTPってこと?だったらfsockopenでクッキーとかも送ってやればいいだけ。
HTTPSに関してはOpenSSLを導入する方法があったようななかったような。
あとPearにもHTTPクライアントあるし。もしくはcurl使うとか。
つーかメールだったらIMAP系の関数使ったほうが早いかもね。
0895893
2005/12/30(金) 21:54:30ID:???すまん。ここ読んでなかった。
> ※$input_yearは4桁西暦、$input_month $input_dayはあらかじめ2桁に整形済みのこと
0896nobodyさん
2005/12/30(金) 21:54:46ID:???「あらかじめ整形しておく」などの事前前提は意外とバグを産み易い。
速度的にシビアな場面じゃないのなら安全策を取った方が不慮の事故を防げるかと。
if(date("Ymd") < sprintf("%04d%02d%02d", $input_year, $input_month, $input_day)){
0897nobodyさん
2005/12/30(金) 21:55:17ID:???0898nobodyさん
2005/12/31(土) 00:25:14ID:NCoXT252ttp://www.netmania.jp/cgi/blog/ の#001 を動かそうと思い入れたんですけど
PHPがERRORばかり吐いて動きません。
試しに、無料のレンタル鯖にうpして動かしてみるとすんなり動きました。
鯖の設定がだめなのかPHPのスクリプトがおかしいのか・・・
宜しくお願いします。
レンタル鯖に設置したやつ[未改造]
ttp://freshgreens.jp.land.to/blog/index.php
自鯖のやつ[多少弄った]
ttp://aozoraxp.dip.jp/blog/index.php
PHPのinfo
ttp://aozoraxp.dip.jp/phpinfo.php
0899nobodyさん
2005/12/31(土) 00:33:08ID:???レン鯖においてOKならおまいのローカル環境がおかしいとしか思えないが、
エラー見るに根本的に何かが間違ってるっぽいし改造って何したのとか
わからんから何とも言いようがありません。
0900nobodyさん
2005/12/31(土) 00:36:57ID:???php.iniのerror_reportingの値がでかすぎるかも。
E_NOTICEまで有効にされちゃってる気がする。
0901898
2005/12/31(土) 00:38:53ID:???例えばif ($_SERVER[REQUEST_METHOD] == 'POST') だとエラーでるので
’’を付け加えてif ($_SERVER['REQUEST_METHOD'] == 'POST')にしたとかです。
それ以外は特になにもしてません
0902900
2005/12/31(土) 00:39:58ID:???一般的なデフォルト値はE_ALL & ~E_NOTICEのはずなのでこれで設定してみて。
0904898
2005/12/31(土) 00:44:58ID:???error_reporting = E_ALL; display all errors, warnings and notices
この行をコメントアウト(;)してみました。
するとだいぶblogらしくなってきました。
コメントアウトじゃまずいですかね?
ほかにphp.iniの設定方法あったらご教授ください
0905nobodyさん
2005/12/31(土) 00:48:01ID:???0906898
2005/12/31(土) 00:48:37ID:???error_reporting = E_ALL & ~E_NOTICE の;を外しておきました。
これで一般的なデフォルト値になりましたでしょうか?
0907900
2005/12/31(土) 00:54:41ID:???2039になったからいーんじゃないのかな。
Windows用のphp.iniってE_ALLがデフォルトなんだろうか。
それとも4.4.0以降はE_ALLに変更されたとか?
あとなんか上に1個出てるエラーは設定項目不足みたいね。
csslistの設定が入ってないとエラーになるようだ。
なんかエラーチェックがいいかげんなプログラムだなぁ。
0908898
2005/12/31(土) 00:57:56ID:???まだひとつだけエラーでちゃいますね。
csslistの設定ですか・・・
ちなみにmain.phpの206行目は
// CSSリスト生成
$num = 0;
foreach($conf[csslist] as $list){ ←この行です
$csslist .= "<option value=\"$num\">".$list[1]."</option>";
$num++;
}
なにか対処方法ってありますかね?
0909nobodyさん
2005/12/31(土) 01:04:57ID:???csslistを設定してやるっつーのはダメなの?
blog/conf.phpの116行目
// CSSリスト - 別に設定しなくてもいいような気もします。CSSジャンキー向け。
$conf[csslist] = array(
array("./style.css","基本スタイル"),
array("./style2.css","黒スタイル")
);
の部分でしょ。
ま、「設定しなくてもいいような」と書いといて、設定しなかったらエラーになるのは
そのプログラムがヘタレなせいだと思うけどね。
0910898
2005/12/31(土) 01:11:36ID:???たぶん俺が元々foreach($conf_csslist as $list)ってなっていたやつを
foreach($conf[csslist] as $list)に変えたからだと思いますw
今conf.phpの116行目
// CSSリスト - 別に設定しなくてもいいような気もします。CSSジャンキー向け。
$conf_csslist = array( これを
$conf[csslist] = array( このように[]に変更してやったら
エラーがとれて正常に動作するようになりました。
どうもありがとうございました。
0911nobodyさん
2005/12/31(土) 17:38:32ID:+rnbwxavこの人がPHP5のオブジェクトは参照渡しではないと言っているのですが
本当でしょうか?
0912nobodyさん
2005/12/31(土) 17:44:44ID:???0913nobodyさん
2005/12/31(土) 18:07:13ID:???なんせ、本家Zendのサンプルコードですら修正されてなくて間違ったままになってるくらいw
赤マンモス本でも初版では旧仕様のコードで説明されてたりした。
PHP5でのオブジェクト代入の動きの説明に関してはここなんてどう?
ttp://www.shigeweb.jp/php/project_p/?section=php5oop&page=substitution
> 「$agent_hodenasu = $hodenasu;」の結果、「変数$agent_hodenasu」が、
> PHP4では代入元のオブジェクトのクローン(コピー)になっていたのに、
> PHP5ではリファレンスの様な、でも違う代理人の様なものになったなぁという事を理解できたと思います。
> でも実際はリファレンスです(え?)。「変数$agent_hodenasu」は「変数$hodenasu」のリファレンスですが、
> 完全なリファレンスではないのです。
0914nobodyさん
2005/12/31(土) 18:09:35ID:???(正月にはまだ早いけど)おめでたいですね。
>なお今回紹介する内容は、2003年4月22日時点でCVSに登録されているバージョンに基づいていることをお断りしておく。
>正式リリースまでの間に、言語仕様が若干変更される可能性もないわけではない。
0915nobodyさん
2005/12/31(土) 18:13:15ID:???まあPHPのマニュアルでは「リファレンス」という言葉を一貫して&による参照の意味(=エイリアス)で使っているから、その限りでは「オブジェクトの参照渡しではない」という言い方もできるかもね。
ただ、よく言われるPHP5のオブジェクトの参照渡しってのは、一般に言う値渡しとの対比としての参照渡し(=コピーせずに同じオブジェクトを参照させる)のことでしょ。
0916nobodyさん
2005/12/31(土) 18:13:21ID:???0917nobodyさん
2005/12/31(土) 18:18:16ID:???0918nobodyさん
2005/12/31(土) 18:23:52ID:???0920nobodyさん
2005/12/31(土) 19:49:17ID:???おいらもphp4からphp5に移行する時に、「php4の知識があれば、本とか買わなくてもいけるべ」と、
検索にヒットするページを片っ端から読んでた時に見た記憶があるよ。
まぁ、「嘘を嘘と見抜けないようでは(ry」って感じだね。
0921nobodyさん
2005/12/31(土) 20:52:30ID:???釣サイトに釣ページがあっても・・・え?
0922nobodyさん
2005/12/31(土) 23:32:43ID:???雑な仕事してんじゃねーよということだな。
0923nobodyさん
2005/12/31(土) 23:35:25ID:???0924nobodyさん
2006/01/01(日) 02:31:41ID:???0925nobodyさん
2006/01/01(日) 02:44:21ID:???PHPカンファレンスとかでよく公演してる。
WEB+DBプレス他、技術雑誌の記事でもよく見かけるよ。
0926nobodyさん
2006/01/01(日) 03:09:44ID:???後から他の型を代入することも出来る、一時的なリファレンスなんだ。
まあ後から役割を変えることなんてあんまりないから
リファレンスと考えておいてほとんど問題はないね。
0928nobodyさん
2006/01/01(日) 13:34:01ID:???レス数が900を超えています。1000を超えると表示できなくなるよ。