【PHP】下らねぇ質問はここに書き込みやがれ 67 at PHP
[2ch|▼Menu]
[前50を表示]
300:nobodyさん
08/04/19 06:14:31
>>293
第4にPREG_OFFSET_CAPTURE入れて
0をunsetしれ

301:nobodyさん
08/04/19 10:19:29
>>296
CTYPEはそれとイコールじゃないよ。
俺も昔つっかかった

302:nobodyさん
08/04/19 12:03:10

【迷言ランキング】
 1 : fscanfがおかしいです
 2 : ここまで技術的な考察まで書いてやっているのに

トップ揺るがず。




303:nobodyさん
08/04/19 12:44:33
質問です。
<?php
$word = $_POST['text'];
$pointer=fopen("./log.dat", "a");
flock($pointer, LOCK_EX);
fputs($pointer, $word);
flock($pointer, LOCK_UN);
fclose($pointer);
?>
<form action="パス" method="post">
<input type="text name="text" size="30">
<input type="submit" value="送信">
</form>

こんな感じのを応用して簡単な掲示板を作ろうと思うのですが、
更新すると何個も同じものを送信してしまいます。
どうすればよろしいのでしょうか?

304:nobodyさん
08/04/19 13:05:00
>>303
同じものであるか判定する処理

真だったら拒否,偽だったら書き込み

305:nobodyさん
08/04/19 13:10:36
>>303-304
>>1


306:nobodyさん
08/04/19 13:41:34
PDO+SQLite使えば楽なの何故いまだファイル使うかなぁ

307:303
08/04/19 14:27:57 EugqgBl5
>>304 その処理が分からないです…
>>306 サーバーがSQLite対応してないです

308:nobodyさん
08/04/19 14:56:51
>>303
更新すると同じものを送信するのはブラウザ側の問題なので、サーバで二重投稿かデータチェックする。

ケース1)
ログファイルの最後に書き込まれたデータと比較して、同じならアウトにする。

ケース2)
フォームにセッションを使ってユニークIDをhiddenに埋め込む。
サーバにhiddenで送られてきたユニークIDを見て、セッションと同じ値でなければアウトにする。

309:nobodyさん
08/04/19 15:46:00 nFas9Qcl
?

てst

310:nobodyさん
08/04/19 15:49:34 nFas9Qcl
マックからフォームで〜を入力すると?(←2chではwinだとハテナに見えるかもしれません)となってしまいます。
これをログに記録すると、文字化けしてしまいます。

マックからの「〜」を文字化けしないでログに書き込むにはどのような方法がありますでしょうか?



311:nobodyさん
08/04/19 16:06:28
文字コード統一汁(機種依存は論外)

312:nobodyさん
08/04/19 16:06:31
>>310
外部、内部、それぞれの文字コードは何?

313:nobodyさん
08/04/19 16:18:13 nFas9Qcl
文字コードはUTF-8で全て統一しております。
ただ、どうしてもマックからフォームに〜を入力すると、以下のサイトにかいてあるような現象になります。
URLリンク(oshiete1.goo.ne.jp)

う〜ん、いままでwinしか使ったこがなくて、マック環境が無いので不安なんですが、
マックの「〜」はwinでは機種依存文字扱いとされるのでしょうか?



314:nobodyさん
08/04/19 16:26:34 nFas9Qcl
自己解決しました。
ログを開くのに使用しているエディタの内部文字コードがsjisのために起こった現象です。
使用してたのはサクラエディタでえす。
お気に入りのエディタでしたが、この機会に別のエディタに乗り換えます。

引用:URLリンク(ja.forums.wordpress.org)
残念ながら、サクラエディタは、Shift_JIS なのに ISO-2022-JP と誤認した前科 (WPJ フォー
ラムのキャッシュ) があるので、今回は「紹介するべきではない」代物です。
単に「巨大なテキストを開けるエディター」として出すならいいんですが、
今回は文字コード変換に使うため、「文字コードを誤認するエディター」を選ぶのは、よろしくありません。
サクラエディタは内部文字コードが SJIS らしく、UTF-8 を扱うにはよいエディターとは
言えません (「波ダッシュ」が化けたりするらしい)。
そういう面ではマトモなのは EmEditor ぐらいしかなさそうです (TeraPad, K2Editor など、Windows のエディタの多くは内部コードが Shift_JIS)。

あと、質問者が Windows を使っているかどうか不明なので、「Windows ならば○○○」という限定を入れてほしかったです。Mac ユーザーだとすると「サクラエディタがおすすめ」と言われても困りますので。(Linux ユーザーは文字コード変換で悩むことはないでしょうが)


315:nobodyさん
08/04/19 16:26:55
痴漢すればいいじゃん

