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

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

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん05/02/07 21:47:15ID:???
PHPに関するくだらない質問用すれです。
ここなら本スレで回答のないお前の下らない質問に回答があるかも知れません。
次スレは>>970あたりが建てて下さい

・過去スレ
【PHP】くだらねぇ質問はここに書き込みやがれ
http://pc5.2ch.net/test/read.cgi/php/1099322141/
【PHP】くだらねぇ質問はここに書き込みやがれpart2
http://pc5.2ch.net/test/read.cgi/php/1105218084/
0002nobodyさん05/02/07 21:59:22ID:yRcV3K5k
乙
0003nobodyさん05/02/07 22:00:41ID:???
PHPはくだらない質問が多くてスレも活発でいいなぁ
0004nobodyさん05/02/07 22:18:51ID:???
マニュアル読め
http://jp.php.net/manual/ja
0005nobodyさん05/02/07 23:02:34ID:ugDz3ClP
ある、Blogのサイト(XML)があり、そこの記事が追加されたら、
特定のサイトの index.html の新着情報を更新したいと思います。

具体的にいうと、ココログなどはポータルサイトに、時間ごとの、新着記事が載っています。

これをPHPで実現したいのですが、どうやれば、いいでしょうか?
XMLのパーサーを使うというのはわかるのですが
0006nobodyさん05/02/07 23:02:37ID:???
オススメの書籍を教えてください
0007nobodyさん05/02/07 23:23:12ID:???
>>5
やりたいことは分かるんだが、もう少し具体的に何が分からないのか書いてくれ
0008nobodyさん05/02/07 23:23:45ID:???
>>5
マニュアルにサンプルコードが載ってるし、
php.netのuser-noteにも更にサンプルがあるよ。
それを見てさえも分からん場合は、具体的なコードを引っ張ってきて
分からん部分を言ってもらわんと説明できない

>>6
初心者から熟練者まで使える書籍つーのはとんでもなく分厚くなるわけで、
自分にはどういう本が必要なのか考えてから、書籍スレへ。
[PHP書籍スレ]
http://pc5.2ch.net/test/read.cgi/php/985315574/l50
0009nobodyさん05/02/07 23:34:06ID:ugDz3ClP
input:
特定のBlogのサイト
output :
portal 的、HTMLのサイト
http://www.cocolog-nifty.com/
でいうと、左側の
What'sNEW
ここは新着情報をBlogで作っており、これを、反映させています。

まず、わからないのはどのタイミングでか?
新着情報が登録されたら、 自動的に、http://www.cocolog-nifty.com/
を更新することは可能か?

また、http://www.cocolog-nifty.com/ は単一のhtmlさいとですが、
新着情報を書き換えることのになります。
それはhtmlを書き換えないといけませんが、どうやっているのか、よくわかりません
0010nobodyさん05/02/07 23:52:17ID:W2PCIlVp
HTMLソース内に記述されている画像ファイル名を抽出しようと四苦八苦しています。
画像ファイル名は相対パスで指定されており、「../../」の部分も一緒に抽出させたいのです。
検索条件をお教えいただけないでしょうか。

$html = HTMLソース;
eregi("xxxxxxxx", $html, $var);

-- このような結果が返ってくる --
 $var[0] == "../../aaa.jpg";
 $var[1] == "image/bbb.gif";
 ・
 ・
 ・

お力添えをお願い致します。
0011nobodyさん05/02/08 00:15:33ID:???
>>10
正規表現ならこっちで聞くといい

正規表現道場@2ch Part4
http://pc5.2ch.net/test/read.cgi/php/1105930285/
00121005/02/08 00:17:47ID:aXE3qbDZ
>>11
ありがとうございます。
さっそく移動します。
0013nobodyさん05/02/08 02:01:50ID:???
>>9
RSSについて学べ
http://pc5.2ch.net/test/read.cgi/php/1078216600/
0014nobodyさん05/02/08 02:17:01ID:???
>>9
>まず、わからないのはどのタイミングでか?
>新着情報が登録されたら、 自動的に、(p)http://www.cocolog-nifty.com/
>を更新することは可能か

条件的には可能だが、相手側と連携しているのでなければ不可能。
その場合は擬似的に処理をする。

相手側の新着情報の更新と共に自分側に何らかの信号が送られてくるのでなければ
自分の方から確認を相手側の新着情報の更新のある・なしを確認しなければなりません。
相手側の更新のタイミングは通常はわかりませんので、ある一定の周期で確認する
(これはcronなどを利用して周期的に自動で動かす)か、誰かが自分のページを見た時点で
現在の新着情報の更新を確認しにいくかのどちらかです。
後者の場合、誰かが自分のページを見る度に確認していると非常な負荷となり
ページ表示も遅くなりますので、ある一定の時間内に確認が出来ていれば再確認はしない
(キャッシュする)ように工夫すべきです。
0015nobodyさん05/02/08 02:20:56ID:???
>>14
教科書みたいな説明だなw
0016nobodyさん05/02/08 02:37:39ID:???
>>9
タイミングの質問はプログラミングとか深く考えないで、
「自分が手作業でそれを行う」と考えたらおのずと答えが出るんじゃないの?
それを形にするのがプログラミング。


