トップページphp
1001コメント338KB

【PHP】下らねぇ質問はここに書き込みやがれ 30

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2006/10/05(木) 01:38:25ID:y1WWhz/p
PHPに関するくだらねぇ質問用スレです。ここならお前の下らない質問に回答があるかも知れません。

まず読め→【PHP マニュアル】http://www.php.net/manual/ja/
PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り

◆質問する場合の注意
1. 自分のIDを表示させること。(メール欄に何も記述しないでください)
2. サーバーのOS、WebサーバーとPHPの種類やバージョン等を明記すること。
3. 己の行った操作、変更などを詳しく明記すること。
4. エラーメッセージはそのまま表記すること。「エラーが出ます」では絶対分かりません。
5. 質問者としても態度をわきまえること。
6. 事前に公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。

◆質問後の注意
・質問者は必ずIDを表示させてください。(メール欄に何も記述しないでください。)
・2回目以降は最初に質問した際のレス番号を名前欄に入れてください。
  (逆に回答者は質問者に対して>>(アンカー)をつけて答えてください。)
・解決しなくても回答をもらった場合はお礼を言う。
  (荒らし、煽りは除く。逆に煽られたときも、無闇に反論せずスルーすべし)

【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークはそれぞれの該当スレへ
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで
・オブジェクト指向については良スレがないから本を買え。理解できないならムリに使うな。
・速さについては自分でベンチをとってここに書け(違う環境の人も調べてくれるかも)
0341nobodyさん2006/10/12(木) 09:24:12ID:???
なんのこっちゃw
0342nobodyさん2006/10/12(木) 09:27:27ID:???
>>339-340
流れにワロチw
0343nobodyさん2006/10/12(木) 09:41:58ID:???
ApacheのIndexesみたいに
そのフォルダ下のファイルの一覧を表示させるようなPHPスクリプトはありませんか?
0344nobodyさん2006/10/12(木) 09:45:23ID:???
スレ違い
0345nobodyさん2006/10/12(木) 09:57:04ID:???
>>343
そのくらい自分で作りなさいよ。数行で終わるだろ?
0346nobodyさん2006/10/12(木) 16:16:05ID:???
>>343
http://au.php.net/manual/ja/function.opendir.php
このへん使って自分でがんばれ。
0347nobodyさん2006/10/12(木) 16:20:29ID:???
>>346
こっちでもよくね?/ ,' 3  `ヽーっ
http://www.php.net/~helly/php/ext/spl/classFindFile.html
0348nobodyさん2006/10/12(木) 16:30:56ID:???
>>346-347
どこまで真面目に作るかによるけど
簡単なのならこれが1番楽
ttp://www.php.net/manual/ja/function.glob.php
0349nobodyさん2006/10/12(木) 16:41:50ID:???
>>340-341
馬鹿スwwwwwwwwwwwwwwww
0350nobodyさん2006/10/12(木) 21:40:10ID:???
phpスクリプトをWindows上で単体で動作させる(.exe化)ことって出来る??
0351nobodyさん2006/10/12(木) 21:44:11ID:???
出来るよ。
0352nobodyさん2006/10/12(木) 21:50:06ID:???
>>350
http://winbinder.org/index.php
これ使えばできる
一応他にもあった気がするが忘れた
0353nobodyさん2006/10/12(木) 22:30:16ID:???
>>352
横からだが、面白そうだしちょっとそれ使ってみる
0354nobodyさん2006/10/12(木) 23:52:16ID:???
被検索語のランキング表示ができるスクリプトを探しているのですが
どなたかご存知ありませんでしょうか。MT用のプラグインはあるみたい
ですが、単体で使えるものがてんで見つかりません。。。orz
0355nobodyさん2006/10/13(金) 02:00:28ID:???
で、検索にはなにを使ってるんだね?
0356nobodyさん2006/10/13(金) 02:47:41ID:???
ぐーぐる
0357nobodyさん2006/10/13(金) 05:01:25ID:???
最近オブジェクトPHPはじめたのですが、
スタティック変数にするメリットってたとえばどういうときなんでしょうか?

class Hoge {
 public static $a = 1;
}
echo Hoge::$a;

とかくのと、

class Hoge {
public $a = 1;
}
$hoge = new Hoge;
echo $hoge->a;

と書くのでは結果的には一緒ですがどう違うのでしょうか?
0358nobodyさん2006/10/13(金) 05:39:40ID:???
>>357
$hoge1 = new Hoge;
Hoge::$a = 100;
$hoge2 = new Hoge;
$hoge2->a = 2;
Hoge::$a = 200;