316:nobodyさん
08/04/19 16:27:55
       ヽ(・ω・)/   ズコー
      \(.\ ノ

317:nobodyさん
08/04/19 16:38:11
Emediterも半角英数字だけのファイルを保存すると
ShiftJISで保存する糞エディタだな

318:nobodyさん
08/04/19 16:47:53
terapad→サクラエディタと着たが俺も乗り換えるか・・・

319:nobodyさん
08/04/19 17:37:31
>>317
ちょwww笑わすなwwww
BOM無しUTF-8とEUCとSJISの文字コードを判別する方法思いついたら教えてくれwwww
エディタ作ってやんよwwwwww

320:303
08/04/19 18:12:34 EugqgBl5
連続投稿は防げましたがタグを使われるとおかしくなります。
htmlspecialcharsで無効化しようと思ったのですが、
<font color="#ff0000">が<font color=\"#ff0000\">となります
なせでしょうか?

321:nobodyさん
08/04/19 18:23:23
ポストされたデータをどっかでエスケープしてるんじゃないの?
覚えが無いならmagic_quotes_gpcを確認

322:nobodyさん
08/04/19 20:00:37
>>320
おまえはまず人からアドバイス受けたらありがとうの気持ちぐらいだせ

323:中沢
08/04/19 20:02:45 8RVDFTU7
こんにちは(^_^;)
ログファイルに保存された配列を元に検索機能を作りたいのですがどうすればよいのでしょうか?
詳しく書きますと
log.datに
155<>名前155<>年齢155<>
5<>名前5<>年齢5<>
4<>名前4<>年齢4<>
1<>名前1<>年齢1<>

とあったとします。
検索では、完全一致した場合に表示させる、id検索と、部分一致した場合に表示される、名前と年齢検索ができるとして、
id検索で1
と検索すれば、$ken件マッチしました。
id:$id
名前:$name
年齢:$age
と表示させ、見つからなかったらエラールーチンに飛ばさせます  
次に、名前検索で部分一致したら表示させる場合は、
「前1」
と検索したら、今回は2件マッチするので
$kenマッチしました

2件とものデータを表示させたいです
このような検索できるスクリプトを作りたいのですが、分かりません。よろしくお願い致しますm(_ _)m

324:nobodyさん
08/04/19 20:08:05
>>323
わからないならまだ作るのは早いってことです
ここは宿題お手伝いのお部屋ではありません

325:nobodyさん
08/04/19 20:13:26 +VgtfKgh
今、メモ帳でphpのプログラム書いてるんですが
専用のソフトとかってないですか?

プログラム書いてて関数とか変数が色ついたり
見やすくしてくれるヤツです。

326:nobodyさん
08/04/19 20:16:07
 はじめまして、よろしくお願いします。

 PHPでデリヘルによくあるような出勤表を作りたいと思っています。
女の子情報はMYSQLで管理しています。

 ■欲しい機能

・管理画面から出勤スケジュールを登録
・本日の出勤一覧ページ

いろいろ考えているのですが…

・女の子情報の登録時に『出勤フラグ』をラジオボタンで付けて
フラグがtrueのときに内容(時間)を表示 とか。
 →どうやってカレンダーと合わせる?


 詰まっています。
 ヒントでもいいのでお願いします。 

327:nobodyさん
08/04/19 20:17:39
>>325
phpエディタでもつかいなされ
メモ帳使いがいきなりIDEは厳しいとおもうけど
興味あるならEclipse PDTでも使ってみなされ

328:nobodyさん
08/04/19 20:18:15
>>326


329:nobodyさん
08/04/19 20:21:42
まず金払え。

330:>>323中沢
08/04/19 20:24:08 8RVDFTU7
array_serch
を使うのはわかるのですが、中に正規表現をいれたいのです。
どうすればよいのでしょうか?

331:nobodyさん
08/04/19 20:27:43
>>330
どうすればいいのですかではなく、自分で考えてコードを書け


332:326
08/04/19 20:28:35
ヒントだけでも。

333:nobodyさん
08/04/19 20:30:02
学歴だけでPGすっ飛ばしてSEになるとわからないよなw

334:nobodyさん
08/04/19 20:30:44
答:仕様書書いてPGに組ませる

335:nobodyさん
08/04/19 20:32:04
これでもPGより給料多いんだぜ?

336:nobodyさん
08/04/19 20:38:59
>>330
同じ苗字で恥かかすなや

337:nobodyさん
08/04/19 20:44:33
このスレはこの程度かよ
ksg


338:nobodyさん
08/04/19 21:26:11
>>337
またオマエか

339:nobodyさん
08/04/19 21:42:16
ループかよ

340:中沢
08/04/19 22:25:14 8RVDFTU7
誰か答えクレクレ(^^)/
お願いいたします

341:nobodyさん
08/04/19 22:33:51
>>340
ヒント:
スレリンク(php板)

342:nobodyさん
08/04/19 22:35:04
ああごめん、デリヘル依頼者とごっちゃになってたわ

343:nobodyさん
08/04/20 04:40:12
???

デリヘル依頼者と正規表現とどう関係があるの?

344:nobodyさん
08/04/20 04:46:05
両方とも珠玉の一品に出会えます

345:nobodyさん
08/04/20 05:28:17
>>344
よく分からない。珠玉の一品って、つまり締まりがいいマンコとかってこと?

346:nobodyさん
08/04/20 07:20:37
あとは、でかいチンコも。

347:nobodyさん
08/04/20 15:51:29 cb0wPZjr
配列$_POSTの中身の一つ一つにhtmlspecialchars($_POST, ENT_QUOTES, 'UTF-8')の様な処理をして
戻したいです。

arra_mapを使ったところ、第3引数のENT_QUOTESが配列では無いと怒られてしまいます。
$_POST = array_map('htmlspecialchars',$_POST, ENT_QUOTES, 'UTF-8');
どうしたら良いでしょうか。


348:nobodyさん
08/04/20 16:19:18
怒られないようにしたら?

349:nobodyさん
08/04/20 16:52:53 cb0wPZjr
>>348
ありがとうございます。
怒られないようにしたら出来ました。

350:nobodyさん
08/04/20 16:53:26
亜鈴魚喰

351:Defort
08/04/20 17:11:16 QNOTdt2p
フリーページ
URLリンク(tool-1.net)
について聞きたいのですが、index.cgiのスクリプトが丸見えみたいなのですが、どうやったらみれるのですか?
ヌルバイト攻撃使っているのですか?


352:nobodyさん
08/04/20 17:31:23
gethostbyaddr()
で得られるホスト名って信頼できる?

たとえば、gethostbyaddr($hoge)
で ***.yahoo.co.jp みたいなのが
でたら、 $hoge は yahoo関連のIPと断定できる?
yahooとは関係ない第三者のIPが ***.yahoo.co.jp みたいなホスト名を
返すことってありえませんか?


353:352
08/04/20 17:33:32
自己解決しました

354:nobodyさん
08/04/20 17:57:34 Tze2JaW2
セッションのGCの挙動を変えたくて、session_set_save_handlerを使って
gc_test()に置き換えようと思っています。
session_set_save_handler("", "", "", "", "", "gc_test");
session_set_save_handler(null, null, null, null, null, "gc_test");
と試してみましたが
Warning: session_set_save_handler() [function.session-set-save-handler]: Argument 1 is not a valid callback in xxx.php on line 3

というwarningが出て目的が達成できません。
openその他の関数をデフォルトのままにするにはどのようにすれば良いでしょうか?



355:320
08/04/20 18:38:39
>>321
ありがとうございました!
magic_quotes_gpcがずっとわからなかったのですが
.htaccessで設定できるのですね!
文字化けの心配がなくなりました。

356:nobodyさん
08/04/20 19:26:38 8958Dk4L
<form method="post" enctype="multipart/form-data" action="./uploader.php">
<input type="file" name="data" size="30">
<input type="submit" value="アップロード">
</form>
<?php
$filedir = "./file/";
$filename = $_FILES['data']['name'];
if(file_exists($_FILES['data']['tmp_name'])){
$filesize = filesize($_FILES['data']['tmp_name']);
if($filesize <= 1050000){
if(move_uploaded_file($_FILES['data']['tmp_name'],$filedir.$filename)){
echo "アップロードしたファイル・・・ファイル名:".$filename." ファイルサイズ:".$filesize."Byte";
echo "<br><br>";
}
}
else{
echo "ファイルサイズが大きすぎます!";
}
}
if($filename){
echo "<img src='./$filedir/$filename'>";
}
?>

このような感じでアップローダーを作ってるのですが、
ファイル名がそのまま保存されるのをfile0001みたいな感じで保存することはできますか?

357:nobodyさん
08/04/20 19:33:38
それ自分で書いたコード?

358:nobodyさん
08/04/20 19:46:33
自分で書いてたらはじめから連番を振る仕様になってそうだね。

まあ、どっかのサイトとか本が $filename = $_FILES['data']['name']; で説明してたのを
使い回してるのかもしれない。

359:nobodyさん
08/04/20 19:47:01 8958Dk4L
友達から教えてもらったです。

360:nobodyさん
08/04/20 19:59:36
きめぇw

361:nobodyさん
08/04/20 20:00:21
>>360
きめぇw

362:nobodyさん
08/04/20 20:08:01
ら、らめぇ

363:nobodyさん
08/04/20 20:11:57
じゃその友達に聞けばいいじゃん

364:nobodyさん
08/04/20 20:51:05
めでたしめでたし

365:nobodyさん
08/04/20 21:28:40
くだらない質問、お願いします。

OSはWinXP、webサーバはapacheです。
perl、phpは実行できる環境です。

ダウンローダーからのアクセスをhttpステータス403で
返したいです。その為、webサーバのログをcronで
調査し、ある条件(例えば1分間に60回アクセス)
に合致したホスト(IPアドレス)を.htaccessの
deny fromに追加したいです。
そのような、perl,PHPはあるでしょうか?

366:nobodyさん
08/04/20 21:29:20 PJ8uyzSs
age忘れました。

くだらない質問、お願いします。

OSはWinXP、webサーバはapacheです。
perl、phpは実行できる環境です。

ダウンローダーからのアクセスをhttpステータス403で
返したいです。その為、webサーバのログをcronで
調査し、ある条件(例えば1分間に60回アクセス)
に合致したホスト(IPアドレス)を.htaccessの
deny fromに追加したいです。
そのような、perl,PHPはあるでしょうか?

367:nobodyさん
08/04/20 21:42:41
WinXPでcron動いてるのか?

368:nobodyさん
08/04/20 22:10:51 PJ8uyzSs
>>367
pycron.exeってやつで、
unixのcron相当を動かしてます。

369:nobodyさん
08/04/20 22:21:56
cronって、結局時間で動かすだけのプログラムだろ、
本気でやるならJP1とか使えよ。

本気じゃねーのかよ。

370:nobodyさん
08/04/20 23:16:26
>>369
ここは下らねぇ回答者のスレではありません。

371:nobodyさん
08/04/20 23:52:57
>>370
異常系の処理も考慮しない馬鹿ですか?w

372:nobodyさん
08/04/21 00:51:15
パソコンの電源がつかないのですけどどうしたらいいですか?

373:nobodyさん
08/04/21 00:55:33
>>371-372
スレリンク(utu板)

374:366
08/04/21 07:24:16 f7rHed3v
JP1とかはどうでもいいんで、
私の質問に対して、良い案は
ありますか?
お願いします。

375:nobodyさん
08/04/21 07:37:38
phpでいくらでも.htaccess編集したればいいじゃん

376:nobodyさん
08/04/21 07:56:46
なかったら作れよ

>>375

377:nobodyさん
08/04/21 12:32:43 8HZkrnGU
mail関数を連続で実行することで、
メールの遅延が発生したりするのでしょうか?

お問い合わせフォームを作った時、管理者・問い合わせ者・保存用と
3つの箇所に送信するのですが、たまにメールの受信が遅かったり
バラバラに受信したりします。

378:nobodyさん
08/04/21 12:41:06
>>377
だから、そういう時のためJP1を使ってジョブの異常系を制御しろよ。

379:nobodyさん
08/04/21 12:50:44
>>377
メールってそんなもんだろ


380:377
08/04/21 13:08:39 8HZkrnGU
>>378
「JP1」と言うのを検索しましたが、
メール処理とあまり関連しないような気が・・・。
>>379
「そんなもんだ」とは思っているのですが、
メールが届かない事による語弊もありますし、
プログラムに詳しくない人は「メールは必ず届くものだ」と
考えるので、お問い合わせフォームでそれが起きると不安がられます。

381:nobodyさん
08/04/21 13:16:15
「遅れることがあるよん」と謳っておけ

いつでもラグレスで届くシステム作ったらそれだけで億万長者になれるわw

382:nobodyさん
08/04/21 13:20:19
>>377
SMTPサーバのログとキューを確認したら?
きちんとmail関数で送信できる?
それとPOP/IMAPサーバの方もチェックした?


>>378
JP1は無関係だろ?
一応は送信できているんだからジョブは生きてるだろ


383:nobodyさん
08/04/21 13:26:25
週末から今日までのログを読んで笑わせてもらった。
ありがとう。

384:377
08/04/21 13:36:11 8HZkrnGU
>>381
それは注意事項に記載しているのですが、
いかんせん電話までしてくる人が多くて‥。

>>382
サーバの事は疎くてSMTPサーバのログとキューは確認してないです。
また、mail関数(厳密に言えばmb_send_mail関数)を使っていて
これまで問題なく送信、一括配信など行えていたのですが、
なぜか今作っているサイトでは遅延が発生します。

やっぱりサーバの問題もあるんですかね?
さくらインターネットのサーバなんですが。

385:377
08/04/21 13:38:55
少しググったのですが、もしかして
サーバのPHPが4.3.9なのが原因なのかも・・・。

386:nobodyさん
08/04/21 13:48:07
>>384
> これまで問題なく送信、一括配信など行えていたのですが、
> なぜか今作っているサイトでは遅延が発生します。

どちらも正常な動作ですよ。電話鳴らされるのはご愁傷様としか言えない。
メール配送の仕組みや MTA のご機嫌の問題を PHP で解決するのは大変そう。

387:nobodyさん
08/04/21 13:53:45
てか、メール遅延なんて、自分の鯖だけで解決する問題じゃないだろ

388:nobodyさん
08/04/21 13:54:56
その気持ちは分かるけど、俺も人を疑うことを止めて、
人を信じることから接してみたら?

俺もそうしたら、幸せなことが増えたと思う。
苦情をネガティブに考えないで、感謝する気持ちで捉えてみて。

389:377
08/04/21 14:01:16
>>386
やっぱり「普通のこと」なんですね。
さっきサーバに詳しい友人にも電話して聞いてみたのですが、
「メールの遅延や送られないことはある。でもPHPのバージョンを変えるとか
 サーバの設定を変えるとかそういう操作は時期早々。やらない方が良い」

と言われました。ですので、このまま静観します。
ご回答いただいた方、ありがとうございました。

390:nobodyさん
08/04/21 14:01:53 eazv5Nmh
error_reportingの設定って、みんなE_ALLとかE_STRICT使ってる?

391:nobodyさん
08/04/21 14:05:44
送信数が多いならキューを分割してプロセスをリッスンして心太方式にするのもいいカモメ

392:nobodyさん
08/04/21 14:06:06
>>389
プロなら、しょうがないで済まさないぞ。
メールが送信できないケースには様々な原因が考えられるが、
リターンメールが帰ってくるケースではそれに対処するプログラムを組む必要がある。
でないと、到達不能メールが無限ループを繰り返し、相手のサーバーは中継サーバーもダウンさせる。
そうなったら、威力業務妨害で捜査を受ける場合もあるし、賠償問題にも発展する。
かかる観点まで見通して実装するかどうかが、プロとアマの分水嶺だよ。

393:nobodyさん
08/04/21 14:08:42
>>384
ログ解析したら、だいたのボトルネックが分かるものだよ


394:nobodyさん
08/04/21 14:18:19
「問い合わせフォーム」にMAILER-DAEMONさんへ自動返信する機能を
実装するかどうかが分水嶺なのですね。わかります。

395:377
08/04/21 14:19:08
mb_send_mail関数を使ってもサーバのメールログに情報が残るんですか?
お恥ずかしながら、sendmail送信の場合、ログが残らないと思っていました・・。

と言うことは、そのログを閲覧できるレンタルサーバを借りなければ
いけないと言うことですよね?さくらじゃ無理そうだ・・・

396:nobodyさん
08/04/21 14:22:38
共有レンサバじゃ厳しいだろな
送信関連の規制にひっかかってるんじゃね?
スクリプトである程度調整できるかもしれないけど。

397:377
08/04/21 14:25:00 8HZkrnGU
>>396
1日10件もお問い合わせがないので、送信規制にかかってなさそうです。
アクセスも多くて500PVほどですし。

結構、簡単に考えていたのですが、色々と考えるべき事が多いのですね。。

398:390
08/04/21 14:25:02 eazv5Nmh
漏れの質問はスルーですか、そうですか。

399:nobodyさん
08/04/21 14:27:24
スパムメールサーバーとして、ルートサーバーに登録されてしまったら、
そこから送信されるメールは一切受け付けてくれなくなるよ。
インターネットで死亡宣告を受けるようなもの。

数件ならいいけど、数百件にもなったら危険水域。

400:nobodyさん
08/04/21 14:30:40
>>390
(PHP_OS != 'WINNT') ? error_reporting(0) : error_reporting(E_ALL);

401:nobodyさん
08/04/21 15:55:39 tP2T0+Jy
phpmyadminのようにサーバ上のSQLiteデータベースファイルをブラウザで
編集できるアプリってありますか?


402:nobodyさん
08/04/21 16:13:15
探したら、あった
URLリンク(phpsqliteadmin.sourceforge.net)

403:nobodyさん
08/04/21 16:21:47 tP2T0+Jy
>>402 ありがトン!早速試します。

404:nobodyさん
08/04/21 16:46:56
JP1JP1って日立の中の人なのか?

405:390
08/04/21 16:47:11 eazv5Nmh
>>400
サンクスコ

406:366
08/04/21 16:53:15
自分で作りました。
ありがとございました。

407:nobodyさん
08/04/21 21:40:04
粘着キティは通院日かな?

408:nobodyさん
08/04/21 21:56:39
このスレ、回答者が釣りなのかマジなのかわかんねぇ。
無限ループって何だよ。
Fromを入力可能にするとか?ありえないし。
メールヘッダーインジェクション可能だと、サーバー止められるかもだけど。

>>390
作る時はE_STRICTでやってる。

なんか、本番環境でdisplay_errorがonの所多過ぎない?
ちなみにdisplay_errorはini_setしてもあまり意味無い。
iniでdisplay_error offで、ini_setでonにすると、
パースエラーの時、ini_set自体が実行されないのでパースエラーが表示されない。
逆も然り。
まあ、逆の場合は本番環境でパースエラーは無いだろうから良いっちゃ良いけど、
精神衛生上良くない気がする。

409:のし図
08/04/21 23:17:05 YYj5TAUN
mkでこんなセキュホみつけたのですが、ここからindex.cgiのソースを見るにはどうすればよいのでしょうか?
URLリンク(mk-board.net)
穴みたいです
セキュリティに詳しい方教えて下さい

410:nobodyさん
08/04/21 23:22:27
ここはperlじゃないよ。

cgiは関連付けされてるから見えないみたい!?

411:のし図
08/04/21 23:28:53 YYj5TAUN
>>410
何かと方法ってないのですか?

412:nobodyさん
08/04/22 00:07:08
ここはperlじゃないよ。

413:nobodyさん
08/04/22 03:24:49
そんな穴じゃ抜けない

414:nobodyさん
08/04/22 11:42:41 dlLjXVhc
phpのsymlinkってアトミックなんでしたっけ・・・?
DBがMysqlのmyisam使わなきゃで、行ロックの代わりをやる必要が・・。

415:nobodyさん
08/04/22 11:49:33
アトミックで鉄腕アトム的ってこと?

416:nobodyさん
08/04/22 11:50:02
>>415
ちょーーー受けるwwwww

417:nobodyさん
08/04/22 11:50:32
>>415
その発想はなかったわwwww

418:nobodyさん
08/04/22 12:41:18
このスレもこの程度か
相手になりませんでした

419:nobodyさん
08/04/22 13:17:40
クォリティ高須クリニック

420:nobodyさん
08/04/22 14:11:59
>>415-419
無職ニート池沼うざい

421:nobodyさん
08/04/22 15:32:48
mkboardの穴なつかしすぐるw
wwwlangとかあゆ板とかなゆ板にもあるんだよな

422:nobodyさん
08/04/22 18:20:03
mkタクシュリティ

423:nobodyさん
08/04/22 21:57:48
固定の拡張子を付けてテンポラリファイルを作りたいんですけど
何かいい手法はありますか?

tempnamでprefixじゃなくてsuffixの指定ができれば悩む必要なかったのだが

424:nobodyさん
08/04/22 22:30:17
>固定の拡張子を付けてテンポラリファイルを作りたい
何故に?

425:nobodyさん
08/04/22 22:31:44 FtmTZwRr
一意の名前ということなら
time() . '.tmp' じゃだめ?


426:nobodyさん
08/04/22 22:39:33
一時的なファイルではあるんですけど、セッションの途中でブラウザに渡す必要があったもので
コミットしちゃえば正式なファイル名を振るんでユニークなIDも付けるんですが

time() . ".tmp"だと1秒以内に同時に作成されたときに一意性が保証されないですよね
microtime()を使ってファイルを作ってみてダメならリトライを数回やるってのは
よほどのアクセスが無ければ大丈夫な気はしますが泥くさいかなあ

427:nobodyさん
08/04/22 22:42:11
uniqidは?

428:nobodyさん
08/04/22 22:44:15
あ、microtimeを使うならuniqidでも一緒でしたね

429:nobodyさん
08/04/22 22:47:02
uniqidでやってみます
ありがとうございました

430:nobodyさん
08/04/23 02:18:22 Wcjf8rbS
すみません、下記の2点がわからなくて困っています。
すみませんが対処法をお分かりになられる方がおられましたら教授よろしくお願いいたします。

1.PHPでフォルダ(中にフォルダ・ファイルが入っています)を削除(unlinkやrmdir)しようとrmdirコマンドを実行しましたが、「中にファイルなどが入っているので消せません」とエラーになりました。再帰的にファイルを削除するしか方法はないのでしょうか?
参考になる再帰的にファイル・フォルダを削除するロジックを
ご存じでしたらご教授よろしくお願いいたします。


2.同様に、フォルダ(中にフォルダ・ファイルが入っています)をコピーしようとcopyコマンドを実行したら「権限がありません」とエラーが表示されました。
当方の環境はlinux環境ではなくwindows環境ですので権限とか関係ないように考えていたのですが、
windows環境でもディレクトリに権限の設定が必要なのでしょうか?
(また、chmod関数で0777権限を設定しましたがコピーできませんでした・・・)



431:nobodyさん
08/04/23 02:23:13
>>430
1.いい経験になるから自分で考えられるところまで作ってみるべし

432:nobodyさん
08/04/23 03:07:35
>>430
そのあたりのファイル関数は単体に使うものなので再帰的に処理するのが普通
環境依存してもいいとかならsystem()で"rm -rf foo"等のCLIコマンドを叩く方法もあるけどオススメしない
opendir()とか使ってロジックを組んでみるといいよ

433:nobodyさん
08/04/23 05:14:59
>>430
既出だが、異常系の処理をしっかりと対応するなら、JP1とかがお勧め。

そういうのを最初から実装するのは手間とお金が掛かるし、
なんでもphpという一つの技術だけで解決しない方がいい。

434:nobodyさん
08/04/23 05:26:30
あらやだ。JP1君がいらしたわ。

435:nobodyさん
08/04/23 05:51:15
JP1に敵意むき出しの富士通社員がいるね。

436:nobodyさん
08/04/23 06:25:52
jp1にこだわりをみせるフリをした新米se君がいるスレですね

437:nobodyさん
08/04/23 08:33:19
日本一()笑言語w

438:nobodyさん
08/04/23 09:06:47
phpも極めてる人のソースはすごいけどね

439:nobodyさん
08/04/23 10:30:51
         __ ____
      //   ̄  \\    
     //--.--  -─\\    
   //  (● ●) ((●(●) \            地震とかどこの田舎だよ
 .| |.|    ( . ((_人_人__)    | _ _== =   
     \\    ⌒ ` /,/ | |    ̄ ̄ ̄  ̄| ||
    ノ         \\| | | |           ||
  /´                 | |          | |
 |    l                | |          |||
 ヽ    -一ー_~、⌒)^),-、   | |_________| |
  ヽ ____,ノγ⌒ヽ)ニニ- ̄   | |  | = =

440:nobodyさん
08/04/23 19:54:20
>>439の画像、より目にして、
黒の目玉を二つにすると、
なんと画像が立体に見えません。

441:nobodyさん
08/04/23 23:30:52
php5を使っていると、不定期に「Out of memory (Needed 2095360 bytes)」
のエラーが発生していて困っています。

具体的には、MYSQLに接続してmysql_queryを発行した後に結果セットが返却されません。
このエラーが発生した直後の接続は、半分程度の確率で以下のエラーが発生してDBへの接続エラーが発生します。
:mysql_connect() [<a href='function.mysql-connect'>function.mysql-connect</a>]: Lost connection to MySQL server at 'reading initial communication packet', system error: 0

対処方法がありましたら、教えて下さい。
宜しくお願いします。

442:nobodyさん
08/04/23 23:31:14 k1ODucws
441です。sageてました。

443:nobodyさん
08/04/23 23:31:28
メモリ食いすぎの部分を直す

444:nobodyさん
08/04/24 00:22:52
ファイルが存在する場合のみ処理を実行するため、
$fp = fopen("./$abc.txt", "r");
if($fp != null)
処理〜

というように組んでいるのですが、
この時、ファイルが存在しておらず、$fpの値がnullだった場合でもfcloseで閉じる必要はあるのでしょうか?

445:nobodyさん
08/04/24 00:58:17
>>444
fopenでファイルの存在確認するのはお行儀が悪いですね

446:nobodyさん
08/04/24 00:59:05 LaHdtlHM
>>439の画像、目玉をトリプルクリックするとなんと目からビームを発射しません。

447:nobodyさん
08/04/24 00:59:25
>>444
しかもfopenで失敗したのだからファイルは開けてないのに何故閉じる必要があるのだ
あけてないものを閉じる意味が理解不能

448:nobodyさん
08/04/24 01:01:45
> fopenでファイルの存在確認するのはお行儀が悪いですね
それは素人の意見ですね。

どうせfopenの前にfile_existsとかで調べろといっているのでしょうが、
file_existsとfopenの間にファイルが消されたらどうするんですか?
マルチタスクOSなのだからありえる話です。

449:nobodyさん
08/04/24 01:01:47
とりあえず・・・そんなあなたにfile_exist()

450:nobodyさん
08/04/24 01:03:10
書く前に否定された。

451:nobodyさん
08/04/24 01:04:50
file_exists(笑)

452:nobodyさん
08/04/24 01:08:05
なんで最後に「マルチタスクOSだから!OSがマルチタスクなんだから!」という
ネタを持って来るんだ。

453:nobodyさん
08/04/24 01:09:47
どうでもいいところに突っ込むな

454:nobodyさん
08/04/24 01:26:58
>>>444=448

455:nobodyさん
08/04/24 01:28:00
つーことは、お前、質問者に
ダメ出しされてるのかよw

456:444
08/04/24 01:32:57
>>445-
ありがとうございました。fcloseは必要ないようですね。
fopenで処理を分けるのもよく無さそうなので再考してみます。

457:nobodyさん
08/04/24 02:08:48
ファイルの存在確認後に削除されてたなら、それが正しい「Worning」たる理由なんじゃね?

458:457
08/04/24 02:09:11
Warning.

459:nobodyさん
08/04/24 02:13:26
何を言いたいのかさっぱりわからんw

460:nobodyさん
08/04/24 02:40:13 LhY+BYrB
PHPでCのように 7 / 2 で整数の 3 が欲しい時は
floor(7/2) とするのが一般的ですか?

461:nobodyさん
08/04/24 03:19:38
>>460
C99 と合わせたかったら 0 に近付くように丸める。
intval(7/2) か整数型へのキャスト (int)(7/2) で。

462:nobodyさん
08/04/24 04:00:47
file_exists、fopen、 両方で判別するのが大人。

どっちの方法とか言ってる時点でウンコ。

463:nobodyさん
08/04/24 04:19:28
セーフモードも考慮するとfile_existsなんて使わないで別の関数があるだろ

464:nobodyさん
08/04/24 04:21:02
>>462
それで満足気に話しているお前が痛々しいだけ。

file_existsで存在を確認した後に、fopenの処理をするまでの間に
ファイルが存在しなくなる可能性はある。
1日10万PV位のサイトを運営していると、そんなケースなんて日常茶飯事。

まぁ、素人に言ってもしょうがないがwww

465:nobodyさん
08/04/24 04:24:12
煽りたいだけの奴はよそいってくれ

466:nobodyさん
08/04/24 04:36:22
素人ども向けに「俺様がてめえらに教えてやる排他制御」でも書いてくれたほうが
煽りよりずっといいよ。

467:nobodyさん
08/04/24 04:41:32
>>462
JP1は黙れ。

468:nobodyさん
08/04/24 05:26:59
レスが増えてると思ったら煽るだけで提案しないバカがまた沸いたのか

469:460
08/04/24 06:31:20 1f8tGK11
>>461
ありがとうございます

470:nobodyさん
08/04/24 10:09:19
俺はPerl出身なんだけど、普通、ファイルオープンするだけでも
やっぱそこまでファイルの存在の確実性を意識しないとダメ?
if(($IN = @fopen($file,'r+')) < 0)
これじゃダメ?

あと、書き込みの時は、物理的ロック(自作ロック)して、
ファイルオープンしてflockってしてるんだけど、これでもやっぱ不十分?
物理的ロックってのはロック用ファイル作成する方法です。

471:nobodyさん
08/04/24 10:32:12
おれはデータベース使ってロックする方法を取り入れてる

472:nobodyさん
08/04/24 11:29:16
データベースのロック機構使いながらファイル使うって、
レインコートを着ながら、傘を差すようなものだな。
頭にウジでも湧いているじゃないだろうか?

473:nobodyさん
08/04/24 11:33:25
頭に蛆は湧いていないけど、風呂場に蛆が湧いているよw

474:470
08/04/24 11:47:44
いや、俺も最近はデータベースばっかだけど、
でもファイル使わないといけない時もあるしな。RSSとか。

475:nobodyさん
08/04/24 11:56:29
>>472
君はいろんなものを作って知識を貯めたほうがいいよ
自分の無知を晒すことになるから

476:nobodyさん
08/04/24 12:09:45
無知をさらしているのはお前だよw
データベースも実体はファイル。
ファイルを操作するI/Fが違うだけ。

使うばかりじゃなくて、仕組みを理解しないと、応用が効かないよ。

477:470
08/04/24 12:27:26

> if(($IN = @fopen($file,'r+')) < 0)
これじゃまだダメだと思う?

478:nobodyさん
08/04/24 12:34:58
>>477
う〜ん、なんかごまかしって感じ

479:nobodyさん
08/04/24 13:09:05 RVXwLuUy
Wikipediaみたいな
URLリンク(example.com)
みたいなURLってPHPでどうやるの?
index.php?←消せるの?

480:nobodyさん
08/04/24 13:11:46
>>479
$_server['path_info']

481:479
08/04/24 13:17:47 RVXwLuUy
>>480
PATH_INFOって↓みたくなるんじゃないの?
URLリンク(example.com)

482:nobodyさん
08/04/24 13:20:33
それかrewrite

483:nobodyさん
08/04/24 13:30:51
こういう口の利き方の質問者は教えても感謝をしないから教えなくて良いよ

484:nobodyさん
08/04/24 14:23:25
>>470
> やっぱそこまでファイルの存在の確実性を意識しないとダメ?
それは要求次第。
単純に読み取りしたい時は調べても無駄だからやらない。
状態が分かってもそれは fopen() を呼んだ時点の状態ではないから。
>>444 が言う「ファイルが存在する場合のみ処理」の場合は
存在が分かればいいのだから file_exists() がより妥当っていうお話でしょう。
質問にまともに答えず別の話にもってく奴が悪いんだけどな。

あと fopen() の返り値はリソース型もしくは論理型の false なので
比較は fopen() !== false または is_resource(fopen()) で。

> ロック用ファイル作成する方法
システムコールのロックが使えない、欠陥がある場合や
mandatory lock したい時は使わる一つの手だね。


485:nobodyさん
08/04/24 14:37:34 WKXs89Ye
質問させてください
ヘッダとフッタだけ出力する.PHPに 中身のコンテンツを表示させる.PHPを
includeさせているとします。
このとき、中身のPHPにheader関数でリダイレクトさせる機能はつけられないんでしょうか?
この機能はそれより前に何も出力してないことが条件とありますが、
(親の.phpが)ヘッダを出力してるから無理?
テストしたところ動かないです。 これは上記の理由によるものですか?

486:nobodyさん
08/04/24 14:44:04
こういう図か
test.phpの中身
フッタ
コンテンツ(ここは外部ファイルをインクルードして表示)
ヘッダ

んでtest.phpではじめの出力でheaderを送信させてリダイレクトさせたいということか?

487:nobodyさん
08/04/24 14:44:23
質問の仕方としては15点

488:485
08/04/24 14:57:52 WKXs89Ye
<html>
<header></header>
<body>
<?php
include "nakami.php";//中身を読み込み。この中でリダイレクトさせてる(header()で)
?>
</body>
</html>
って感じです(外側の.php)
こういうやり方だと、リダイレクトしないんです。

489:485
08/04/24 15:02:12 WKXs89Ye
>>486
どうもです
リダイレクトの関数を設置してるのは、読み込まれている側(コンテンツ部分)の
.phpです

490:nobodyさん
08/04/24 15:05:25
>>485 yes

491:nobodyさん
08/04/24 15:07:19
>>488
nakami.phpを読み込んでheader関数使う前にタグが出力されてんじゃん

492:nobodyさん
08/04/24 15:09:14
>>488
で、なんでリダイレクトする必要があるわけ?
アフィ厨で不正やろうってわけじゃないよな
出力させたいページをそのコンテンツ部分に読み込ませればいいじゃん

493:485
08/04/24 15:14:28 WKXs89Ye
すみません、沢山の人に答えてもらって感謝してます
結局ムリってことですよね、親のphpに出力されてるから…
この場合はjavascriptを中身の.phpに入れるしかないですよね?

>>492
フォームで、アンケート.php に「トップ.php」「確認.php」「完了.php」を
読み込ませてるんです。(ブラウザに表示されるURLは常にアンケート.php)
完了まで行ったら二重送信防止にリダイレクトさせたくて。。 って事情でした

494:nobodyさん
08/04/24 15:17:33
ファイルを分けたいのなら

アンケート.phpにいろんなファイルを読み込ませて一つのファイルで処理してるように見せかけたいの?
なんかあなたがやってるのは無駄な処理だな

495:485
08/04/24 15:21:36
>>494
どんなやり方がオススメですか? 良かったら聞かせてください

496:nobodyさん
08/04/24 15:24:59
id隠れてるのは偽者?

497:nobodyさん
08/04/24 15:26:08
>>485
ここまでの回答の流れをぶったぎってレス
ob_start 使えば実現できる

498:nobodyさん
08/04/24 15:34:24
Smarty使えば一発で解決する

499:485
08/04/24 15:36:55 WKXs89Ye
>>496
僕のことですか? >>495も僕ですよ
本題とずれてきたのでsageたほうがいいかなと思いました
enq_top.php > enq_conf.php > enq_rewrite.php > enq_finish.php と、
トップから完了まで全パターンの.phpを(使いまわせるはずのヘッダやフッタ含めて)
作るのがめんどくさいのでincludeさせたんですが、、 他にどんな良い方法があったんだろうと
気になってます。 smarty使えば、ヘッダやフッタをテンプレートとして効率よく管理できるとは思いますが…

>>497
ありがとうございます 調べてみます
なんだか特殊な機能みたいで難しそうですが、、 ありがとう

500:485
08/04/24 15:39:29 WKXs89Ye
>>498
あ、やっぱりsmartyですか…
一度勉強し始めて、基礎も出来てないのによしておこうと思ってやめました
またやってみようかなぁ。。 プロはみんな使ってるんでしょうか?>smarty

501:nobodyさん
08/04/24 17:02:09
ob_*なんてデフォで使えるようになってるだろ

502:nobodyさん
08/04/24 17:57:45
$url="hoge"; を<a href=hoge>hoge</a>にする楽なやりかたないでしょうか?

503:nobodyさん
08/04/24 18:22:27
echo "<a href=\"$url\">$url</a>";が面倒ですと?


504:nobodyさん
08/04/24 18:40:44
こういうときは間違った方向に走るもんじゃないのか。

$str = '$url="hoge"; がいっぱい出てくる $url="hoge"; だらけの文字列';
echo str_replace('$url="hoge";', '<a href=hoge>hoge</a>', $str);

505:nobodyさん
08/04/24 18:45:03
俺は printf( "<a href=\"%s\">%s</a>", $url, $url ); の人

506:nobodyさん
08/04/24 18:59:23
メソッドっていうのか
echo linkfy($url);
こうできませんかね。。。

507:nobodyさん
08/04/24 19:01:45
jibunndekannsuuwotukurebaiijannka

508:nobodyさん
08/04/24 19:01:56
メソッドは知ってるけど関数は知らないのか?

509:nobodyさん
08/04/24 19:09:35
ということはVBの人か。

510:nobodyさん
08/04/24 19:15:05
>>506
URLリンク(www.php.net)
ここ読んで function linkfy($arg) 作ればいいよ。
sprintf( "<a href=\"%s\">%s</a>", $arg, $arg) を return するだけの関数。

511:nobodyさん
08/04/24 19:16:46
なんだこの流れ・・・

512:nobodyさん
08/04/24 19:22:07
素質ある技術者の技術的な考察とかJP1よりは、のどかでいいよ。

513:nobodyさん
08/04/24 19:26:21
>>510
キモイ書き方薦めるのやめれ

514:nobodyさん
08/04/24 20:18:10 1f8tGK11
このマニュアルってオフラインで使えるダウンロード版はありますか?
URLリンク(www.php.net)

515:nobodyさん
08/04/24 20:39:33
ここから好きなの落として使って

URLリンク(www.php.net)



516:nobodyさん
08/04/24 21:15:56 mjxa+9jc
本当にくだらない質問で申し訳ございません。

リンク先のa.phpに文法エラーが存在する場合、IE6:500エラー Firefox:syntax error が
表示されます。
上記の場合、IEでsyntax errorを出現させる設定等あるのでしょうか?

どなたかご教示くださいませ。


517:nobodyさん
08/04/24 21:25:59
IE側の設定だった気がす

518:nobodyさん
08/04/24 21:30:32
メニューの
[ツール] - [オプション]

[詳細設定]タブ
ブラウズ カテゴリの
 HTTP エラー メッセージを簡易表示する
のチェックを外す

これIE6ね。IE7はワカンネ

519:516
08/04/24 21:35:25 mjxa+9jc
>>517-518

IE6です。>>518の設定方法を試してみたところ syntax error が表示されました。
本当にありがとうございました。


520:nobodyさん
08/04/24 21:44:51
どういたしまして。

521:nobodyさん
08/04/24 21:46:13
>>518
IE7でも同じ設定項目があるyo

522:nobodyさん
08/04/24 22:50:12
>>518
JP1でも同じ設定項目があるyo

523:nobodyさん
08/04/25 07:00:29
JP1って流行っているの?
何なの、このJP1、JP1ってレス?

524:nobodyさん
08/04/25 08:22:49
JP1を売り込む営業さんが数字伸ばすためにここで宣伝してるんだろ
営業へただからここで宣伝してるんだろ

525:nobodyさん
08/04/25 15:18:13 ETeE5V7l
PHPからcronにジョブを足したり消したりできませんか?

526:nobodyさん
08/04/25 15:19:24
>>525
それができたらどうなるかわかりますか

527:nobodyさん
08/04/25 15:31:54
>526が何を懸念してるのか知らないが、system使えば出来るんじゃ?
やったことねーけど

528:nobodyさん
08/04/25 15:40:10
>>526
PHPでスケジューラーが作れます

529:nobodyさん
08/04/25 20:54:21
phpでもperlでも、良いんですが、
フリーの掲示板のcgiを探しています。
条件は
1.英語の掲示板であること。
2.投稿時にCAPTCHA認証すること。
です。
知ってましたら、教えてください。

530:nobodyさん
08/04/25 20:55:42
>>529
kentにcaptchaがついてた
日本語は自分で英語にすりゃできる

531:nobodyさん
08/04/25 21:06:33
大文字JPはゆうメイトを思い出すからやめれくれ

532:nobodyさん
08/04/26 00:43:34
とりあえずPHPエディタというエディタのスタンドアローン版でも使ってみたら?

533:nobodyさん
08/04/26 00:45:30
>>532
phpspotさん乙

534:nobodyさん
08/04/26 00:50:37
あれは使えん

535:nobodyさん
08/04/26 01:10:46
Emacs使ってるけど、ヒアドキュメントがちと書きにくい。

536:nobodyさん
08/04/26 01:52:48
FlashDevelopは意外と快適。

537:nobodyさん
08/04/26 06:10:19
JP1、JP1ってもういいよ。
確かに、一流のソフトであることは間違いないし、
色々な公共機関、金融システムで使われているし、
そんなことは周知の事実だと思うよ。

538:nobodyさん
08/04/26 10:59:49
>>537
ってか、そういうレスしているのが逆に宣伝になっていると思うんだが・・・

539:nobodyさん
08/04/26 11:18:17
>>538
537はJP1JP1ってうるさい奴だろ
批判するような感じで宣伝してるんだ

540:nobodyさん
08/04/26 12:50:06
PHPからうまくメールが送れません。
というか、maillogをみると、Fromが変わらないので、localhost.localhostからメールが飛んでしまい
受信先に拒否されてる感じです。

もともと、ZendFramwork使っていたのですが、問題を特定するために
mail("hoge@hoge.jp",'test','body','From: info@hoge.net' . "\r\n");
という最小限のコードで試しました。

php.iniのsendmail_from=なんかもいじってみましたが、Fromがlocalhost.localhostになってしまいます。

他になんか送らなきゃいけないheaderとかあるのでしょうか?

541:nobodyさん
08/04/26 12:59:44
営業成績上げないと夏ボが危ういんじゃね?w

542:nobodyさん
08/04/26 13:20:52 ZONOtLDh
URLリンク(jp.youtube.com)

543:nobodyさん
08/04/26 13:21:44
>>542
グロ注意

544:nobodyさん
08/04/26 13:42:04
>>540
そういうのは環境依存の可能性が高いんだから、環境を書くべき。
あと、騙られる前にあげとけ。

545:nobodyさん
08/04/26 14:13:17
>>544
お前に、そんな偉そうにレスされる覚えはない。

546:nobodyさん
08/04/26 14:28:18
>>545
質問者なのに、随分と偉そうですね。
そういう人には、誰も答えないと思いますよ。

547:nobodyさん
08/04/26 16:46:11 eenghTEY
簡易的なウェブメールプログラムを作っています。
mb_send_mail でメールを送信する際に
あて先を
山田 <hoge@example.jp>
など使いたいのですが、
日本語や任意の文字列をアバウトに許可すると
セキュリティ的に怖いと感じます。

mb_send_mail のあて先部分は
この文字列を制限・エスケープかけておけばOKという
基準はあるでしょうか?
またお勧めの方法がありましたらお願いします。


次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

5385日前に更新/238 KB
担当:undef