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

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

レス数が900を超えています。1000を超えると表示できなくなるよ。
0001nobodyさん2005/11/25(金) 21:16:56ID:???
PHPに関するくだらねぇ質問用スレです。
ここなら本スレで回答のないお前の下らない質問に回答があるかも知れません。
次スレは>>970あたりが建てて下さい

・過去スレ
【PHP】くだらねぇ質問はここに書き込みやがれ
http://pc5.2ch.net/test/read.cgi/php/1099322141/
【PHP】くだらねぇ質問はここに書き込みやがれpart2
http://pc5.2ch.net/test/read.cgi/php/1105218084/
【PHP】くだらねぇ質問はここに書き込みやがれpart3
http://pc5.2ch.net/test/read.cgi/php/1107780435/
【PHP】くだらねぇ質問はここに書き込みやがれpart4
http://pc8.2ch.net/test/read.cgi/php/1110697712/
【PHP】くだらねぇ質問はここに書き込みやがれpart5
http://pc8.2ch.net/test/read.cgi/php/1114787573/
【PHP】くだらねぇ質問はここに書き込みやがれpart6
http://pc8.2ch.net/test/read.cgi/php/1117945031/
【PHP】くだらねぇ質問はここに書き込みやがれpart7
http://pc8.2ch.net/test/read.cgi/php/1121100429/
【PHP】くだらねぇ質問はここに書き込みやがれpart8
http://pc8.2ch.net/test/read.cgi/php/1123431535/
【PHP】くだらねぇ質問はここに書き込みやがれpart9
http://pc8.2ch.net/test/read.cgi/php/1125716012/
【PHP】下らねぇ質問はここに書き込みやがれpart10
http://pc8.2ch.net/test/read.cgi/php/1127581425/
【PHP】下らねぇ質問はここに書き込みやがれpart11
http://pc8.2ch.net/test/read.cgi/php/1129582431/
【PHP】下らねぇ質問はここに書き込みやがれpart12
http://pc8.2ch.net/test/read.cgi/php/1130835396/
0809nobodyさん2005/12/14(水) 23:57:11ID:6RnHukHD
簡単そうに思えて、全然思いつかないです。
変数内に$hoge='"hoge1" . "hoge2"'
と入っていて、$hogeから、最終的に
hoge1hoge2
を得たいのですが、どのようにしたら良いでしょうか?
0810nobodyさん2005/12/14(水) 23:59:01ID:???
ディレクトリもファイルも好きなだけ作れる
UIDかGIDでの同一性が要求されるだけ

要は「他人のファイルが覗ける」状態をどう考えるか
0811nobodyさん2005/12/15(木) 00:05:51ID:???
>>809
それだけなら余計なものを空白に置換するだけでいい
どういうデータを前提してるのかわからんから答えようが無い
CSV的なものなら正規表現で拾ったら?
0812nobodyさん2005/12/15(木) 00:14:05ID:???
正直safe_modeなんていう怪しい動きのする機能は使わないのが正解では?
0813nobodyさん2005/12/15(木) 00:14:18ID:???
>>808
1個くらいなら自分で作れ
0814nobodyさん2005/12/15(木) 00:14:50ID:???
>>812
具体的に
08158022005/12/15(木) 01:09:42ID:???
>>813
> 1個くらいなら自分で作れ