echo $hoge1->a; // 1
echo $hoge2->a; // 2
echo Hoge::a; // 200

インスタンス変数はインスタンスごとにそれぞれの値を与えたい場合に使う。
スタティック変数はインスタンスによらず、クラス全体で共通の値を与えたい場合に使う。
余談だけど、クラス内の変数はなるべくprivateにしような。
0359nobodyさん2006/10/13(金) 06:01:48ID:???
>>358
おーわかりやすい説明ありがとうございます。
これでひとつまた賢くなりました。
メンバ変数はprivateがよいのですね?了解しました!
早朝にわざわざレスありがとうございましたm(__)m
0360nobodyさん2006/10/13(金) 09:18:45ID:???
>>353
レポよろ
0361nobodyさん2006/10/13(金) 10:49:27ID:???
ここのスレはいい人ばかりで大好きです。
ありがとう。
0362nobodyさん2006/10/13(金) 11:21:08ID:7vpqtGwf
よく携帯サイトなどで見かけるのですが
mailtoを利用して空メールをさせて
折り返しに登録メールや案内メールを送るのがありますが
これは何かメールサーバみたいなものやサーバの設定が必要だと思うのですが
そういったものを用意せずに
mailtoを利用した感じのものでメアド取得は出来ませんでしょうか?


0363nobodyさん2006/10/13(金) 11:46:12ID:???
フォームからGETで配列を渡すのどうすればいいんでしょうか?
postなら分かったのですが。
0364nobodyさん2006/10/13(金) 11:58:35ID:???
>>363
おなじ
0365nobodyさん2006/10/13(金) 12:23:56ID:???
>>362
スレ違い。
しかもメールを送られた時の処理なのに、メールサーバの設定をせずに潜り抜ける意味がわからない。
そういうのは普通/etc/aliasesか.forwardから適当にスクリプトを起動する。
0366nobodyさん2006/10/13(金) 12:28:57ID:???
POP見に行くPHPでも実現は出来るけどね
0367nobodyさん2006/10/13(金) 13:27:29ID:???
くだらない質問で恐縮なのですが、
swfにxmlを読み込ませる場合、セキュリティの都合上
自ドメインのxmlしか読み込めないらしいのですが
他ドメインのxmlを自サイトのファイルにインクルード
して読み込ませることは出来ますか
0368nobodyさん2006/10/13(金) 13:43:17ID:???
>>362
通常は受信メール毎にスクリプトを自動実行させるように
sendmail等のサーバー設定を行って組むんだが、
受信BOXのメールを定期的に動かしたスクリプトでPOP受信すれば
若干のタイムラグは発生するが同様のことはできるよ。
0369nobodyさん2006/10/13(金) 13:44:38ID:???
>>367
自分で答え書いてる
後は試すだけ
0370nobodyさん2006/10/13(金) 13:53:31ID:wYHWwd6x
プロバイダの関係かなにかで、メーラーの送信ポートを587にしろとメールがきました。
もちろん、メーラーの設定は変えたのですが、
Mac OSXを確認用サーバーに使用しており、phpからのメール送信ができなくなってしまいました。
特にエラーはでないのですが、送信されない状況です。

とりあえず、php.iniの設定で、
smtp_port=の部分を587にしてみましたが、ダメでした。

何か解決策がありましたら、教えてもらえると有り難いです。
0371nobodyさん2006/10/13(金) 14:02:41ID:???
>>370
まずはそのプロバイダから来たメールを張りつけろ。
話はそれからだ。
0372nobodyさん2006/10/13(金) 14:08:35ID:???
Message Submission?
0373nobodyさん2006/10/13(金) 14:33:47ID:wYHWwd6x
>>371
メールのほうは捨ててしまったのですが、恐らく↓の影響かと思います。