後半の質問に対してはPHPの勉強をしろってしか言えない。
0017nobodyさん05/02/08 05:39:35ID:7ghetwi3
セッションハンドラを書き換えて
MySQLにセッションデータを保存するようにしました。

include "db.php";←ここでdbに接続
include "dbSession.php";←ここでセッションハンドラ書き換え

という順序なのですが、ごく稀に、
dbに繋がってないうちにハンドラが呼び出されているようで
エラーになります。
原因はどのようなものが考えられますか?
またこのような現象に出くわされた方はいないでしょうか?
バージョンは4.3.10です。
0018nobodyさん05/02/08 07:37:10ID:???
>>17
エラー処理してないからだろ
データベースにコネクトできなかったらエラー
クエリー処理できなかったらエラー
0019nobodyさん05/02/08 12:18:06ID:???
正規表現で
"/abc.*?z/"
みたいなのがあって
*の後にくる?はどういった意味になるのでしょうか?または、どういったときに
そういう風にするんですか?

実行してみても、あってもなくても変わらない気がします。。。
0020nobodyさん05/02/08 12:48:29ID:???
>>19
最短マッチせよ、の意味。最短マッチさせたいときにそういう風にする。
0021nobodyさん05/02/08 13:03:52ID:???
>>20
レスありがとうございます。
最短マッチですか。それで、
ちょっとわからなくて調べてみたんですけど、
"/abc.*?z/"で
.*だけじゃ、次にでてくるzも読み飛ばしてしまうときがある。
だから?で次にくるzまでって意味にするんですかね?
?をつけたほうが確実だから?
0022nobodyさん05/02/08 13:24:35ID:???
".*"とかいたとき、.*はすべての文字にマッチする。すべてということは、"も含む。
したがって、デフォルトは最長マッチ。
たとえば <img src="foo.jpg" alt="bar" /> とあったとき、".*" では、"foo . . . bar" までマッチする。

しかし最短マッチで"の直近の"までを取りたいことがある。
".*?" では、"foo.jpg" までマッチする。これは、"[^"]*"と書くのと同じ。

現実には *や+が、後方に続く正規表現まで喰ってしまわないように指定することが多い

調べたなら、どのサイトでも上と同じような説明があっただろ。
スレ違いだけど、正規表現くだスレがないので答えてみた。

>飛ばしてしまうときがある
どうでもいいけど、したりしなかったり、、、なんてファジーな挙動はありえねえええええええええですよ。
0023nobodyさん05/02/08 13:53:33ID:???
>>22
なるほどわかりました。
ありがとうございました!
0024nobodyさん05/02/08 15:20:01ID:???
http://hoge.net/test.php=0333kがアドレスバーに表示されていたとして
これをhtmlにみせかけるにはどのような処理をすればよいでしょうか?
http://hoge.net/test/0333k.htmlのようにしたいです
0025nobodyさん05/02/08 15:27:46ID:???
>>24
http://hoge.net/test/0333k.html
で、
http://hoge.net/test.php=0333k
が実行できるようにサーバ環境を整える。

以上。
次いってみよ〜
0026nobodyさん05/02/08 15:29:55ID:???
それは全然違う手法なので全く使い物にならない
 $fp = fopen(”html.html”,’w’);
 fwrite($fp,$html,64000);
 fclose($fp);
のようにhtmlを代入してphpが自動生成してくれないと困る
0027nobodyさん05/02/08 15:37:57ID:???
>>26
>>25
0028nobodyさん05/02/08 15:41:47ID:???
>>24
webサーバの設定。
apacheの場合なら、mod_rewriteやmod_actionあたりを使ってPATH_INFOでQueryStringを受け取る。
鯖の設定に深く関係するから、管理者に聞いてみそ。

>>26は何言ってるのか分からんな。>>24と同じ人なら(WebProgも)諦めることを薦める
0029nobodyさん05/02/08 15:46:50ID:???
わらた
0030nobodyさん05/02/08 15:46:55ID:???
アドレスバーに表示されてるのを、別のアドレスに見せかけるのは
ブラウザを弄るしかねぇんじゃないのか?
0031軟式PHP05/02/08 15:46:56ID:???
26のアホぶりにワロタ
0032nobodyさん05/02/08 15:48:43ID:???
いや28さんの言うとおりであり、PATH_INFOかmod_rewriteを使うのが一般的である
特にmod_rewriteが良く使われるらしい
ただ俺はこの手法でやりたかったんだ。

htmlを$htmlに代入してhtmlを生成するということを・・・
何をいっているのかわからんといわれたorz

 $fp = fopen(”html.html”,’w’);
 fwrite($fp,$html,64000);
 fclose($fp);