残念ながら月毎に一つフォルダが作られる。
年に1個くらいならそりゃ自分でフォルダくらいつくってもいいですよ、って思えるが
流石に月一は(;´Д`)・・・
0816nobodyさん2005/12/15(木) 01:11:47ID:???
そんな物Perlと併用すれば良いだけだろ
0817nobodyさん2005/12/15(木) 01:12:05ID:???
読んでないけどまたエスパー希望のアホ質問か
ディレクトリの有無なんて設計でどうとでもなるだろうに
0818nobodyさん2005/12/15(木) 01:16:40ID:???
読め
即行解答でてる
0819nobodyさん2005/12/15(木) 01:17:46ID:???
>>815
今日12個作れよ
08208022005/12/15(木) 01:31:58ID:???
>>810
> ディレクトリもファイルも好きなだけ作れる
> UIDかGIDでの同一性が要求されるだけ
>
> 要は「他人のファイルが覗ける」状態をどう考えるか

user権限でPHPにアクセスした結果作られるディレクトリの所有者はapacehだったけど
さらにその中に作られるファイルの所有者もapacheということにすればUID/GIDは同一
だから問題ない気がするけど・・・

>>819
> 今日12個作れよ

( ゚д゚)・・・

(゚Д゚)ハッ!
0821nobodyさん2005/12/15(木) 01:33:47ID:???
そのファイル作成を実行してるスクリプトが誰のものか考えろ
つーかまずマニュアル読め
0822nobodyさん2005/12/15(木) 01:35:25ID:???
>>820
こっち見んなw
0823nobodyさん2005/12/15(木) 01:42:58ID:???
まあぶっちゃけこんなとこで聞くよりマニュアル読んだほうが速いよな
0824nobodyさん2005/12/15(木) 02:29:19ID:???
プログラム以前にやる気ぐらい出せよ
08258022005/12/15(木) 02:33:07ID:???
やる気か・・・
ニートの俺が今一番欲しいものの中の一つだな(´・ω・`)・・・
0826nobodyさん2005/12/15(木) 02:38:49ID:???
systemでmkdir→chmod 777ってのは無理?
0827nobodyさん2005/12/15(木) 02:46:08ID:???
chmodしてもumaskの影響があるしなぁ。
まぁ、それ以前にchmod自体が許可されない場合もあるが。
0828nobodyさん2005/12/15(木) 02:48:13ID:???
>>809
$hoge='"hoge1" . "hoge2"';
eval('$hogehoge = ' . $hoge . ';');
print $hogehoge;
0829nobodyさん2005/12/15(木) 02:49:52ID:???
>>816
せめてCLI版PHPとの併用にしよーぜw
0830nobodyさん2005/12/15(木) 02:51:44ID:???
セーフモードでsystem?
だいたいパーミッション関係ないし
08318022005/12/15(木) 02:55:55ID:???
>>826
chmodでアクセス権は変更できたけど、ファイルを生成する段階でやはり
「UIDが違う」という理由で失敗するみたい(´・ω・`)ショボーン
0832nobodyさん2005/12/15(木) 03:00:29ID:???
mkdir→chown…はさすがに無理か?
0833nobodyさん2005/12/15(木) 03:06:50ID:???
>>829
すでにある資源を使えばいいと思うが
XREAがオフィシャルで用意してるものがあるわけで
0834nobodyさん2005/12/15(木) 04:58:52ID:???
>>802
だからさ、mod_phpのsafe_modeはそういう仕様なんだから諦めろっての。
CGIで動かすなり何なり手段は残されてるんだからさ。
0835nobodyさん2005/12/15(木) 05:18:35ID:???
>>808
> なんかPHPだけ不公平って感じやな。
実行速度を高速にする代わり共有で使うにはセキュリティ的に危険な
Webサーバーのモジュールとして動かそうとしてるための措置。
別に、Perlと同じCGIで動かすようにすればその辺の弊害はなくなる。
その代わり、PerlなCGIよりもっと遅いけどw
0836nobodyさん2005/12/15(木) 05:27:51ID:???
プロセスとスレッドで実行速度が変わるというのは新説だな
0837nobodyさん2005/12/15(木) 05:30:46ID:???
CGIはシェル経由で呼び出すんだから
レスポンスが当然遅いだろが
0838nobodyさん2005/12/15(木) 05:37:41ID:???
実行速度
0839nobodyさん2005/12/15(木) 05:39:11ID:???
処理速度は一緒。実行速度は遅い。ってことじゃねーの?
0840nobodyさん2005/12/15(木) 05:47:44ID:???
>>837
パスを解釈してバイナリ叩いてるのはWeb鯖じゃないのん?
0841nobodyさん2005/12/15(木) 05:53:02ID:???
もしかしたらSynchronizeのコストのことを言ってるんです
0842nobodyさん2005/12/15(木) 05:53:40ID:???
あー。Winodwsサーバーだとそういう動きになるのか。
0843nobodyさん2005/12/15(木) 05:54:24ID:???
Winodwsってなんだw
0844nobodyさん2005/12/15(木) 06:13:00ID:???
>>840
いやWinの話じゃないよ
0845nobodyさん2005/12/15(木) 06:37:41ID:TFBuiRij
女という生き物は、大体、シャワーついでに風呂場でシッコもしてて
便秘で、パンツにウンスジが付いてて、パンツはオムツみたいにオールウェイズ汚くて
めこが臭くて、男より足も臭くて、寝起きが別人で、寝起きの息が臭くて
隠し事が好きで、オパーイがデカイと喜んで、オケーツがデカイと悲しんで
愚痴、陰口、人の噂話が好きで、相談が趣味で、基本的に甘えん坊将軍で
基本的にMっ気があって、取り扱い危険物で、基本的にちょっとアホで
泣き虫で、ムッツリスケベで、変なところで深読み、裏読みして自爆して、男に振り回されるのが趣味で、一喜一憂するのが好きで
お金が好きで、基本的に臆病だけど反面、冒険が好きで、芋系統が好きで
男によく騙されるのが趣味で、でもそのかわり、化粧と詰め物と補正下着で男を騙すのが趣味で
ダイエット中らしいのに何故か甘い物とかお菓子食ってて、イベントごととか行事ごと、記念ごととかが好きで
Hしたい時は恥ずかしいから基本的に自分からHしたいとは言わず、Hな下着を装備して
男から言わせたり、誘導したりするのが趣味で、実はよくおならします
0846nobodyさん2005/12/15(木) 07:32:55ID:???
そうだったの( ̄□ ̄;)!!
0847nobodyさん2005/12/15(木) 07:33:53ID:???
>>845
シッコまで読んだ
0848nobodyさん2005/12/15(木) 07:49:08ID:dK1AjZcq
すれ違いかも知れないですが、受信したメールの整形の仕方を解説したサイトを知ってる方いませんでしょうか。
もしくはpearのNet/POP3の使い方を説明してるサイトでもいいんですが。。
0849nobodyさん2005/12/15(木) 08:25:50ID:???
もっとボーイッシュな女の子に出会いたい(´・ω・)
0850nobodyさん2005/12/15(木) 08:28:34ID:???
俺の彼女もうんこついてたけど愛してやったぞ。昔ね。
0851nobodyさん2005/12/15(木) 11:33:24ID:UeTwmalZ
異なるパスに相対参照でincludeしているライブラリにさらに別のパスからincludeするとうまくいかないです

例:

~user/public_html/hoge/hoge.php
-----------------------
<?php
include '../library.php';
-----------------------
↓
~user/public_html/library.php
-----------------------
<?php
include '../db/db_control.php'';
-----------------------
↓ ここ失敗 failed to open stream: No such file or directory in ...
~user/db/db_control.php
-----------------------
<?php ...
-----------------------

しかし~user/public_html/library.phpから同じディレクトリのファイルはincludeできます。
何が原因なのでしょうか・・・
0852nobodyさん2005/12/15(木) 11:38:28ID:???
>>851
最初に実行したファイルのディレクトリをカレントディレクトリとして、
そこからの相対パスで探すから。
0853nobodyさん2005/12/15(木) 11:39:31ID:???
どのファイルでもhoge.php(include元)からのパスを記述する

インクルードされる側のスクリプトからの相対パスを指定したいなら
dirname(__file__)を使う

定数を使って設定ファイルでパスを管理


のいずれか
0854nobodyさん2005/12/15(木) 11:45:05ID:???
呼び出し元である
user/public_html/hoge/hoge.php
が基準となるからでしょ。
0855nobodyさん2005/12/15(木) 11:53:59ID:???
やっぱり呼び出し元が基準なんですね・・
だとすると
~user/public_html/library.phpから同じディレクトリのファイルなら呼び出せるのは何故なのでしょうか。
include_pathに./が含まれてるとしても変な感じがする

ともかくdirnameなど試してみます、ありがとうございました

0856nobodyさん2005/12/15(木) 11:55:06ID:???
呼び出し元つーかワーキングディレクトリね
0857nobodyさん2005/12/15(木) 17:12:18ID:???
こんにちは。
少しお聞きしたいのですが、textに書き込む処理をするプログラムを作った時、
txtに書き込まれたものが文字化けするのですが、どうしてでしょうか?

euc-jpモードでtxtを読み込むときちんと表示されましたが、
普通に開くと文字化けという感じです。

実際、euc-jpで言語書いてるので仕方ないんですかねぇ・・・(´・ω・`)
0858nobodyさん2005/12/15(木) 17:18:06ID:???
>>857
普通に開くってのはどういう意味さ。