ttp://www.plala.or.jp/access/community/mailplus/smtp_auth.html
0374nobodyさん2006/10/13(金) 14:45:50ID:???
>>373
smtp認証はしゃべれないはず。
fsockopenでプロトコル手書きするか何か別の手を使うしかないと思う。
0375nobodyさん2006/10/13(金) 14:58:01ID:???
phpmailerとか
0376nobodyさん2006/10/13(金) 15:12:22ID:???
ここのスレはいい人ばかりで大好きです。
ありがとう。
0377nobodyさん2006/10/13(金) 17:10:43ID:0s8cJuHn
PHPに限った事ではないんですが、SQLiteとかのデータベースを使う利点を教えてください。
例に出ていたのですが、たとえば図書館の本検索システム。
これはデータベースでやってるところが大多数らしいのですが、データベースを使わずにやっても出来ると思うのですが、どうなのでしょうか?
件数が30万件とかものすごく多くなると速度に差がでてくるのでしょうか?
それともサーバーの負荷の問題でしょうか?
03783732006/10/13(金) 17:22:09ID:???
ありがとございます。
全然詳しくないのでアレなんですが、メーラーの設定みたいに、
ポート25を587に変えるだけじゃダメなんですねぇ。

0379nobodyさん2006/10/13(金) 17:33:04ID:???
>>377
一番大きな理由は開発が楽だからだよ。
0380nobodyさん2006/10/13(金) 17:43:43ID:???
>>378
php.iniのSMTP PORTは、 Windows Onlyだからね。
0381nobodyさん2006/10/13(金) 18:13:07ID:???
>>377
30万件のレコードから、検索や抽出、並べ替えなんかをするのを
がんばって作ってみな。
まあ、結果を得られる速度はDBに負けるだろ。
もし対等に渡り合えるのがかけてるんなら、DBを作れたって話だ。
0382nobodyさん2006/10/13(金) 19:13:58ID:???
>>377
件数が多い場合や複数条件の組み合わせでやっぱ速度に大きく差が出るね。
速度に差が付く理由の1番大きなところはインデックスの生成だから
そこを自作してやればDBと対等かそれ以上の速度を出すことは可能。
それ以外にもデータ更新時に破損しにくいとかの堅牢性やメンテのしやすさ
なんかも理由には挙がるけど、データがほとんど更新されない静的データなら
どっちでも大した問題にはならないと思う。
検索処理と並行して頻繁に更新されるデータならDBで作ってないとすごく怖い。
03833772006/10/13(金) 20:14:05ID:0s8cJuHn
>>379
>>381
>>382
皆様ありがとうございます。 やはり速度がかなり違うのですね。
データが破損しにくいとは知りませんでした。 どっちにしろ手間かけるくらいならDB使ったほうがいいということですね。
ありがとうございました。
0384nobodyさん2006/10/13(金) 20:25:25ID:???
階差は約1時間ですねー
0385nobodyさん2006/10/13(金) 20:46:39ID:jl8poghH
画像のパスを表示せずに、画像をブラウザに表示させる方法ってあるでしょうか?
画像を右クリックで保存等は出来ても構わないのですが、画像のパスだけは
隠しておきたいのです。
テストではGDを利用して出来たのですが、使うサーバはGDが使えないのです。。
宜しくお願いします。
0386nobodyさん2006/10/13(金) 21:19:22ID:???
>>385
>GDを利用して出来た