0033nobodyさん05/02/08 15:52:24ID:???
久々に気持ちいいくらいの馬鹿だな。
0034nobodyさん05/02/08 15:55:25ID:???
BlあるBlogのサイトから、記事の題と、そのリンクを含むHTMLを
吐き出すプログラムをおしえてください
環境は、phpで、パーサーをつかいますog の
0035nobodyさん05/02/08 15:56:25ID:???
馬鹿じゃないんだけどPHPを1時間前にはじめたから基礎が全くわかってないんだ
javaやcならできるからとりあえず感覚でものをいってる(笑
要するにphpでの生成でなくてhtmlとすることでseo効果をあげたいんだけれども
いまいちうまく伝わっていない。。。というか馬鹿にされている
0036nobodyさん05/02/08 15:58:10ID:???
違う間違えた
つまり

test.php=3333k

となるアドレスバーの表示を

test/3333k.htmlのようにしたいということなんだけど

全然伝わらない(笑
0037nobodyさん05/02/08 15:59:17ID:???
>>32
なんとなく見えてきた気がする。こういうことか?

ttp://hoge.net/test/033k.html にユーザがアクセスすると、
実際には ttp://hoge.net/test.php=0333k が呼び出されて、
>>26の処理をしてhtmlファイルを作成する。

その生成されたhtmlファイルをユーザがアクセスすることで
静的ファイル呼び出しで負荷減ってわけだ。ヒャッホー!
で、そのファイルにはどうやってアクセスするんだ?(;´Д`)
0038nobodyさん05/02/08 16:02:22ID:???
>>37
それそれ!
0039nobodyさん05/02/08 16:11:26ID:???
PHPの知識の有無と関係なくやっぱ馬鹿じゃねーかよw
0040nobodyさん05/02/08 16:11:53ID:???
質問者は、コテつけろや。
0041nobodyさん05/02/08 16:12:37ID:???
>>38
37の言うとおりなら毎回test.phpスクリプトが呼ばれて別に負荷削減になってないが、
SEO的なもの(拡張子で判別してる古臭いシステムも最近は少なくなったが)だけなら、
.htmlをPHPスクリプトだと判断して処理するようにサーバの設定を変えるだけでいいんじゃないのか?
0042nobodyさん05/02/08 16:14:38ID:???
・033k.html
<html>
<head><meta http-equiv="Refresh" content="0;URL=test.php=0333k">
</head></html>

・test.php
生成する処理
header("Location:生成したURL");

夢がひろがりんぐwwww
0043nobodyさん05/02/08 16:15:04ID:???
コテの代わりにsageをsagとしてる
最初にミスってあげてしまったのでそのまま放置してるだけだけど
0044nobodyさん05/02/08 16:16:23ID:???
>>38
crontabで定期的にstaticファイル(html)生成しときゃ良いだけじゃないのか?
0045nobodyさん05/02/08 16:19:30ID:???
>>37
それならmod_rewriteでフロントコントローラに処理まわすだけだから
アホのやりたいこととはちょっと違うんじゃないのか
0046nobodyさん05/02/08 16:20:37ID:???
ああ、分かった。
header("Location:"$_SERVER["QUERY_STRING"].".html");
だろ?
0047nobodyさん05/02/08 16:21:39ID:???
>>37
ttp://hoge.net/test/033k.html にアクセスすると
ttp://hoge.net/test.php=0333k.htmlが呼び出されてるってこと?

作られたファイルは次回からそれを読み込んで吐き出せばいいんでないの?

0048nobodyさん05/02/08 16:22:02ID:???
少なくとも42のような処理は論外
0049nobodyさん05/02/08 16:25:41ID:???
>>48
黙れ雑魚が。
0050nobodyさん05/02/08 16:27:23ID:???
簡潔にいうと

PHPで表示しているHTMLを部分を、$htmlに代入する方法が知りたい
以上

 $fp = fopen(”html.html”,’w’);
 fwrite($fp,$html,64000);
 fclose($fp);
0051nobodyさん05/02/08 16:32:51ID:???
>>50
「phpで表示しているhtml部分を」ってこと?
自分で作ってるんだから文字列として保存しておけばいいじゃん

005228,3705/02/08 16:35:24ID:???
オレを責めないでくれ(;´Д`)
オレにもsagが何をやりたいのか分からん。

>>50
$html = file_get_contents($filename);
0053nobodyさん05/02/08 16:36:21ID:???
>>50
いい加減馬鹿に付き合うのもしんどいんだが・・・

>PHPで表示しているHTMLを部分を、$htmlに代入する方法が知りたい

PHP(*1)で表示しているHTML(*2)を部分を、$htmlに代入(*3)する方法が知りたい

(*3)の処理をするPHPは(*1)なのか?
(*3)で代入するHTMLの内容は(*1)が吐いているのか?
■ このスレッドは過去ログ倉庫に格納されています