euc-jpで書き込まれたテキストを
euc-jpに対応してないエディタで開いたなら、
文字化けしてあたりまえだぞ。
0859nobodyさん2005/12/15(木) 17:18:36ID:???
>>857
他の文字エンコードで書き込みたいのなら、mb_convert_encodingしたものを書き込みましょう。
0860nobodyさん2005/12/15(木) 17:20:51ID:???
>>858,859
即レスありがとうございます。
確かにそうですよね・・・。
失礼しましたorz

mb_convert_encoding勉強してきます。
0861nobodyさん2005/12/15(木) 17:43:03ID:x48kBhXK
メモ帳とかじゃ見れねえよ。
0862nobodyさん2005/12/15(木) 17:58:13ID:???
includeとかで他のPHPファイルとか読み込むととたんに変数の扱いが難しくならない?
PHPって基本的に変数はグローバルだから読み込み先のPHPファイルとかでいきなり
見ず知らずの変数とかが登場したりするじゃん。
「この変数は一体どのファイルで定義されたんだろう」
ってことで探したり把握するので一苦労って経験無い?
0863nobodyさん2005/12/15(木) 18:15:40ID:tNJHcKWR
配列Aと配列Bがあるとします。
このAからBと重複する部分を削除した配列Cを出したいのですが、
簡単な方法などはないでしょうか?

