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

【PHP】くだらねぇ質問はここに書き込みやがれpart4

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん05/03/13 16:08:32ID:???
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/
02892862005/03/30(水) 17:31:10ID:???
なるほど、n文字目以降を、任意の文字に置き換えというより、
先頭からn文字まで表示して、任意の文字列を足す、と考えればいいんですよね、ありがとうございました!
0290nobodyさん2005/03/30(水) 18:54:13ID:???
>>270
今時のケータイは普通にアップできるだろ?
0291nobodyさん2005/03/30(水) 19:24:05ID:???
すいません、頭パンクしてます。
特定のディレクトリから下層のディレクトリまで全部の可視ファイルを検索、そのファイルの作成日時か更新日時を取得して、現在の日時に近い順にソートしてhtmlにリンクで出力させるって可能ですか?
素直にsqlの方がいいのでしょうか?
うちのいつもタコ管理者(鯖ダウンさせる天才)に言ったらsqlで自分でやってと言われますた。
っつか、sql使った事ないので分かりません。phpのみでって出来ます?
0292nobodyさん2005/03/30(水) 19:33:42ID:???
>>290
ハァ?
0293nobodyさん2005/03/30(水) 20:01:29ID:???
>>290
普通ってなんだ。
0294nobodyさん2005/03/30(水) 20:03:52ID:???
>>290
今時のケータイのみ対応したい場合はそれでもいいね。
それ以前の携帯もターゲットに含む時はメール「しか」手段が無い。

