【PHP】下らねぇ質問はID出して書き込みやがれ 89
■ このスレッドは過去ログ倉庫に格納されています
0001●
2009/10/11(日) 21:18:54ID:???過去スレ、関連スレ、FAQなどは>>2-10辺り
次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。
◆前スレ
【PHP】下らねぇ質問はID出して書き込みやがれ 88
http://pc11.2ch.net/test/read.cgi/php/1253061577/
◆質問用テンプレ
【OS名】vine linux
【PHPのバージョン】php5.26
【連携ソフトウェア】mysql
【質問内容】
◆質問する時の注意
・ スレを上げて自分のIDを表示させること。(メール欄に何も記述しない。専ブラのsageチェックを外す)
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に関連リンクの公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
(PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。)
◆質問後の注意
・2回目以降は最初に質問した際のレス番号を入れて、偽者防止に必ずIDを表示させること。
・解決しなくても回答をもらった場合はお礼を言うこと。
(荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)
◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。
【その他諸注意】
・SQL・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
0047nobodyさん
2009/10/12(月) 23:24:54ID:???以前にもっと早くする余地が残されているのが普通。
熟知している奴が、htmlを少しリファクタリングするだけで、
体感速度が改善されるし、リアルタイムで処理する必要がない機能を
バッチ処理にするだけでもかなり改善される。
もちろん、SQL文の改善もしかりだ。
もっと効果が高い方法を考えなさい。
0048nobodyさん
2009/10/12(月) 23:30:45ID:???あまりにも馬鹿すぎて、殴ったら、上司に呼ばれて停職になったが、
その停職期間中に始めた体験農業がきっかけで、
今はフリーのプログラマーへと変貌を遂げた。
そして、今年新品種のにんじんの栽培が農協から表彰を受けて、
年収が大幅にアップした。人生って何があるか分からんよ。
この早いwebの中で、変わらないことは即ちリスクであるってことよ。
0049nobodyさん
2009/10/12(月) 23:30:48ID:???なんでHTTPじゃだめなのかな
0050nobodyさん
2009/10/12(月) 23:30:51ID:???なめてんな
0051nobodyさん
2009/10/12(月) 23:36:52ID:bWWKsEMi倉庫代わりじゃなくて倉庫です。
どちらも自分のPCです。
ただ、場所が違うんですよ。
0052nobodyさん
2009/10/12(月) 23:38:17ID:???webサーバー介在させたくないならPHPでは何も出来ません。
容量どれくらい想定してますか?
ftpクライアントインストールさせられない、ブラウザに ftp://example.com とかも入力させられないなら、
javascriptのftpクライアントっていう変なのもあるけど、ちがうよね?
https://fit.jupiterit.com/
0053nobodyさん
2009/10/12(月) 23:52:47ID:bWWKsEMiアップロードしたときに別の処理もしたいからです。
例えば、データベースに入れたり・・・。
アップロードとは別に、定期的にDBを更新させるとかでもいいんですが、
より楽な方法があればと思ったわけです。
とにかく結局予想通り無理っぽいので、質問の意図も書いてみました。
0054nobodyさん
2009/10/13(火) 09:20:35ID:???たしか何個かバックグラウンド処理させる方法あったよな
おれがしってるのはキューを作る事
あとなにがあったっけか?
0055nobodyさん
2009/10/13(火) 09:56:30ID:Bgm/yHH7ttp://works.xworks.org/script/01php/xfile-access-counter/
これの非公開バージョンb090909
http://kissho.xii.jp/1/src/1jyou93396.zip.html
・DBにSQLiteを用いているのが特徴。
・ベータ版のため、簡単に使える状態では無い。
誰か、使用方法、教えて下さい・・・。
0056nobodyさん
2009/10/13(火) 10:00:40ID:???0057nobodyさん
2009/10/13(火) 12:15:06ID:???0058nobodyさん
2009/10/13(火) 12:20:54ID:???別にキーワードなんて使わなくても困らないだろ
0059nobodyさん
2009/10/13(火) 16:03:10ID:ajuLMPfn中身を見てみたいのですが…
0061nobodyさん
2009/10/13(火) 16:10:32ID:ajuLMPfnやっぱりできませんか…
0063nobodyさん
2009/10/13(火) 16:50:29ID:ljBnoCI+.htaccessを使ってリファラで制限したんですが、ドコモはリファラが残らず断念しました。
後は、PHPでできるみたいなのですが知識がなく、本を買って調べたのですがいまいちわかりませんでした。
PHPで直リンを防ぐソースなどはないでしょうか?
レベルの低い質問で申し訳ないんですがよろしくお願いします。
0064nobodyさん
2009/10/13(火) 16:53:25ID:???0065nobodyさん
2009/10/13(火) 20:28:10ID:SwQUEovxクラス内にデータベースの設定を書いてしまうと思いますが、
複数のクラスからデータベースを呼び出す場合、
データベースの設定はどのように持っておくべきでしょうか?
iniやxmlなどの外部ファイルに記述するか、
データベースの設定だけを保持したクラスを作成するか等。
他にベターでメジャーな方法があったら教えてください。
0066nobodyさん
2009/10/13(火) 20:41:24ID:???var $test = null;
function push($value){
$this->test = $value;
}
function pop(){
return $this->test;
}
}
$tes = new test;
$tes->push("てすと");
echo $tes->pop();
0067nobodyさん
2009/10/13(火) 20:45:24ID:???0068nobodyさん
2009/10/13(火) 20:52:18ID:???難しいか?
0069nobodyさん
2009/10/13(火) 21:22:19ID:???設定って?
ホスト名とかユーザ名とかデータベース名のこと?
そういうかなり具体的なことは、せいぜい一つのクラスだけが気にするようにする。
なお、よっぽどやっつけな場合以外、そのクラスのコードにもそれらの設定値は
書き込まないな。
0072nobodyさん
2009/10/13(火) 21:23:57ID:???俺は、専用のクラスにしているよ。
外だしにすると、一回一回接続するたびに、
設定ファイルを読み込んで、
余計なI/Oが発生するので、避けている。
0073nobodyさん
2009/10/14(水) 04:33:40ID:???function dbCon(){
try{
$db = new mysqli("localhost","user","pass","my_db");
$db->query('SET NAMES utf8;'); return $db;
}
catch(mysqli_sql_exception $e){return $e->getMessage();}
}
$db = dbCon(); // dbオブジェクト取得
あとは $dbを使いまわせばよい。
0074nobodyさん
2009/10/14(水) 05:11:15ID:???0075nobodyさん
2009/10/14(水) 13:39:39ID:tPIKiOul【PHPのバージョン】php5.3.0
【連携ソフトウェア】なし
【質問内容】
書き込み失礼します。
セッションの保持期間の指定について悩んでいます。どうしても、指定した時間まで持たなくて。
現在は、セッションが関係するページの冒頭に以下のコードを入れています。
<?php
//クッキーの使えない端末でもセッションを有効にする
ini_set('session.use_trans_sid', '1');
//クッキーの使える端末では、セッションをクッキーに保存する
ini_set('session.use_cookies', '1');
//セッションを、クッキーのみに保存させないようにする
ini_set('session.use_only_cookies', '0');
session_save_path();
session_start();
ini_set('session.save_path', '2;/usr/local/www/htdocs/ユーザID/public_html/ディレクトリ名');
ini_set('session.cookie_lifetime', '秒数');
ini_set('session.gc_maxlifetime', '秒数');
ini_set('session.gc_probability', '1');
ini_set('session.gc_divisor ', '1000');
?>
(改行が多すぎると叱られたので一旦切ります)1/2
0076nobodyさん
2009/10/14(水) 13:41:23ID:tPIKiOul自信がないのがsession_save_pathとsession.save_pathの使い方です。書き方はこれであっているでしょうか?
session.save_pathの引数に2を指定しておりますので、「ディレクトリ名」の下にはmod_files.shで作ったディレクトリを2階層分置いてあります。
また、session.save_pathに引数を指定するとGCが作動しなくなるとマニュアルにあるので、GCについての設定は無駄でしょうか。
クッキーの使えない端末(携帯など)でのセッションの保持は諦めます。
…が、せめてクッキーの使える端末(パソコンなど)では、指定した時間セッションを保存したいと考えています。
色々と調べましたが、原因がさっぱり分からずお手上げです。
どうかよろしくお願いいたします。2/2
0077nobodyさん
2009/10/14(水) 13:56:39ID:???宣伝じゃないけどここのサイトのセッション管理が参考になるよ
金かからないケイタイからアクセスして試してきな
ttp://atmeltomo.com/
0078nobodyさん
2009/10/14(水) 14:44:11ID:???期限切れとなるのが
セッション用Cookieが存在しない状態での初回アクセス日時 + session.cookie_lifetime 秒
ならPHPの実装通り
それともこれに当てはまらない現象?
ini_set('session.*... は session_start() 前に設定しないと使ってくれないぞ
GCについては session.save_handler = "files" の場合に
2階層以上をしていると働いてくれないので言う通り不要
>>77
ハイハイ
0079nobodyさん
2009/10/14(水) 15:06:02ID:???0080nobodyさん
2009/10/14(水) 15:17:46ID:tPIKiOulご返信ありがとうございます。
>期限切れとなるのが〜
はい、初回アクセス+session.cookie_lifetime 秒よりも早くセッションが切れてしまいます。
ini_setはsession_start()の前に、とのことでしたのでそのようにしてみたのですが、以下の警告が出てしまいました。
Warning: session_start() [function.session-start]:
open(/usr/local/www/htdocs/ユーザID/public_html/ディレクトリ名/セッションID, O_RDWR)
failed: Permission denied (13) in /usr/local/www/htdocs/ユーザID/public_html/ディレクトリ名/ファイル名.php on line 8
Warning: session_start() [function.session-start]:
Cannot send session cache limiter - headers already sent
(output started at /usr/local/www/htdocs/ユーザID/public_html/ディレクトリ名/ファイル名.php:8)
in /usr/local/www/htdocs/ユーザID/public_html/ディレクトリ名/ファイル名.php on line 8
問題のファイルの8行目には、session_start();が記述してあります。
>>79
多分あっていると思います…が、仕様書などからの確認は取れませんでした。
0081nobodyさん
2009/10/14(水) 15:50:00ID:???0082nobodyさん
2009/10/14(水) 16:16:35ID:???パーミッションエラー出とるがな
つーかセッションデータを公開スペースに置くつもりなのか?
まず/tmpディレクトリとかで試してみたら?
あとサーバーの時間はdate()関数で調べてみれ
0083nobodyさん
2009/10/14(水) 16:52:07ID:tPIKiOul>>82
セッションデータの保存先の件ですが、マニュアルによると
「この設定を/tmp (デフォルト)のようにどこか らでも読み込み可能なディレクトリのままにしている場合、
サーバ上 の他のユーザがこのディレクトリのファイルのリストを取得すること により、セッションをハイジャックをすることが可能となります。」
とのことでしたので、この設定にしてみました。
date()関数についての情報、ありがとうございました。基本の関数だったようでお恥ずかしい限りです。
サーバの日時はあっていました。
それから、先程から色々と調べているのですが、「save_pathの設定はSAFE MODEが有効になっているときには変更できません。」との情報を見つけました。
使っているサーバのセーフモードを調べてみましたら、見事にオン。
なんかこれが原因のような気もします。
今度セーフモードがオフになっているサーバに変えて試してみようと思います。
引き続き、なにか情報をお持ちの方いらっしゃいましたら、お願いいたします。
0084nobodyさん
2009/10/14(水) 17:58:37ID:???>してみました
書ける場所に設定するとか指定した場所に書けるようにしないとダメでしょ
わけもわからずやるほうがあぶねえ
0085nobodyさん
2009/10/14(水) 18:08:43ID:???0086nobodyさん
2009/10/14(水) 18:54:54ID:???>>80 で save_pathした場所でセッションファイルのパーミッションエラーが出てる
>>83 で save_pathの設定はSAFE MODE。。。見事にONでした
んーなんか違うような・・・
80からsave_pathは変更されていて、単にパーミッションが適切ではなくセッションファイルが書き込めないだけのような。
82の言うように/tmpでまず確認か、そのsave_pathのパーミッションをApacheのユーザが書けるように設定。
ここではsession_save_pathはsafe modeで使えないとは書いてないようだけど、どこに書いてあった?
http://www.php.net/manual/ja/features.safe-mode.functions.php
/tmpのセッションジャック説明 「サーバ上 の他のユーザが」 他にユーザがいるのかな?
85の言うようにそのパスだとパーミッションなどの設定次第だけどあぶないかも。
0087nobodyさん
2009/10/14(水) 20:55:39ID:tPIKiOulセッションファイルを保存したいと思っているディレクトリのパーミッションを変更してみましたが、状況は変わりませんでした。
また、/tmpで試してみたところ、以下の警告が出てしまいました。
Warning: session_save_path() [function.session-save-path]:
SAFE MODE Restriction in effect. The script whose uid is 33401 is not allowed to
access /tmp owned by uid 0 in /usr/local/www/htdocs/ユーザID/public_html/ディレクトリ名/ファイル名.php on line 6
Warning: ini_set() [function.ini-set]:
SAFE MODE Restriction in effect. The script whose uid is 33401 is not allowed to
access /tmp owned by uid 0 in /usr/local/www/htdocs/ユーザID/public_html/ディレクトリ名/ファイル名.php on line 7
Warning: session_start() [function.session-start]:
Cannot send session cache limiter - headers already sent
(output started at /usr/local/www/htdocs/ユーザID/public_html/ディレクトリ名/ファイル名.php:6)
in /usr/local/www/htdocs/ユーザID/public_html/ディレクトリ名/ファイル名.php on line 8
「SAFE MODE Restriction in effect.」という一文から読み取る限り、やはりセーフモードの問題でしょうか。
セキュリティについても、色々と調べてみたいと思います。ご助言ありがとうございます。
0088nobodyさん
2009/10/15(木) 00:40:11ID:???あと無料スクリプトを拾ってきてそのセッションが動いてるか試してみるとか?
あとはPHPをコンパイルしてCGIで動かすか
0089nobodyさん
2009/10/15(木) 10:26:13ID:???0090nobodyさん
2009/10/15(木) 10:31:15ID:???http://static.php.net/www.php.net/images/php_konami.gif
なんだこれw
0091nobodyさん
2009/10/15(木) 10:33:15ID:???0092nobodyさん
2009/10/15(木) 10:38:34ID:???これって↑↑↓↓←→←→BAかww
0093nobodyさん
2009/10/15(木) 10:41:16ID:???0094nobodyさん
2009/10/15(木) 11:37:33ID:IJjjUaJiそしてそのCentOS上でLighttpdとPostgreSQLとPHP5.3を動かしています。
NetBeans6.7.1ではSFTPを使いCentOS上に*.phpファイル保存時に自動的に書き込むようにしています。CentOS上の php.iniではXdebugの設定をしたのでNetbeansを用いてPHPのコードを一行一行実行して行く事ができるようになりました。
ここまでは上手く行きました。NetBeansのメニューで「プロジェクトのデバッグ」を選択するとブラウザーが立ち上がり、ブレークポイントを付けた行で停止して1行ずつコードを実行して行けます。
しかし、NetBeansのメニューで「プロジェクトの実行」を選択するとブラウザーが立ち上がる所までは同じですが、その後それ以上何も進展しない状況になります。(ブラウザーは「読み込み中」と表示されたままです。)
これって正常でしょうか?
0096nobodyさん
2009/10/15(木) 12:53:49ID:HYNoiUHJ【PHPのバージョン】php5.26
【. CGI名 .】 Hello-UP アップローダー http://idol.nm.land.to/
【質問内容】 sn uploaderのように、画像等ツールよけのためにphp(ページ)経由で取得させるようにしたい
例:http://hogehoge.net/img/0000.jpg
↓
http://hogehoge.net/upload.php?id=0000
この下のやつはダウンロードカウンター機能ON時の形式なのですが、
これをダウンロードカウンター機能OFF時のときも同様にリンクとして表示させたいのです。
ダウンロードカウンター機能OFF時でも
>http://hogehoge.net/upload.php?id=0000
この形式をブラウザに手打ちで打ち込んでも表示されるので、一覧でのリンク表示だけの問題だと思います。
どうぞよろしくお願いします。
0098nobodyさん
2009/10/15(木) 12:57:43ID:???改造依頼はこちら
【 スクリプト改造依頼スレ】(丸投げ) part7再々
http://pc11.2ch.net/test/read.cgi/php/1222645553/
自分でこうしたいからこう書いたけどうまく出来ないとかなら答えてもいいけど丸投げは氏ね
0099nobodyさん
2009/10/15(木) 14:39:55ID:???SET client_encoding = 'UTF8';
以外にありますか?
pgsqlモジュールのpg_set_client_encodingに相当するやつがみつからないので
0101nobodyさん
2009/10/15(木) 14:46:54ID:HYNoiUHJマルチと言ってもそっちは完全に無視されました。
3ヶ月たったのでこちらで依頼させてもらいました。
>>98
あと少しの所まで来ているので、ここでも良いかと思い質問させてもらいました。
分かる方いましたらどうかよろしくお願いします<m(__)m>
0102nobodyさん
2009/10/15(木) 16:31:38ID:/ug7dUBY0103nobodyさん
2009/10/15(木) 16:39:41ID:???0104nobodyさん
2009/10/15(木) 19:18:43ID:???改ざんされてたらしい
0105nobodyさん
2009/10/15(木) 19:26:58ID:67pnw1eJクラス内関数から、内部にある変数一覧って取得できますか?
0107nobodyさん
2009/10/15(木) 20:30:10ID:nPyaMf5+Javaでプロパティにstatic finalをつけるところを
PHPでやるには何を使ったらいいのでしょう?
調べたところconstとdefineがあるようですがどちらを使うのがより近い意味になりますか?
0108nobodyさん
2009/10/15(木) 20:46:19ID:???0109nobodyさん
2009/10/15(木) 21:22:39ID:???0111nobodyさん
2009/10/15(木) 23:23:56ID:???const
defineは式、constは文という違いがあるだけで中身は一緒だが
constは名前空間も考慮されてる
あとスカラー値(Javaで言うプリミティブ値)しか持てないから注意してね
>>109
http://jp.php.net/manual/ja/migration53.new-features.php
ここ読んで分からないものがあれば>>1を読んでから具体的に質問して
0112nobodyさん
2009/10/15(木) 23:25:00ID:???0113nobodyさん
2009/10/15(木) 23:29:49ID:???0114nobodyさん
2009/10/15(木) 23:32:31ID:jccmKipZそれに何のメリットが?
0115nobodyさん
2009/10/16(金) 00:29:10ID:???$a = (function(){
return "aaa";
}();
$b = (function(){
$test_a = "bbb";
return 1024;
})();
var_dump($a); // string(3)"aaa"
var_dump($b); // int(1024)
関数(); は 関数名(); で関数を実行できるのと同じ考え方。
無名関数だから関数名の重複が起こらないというメリットがある
0116nobodyさん
2009/10/16(金) 00:34:57ID:???に何の意味が・・・?
0117nobodyさん
2009/10/16(金) 00:35:24ID:???一過性のモノを関数化する必要ってさっぱり理解できないのだが。
0118nobodyさん
2009/10/16(金) 00:36:32ID:???0119nobodyさん
2009/10/16(金) 00:46:13ID:???0120nobodyさん
2009/10/16(金) 00:51:18ID:???0121nobodyさん
2009/10/16(金) 00:56:10ID:???頑張ってはいるようだがまだまだ構文解析が貧弱だなあ
0122nobodyさん
2009/10/16(金) 07:11:34ID:???【PHPのバージョン】php5.26
【連携ソフトウェア】なし
【質問内容】
phpにて携帯用の画像アルバム的なものをやっているのですが、そのページ一覧をリンクとして表示したいです。
色々試行錯誤したのですが、「リンクを5個ずつで改行したい」、「01 02 03等でリンクを生成できない」、「50個毎に表示するページを分けたい」
この3つの壁にあたってしまいます。
画像は連番になっており、0.jpg 1.jpg,,,となっています。アルバム毎のページ数とディレクトリは$○○等としています。
勉強したての初心者ですが、どなたかアドバイスをお願い致します。わかりにくい説明ですみません。
0123122
2009/10/16(金) 07:13:05ID:msbRiwku0126nobodyさん
2009/10/16(金) 08:59:52ID:???>「リンクを5個ずつで改行したい」、「01 02 03等でリンクを生成できない」
これはforeachで普通にできるだろ?
>「50個毎に表示するページを分けたい」
paginationでググレ
0127nobodyさん
2009/10/16(金) 11:12:52ID:OzIcO1DG計算の途中で画面エラーが発生して思う通りにうごきません。
昨日からずっとで困っています。
対策を教えてくださいませんか。宜しくお願いします。
0128nobodyさん
2009/10/16(金) 11:23:14ID:???0129nobodyさん
2009/10/16(金) 11:27:51ID:OzIcO1DGエラーメッセージはこれです。
Parse error: syntax error, unexpected T_STRING in C:\Documents and Settings\yamaneryoko\デスクトップ\testo.php on line 4
プログラミングコードは、これです。
<?php
$HUNNSU=NULL;
for($i=0;$i<100;$i++){
$HENSU+1;
}
echo $HENSU
何から何までおんぶにだっこですみません。
お願いします。
0131nobodyさん
2009/10/16(金) 11:37:58ID:OzIcO1DGどこのコードをコピペすればいいのでしょうか?
まだ一週間なので、見よう見まねでやっています。
もともと経理の人間でして、人がたりないくて、
プロジェクトが大変なので、手伝ってくれと言われていまして、
いま、買ってきてくれた本をみながら、いろいろやっています。
自分でもやっていることが、よく分からないのですが、
これって画面からボタンとかで出来ないのでしょうか?
0132nobodyさん
2009/10/16(金) 11:39:38ID:???いや、>>129が全角になってるから、てっきりコピペじゃなくて手打ちしたんだと思ったんだが
>>129で書いたのはコピペしたのか?
それなら半角にしないと動かないよ
0133nobodyさん
2009/10/16(金) 11:45:32ID:???0134nobodyさん
2009/10/16(金) 11:49:45ID:OzIcO1DG本を見ていると、全角かなと思ったので、全角で打ってしまいました。
半角で打ち直して、もう一回やってみます。
133さん、読んでいるのはプログラミングPHPというオライリーさんが出している本です。
いずれにしても、手で書かないといけないんですね。
WORDのスペルチェックとか使えたら良いんですが、WORDだと動かないんですよね。悩みます。
0136nobodyさん
2009/10/16(金) 12:06:18ID:???0137nobodyさん
2009/10/16(金) 12:09:20ID:???eclipseかDreamweaver使え
0138nobodyさん
2009/10/16(金) 12:14:06ID:???DreamWeaver薦めるやつもどうかと思うぞ
あれはウェブオーサリングツールであってIDEとは言えないから
0139nobodyさん
2009/10/16(金) 12:19:54ID:???こまけぇこたぁいいんだよ
釣りなら釣りで「可哀相な経理は居なかったんだ」でハッピーエンドさ
次の質問どうぞ
0140nobodyさん
2009/10/16(金) 12:33:52ID:???word使ってるレベルの人にIDE勧めて使えると思ってるのか?
0141nobodyさん
2009/10/16(金) 12:41:21ID:???excellは使えたほうがいいと知り合いのプログラマに言われてるんだけどな
0143nobodyさん
2009/10/16(金) 13:05:25ID:???0144nobodyさん
2009/10/16(金) 13:14:40ID:???好きなエディタ使えでいいだろ?
>>129のエラーメッセージをよく見ると解ると思うが
一人でjava必要だったり単価が高いツールを導入できると思うか?
0145nobodyさん
2009/10/16(金) 13:16:17ID:???0146nobodyさん
2009/10/16(金) 13:17:09ID:???DWはIDEではないのは事実
あれはPHPエディタと同じただのエディタです
■ このスレッドは過去ログ倉庫に格納されています