イメージとしては 配列C=配列A-配列Bという感じです。
配列Aの中から配列Bの要素を消したいと思っています。
0864nobodyさん2005/12/15(木) 18:16:49ID:???
>>862
>基本的に変数はグローバル

includeでベタソース読もうとするからそうなるんだろ。
functionにまとめるとか、ちゃんと考えて作れば何も苦労しないけど。
0865nobodyさん2005/12/15(木) 18:19:33ID:???
>>863
array_diff
じゃだめか?
0866nobodyさん2005/12/15(木) 18:44:29ID:z/EbHORg
掲示板の書き込みなんかで20行より多いのを20行まで縮めたりするで、
改行ごとに区切って配列に入れて上から20個取り出すより良いやり方ありますか?
0867nobodyさん2005/12/15(木) 18:52:08ID:???
>>866
つttp://jp2.php.net/manual/ja/function.file.php
0868nobodyさん2005/12/15(木) 19:08:32ID:???
書き方が悪かったのですが
その掲示板の書き込みというのは
$kakikomi = "あ\nあ\nあ\nあ\nあ\nあ\nあ\nあ\nあ\nあ\nあ\nあ\nあ\nあ\nあ\nあ\nあ\nあ\nあ\nあ\nあ\nあ\nあ\nあ\nあ";
みたいなデータです。
この$kakikomiを
$kakikomi = "あ\nあ\nあ\nあ\nあ\nあ\nあ\nあ\nあ\nあ\nあ\nあ\nあ\nあ\nあ\nあ\nあ\nあ\nあ\nあ";
こんな風にしたいんです。
0869nobodyさん2005/12/15(木) 19:14:09ID:???
>>868
1:explode
2:数合わせ
3:join

