【PHP】下らねぇ質問はここに書き込みやがれ 49
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2007/06/26(火) 03:03:40ID:ox2uyHLdPHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り
◆前スレ
【PHP】下らねぇ質問はここに書き込みやがれ 45 (※実質48)
http://pc11.2ch.net/test/read.cgi/php/1180181033/
◆質問する時の注意
・ 自分のIDを表示させること。(メール欄に何も記述しないこと。空白も入力しちゃダメ)
・ サーバーのOS(Linux、Windows他)、WebサーバーとPHPの種類やバージョン等を明記すること。
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
◆質問後の注意
・偽者防止に必ずIDを表示させること。(メール欄に何も記述しない)
・2回目以降は最初に質問した際のレス番号を名前欄に入れること。
・解決しなくても回答をもらった場合はお礼を言うこと。
(荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)
◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。
【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで
0717nobodyさん
2007/07/06(金) 02:10:14ID:???0718nobodyさん
2007/07/06(金) 02:20:16ID:???0719nobodyさん
2007/07/06(金) 02:30:25ID:???0720nobodyさん
2007/07/06(金) 02:35:51ID:???設定ファイルがいじれるかどうか不明なので
define〜を記述したphpを置いてrequireなどで呼び出してみたらうまくいきました
include_pathの事をえらい勘違いしてたようなのですが、include_pathで設定した
下の階層を指定する場合は、絶対パスはNGで相対パスはOKって事になるんですか?
基点の設定ができたとおもって絶対パスでやるものだと思っていました
0721nobodyさん
2007/07/06(金) 03:07:15ID:???話はそれからだ
0722nobodyさん
2007/07/06(金) 03:49:08ID:???0723nobodyさん
2007/07/06(金) 04:55:35ID:i/Ome2c4phpをアップロードするとき755とか705とかファイルによって設定すると思うのですが、
どういうファイルにどう権限をつけていいのかわかりません。
よくphpスクリプトは755、データファイルは644というのを聞きましたがどういう意味なんでしょうか?
0724nobodyさん
2007/07/06(金) 05:15:44ID:???0725nobodyさん
2007/07/06(金) 05:19:03ID:???まずは、
ttp://ja.wikipedia.org/wiki/%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%83%91%E3%83%BC%E3%83%9F%E3%83%83%E3%82%B7%E3%83%A7%E3%83%B3
みてみ。
基本的には644 、 他者に読まれてはまずい設定ファイル系は 600
バッチ系は755(そもそもDocumentRoot配下に置くべきでない)
0726nobodyさん
2007/07/06(金) 09:58:12ID:???わからないとら一概に言えない。
0727nobodyさん
2007/07/06(金) 11:46:53ID:???phpとかjavaの本にファイルのパーミションの説明がほとんど出てこないように思うんだけど、どうよ?
0728nobodyさん
2007/07/06(金) 11:53:17ID:???0729nobodyさん
2007/07/06(金) 12:18:56ID:OGNgzj8J0730nobodyさん
2007/07/06(金) 12:58:01ID:X/pls0rOご存知でしたら教えてください
0732723
2007/07/06(金) 13:36:07ID:i/Ome2c4いまいちパーミッションが理解できないです。
オーナー、グループ、その他に権限を与えるわけですが、たとえばレンタルサーバ上でいうのなら
オーナーとはアップロードした本人のことで、グループは同じサーバ上のべつの契約者で、
その他はアクセスしてきた人ってことですか?
0733nobodyさん
2007/07/06(金) 13:45:39ID:???0734nobodyさん
2007/07/06(金) 14:11:25ID:EFO1QIGVとか
bbbb
とか
同じ文字列が連続しているかどうかを判定したいのですが、
for文で一文字ずつ判定する方法以外にいい方法ってないでしょうか?
0736nobodyさん
2007/07/06(金) 15:04:32ID:EFO1QIGV正規表現も探ってみたのですが、日本語も含む2バイト文字対応で、
同じ文字列が連続しているかどうかを正規表現で表すことってできますか?
0739723
2007/07/06(金) 15:36:35ID:i/Ome2c4すみませんでした
0742nobodyさん
2007/07/06(金) 16:17:14ID:d4vmUHbHどのような仕事をしているのでしょうか?
やっぱり大規模システム開発がメインなのでしょうか?
0743nobodyさん
2007/07/06(金) 17:09:01ID:???http://www.asks.jp/users/hiro/20193.html
のパターン2
0744nobodyさん
2007/07/06(金) 17:16:43ID:???こちらへ誘導
http://pc11.2ch.net/test/read.cgi/php/1183023058/
0745nobodyさん
2007/07/06(金) 17:18:55ID:???特定対象向け弁茶、開発スピード重視の為php、他の言語でもいいけどphpはなんだかんいって楽
仕事時間は目が覚めてから眠くなるまで。端から見ると立派な自宅警備員だが。
0746nobodyさん
2007/07/06(金) 17:21:16ID:d4vmUHbHサンクス
0747nobodyさん
2007/07/06(金) 17:47:36ID:???お前もわかってないねぇ。この場合のパターン2は>>735の時点でコードを書くことなんだよ。
まさに「どんな素晴らしいセーフティをつけても自分の足を撃つバカは必ず現れる」というやつだ。
結果として何も解決していないし「正規表現」で解決する筈がないことは>>734を見れば普通わかる。
普通はな。五歳でもない限り。
0748nobodyさん
2007/07/06(金) 17:48:33ID:???0750nobodyさん
2007/07/06(金) 17:53:52ID:d4vmUHbHCドライブからopendirでDドライブをファイルを読み込みたいのですが・・・
0751nobodyさん
2007/07/06(金) 17:54:42ID:???0753nobodyさん
2007/07/06(金) 17:59:19ID:???> (荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)
> (荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)
> (荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)
> (荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)
> (荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)
> (荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)
0755nobodyさん
2007/07/06(金) 18:03:27ID:???0756nobodyさん
2007/07/06(金) 18:04:54ID:???求めるとは?想像を絶する凄いのが無駄に粘ってるのを五歳かよと笑っただけだよ。
このスレは基本的にウォッチして笑ってるだけだから。
これは勘でしかないけど、>>735は>>734にマッチする正規表現を絶対書けないと思う。
0757nobodyさん
2007/07/06(金) 18:06:45ID:???0758nobodyさん
2007/07/06(金) 18:06:57ID:???>>735は「答え」じゃなく「方法」を書いてるんだろ
>>734が正規表現を知っていたら「正規表現でどのように書けば良いですか?」と質問するはずだ
0759nobodyさん
2007/07/06(金) 18:08:44ID:???だからさ。それが普通は目に見えてるんだから、明らかな二度手間、三度手間を
かけたがるのは不思議ですねって言ってんの。
0762nobodyさん
2007/07/06(金) 18:15:08ID:???すぐそこまで笑いの神が降りて来てる。
0764nobodyさん
2007/07/06(金) 18:31:01ID:???└>735,738 一言で返答
└>740 片言っぷりに突っ込む
├>741 ネタで返す
└>740 2chじゃ普通だよと教える
└>747 食いつきがよさそうな気配がするので、騙りにならない程度に
740の振りをして、よくあるフレームネタで煽ってみる
以下まあまあの釣果
という感じで読んだけどあってる?
それとも、騙りじゃなくて740の時点で様子見の餌撒き?
0765nobodyさん
2007/07/06(金) 18:32:04ID:???答え書くよ、ただし環境はUTF8
とりあえず後方参照で調べれ
1 #!/usr/bin/php -q
2 <?php
3 $s = "aabaあああbcaabほげほげbbb自宅警備員乙藁藁藁bbbZZ";
4 if(preg_match_all('/(.)\1+/u',$s,$m)){
5 echo "T:".var_dump($m);
6 }else{
7 echo "F:".$s;
8 }
0766nobodyさん
2007/07/06(金) 18:56:55ID:d4vmUHbH0767nobodyさん
2007/07/06(金) 18:57:45ID:d4vmUHbH0768nobodyさん
2007/07/06(金) 19:03:00ID:???0770nobodyさん
2007/07/06(金) 20:34:06ID:???うまく説明できないのですが・・・
表示させる画像や文章の間にランダムに改行を入れる事ってできますか?
できれば模範解答お願いします。m(__)m
0772一日駅長
2007/07/06(金) 21:20:01ID:IjZ/UTZjまず、ひとつは<form>で画像をアップロードして例えばtest.jpgというファイル
をアップ出来たとして、phpでなく後から手動のタグ打ちでtest.jpgと書いて
アップしても表示されず×印がでますなぜですか。二つ目です、ftpでアップ
ロードするのと→ttp://always-pg.com/php/std_rd/ftp/ftp_put.htmlフォーム
でアップする→ttp://w1.nirai.ne.jp/freeze/main/files/09_01_fileup.htmlのと
どうちがうのですか?
0773770
2007/07/06(金) 21:25:46ID:???0775nobodyさん
2007/07/06(金) 21:33:45ID:???詳しくお願いします
はコッチのセリフだ
>>772
一つ目: 日本語が意味不明でわからん
二つ目: 久野 靖のUNIXの基礎概念(ASCII出版)でも買って嫁
0776nobodyさん
2007/07/06(金) 21:51:37ID:i/Ome2c4この配列のキーとデータをカンマ区切りのCSVで一行目にだけ保存しようと思ったのですが、
どのようなフォーマットで書き込めばよろしいのでしょうか?
やはり一行だけで行うのは難しいですか?
array(
'a' => 100,
'b' => 200,
'c' => 100,
)
0777nobodyさん
2007/07/06(金) 21:52:18ID:i/Ome2c4書き込むのはキーと値の両方です。
0781nobodyさん
2007/07/06(金) 23:48:26ID:i/Ome2c4回答ありがとうございます。
キーと値を一行でいれるフォーマットをみたことがなくてたいへん恐縮なんですが、
この場合だと取り出すときにどうすればよろしいのでしょうか?
0782nobodyさん
2007/07/06(金) 23:58:04ID:???変数の一時保存なら
$s = array(
'a' => 100,
'b' => 200,
'c' => 100,
) ;
$hoge=serialize($s);
echo $hoge;
//ここで保存
//取り出し
$fuga=unserialize($hoge);
var_dump($fuga);
但し使う場所には気をつける事、下手すると他者が悪さできるようにもなってしまう。
あとはマニュアル嫁
0783nobodyさん
2007/07/07(土) 00:49:09ID:???_.,,/-....._ヽ
,.-=7..:.:.:.:,:lー、::ヽ...、
〃 /:::/:/lj`_ `;:::l`、.、
// ク:l(::フ l:.::j l::::l l i
,' ;' ゝl −`l =L):! .! l マニュアル嫁 禁止っ!!
i l (\..|_」、-,'ニ、 l .!
,! l _,/_ゝ. \/ .} l l
. l ,! (/ _,>、 ´ヽ / l l
l l ゝ-l} /l 丶ノ-' {. l l
l l (´lj/|、ヽ|| _j l l
l l `| | .|ゝ'´「´ l .!
. ! l j j. | 丶 ,! l
>>781
単純にCVSにしたいなら
奇数列をキー、偶数列を値にして埋めてけば
とりだすときはその逆やればいいし
キーや値にカンマを含まないこと前提ならそんなむずくない
0784nobodyさん
2007/07/07(土) 00:51:46ID:eiig5Z3nありがとうございます。
こんな関数があったんですね。
マニュアル見ていじくってみます。
0785nobodyさん
2007/07/07(土) 00:54:11ID:eiig5Z3nなるほど、そのアイデアは思いつきませんでした。
このやり方も試してみます。
夜更けにもかかわらず親切に付き合って頂きありがとうございます。
0786nobodyさん
2007/07/07(土) 00:59:43ID:jir/enwwforeach($s as $key => $value) {
echo $key;
echo $value;
}
0787nobodyさん
2007/07/07(土) 01:01:57ID:???、ミ川川川彡 ,ィr彡'";;;;;;;;;;;;;;;
ミ 彡 ,.ィi彡',.=从i、;;;;;;;;;;;;
三 ギ そ 三 ,ィ/イ,r'" .i!li,il i、ミ',:;;;;
三. ャ れ 三 ,. -‐==- 、, /!li/'/ l'' l', ',ヾ,ヽ;
三 グ は 三 ,,__-=ニ三三ニヾヽl!/,_ ,_i 、,,.ィ'=-、_ヾヾ
三 で 三,. ‐ニ三=,==‐ ''' `‐゛j,ェツ''''ー=5r‐ォ、, ヽ
三. 言 ひ 三 .,,__/ . ,' ン′  ̄
三 っ ょ 三 / i l,
三. て っ 三 ノ ..::.:... ,_ i ! `´' J
三 る と 三 iェァメ`'7rェ、,ー' i }エ=、
三 の し 三 ノ "'  ̄ ! '';;;;;;;
三 か て 三. iヽ,_ン J l
三 !? 三 !し=、 ヽ i ,.
彡 ミ ! "'' `'′ ヽ、,,__,,..,_ィ,..r,',",
彡川川川ミ. l _, , | ` ー、≡=,ン _,,,
ヽ、 _,,,,,ィニ三"'" ,,.'ヘ rー‐ ''''''"
`, i'''ニ'" ,. -‐'" `/
ヽ ! i´ /
ノレ'ー'! / O
とりあえず、カンマはいってないやん
0788nobodyさん
2007/07/07(土) 02:44:13ID:???0789nobodyさん
2007/07/07(土) 02:49:00ID:???分かんなくてもいいからとりあえず考えたとこまで出して
>>784
そういう用途にはvar_exportじゃないか?
0792nobodyさん
2007/07/07(土) 03:29:45ID:grRv9CjwそれをCSVにするって言うのが良くわからない。
array(
array('a' => 100, 'b' => 200, 'c' => 100),
array('a' => 100, 'b' => 200, 'c' => 100),
array('a' => 100, 'b' => 200, 'c' => 100),
)
じゃなくて?
ちなみに、CSVはheaderとか言うらしいけど、一行目にキーの名前を入れて
2行目からは値にすると、扱いらくだと思う。
カラムを増やしても減らしても、プログラムいじる範囲が少なくてすむ。
0793nobodyさん
2007/07/07(土) 03:30:11ID:???$cmd = /usr/bin/dot -Tpng /home/users/name/public_html/pr/form.dot -o /home/users/name/public_html/pr/form.gif";
system($cmd);
?>
このようにしてjavascriptから呼び出して実行したのですが、dotコマンドは実行されませんでした
また以下のようにexec.shにdotコマンドを書いて、実行しても変わりませんでした
<?php
system("sh exec.sh");
?>
どのようにすればこれは実行されるのでしょうか?
lsなどのコマンドは出力結果を取得して表示することができました
dotコマンドは以下のようなもので、出力結果などは必要なく、実行してもらえるだけでいいのですが・・・
http://homepage3.nifty.com/kaku-chan/graphviz/
0794nobodyさん
2007/07/07(土) 03:53:58ID:???↓
$cmd = "/usr/bin/dot -Tpng /home/users/name/public_html/pr/form.dot -o /home/users/name/public_html/pr/form.gif";
0796nobodyさん
2007/07/07(土) 04:41:38ID:???0797nobodyさん
2007/07/07(土) 06:16:26ID:???exec.sh内
#!/bin/sh
/usr/bin/dot -Tpng /home/users/name/public_html/pr/form.dot -o /home/users/name/public_html/pr/form.gif
で保存、改行コードは LF にする
chmod 755 (適切なパーミッションについては後でちゃんとする)
とやって、手動で実行してみる。
(/home/users/name/public_html/pr/ に所有者の書き込み権限しか無くてうまくいかない場合はとりあえず /tmp とかでテストしてみる。)
↑でうまく行ったら system(exec.shのフルパス) をphpからたたいてみる。
少しずつ問題を切り分けしてみ(コマンド、改行コード、実行権限、書き込み権限、PHPの処理)
0798nobodyさん
2007/07/07(土) 09:20:52ID:NYUtkJmE0799nobodyさん
2007/07/07(土) 12:30:35ID:???⊂(#・д・)? さっさと答えろって言ってんだろ!!?
/ ノ∪?
し―-J |l|?|?
? ? ? ?人ペシッ!!
__?
\ ?\?
? ̄ ̄?
0800一日駅長
2007/07/07(土) 12:50:04ID:LeSdaRHtありがとう、買ってみる。
0801793
2007/07/07(土) 15:34:11ID:???しかしWebブラウザ(firefox)からjavascriptを呼び出し、そこからphpを呼び出して実行すると
system('execのフルパス');
↑
この行以降が実行されていないようです
直接phpを実行した場合と、外からブラウザで呼び出した場合では何か制限みたいなものがあるのでしょうか?
0802nobodyさん
2007/07/07(土) 15:47:41ID:P9d75pEJ0803nobodyさん
2007/07/07(土) 15:53:29ID:???思い出せません。
どなたか教えてケロ。
0804nobodyさん
2007/07/07(土) 16:02:22ID:???ヒント書いてるのに自分で切り分けしてないじゃん。
思考停止せずに少しは考えましょう。
自分ならそのスクリプトを実行出来る→apache経由なら実行できない→権限? と行かなくてはならない。
apacheの起動ユーザーがおそらくそこに書き込み出来ない。
/tmpとかapacheユーザーが読み書き出来る場所にに元ファイルを置き、-oのアウトプット先もそちらにして試す
ちなみに質問以前に、そもそもレンサバでsystem()が許されていません、とかは抜きね。
0806793
2007/07/07(土) 16:19:34ID:???見事に実行することができました
とても丁寧な対応ありがとうございました
0807nobodyさん
2007/07/07(土) 17:01:58ID:???「1.log」と言うファイルをアップロードしようとしたら、
「550 /a/dat/1.log: Permission denied」と言うエラーが出て
アップできませんでした。
1.logのパーミッションが違うのかと思い、変更しようとしたのですが、
変更も出来ないようになっているみたいです。
これを、アップロードできるようにするには、どこを変更したらいいのでしょうか?
0809nobodyさん
2007/07/07(土) 18:34:34ID:???常用漢字以外の漢字があったら制限したいのですが、
どうすればよかとでしょうか?
0812nobodyさん
2007/07/07(土) 21:50:57ID:???全角かなで入力すると→うぇb
これは偉大な豆知識だと思いませんか?
0813nobodyさん
2007/07/07(土) 21:53:33ID:???0814nobodyさん
2007/07/07(土) 22:59:42ID:???0815nobodyさん
2007/07/07(土) 23:00:28ID:???0816nobodyさん
2007/07/08(日) 00:36:04ID:???お前らちんちん付いてんだろ?
0817nobodyさん
2007/07/08(日) 00:41:35ID:???while(false) {
echo "<img src="http://localhost/" />";
}
■ このスレッドは過去ログ倉庫に格納されています