>>291
そこに書いてある通りの事を管理者に言って、「SQLですれ」って返されたのなら、
「えええええええ(AA略)」って顔で反応すべきだったな。
PHPのマニュアルの「ディレクトリ関数」「ファイルシステム関数」の関数を幾つかと
再帰処理を使えば、PHPだけでも可能。
0295nobodyさん2005/03/30(水) 20:07:45ID:???
>>291
PHPの関数のみで、そんなに苦労しなくても出来る。
0296nobodyさん2005/03/30(水) 20:10:31ID:???
>>294
そっか...可能なのか...ちょっとマニュアル見て頑張りまつ。(´・ω・`)
...っつか簡単な掲示板しか作ったこと無い漏れにできるだろうか。

やはりうちの鯖管はダメポなんだな...大丈夫かうちの会社...
0297nobodyさん2005/03/30(水) 20:38:24ID:???
PHPでポリモーフィズムってどうやって実装するのかな?
0298nobodyさん2005/03/30(水) 20:41:18ID:???
>>296
まぁ、望む事はPHPのみで実現可能だが、
巨大なサイト(対象ファイルが多数)の場合なら、
深夜帯などに定期的にDB化しておいて、表示の際にはSQL使ったほうが、
鯖負荷は低くて済むかも。あくまでもケースバイケース。
0299nobodyさん2005/03/30(水) 21:28:38ID:???
DBにファイルのリストを入れといてSQLで取り出しHTMLにすれって事なんだろうか?
どうやってDBに入れるんだろ?
0300nobodyさん2005/03/30(水) 21:29:51ID:4FafkLm/
電子手帳用OS、WindowsCEでローカルファイルの
PHP拡張子ファイル、を閲覧するようにできるでしょうか?

0301nobodyさん2005/03/30(水) 22:09:00ID:???
>>300
とりあえずphpインストールしてみれば
0302nobodyさん2005/03/30(水) 22:48:14ID:???
>>299
ファイルパスと、filemtimeでも放り込んでおけば、
後は如何様にも・・・
ってDBとの接続の仕方とかから説明が必要?
0303nobodyさん2005/03/31(木) 01:19:34ID:???
フォームを使って、クライアントブラウザからサーバへXMLデータを送信することはできますか。
あるいはXMLでなくても任意のテキストファイルを送信することはできますか。

通常、フォームを使うとデータは param1=value1¶m2=value2&.... という形で送信されます。
しかしこの形式だと、入れ子になったデータを表現するのが難しいです。
そこで、もしフォームデータをXML形式でサーバに送信できたら、入れ子になったデータが簡単に扱えるようになるんじゃないかと思ってます。
HTTPは任意のデータを送信できるので不可能ではないと思うのですが、HTMLとブラウザを使っているかぎりはどうしたらよいのかわかりません。
0304nobodyさん2005/03/31(木) 01:40:43ID:???
>>303
JavaScript を使えばできる
03053032005/03/31(木) 01:52:15ID:???
>>304
そこをもうちょっと、具体的に。ヒントお願い。
03062862005/03/31(木) 01:56:00ID:???
すいません、先ほど解決したと思ったんですが、どうもおかしいところがあるので再度質問させてください。
$str = mb_strcut( $str, 0, 100 )."...";
こうしたんですが、テキストに日本語が混ざっている場合、考慮されずに2バイト中の1バイトの部分でぶった切られたりしますか??
日本語英数混在しているんですが、どうもそれが原因で後のhtmlに影響が出ているっぽいんです。

こういった場合、どうしたらいいものでしょうか??
0307nobodyさん2005/03/31(木) 01:59:27ID:???
POSTでどうぞ。
textareaにガリガリとXMLを書けw
0308nobodyさん2005/03/31(木) 02:00:15ID:???
>>306
実際に$strがどうなっているか見るべし
03092862005/03/31(木) 02:04:37ID:???
>>308
htmlソースを見ると、文字じゃない文字になってます。
ブラウザ上では表示されません。

ココにコピペしようかと思いましたが出来ませんでした。

環境:
MacOSX safari 文字コードはUTF-8です。
0310nobodyさん2005/03/31(木) 02:06:08ID:???
>>303
FROM要素のenctype属性で指定できる仕様になってる。
実装は知らん。
PHPの話じゃないので続きはほかでやってくれ。
03112862005/03/31(木) 02:26:17ID:???
問題を切り分けた所、文字列の中に入っているhtmlタグが途中で省略されてしまうためのようでした…
そのあたりちゃんとやってまだダメだったらまたお願いします。
0312nobodyさん2005/03/31(木) 04:05:22ID:Bkn1FNJU
array_uniqueでデータの重複を取り除いた配列の
インデックスをちゃんとゼロから順に直すにはどうしたらいいでしょうか。
重複を削除してくれるのは便利なんですが、
インデックスが飛び飛びになるので具合が悪いです。
0313nobodyさん2005/03/31(木) 04:21:46ID:???
>>312
array_values()
0314nobodyさん2005/03/31(木) 04:27:40ID:???
>>313
thx!
0315nobodyさん2005/03/31(木) 06:15:20ID:???
「文字列」から複数種の「文字」を一度に取り除く関数ってないですか?
今の所、str_replaceなどで一種類ずつ地道に消してるのですが、
上手い方法があったら教えて下さい。
03163152005/03/31(木) 06:24:58ID:???
あ、str_replaceは配列で指定できたみたいです。
消したい文字を配列に全部突っ込んで指定したらちゃんと取り除いてくれました。
0317nobodyさん2005/03/31(木) 09:57:40ID:???
>>315
ereg_replace();
preg_replace();
0318nobodyさん2005/03/31(木) 10:26:20ID:???
おまいら!
レンサバ上のmysqlバックアップどうしてますか
myphpadminでダンプしてもアップの上限は2メガまでだし…
どうしたらいいものか
0319nobodyさん2005/03/31(木) 10:50:51ID:???
strip_tags() を使うと、取り除かないタグを指定して HTML タグを削除できるけど、
例えば、 <a> を残したいけど、属性として残したいのは href だけで、
他に( onclick とか target とか)ついててもばっさり削除、
とか言う場合はどうすればいいんですかね?
0320nobodyさん2005/03/31(木) 11:27:00ID:LwnfmyDs
メールマガジン等の配信についてですが、購読者リストをforeachさせつつ
mail関数で逐次送信するのと、リストをすべてbccで送るのとどちらが
サーバの(phpサーバ、メールサーバ、回線等)負荷は低いのでしょう?
また、bccで送る場合、何件づつ程度が適当なのでしょう?
0321nobodyさん2005/03/31(木) 11:32:03ID:???
>>318
普通にmysqldumpだけど
アップの上限って何のこと
何か制限があるのならdumpファイルから必要な部分だけ切り取ってアップすればいいんじゃないの
0322nobodyさん2005/03/31(木) 11:41:11ID:???
>>319
preg_replace
str_replace
0323nobodyさん2005/03/31(木) 11:42:18ID:???
>.321
多分、PHPでアップロードできるファイルサイズ制限のことだと思われ。
03243192005/03/31(木) 11:47:07ID:???
>> 322
つまり便利な関数は無いってことで FA?
0325nobodyさん2005/03/31(木) 13:23:41ID:???
>>324
便利な関数があるとすれば、>>319がマニュアルを見た時に気づいてるべ。
0326nobodyさん2005/03/31(木) 13:56:20ID:???
自作の日記プログラムに独自タグみたいな機能を作っているところです。

例
[url]http://2ch.net[/url] -> <a href="http://2ch.net">http://2ch.net<;/a>

ところが、

[search]ほげほげ[/search] -> <a href="./search.php?q=(エンコードされたほげほげ)">ほげほげ</a>

というのをやろうとして、

$text = preg_replace("/\[search\](.+?)\[\/search\]/i", "<a href=\"./search.php?q=".urlencode(\\1)."\">\\1</a>", $text);

とやってもうまく行きません。
urlencodeの部分を、urlencode("\\1")とかurlencode(${1})とか試してみたのですが、ダメでした。
preg_replaceの置換後のテキストの部分で関数は使えないのでしょうか?
0327nobodyさん2005/03/31(木) 14:08:02ID:???
>>326
preg_replace_callback かな
0328nobodyさん2005/03/31(木) 14:20:28ID:???
>>327
PHPマニュアルのpreg_replace_callbackの頁を見て作り直したらうまく行きました。
すばやい返答ありがとうございました。
0329nobodyさん2005/03/31(木) 16:20:58ID:???
携帯サイトにアンケートフォームを設けたのですが、データが送信されません。
どういう風にしたら良いですか?
0330nobodyさん2005/03/31(木) 16:24:20ID:???
>>329です。
<TITLE>登録</TITLE>
</HEAD>
<BODY>
<BR><FORM action="mailto:***@***.co.jp" METHOD="post" enctype="text/plain">
氏名:<INPUT TYPE=TEXT NAME="name"><BR>
メールアドレス:<INPUT TYPE=TEXT NAME="number"> <BR>
ホームページURL:<INPUT TYPE=TEXT NAME="number"> <BR>
在住市名<BR>
<SELECT NAME="市名">
<OPTION VALUE="***市">***市
<OPTION VALUE="**市">**市
<OPTION VALUE="**市">**市 
<OPTION VALUE="その他">その他</SELECT><BR>
ご意見・ご感想をお寄せ下さい。<BR>
<TEXTAREA NAME="感想 rows=" COLS=10 5"></TEXTAREA><BR>
<BR>
当サイトを知ったきっかけは?<BR>
<INPUT TYPE=RADIO NAME="きっかけ" VALUE="検索">検索サイト<BR>
<INPUT TYPE=RADIO NAME="きっかけ" VALUE="友人・知人">友人・知人<BR>
<INPUT TYPE=RADIO NAME="きっかけ" VALUE="雑誌">雑誌<BR>
<INPUT TYPE=RADIO NAME="きっかけ" VALUE="広告・チラシ">広告・チラシ<BR>
<INPUT TYPE=SUBMIT VALUE="送信"><INPUT TYPE=RESET VALUE="やり直し"><BR>
</FORM></BODY>
</HTML>
一応タグです。
0331nobodyさん2005/03/31(木) 16:27:50ID:???
> action="mailto:***@***.co.jp"
何これ、ふざけてんの?
0332nobodyさん2005/03/31(木) 16:32:34ID:???
>>331
真剣です。
0333nobodyさん2005/03/31(木) 16:33:56ID:???
>>330
携帯電話でform actionにmailtoは使えないよ。
フリーのメールフォームCGIなり探してくるべし。
0334nobodyさん2005/03/31(木) 16:33:57ID:???
>>331
仕方教えて下さい
03353332005/03/31(木) 16:35:00ID:???
>>333
失敬
×:メールフォームCGI
○:フォームメールCGI
0336nobodyさん2005/03/31(木) 16:39:38ID:???
>>335
フォームメールCGIってサーバーにあるのですか?
03373332005/03/31(木) 16:58:43ID:???
>>336
ちったぁ、自分で調べてみなよ。っんとにもう。
ttp://www.google.co.jp/search?sourceid=navclient-menuext&ie=UTF-8&q=%E3%83%95%E3%82%A9%E3%83%BC%E3%83%A0%E3%83%A1%E3%83%BC%E3%83%AB
0338nobodyさん2005/03/31(木) 16:59:45ID:???
FORM action="mailto:***@***.co.jp"なんて、何か久しぶりに見た気がする
0339nobodyさん2005/03/31(木) 17:07:31ID:???
>>337
ほ・ほ・ほんとうに有難うございます。
0340ああ2005/03/31(木) 19:10:01ID:tGTdWeYS
冷静な意見をブログにお願いします。
http://blogs.yahoo.co.jp/livinonaprayerjp/MYBLOG/yblog.html
0341nobodyさん2005/03/31(木) 19:24:33ID:???
>>340
「戦争犯罪と歴史問題」
0342nobodyさん2005/03/31(木) 19:42:05ID:???
すみません。
価格など、1000の位でカンマ入れたいんですけど
関数ってありますか。
0343nobodyさん2005/03/31(木) 20:00:28ID:???
>>342
ある
0344nobodyさん2005/03/31(木) 20:27:22ID:???
>>342
number_format()
0345nobodyさん2005/03/31(木) 20:41:57ID:???
毎度有難うございました。
0346nobodyさん2005/03/31(木) 20:53:13ID:???
またのお越しをお待ちいたしております。
0347nobodyさん2005/03/31(木) 21:24:01ID:???
ほんと下らん質問で申し訳ないです。
サバはLinux、apacheです。
アップローダーを作ってみたんですが、
アップロードして保存先ディレクトリにコピーしたら
そのファイルの所有者がapacheの動作権限者になってしまうのですが、
所有者権限をユーザー(user_dirの)にするにはどうすればいいのでしょうか。
0348nobodyさん2005/03/31(木) 21:25:55ID:JFqGEsJm
こんなCGIありませんか スレって無くなったの?
見つからないCGIがあるんだが…
0349nobodyさん2005/03/31(木) 21:28:52ID:???
>>348
【CGI】こんなCGI探してますver.16
http://pc8.2ch.net/test/read.cgi/hp/1106947416/
03503472005/03/31(木) 21:30:29ID:???
所有者権限を、じゃない所有者を、だ
0351nobodyさん2005/03/31(木) 21:55:47ID:???
>>347
モジュール(Apacheの一部)として動作してるからね
CGI(SuEXEC)で動かせば所有者権限で実行、ファイル作成できるけどだめかね
03523472005/03/31(木) 22:06:35ID:???
>>351
ありがとう。
chmodで所有者権限だけ変更しとけば後々のことに問題ないですよね?
あまり深く考えずにchmodだけしときます。

chmodの引数paelと逆なんですね。
あとperlだとcgiでうがかしてる関係で所有者がusr_dirの人と同じになるんですかね?>>351
0353nobodyさん2005/03/31(木) 23:13:50ID:???
PHPってスレッドセーフな言語にする予定はありますか?
0354nobodyさん2005/03/31(木) 23:36:33ID:???
週末暇なのでスレッドセーフな言語にしてみようかなって思ってます
0355nobodyさん2005/03/31(木) 23:44:08ID:???
>>354
ヨロシコ
0356nobodyさん2005/04/01(金) 00:01:31ID:???
くだらない質問でもOKのスレということで質問させていただきます。
PHPのコーディング規約を見ていたらインデントはスペース4つが推奨で
タブは使わないほうがよいとのことなのですが、皆さんはどうされてますか?
個人的にスペース4つなんてどうかと思うのですが。
0357nobodyさん皇紀2665/04/01(金) 00:36:57ID:???
>>356
俺はTAB(4)派だな。
0358nobodyさん皇紀2665/04/01(金) 00:43:33ID:???
オイラも普段はtab(4)。でも他人が絡んでくる時はspace(4)にして渡す。
htmlを書く時はspace(2)。

インデントに思い入れのある人達が集まっているスレ
ttp://pc5.2ch.net/test/read.cgi/prog/1063471069/
0359nobodyさん皇紀2665/04/01(金) 01:12:11ID:???
phpinfo()
で表示されるページの右上の哺乳類は何ですか?
0360nobodyさん皇紀2665/04/01(金) 01:15:14ID:???
>>356
xyzzyのphp-modeのデフォのインデントだな。space(4)かな。
0361nobodyさん皇紀2665/04/01(金) 02:38:48ID:???
>>358
そのスレ今見たけどタブ派スペース派真っ二つだね。
今までインデントはタブというのが常識だと勝手に思ってたけど
世の中は違ったんだな。
0362nobodyさん皇紀2665/04/01(金) 02:45:37ID:???
>>359
つちのこ
0363nobodyさん皇紀2665/04/01(金) 03:24:19ID:???
>>359
おいらのインストールした鯖は
http://www3.nhk.or.jp/anime/nadia/
を仕込んでありまつ。
(無許可版権モノ)
0364nobodyさん皇紀2665/04/01(金) 07:11:42ID:???
mysql_query で帰ってきた結果を、
一行ずつ読むんじゃなくて
1つの大きな array とかにできる関数とかないのかな?
0365nobodyさん皇紀2665/04/01(金) 08:01:17ID:???
>>364
マニュアル嫁
0366nobodyさん皇紀2665/04/01(金) 08:05:24ID:???
今日質問したら嘘教えられそうだなーw
0367364皇紀2665/04/01(金) 08:06:18ID:???
>>365
え?こんなのを作った俺は馬鹿ななのか?
マニュアル一通り読んだつもりなんだが…

function DBresource2array( $rsc_id ){
$result = array();
while ($line = mysql_fetch_row($rsc_id)) {
array_push($result, $line[0]);
}
return $result;
}
0368nobodyさん皇紀2665/04/01(金) 08:13:31ID:???
>>367
悪い、文意を取り違えていた。フェッチしないで一気に
多次元配列かなんかに取りたいってことね。

それは、mysql関数には無い(と思う)

0369367皇紀2665/04/01(金) 08:17:47ID:???
>>368
なるほど。
っていうかやりたい事は検索なので、
MySQL に普通に query を投げるというコトになりました。orz
0370nobodyさん皇紀2665/04/01(金) 08:55:47ID:???
>>369
アフォか
0371nobodyさん皇紀2665/04/01(金) 09:00:14ID:???
初心者の素朴な疑問なんですが、Array に値が入ってるかどうかって
どうやってチェックしてますか?
今僕がやってるのはみんな
$array = array();
$array = somefunction();
if (count($array)>0 ){
 //処理。
}
ってやってるんですけど。。
0372nobodyさん皇紀2665/04/01(金) 09:01:29ID:???
0373nobodyさん皇紀2665/04/01(金) 10:23:04ID:???
値が入ってるかどうかをチェックするのに何個も手順を踏む必要があるから面倒、
というなら理解できるけど
if文一個のワンステップでできてることを、それ以上にどう簡略化したいというのか。
0374nobodyさん皇紀2665/04/01(金) 10:26:19ID:???
>>371
is_arrayじゃ駄目?
0375371皇紀2665/04/01(金) 10:26:57ID:???
>>373
簡略化したいなんて言ってないです…
これがスマートなやり方かどうかわからないから聞いてみたんですが…
0376371皇紀2665/04/01(金) 10:28:11ID:???
>>374
is_array だと、array として初期化している変数には true が返ると思います。
0377nobodyさん皇紀2665/04/01(金) 10:43:05ID:???
if (count($array)){
 //処理。
}

で、少しスマートな感じ
0378nobodyさん皇紀2665/04/01(金) 10:49:59ID:???
count だと文字が入っていても true になることあるね.

if (is_array($array) and count($array)) {

とする必要あり?
0379nobodyさん皇紀2665/04/01(金) 10:51:28ID:???
>>371
if(implode("", $array)){
  echo'何か入っているよ〜〜〜';
}
0380nobodyさん皇紀2665/04/01(金) 11:18:18ID:???
>>378
$array = array();
と宣言してるんだから
is_array($array)はいらないだろ
>>377が>>379より意味がわかりやすくていいんじゃないの
0381nobodyさん皇紀2665/04/01(金) 11:31:55ID:???
>簡略化したいなんて言ってないです…
>これがスマートなやり方かどうかわからないから聞いてみたんですが…

同じことやん。
0382nobodyさん皇紀2665/04/01(金) 11:36:25ID:AcRtwYxM
$_POST["hoge"]
などのデータを、一括で
$hogeに入れ直す関数ってありましたよね…?
教えてください。
0383nobodyさん皇紀2665/04/01(金) 11:42:12ID:???
>>382
extract($_POST);
0384nobodyさん皇紀2665/04/01(金) 11:49:16ID:AcRtwYxM
>>383
これです!
ありがとう!
0385nobodyさん皇紀2665/04/01(金) 12:42:37ID:???
エロサイトとかでZIPのエロ動画をダウンロードするときに多重ダウンするとエラーを表示するのってどうやるのですか?
.htaccessで制限かけるのですか?
エロイ人教えてください
0386nobodyさん皇紀2665/04/01(金) 12:53:49ID:???
>>359
5.0.3はウサギ?
5.0.4にしたら犬になった(テリア?)
4.3.11インストールした人教えて
0387nobodyさん皇紀2665/04/01(金) 16:50:32ID:???
最近のブログ(amebaやnaverなど)で、テキストエリアの部分に
画像とか、太字とかが反映されてるのはどういった技術を使ってるんでしょうか?
適切なスレッドが分からなかったのでとりあえずここで質問しました。
0388nobodyさん皇紀2665/04/01(金) 17:03:35ID:???
jcode.plの設置ついて質問なのですが
CGIを多数設置した場合、それぞれ同じディレクトリにjcode.plがあって
容量を圧迫するので、一つ上のディレクトリにjcode.plを置き
各CGIから読み込ませても平気ですか?

それともやはり、一つ一つ同じディレクトリにjcode.plを置いた方がいいのでしょうか?
0389388皇紀2665/04/01(金) 17:05:34ID:???
すみません。スレタイの【PHP】ってのを見逃してました。
他のスレで聞いてきます。
■ このスレッドは過去ログ倉庫に格納されています