でどう?
0870nobodyさん2005/12/15(木) 19:16:59ID:???
>>869
それにします
ありがとうございました
0871nobodyさん2005/12/15(木) 19:26:36ID:???
PHPでは画像やFLASHなど作れますが、将来的にMIDIも作れるようになるんでしょうか。
0872nobodyさん2005/12/15(木) 19:31:19ID:???
>>871
今でも作ろうと思えば作れますぜ
0873nobodyさん2005/12/15(木) 19:33:46ID:???
>>871
PHPでFlash作れるの?知らなかった・・・。
0874nobodyさん2005/12/15(木) 19:35:12ID:???
ファイルの生成だけならphpに限らず大概の言語で出来るがな
0875nobodyさん2005/12/15(木) 20:26:42ID:???
>>873
CGIったら、ああPerlスクリプトのことが言いたいんだなと同程度には
Flashムービーファイルだと理解してやれよ。
0876nobodyさん2005/12/15(木) 21:08:55ID:lIkliCzn
Smartyのテンプレートにカタカナの「マ」が入っていると
エラーがでてしまいますorz...

文字コードの問題なんだと思いますが、池沼なのでどうす
ればいいか分かりません。

アドバイスおねがいします。
0877nobodyさん2005/12/15(木) 21:10:22ID:???
MIDIってFlashのことなのか?????
0878nobodyさん2005/12/15(木) 21:19:41ID:???
>>875
さすがエスパー伊達じゃないぜ
0879nobodyさん2005/12/15(木) 21:21:06ID:???
エスパー伊東に見えた
0880nobodyさん2005/12/16(金) 00:44:30ID:???
$dateが23か0じゃなかった場合にaaaを出力して、それ以外の場合はbbbを出力します。

if (($date !== 23)or($date !== 0)){
echo "aaa";
}else{
echo "bbb";
}

これだと$dateが23の場合でもaaaが出力されてしまうのですが、どこが間違っているのでしょうか。
0881nobodyさん2005/12/16(金) 00:56:20ID:???
ANDじゃろ
0882nobodyさん2005/12/16(金) 01:01:37ID:???
>>880
$date が 23 の時

$date !== 23 は false
$date !== 0 は true

false or true = true

∴どんな数字を入れても成り立つ。

基本中の基本、というかこんな事で悩むなら作るの向いてないんじゃないか・・?
0883nobodyさん2005/12/16(金) 01:07:43ID:???
>>881-882
ありがとうございました解決しました。
前にも向いてないって言われました…。でも好きなんです。
0884nobodyさん2005/12/16(金) 01:10:23ID:???
>>883
わからないことを他人に頼るってのを直さないと何時までたっても上達しないよ
0885nobodyさん2005/12/16(金) 01:19:40ID:???
まぁ、生暖かく見守ってやるからガンガレ

煮詰まった時は、コーヒーでも飲んで小休止すると、悩んでたのが馬鹿みたいにあっさり解けたりするぞ
0886nobodyさん2005/12/16(金) 01:27:10ID:???
>>882
どーでもいいことだがPHPでは普通の論理は通用しないぞ

反例:

null == 0 は true
null == array() は true
しかし
0 == array() は false
0887nobodyさん2005/12/16(金) 02:00:39ID:???
!== だからいいんちゃう?
0888nobodyさん2005/12/16(金) 02:17:13ID:???
型チェックとかじゃなくて論理的な推移性の話だお
0889nobodyさん2005/12/16(金) 02:49:47ID:???
マニュアル読めよ
0890nobodyさん2005/12/16(金) 03:08:29ID:???
>>888
だから?
0891nobodyさん2005/12/16(金) 03:20:18ID:???
まったくしょうがねえなこいつらw
0892nobodyさん2005/12/16(金) 05:29:21ID:Tb6x4DJs
>>876
ああそれは正常な動作ですな
0893nobodyさん2005/12/16(金) 06:26:17ID:???
$dateが23または0 -> $date == 23 or $date ==0
!($dateが23または0) -> !($date == 23 or $date == 0)
                ↓ ド・モルガ〜ンッ!!
               $date !== 23 and $date !==0
0894nobodyさん2005/12/16(金) 09:17:47ID:???
>>876
デリミタを <{ , }> とかに変えればいいんじゃないかな?
ってか、なんのエラー出るのか確かめてないが。
0895nobodyさん2005/12/16(金) 11:20:26ID:FlVjXK6k
<input type='file' name='hoge'>でファイルをアップすることまではできたのですが、
ファイルが指定されてなかった場合という分岐を作りたいのですが、
そのやり方が分かりません。

