【PHP】質問スレッド Part5
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
02/09/11 14:15ID:FWA0CpdU■本家
http://www.php.net/
■日本 PHP ユーザ会
http://www.php.gr.jp/
■PHP マニュアル
http://www.php.net/manual/ja/
■PEAR マニュアル
http://pear.php.net/manual/ja/
過去スレ, 関連スレ及び注意事項等は、
>>2-10あたりにきっと誰かが……。
0067nobodyさん
02/09/17 12:57ID:ALvqH0Hvそれだと
<title>
ほげほげ
</title>
みたいになってると取得できないから正規表現で<title>から</title>までを抜き出したほうがいいのでは。
まあ、取得先の書き方が全部一行って決まってるなら>>64のやり方のほうが楽だけど。
0068nobodyさん
02/09/17 13:04ID:ALvqH0Hvあ、俺が書いてる間に・・・
俺も初心者なので合ってるかどうかは微妙だけど、
http://www.php.net/manual/ja/function.eregi.php
あたりでいいのでは。
正規表現の書き方自体はそのへんにいくらでもあるので検索するのが良いかと。
006961
02/09/17 14:39ID:???以下ようなものだとうまく動きました。
$fileurl= 'あいうえお<title>タイトル抜きだし</title>かきくけこ';
$title1= strpos($fileurl,'<title>') + 7;
$title2= strrpos($fileurl,'</title>');
$length= $title2 - $title1;
$title= substr($fileurl,$title1,$length);
echo $title;
しかし、これはたぶんスマートなやり方じゃないと思います。
しかも、>>67さんの言うように複数行になっているとうまくいきません。
つまり、$fileurlを以下のように変えるともうダメです。
$fileurl= file ('http://www.yahoo.co.jp/');
file関数では複数行は行指定しないとダメなのですね…。
file関数をほかの何かに変えればよいのでしょうか、
それともこのスクリプト全体がアホなのでしょうか。
0070↑
02/09/17 14:48ID:WWJg+78y007161
02/09/17 15:21ID:???複数行の問題についてはjoin()で解決しました。
が、どうも次の行がうまく機能していないようです。
$title2= strrpos($fileurl,'</title>');
# echo title2; にしてみると、3万いくら文字目とかになってます。
Yahoo!は</TITLE>が大文字なので大文字に変えてもダメでした。
'/'の文字を'\/'でエスケープしてみてもダメでした。
ていうかそもそもこのやり方ってスマートじゃない気がするのですが、
どうなのでしょうか。
0072nobodyさん
02/09/17 15:49ID:???長さを取得したり、特定のコマをJPEGで取り出したりできれば、
最高なんですが。
0074nobodyさん
02/09/17 16:03ID:m1Ma5obA試してないけどこんなんでどうだろ。
$url = "http://www.yahoo.co.jp";
$source_array = file($url);
$source = join("", $source_array);
eregi("\\<title\\>(*.)\\<\/title\\>", $source, $title);
ereg_replace("\n", "", $title);
$title = strip_tags($title);
echo $title;
間違ってるとこあったら誰かフォローよろしく。
0075nobodyさん
02/09/17 16:24ID:???(*.) -> (.*)
ereg_replace("\n", "", $title); -> $title[1] = ereg_replace("\n", "", $title[1]);
0076nobodyさん
02/09/17 16:48ID:jNW2u3Fw007775
02/09/17 16:48ID:jNW2u3FwちなみにCSVでデータベース出来るスクリプトです。
MySQLやPostgreSQLはサーバが対応してないので・・・
007872
02/09/17 16:51ID:???お騒がせしました。
0079nobodyさん
02/09/17 17:25ID:???PHPをデータベースにしたいの?(我ながら不自由な日本語だが
探すだけ無駄な気がするが…この辺つかっとけば?↓
http://www.freesql.org/
データベース専用鯖。
MySQL PostgreSQL に対応。無料。
008075
02/09/17 17:53ID:jNW2u3Fw無いですか・・・
SQLのこと全然分からないので・・・
項目作れて簡単に追加編集削除出来るようなのがあればよかったのですが・・・
すいません、ごめんなさい
0082nobodyさん
02/09/17 18:34ID:???008375
02/09/18 11:23ID:0kRbPetK逝ってきます・・・
0085nobodyさん
02/09/19 23:36ID:???0086nobodyさん
02/09/19 23:42ID:eFcguJsf実は最近PHP仕事でも趣味でも使ってないので(というかもともとウェブデザイナーなので)
最近の事情を知らないのですが、
最近PHPつかったサイトって、セキュリティ甘過ぎないですか・・・?
たとえば、
(1)directory の indexが丸見えなために、あるいは
(2)適当なquery stringぶちこむと簡単にphpのエラーメッセージが見れて、そのエラーメッセージから
・・で、インクルードされるファイルが見えて、それ見ると、
変数のエラーチェックをまともにやってないから、
query stringに適当なSQL文(をエンコードすると)入れるとDB操作ができちゃいそうで・・・
(実際にはやってないですが)
こんなもんなんですか?
最近、それなりに有名なサイトとか、go.jpなサイトでそういうの見つけちゃったんですが。。。
008786
02/09/19 23:44ID:???htdocsの下に*.incを置いちゃうのって、ふつーなんですか?最近のphp使いさんは
0088nobodyさん
02/09/19 23:47ID:???0089nobodyさん
02/09/20 00:03ID:OVVAotJ0って、実際にそこでdeleteとかselectとかすると、
法にふれるの?
0090nobodyさん
02/09/20 00:05ID:7xmF8XK60091nobodyさん
02/09/20 00:09ID:iViTLDSZ人を憎んでPHPを憎まず
009289
02/09/20 00:12ID:OVVAotJ0http://www.npa.go.jp/hightech/fusei_ac1/main.htm
にも抵触するのかな・・・?
0093nobodyさん
02/09/20 08:49ID:???不正アクセス禁止法には引っかからないよ.
0094名無しさん
02/09/20 15:44ID:???0095nobodyさん
02/09/20 16:33ID:???$this->member にアクセスするのに、
$home='member';
$this->$hoge みたいなことできませんか??
for($i=0;$i<10;$i++){
$mem="number_$i";
$this->$mem;
}なんてことができると嬉しいのですが
0096nobodyさん
02/09/20 16:37ID:DpSJVmH1そんなんじゃだめだろ。
0098nobodyさん
02/09/20 21:39ID:???PHPで埋め込み掲示板を作ってるんですが、
途中何らかのエラーが発生したときに
error関数などで
function error {
print "Error!";
exit;
}
というふうにexitを使ってしまうと、
埋め込み掲示板より下に表示したいタグ等まで
出力されなくなってしまい困っています。。
感じとしては
<HTML>
<BODY>
...
...
<?
埋め込み掲示板処理
?>
...
...
</BODY>
</HTML>
という感じです。エラーが発生したとき、
エラー出力とともにexitで終了せず<?...?>を抜ける方法は
無いんでしょうか?
よろしくお願いします。
0100nobodyさん
02/09/20 22:29ID:???レスありがとうございます。
例えば
function error {
print "Error!";
return($err_flag=1);
}
で戻って、各処理を
if (!$err_flag) {
処理続行
}
else {
処理終了
}
という感じにするということですか?
これだとすべての処理においてifで判別しながら
処理するという形になっちゃいますね。。
私の考えが間違ってるのかもしれませんが。。
010199
02/09/21 00:37ID:???っと当方もここで聞きまくってるPHP厨なのでよくわからずレスしてます(w
if文でやる他には、次のどうでしょ。
?>
...
...
</BODY>
</HTML>
の?>以降の部分をヒアドキュメント?だっけ?よく知らないんだけど、
function error {
print "Error";
include "footer.dat";//(footer.datは... ... </BODY></HTML>が書かれてるファイル)
exit();
}
とかにしてやったらどうっしょ。
それかincludeじゃなくて
echo "... ... </BODY></HTML>";にしちゃうとか。
どっかに $footer="</BODY></HTML>";として
echo $footer;としてもイイヨネ。
010298
02/09/21 01:30ID:???たびたびありがとうございます。
それと少し説明不足な点がありました。
私の作っている埋め込み型掲示板はユーザビリティ(?)重視として
掲示板周辺のデザインも自由にいじれるようにしたいんです。
例としてはこんな感じです
<HTML>
<BODY>
...
(サイトの全体的なデザイン開始 <TABLE>..とか)
...
<?
ここに埋め込み掲示板を表示
HTMLは<TABLE>で始まり</TABLE>で終了
?>
...
(サイトデザインの終了 ..</TABLE>とか)
...
</BODY>
</HTML>
includeを使うと後半のタグも表示できますね!
とりあえずそれでがんばってみます。
ありがとうございました。
0103nobodyさん
02/09/21 01:48ID:???どう答えて欲しいの?
私もデザイナーだけど、言語に関係なくプログラマのスキルが関係してると思うけど?
確かに、言語が理解しやすい分初心者でも作りやすいから
セキュリティホールの多いものも確か。
>最近の事情を知らないのですが、
>最近PHPつかったサイトって、セキュリティ甘過ぎないですか・・・?
あなたのように事情を知らない人が作っていると思いますよ。
>それなりに有名なサイトとか、go.jpなサイトでそういうの見つけちゃった
はい。当たり前にあります。特にXSSとか・・。
それに、あなたのスキルでは見つけられないセキュリティホールは死ぬほどあります。
>ふつーなんですか?最近のphp使いさんは
普通かどうかはその人の知識による。
同じデザイナーとして、恥ずかしい質問はやめてください。
0104nobodyさん
02/09/21 02:24ID:???しつこいので>>103さんに加えてさらに追い討ち。
>>(1)directory の indexが丸見えなために、あるいは
PHPに限らない。Apacheの問題。
>>(2)適当なquery stringぶちこむと簡単にphpのエラーメッセージが見れて、そのエラーメッセージから
PHPの設定の問題。が、JSP等でもエラーメッセージ(printStackTrace)が出ることもある。
>>・・で、インクルードされるファイルが見えて、それ見ると、
見えるのはおかしい。Apacheの設定の問題。
>>変数のエラーチェックをまともにやってないから、
>>query stringに適当なSQL文(をエンコードすると)入れるとDB操作ができちゃいそうで・・・
もちろんPHPに限らない。
チェックをしないでも安全な言語なんてどこにもない。
まぁPHPは敷居が低いのでセキュリティ知識のない人が存在する割合が
他の言語と比べて高くなっているのは認めるところだが。
0105nobodyさん
02/09/21 02:34ID:???0106nobodyさん
02/09/21 09:39ID:ZZHp0IbF普通どれくらいお金払えば作ってもらえますか?
CSV、MySQL、PostgreSQL、でそれぞれ大体の制作費を
教えて欲しいんですが、、。
0107nobodyさん
02/09/21 11:03ID:???CSV \1,200,000/人月(メンドイから)
0108nobodyさん
02/09/21 11:10ID:ZZHp0IbFそんなにかかるんですか??
0109nobodyさん
02/09/21 12:00ID:8ExCK0V+あんまり製作を外注したことないでしょ?
それは結構安い方だと思うよ。
まあ、単価だけじゃわからんけどさ。
0110nobodyさん
02/09/21 14:17ID:???fgetsで取りこむと改行コードが消えます??
なぜかデータに妙な改行コードが出たり消えたりするのですが
0111tora
02/09/21 15:55ID:???/* クッキー名(任意) */
$cookie = "COOKIE_VISIT";
/* クライアントからクッキーが送信されているか判断 */
if (isset($HTTP_COOKIE_VARS[$cookie])) {
$value = (int)$HTTP_COOKIE_VARS[$cookie];
} else {
$value = 0;
}
/* 訪問回数のインクリメント */
$value++;
/* 有効期限(1年) */
//60秒
$expire = time() + 60;
/* クッキー発行 */
setcookie($cookie, $value, $expire);
session_start();
print("<BR> $value 回<BR>");
?>
これで、何回このサイトに来たのか確認するプログラムを組んでいます。
このプログラムネットスケープでは上手くいくのですが、IEでは上手くいきません。
どうしたらよいのか教えてもらえないでしょうか?
PHP4,register_globals=offです。
よろしくお願いします。
0112tora
02/09/21 16:06ID:???エラー内容を書くのを忘れてました。
IEでのエラー内容ですが、
読み込むたびにsessionIDが更新されているみたいなのです。
よろしくお願いします。
0113nobodyさん
02/09/21 17:20ID:7B0wr+QP環境は、FreeBSD 4.6 です。
いつも、configureをする時にFreeBSD用に、
./configure --prefix=/usr/local --sysconfdir=/usr/local/etc --datadir=/usr/local/share/php --mandir=/usr/local/man --with-pgsql=/usr/local/bin --enable-mbstring --enable-mbstr-enc-trans
をしていたのですが、
build/bsd_makefile
があるのを知りました。どのようにして使ってセットアップすれば良いのでしょうか。
0114nobodyさん
02/09/21 18:22ID:???PHP4はないの?
0115nobodyさん
02/09/21 21:38ID:???これでいいか?
0117nobodyさん
02/09/22 02:18ID:???0118nobodyさん
02/09/22 02:46ID:PyH4t/bUbuildconf なんてスクリプトを見ると
case "`uname`" in
*BSD/OS*)
./build/bsd_makefile;;
esac
なんて書いてあるから、FreeBSD では使わないのが吉では?
FreeBSD 使ってるならビルドは、
cd /usr/ports/www/mod_php4
make
make install
の方がお手軽で確実でせう。
%% せっかくの port ノウハウなんで利用しないともったいない。
---
俺的ポータルサイトを作ろう
http://mysite.ddo.jp/
0119Disca ◆NAfP6znE
02/09/22 19:52ID:frQAcJLs>>118 サンクスです。
私の場合は、stand/sysinstall でPackageをインストールしているのですが、
無いです、WWW、Japaneseのディレクトリも探したのですが無いです。
変ですよね。
0120nobodyさん
02/09/23 01:21ID:UbulpwL5展開しておいて cvsup で更新かけると良いでしょう。下手に新しいソースコード
を導入するより、ports/packages の方が管理情報が残るし手順の再現ができて
楽だと思う。
0121nobodyさん
02/09/23 05:53ID:g72U2pu2PHPで、変数に何も入ってないかどうか調べる関数ってなんでしたっけ?
012299
02/09/23 07:42ID:???http://search.net-newbie.com/php/ref.variables.html
このあたり参照どぞ
012399
02/09/23 07:45ID:???素人な俺が素人向けにページ立てようと思うんだけど、やめたほうがいいかな?
0124nobodyさん
02/09/23 11:10ID:Py8drUeO012899
02/09/23 13:36ID:???よろしくおながいします!
0130nobodyさん
02/09/23 21:22ID:mnhekBpn全部インストールしたんですけど
httpd.confの設定できません
LoadModule php4_module lib/apache/libphp4.so
ライブラリがないんです
Apacheで./configureのオプション
PHPで./configureのオプション
みんなの設定教えてほしいです
っていう質問ここでしていいですか?
0133nobodyさん
02/09/24 00:42ID:/r2x96gq日本PHPユーザ会に書いてある
"日本語関係の処理にバグがあります。patch が出るまでしばらくお待ち下さい。"
というphp4.2.3のパッチってもう出てるんですか?
0134nobodyさん
02/09/24 03:49ID:6xTHY1PU問題なく動いてます。
別にアスキー転送じゃなきゃダメって訳じゃないのかな?
0136nobodyさん
02/09/24 17:50ID:clJNObLGどなたかこういうので使ってるよって人アドバイスおながいします
0137nobodyさん
02/09/24 18:29ID:???つーかオレそうしてるし。
0138nobodyさん
02/09/24 20:32ID:nF3wJ6pk0139nobodyさん
02/09/24 21:07ID:uxYEF9Jgしかも、PHPにいたっては普及してるのだろうか?
パールと違ってPHPで
作られた掲示板や検索エンジン(自動リンク)は
まともなものが見つからない!誰かphpとMYsql
を使った検索エンジンを配布しているところ知らない?
プログラマーーってすごすぎる!尊敬してしまうよ
俺は今、おみくじスクリプトが限界だ。
0140nobodyさん
02/09/24 21:09ID:nF3wJ6pk0141nobodyさん
02/09/24 23:44ID:eG+qA3Bk一年くらい稼働しているのですが、そのうち2日間だけ
/tmp/フォルダに、
phpcSCFMZ
のような、php+ランダムな文字列のファイルが
数百個できてました。サイズは0。ファイルオーナーはhttpd。
これは何なのでしょうか?
削除してもいいのでしょうか?
セッションとは別だと思います。session_ランダムな文字列で
一定期間だけ作成されていますので。
どなたか教えてください。
0144nobodyさん
02/09/25 00:43ID:???俺が思うにPHPのフリースクリプトはPerlほどは出てこないんじゃないかな?
だってPerlの奴が腐るほどあるからね。
PHPで作ろうと思っても新しいアイデアもそう簡単には思い浮かばないし。
作っても結局、PHPでわざわざ配布する必要あんのか?って感じ。
0145nobodyさん
02/09/25 01:47ID:???Perl CGIはほとんどの鯖ですぐ使えるが。
フリースクリプトの設置に苦しむレベルの人だと、
PHP+DBのシステムを作るのは敷居が高いでしょう。
0146nobodyさん
02/09/25 08:38ID:???ここにはイパーイ
0147nobodyさん
02/09/25 17:12ID:sj/HLJpa説明書も英語だろうし。
やっぱ、スクリプトから勉強しなきゃダメか・・・。
日本が作った奴ってないのか?
日本人は遅れてるな。実は日本人が作った奴
一個見つけたんだが糞だった。
0148nobodyさん
02/09/25 17:14ID:sj/HLJpa0149nobodyさん
02/09/25 18:46ID:???フリースクリプトの設置に苦しむレベルのひとが
英語のreadmeを忌避するひとが
DB使おうなんて考えることがまずおかしいんじゃないか?
それから
>やっぱ、スクリプトから勉強しなきゃダメか・・・。
などと言っている不勉強な香具師に
>実は日本人が作った奴一個見つけたんだが糞だった。
などと言われてもお前自身糞なことからはじめろ、としかレスしにくいんだが。
0150nobodyさん
02/09/25 21:13ID:???0151nobodyさん
02/09/26 00:02ID:???実際、自分で作ってみれば難しさがわかるべヽ(`Д´)ノ
0153nobodyさん
02/09/26 02:11ID:???自分じゃ作れないくせによくも糞とは言ったもんだ。
しかも日本人は遅れてるだと?
じゃあ何も出来ないお前はどこら辺?
まあ気持ちはわからんでもないが・・・
0154nobodyさん
02/09/26 02:32ID:???0155nobodyさん
02/09/26 03:48ID:???作る側の立場なら>>147は目糞だが、使う側の立場なら>>147は鼻糞。
そして>>147すら満足させられない漏れらは耳糞。
>>147自身、糞だって自覚してるんだよ。
>>147は努力しないひと。勉強できないひと。
そんな>>147に捧げよう。
<?
echo "<META HTTP-EQUIV=\"refresh\" content=\"0;URL=http://tmp.2ch.net/kitchen/\">";
?>
0156nobodyさん
02/09/26 05:07ID:???それをやるならもっとスマートに
<?
header("Location: http://tmp.2ch.net/kitchen/");exit;
?>
と。
0157nobodyさん
02/09/26 09:31ID:FqgYcmGJ他の方法で余りを求める方法があれば教えてくださいm(_ _)m
0159157
02/09/26 09:57ID:FqgYcmGJできました!
ありがとうございましたm(_ _)m
0160nobodyさん
02/09/26 10:30ID:???PHPでMYSQLのフィールドカーソルを操作したいのですが、よくわかりませんでした。
簡単な操作方法がありましたら教えてください。
0161nobodyさん
02/09/26 20:33ID:v/eI/U7Rそれは「PHP」の問題か?
0163nobodyさん
02/09/26 23:04ID:???mysql_fetch_field
0164nobodyさん
02/09/28 00:40ID:???http://pc.2ch.net/test/read.cgi/php/983250751/l50
0165nobodyさん
02/09/28 23:08ID:???0166nobodyさん
02/09/28 23:58ID:???cron以外ということはUnix系OSなんですな。
気軽な方法ではcorn以外思いつかないけど、
Unix板かLinux板で聞いてみるとか。
レンタル鯖はcronを使わせてくれない、もしくは有償だったりしますが、
自宅や会社のPCを使って、定期的にwgetさせる手は使ってます。
■ このスレッドは過去ログ倉庫に格納されています