どうやって??
0387nobodyさん2006/10/13(金) 21:27:48ID:???
headerのcontent-typeとreadfileでできるんじゃね
0388nobodyさん2006/10/13(金) 22:27:07ID:???
>>385
/img/****.jpg だろうが、 /img.php?****.jpg だろうと
どっちにしても、画像のパスには違いないわけだが…

直リンク対策や、会員限定とかのためにPHPを通して表示したいって事?

何が目的なのか、良く判らないんだけど
0389nobodyさん2006/10/13(金) 23:38:25ID:???
GETで投げられた変数をPHPで受け取って使う場合に

http://hoge.com/?id=passwd

$id = "";
if(isset($_GET["id"])){ $id = $_GET["id"]; }

としてから受け取っているけど、これって正解ですか?
0390nobodyさん2006/10/13(金) 23:49:32ID:???
>>388
俺も初め385の意味がわからなかったが、387を読んで、画像のパスを隠すというのはおそらくサーバ上での絶対パスを隠すという意味ではないかと推測。
で、もしそうなら387でFA。
0391nobodyさん2006/10/13(金) 23:51:43ID:???
>>389
問題ないと思います
0392nobodyさん2006/10/14(土) 00:18:04ID:???

$arr = array("1"=>array("1"=>array("id"=>5,"gender"=>0,"age"=>14)
,"2"=>array("id"=>33,"gender"=>0,"age"=>23)
,"3"=>array("id"=>143,"gender"=>1,"age"=>43)));

これを

$ages=array(14,23,43);

に加工したいんですが、可能ですか?
0393nobodyさん2006/10/14(土) 00:23:19ID:???
--環境(windows XP, postgreSQL8.1.4, php5.1.6)--
phpのinsertでserialの項目を省略して記述したいのですが、省略すると追加できません。
試しにコマンドプロンプトで同じinsert文を記入するとなぜか追加できてしまいます。

『失敗したinsert文』--> insertからbbsidを省略しています
create table bbstable (
bbsid serial,
name text,
title text,
coment text,
updatetime text);
$sql = 'insert into bbstable (name, title, coment, updatetime) values (?, ?, ?, ?)';
$stmt = $dbh->prepare($sql);
$flag = $stmt->execute(array($name, $title, $coment, $updatetime));

『成功したinsert文』--> コマンドプロンプトで実行
insert into bbstable (name, title, coment, updatetime) values (1, 2, 3, 4);
  ↑これでbbsidに採番された値が入っています

調べると以下のような説明を行っているサイトがあったのですが、まずserial型のデータをselectで取得してから、insertを行っています。
せっかく自動採番の項目なのに変だと思っています。何か思い違いをしているのでしょうか?

『解説にあったサンプルPG』
CREATE TABLE person (
id SERIAL,
name TEXT
);
new_id = execute("SELECT nextval('person_id_seq')");
execute("INSERT INTO person (id, name) VALUES (new_id, 'Blaise Pascal')");
0394nobodyさん2006/10/14(土) 00:27:32ID:???
>>392
foreach($arr[1] as $a) {
$ages[] = $a["age"];
}
0395nobodyさん2006/10/14(土) 01:39:03ID:???
冗長だと思う。

$id = isset( $_GET['id'] ) ? $_GET['id'] : '';
0396nobodyさん2006/10/14(土) 01:41:44ID:???
>>395>>389に対するレスね。
0397nobodyさん2006/10/14(土) 02:07:22ID:HT3mnicj
同じドメインのパスでも、
クッキーの変数ごとに期限を設定できるんでしょうか?
すぐに消えるクッキーとずっと残るクッキーを同居できますか?
03983972006/10/14(土) 02:19:24ID:???
別々に設定できるみたいですね。
0399nobodyさん2006/10/14(土) 02:55:28ID:???
>>395
短くしたいならこれでいい。
$id = @ $_GET['id'];
0400nobodyさん2006/10/14(土) 08:20:59ID:???
PHPってArrayクラスってないの?
いまどき count(ary)とかやって要素数得るのダセーとか思うんだけど・・・
0401nobodyさん2006/10/14(土) 08:32:36ID:+DX4AjuZ
なにがどうダサいのかまず説明しなよ。
C++やJavaみたいにデフォでは満足なリスト機能を持たない言語なら
クラスで用意するのも分かるが、LispやPerlやPHPくらいになると
むしろクラスで処理するのがナンセンスに感じるけどね。
count($arr)だって実際はプロパティ値返すだけだし。
0402nobodyさん2006/10/14(土) 08:42:05ID:???
>>400
お前の存在自体がダサいwwwwwwwwwwwwwwwwwwwww
0403nobodyさん2006/10/14(土) 09:01:08ID:???
2バイト文字が含まれている文字列から、
英数字だけをとりだしたいのですが、
いい方法はありますか?

はじめは以下のようにやっていたのですが、
文字の組み合わせによって余計な文字が出てくる場合があります。
preg_replace('/[^\w]/', '', $str);

mb_eregi_replace を使ってみたのですが、
使い方があっていないのかうまくいきません。
04044002006/10/14(土) 09:01:33ID:???
なんかCで構造体の引数を第一引数に渡してる感がするんだな。
あと文字列もクラスじゃない。
JavaやC#だったら、インテリセンスでメソッドが出てくるが、
PHPだとそうはいかない。それがだるい。
0405nobodyさん2006/10/14(土) 09:08:25ID:???
>>404
ふいんき(何故か(ry)で騙るなバカ
0406nobodyさん2006/10/14(土) 09:12:30ID:???
>>404
文字列をわざわざクラス化!?w
だったらC++やJavaで整数がなんでクラスじゃないのか説明してみなよ。
それはダサくないのかね?
04074002006/10/14(土) 09:17:31ID:???
普段、四則演算くらいしかオペレーションがないからだろ。
とにかくインテリセンスがきかんのがうざい。
インテリセンスでクラスのメソッド名が出てきたら、
だいたい該当するのはどれなのかわかる。
PHPは、いちいち調べるのがめんどい。
タイポする可能性も増える。
しかも型もコンパイルないからエラーにならんし。
つーか、こんな言語愛用してるのは糞だ。死ね!
04083852006/10/14(土) 09:18:49ID:53yXNDSa
385です
>>390さんの通り、サーバに置いてある画像の絶対パスは隠しておきたいのです。
headerのcontent-typeとreadfileでどのようにやるんでしょうか。
よろしければヒントお願いします。
0409nobodyさん2006/10/14(土) 09:22:05ID:???
>>408
マニュアル見てみたんですか?
0410nobodyさん2006/10/14(土) 09:28:56ID:???
>>400
お前がそう思ってるならそれでいい。
糞だと思うなら使わなきゃいいし、このスレを見る必要もない。

もう来るなよ。
04113852006/10/14(土) 09:32:17ID:53yXNDSa
>>409
すみません。勘違いしてました。
マニュアルちゃんと読みます。
>>408は無しでお願いします。
0412nobodyさん2006/10/14(土) 09:33:47ID:???
>>407
> 普段、四則演算くらいしかオペレーションがないからだろ。
ヘボ確定ww ワロスwww
04134002006/10/14(土) 09:47:59ID:???
>>412
じゃあ、おめぇこそ説明しろ。
文字列や配列がクラスなら、整数もクラス化しておいてもいいんじゃないかという意味を。
てか、C#じゃ整数もクラスだがな。でも、実際四則演算ばかりだから意識もしない。
むしろJavaみたいにプリミティブ型とクラスで分かれてる方が、色々うざい。
0414nobodyさん2006/10/14(土) 09:52:27ID:???
>>413
だから来なくていいからwww
誰もお前にPHP使ってくれなんて頼んだ覚えはない。
0415nobodyさん2006/10/14(土) 10:00:02ID:???
ここのスレはいい人ばかりで大好きです。
ありがとう。
04164002006/10/14(土) 10:02:19ID:???
なんか、あんま釣れないな・・・
俺の煽りも今ひとつだったし、そもそもみんなまだ寝てるか。
0417nobodyさん2006/10/14(土) 10:15:23ID:lXZlr1go
おお、うざきも
0418nobodyさん2006/10/14(土) 10:59:38ID:???
ruby使い始めたらintegerやstringやarrayが
オブジェクトだと確かに便利だと思った
PHPユーザは純OOな言語もやっておくと
PHPの良さ/悪さに理解が深まると思う

ただPHPはスタートがOO言語じゃないし
もう全部関数でいいじゃんみたいな発想から
スタートしてるからこれOOじゃねーって言っても
根本の設計思想から違うから仕方がない

インテリセンスがきかないってのは
eclipseなりZSなりのIDE使えば問題なし
あとsplでArrayObjectもIteratorも一応ある
04194002006/10/14(土) 11:31:31ID:???
eclipse + PHPプラグインでインテリ効くのは知ってるよ。
もれが言いたかったのは、クラスだったらオブジェクト変数書いて、
その後に->って書いたらメソッドの候補が出てくるでしょ?
でもクラスじゃなかったら、そうはならないから、めんどいってこと。
PHPの良いとこは、O/Rマッパー作らんで良いことかな。
selectの結果が連想配列で返ってくるのは便利。
型もないから、いらんこと気にしなくて良い。
0420nobodyさん2006/10/14(土) 12:12:02ID:???
つりじゃないやん
マジやん
おお、
0421nobodyさん2006/10/14(土) 13:06:48ID:???
PHPでもStringクラスやIntegerクラスやArrayクラスを自作すればいいんだ!

演算子が使えないけどな!
0422nobodyさん2006/10/14(土) 13:07:22ID:???
ウザイ言語を態々使いたいと思う理由が理解できん
0423nobodyさん2006/10/14(土) 13:10:31ID:???
>>419
別にそんなことを質問スレにしにこなくていいよ、っていうのが反感を買った理由なのが理解できてないみたいね。
0424nobodyさん2006/10/14(土) 13:15:25ID:mRs0+tI4
質問です。
SESSIONとしてObjectをキープしたいときって、session_startの前に
そのObjectが書かれたファイルをincludeすればいいのはわかってたんだけど、
そのObject内部にある入れ子のObjectってSESSIONとして保存されてないの??

今そんなプログラムを作ってて、Object経由で入れ子のObjectの関数呼び出したんだけど、
Call to a member function searchPage() on a non-object
とのこと。

原因または対策のわかる方いらっしゃったら教えてください
0425nobodyさん2006/10/14(土) 13:23:45ID:???
>>424
そのObjectに格納されてるObjectってのが、実体じゃなくリファレンスを格納してるんなら
当然のようにセッションには記録されないと思います。
リファレンスの本体はデータの外部にあるわけですから。
で、多くの場合、そういう構成になってるのではないでしょうか。

何とかして実体も一緒にセッションに格納されるようにすれば解決するんじゃないのかなぁ。
0426nobodyさん2006/10/14(土) 13:42:22ID:???
>>424
serialize unserialize __sleep __wakeup
0427nobodyさん2006/10/14(土) 13:43:45ID:mRs0+tI4
早速ありがとうございます。
でも実態を入れてるつもりなんですが・・・
object内部のfunctionで
function detail($post){
switch($post['dType']){
case 1:
$this -> DetailChartObjArr['a'] -> searchPage($a,$b);
break;
default:
$this -> DetailChartObjArr['a'] = new DetailChartObj();
break;
}
って感じのを作ってて、defaultのすぐ後にprint_rすると、DetailChartObjArr['a']は表示されるんだけど
case 1のあとにprint_rさせても何も表示されないし・・・

どうして?
0428nobodyさん2006/10/14(土) 14:04:52ID:???
case 1のとき、$this -> DetailChartObjArr['a']は何なの?
0429nobodyさん2006/10/14(土) 14:09:24ID:mRs0+tI4
入れ子のオブジェクトです。配列に収納してる。
でそのオブジェクトにはsearchPageというfuctionがあってそれを実行させてる。
0430nobodyさん2006/10/14(土) 14:25:01ID:???
断片的過ぎてなあ、、、
case 1の時にDetailChartObjArr['a']に
中身があるのは保証されているのかよくわからんし
0431nobodyさん2006/10/14(土) 14:39:10ID:mRs0+tI4
中身??
一応defaultのときにnewでObjectが作成されていて、
case 1でそのObject内部のFunctionが実行されてるってことは、
表現できてると思ったんだけど。
その保証されてるか否かってのが、何か気になる。
ひょっとしたらそこにオレの問題点が有るってことかな?
04324312006/10/14(土) 14:49:59ID:mRs0+tI4
ごめんなさい。
DetailChartObjArrの属性をpublicにしてSESSIONを出力してみたら、
とりあえず保存はされてるみたい。

他に何か原因が有るか考えてみます。
お騒がせしました
0433nobodyさん2006/10/14(土) 15:25:49ID:???
>>431
そのつくりだと、必ずdefaultがcase 1のまえに実行されるようには見えないから、
>中身があるのは保証されているのかよくわからんし
ということになる。
つくりを見直したほうがいい。
0434nobodyさん2006/10/14(土) 16:08:25ID:???
質問です。

ログインシステムで、一人しかログイン出来ないように
ログインの重複を拒否したいんですが、どうプログラムを書けばいいんでしょうか?
0435nobodyさん2006/10/14(土) 16:24:35ID:???
if( ! $logged){
ログイン処理
$logged=true;
}
0436nobodyさん2006/10/14(土) 17:37:45ID:???
>>435
loggedという関数がある訳ではなくて、単に変数をフラグのように扱ってるんですよね?
PHPってユーザーの数だけスクリプトが動くから、それでは意味がないと思っていたんですが
PHPの変数ってサーバで共有でしたっけ・・・
0437nobodyさん2006/10/14(土) 17:49:24ID:???
>>436
セッション使うんだよ
0438nobodyさん2006/10/14(土) 17:50:26ID:???
もしくはファイルやDBに保存
0439nobodyさん2006/10/14(土) 17:55:48ID:???
タイムアウトも忘れずに
0440nobodyさん2006/10/14(土) 18:01:22ID:???
セッションやファイルに出力して保存する場合は
ログイン時にフラグを上げ、ログアウト時にフラグを下げるんですよね?

ブラウザを落とされたときはどう判定すればいいんでしょうか・・・
JSを使えば出来そうな気がするんですが、
PHP単体ではサーバでひとつだけ動く変数やスクリプトを作る機能はないんでしょうか?
0441nobodyさん2006/10/14(土) 18:15:04ID:???
すみません、早とちりしてました。

ログイン成功時にセッションを開始して
DBに書き込んで次からのログインを防いで
ログアウト時にDBのフラグを下げる。

ブラウザを落とされたときのためにタイムアウトを設定して
時間が経てば勝手にDBのフラグを下げるようにすればいいんですね
■ このスレッドは過去ログ倉庫に格納されています