if(empty($_FILES['hoge']['name'])){
  print("エラー")
}
とやってみましたが、どうもファイルが指定してない場合は
$_FILES['hoge']['name']は1を返してしまうようです・・・涙

よろしくお願いします。
0896nobodyさん2005/12/16(金) 11:31:15ID:S7k/7Vdp
move_uploaded_file()かis_uploaded_file()を使え
0897nobodyさん2005/12/16(金) 11:32:08ID:???
>>895
switch ($_FILES['hoge']['error']) {
case UPLOAD_ERR_OK: echo "うp成功"; break;
case UPLOAD_ERR_INI_SIZE: echo "over upload_max_filesize"; break;
case UPLOAD_ERR_FORM_SIZE: echo "over MAX_FILE_SIZE "; break;
case UPLOAD_ERR_PARTIAL: echo "うp失敗"; break;
case UPLOAD_ERR_NO_FILE: echo "ファイルがありません"; break;
case UPLOAD_ERR_NO_TMP_DIR: echo "テンポラリフォルダがないよ"; break;
case UPLOAD_ERR_CANT_WRITE: echo "ディスクにかけない"; break;
default: echo "未定義エラー";
}
0898nobodyさん2005/12/16(金) 13:56:04ID:QT9mtH4K
htaccessになにか簡単に文字を追加すると任意のイメージファイル名
例:sample.jpg
を読み込んだときに任意のイメージ群
例:sample1.jpg , sample2.jpg , sample3.jpg
からランダムに生成してくれるようのがあったの思うのですが
思い出せません。誘導お願いします。

たしかなんかphpかなんかで記述したファイルの拡張子を.jpgに
サーバー上で変えたような記憶があります。よろしくおねがいします。
0899nobodyさん2005/12/16(金) 14:05:58ID:???
なんか分からない。
記憶を辿ってググるかなんか、エスパー降臨なんかを待つしかないな。
09008982005/12/16(金) 14:10:14ID:???
すいません。sample.***をphpかなんかで書いて、サーバー上で拡張子を
jpgに戻したってわけです。そいでもって、読み込むときsample.jpgと呼び出すと
>例:sample1.jpg , sample2.jpg , sample3.jpg
から適当に読み込んでくれるって感じです。
0901nobodyさん2005/12/16(金) 14:10:48ID:???
ランダムな画像を返すコードをhoge.jpgとかに書いて
スクリプトとして実行させたいってことでしょ。
09028982005/12/16(金) 14:14:33ID:???
記憶が不確かですが、.htaccessにはsample.jpgをsample.phpと認識するように
指示する記述をしたようなしなかったような気がします。
0903nobodyさん2005/12/16(金) 14:17:16ID:???
pathinfoで拡張子消すときによくやるやつね
0904nobodyさん2005/12/16(金) 14:21:45ID:???
>>902
mod_rewrite
で
RewriteEngine On
RewriteRule sample\.jpg sample.php
0905nobodyさん2005/12/16(金) 14:35:00ID:???
ついでにsample.phpだ
<?php
$files = array("sample1.jpg", "sample2.jpg", "sample3.jpg");
$file = $files[array_rand($files)];
header("Content-Type: image/jpeg");
header("Content-Length: ".filesize($file));
readfile($file);
exit;
?>
09068982005/12/16(金) 14:53:33ID:???
無事できました!ありがとうございます。
すばやいレス助かりました。(n‘∀‘)η
0907nobodyさん2005/12/16(金) 15:52:47ID:IKuokGUw
URLを取得するときにgetの内容も一緒に取得する方法ってありますか?

たとえば、
「http://map.yahoo.co.jp/pl?nl=35.39.52.635&el=139.42.44.010&la=1&sc=3&CE.x=466&CE.y=278」
のように"?"以降の文字列も取得したいのですが。
0908nobodyさん2005/12/16(金) 16:12:17ID:???
>>907
つ$_SERVER["REQUEST_URI"]
レス数が900を超えています。1000を超えると表示できなくなるよ。