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

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

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2007/07/11(水) 17:50:01ID:fYd+34US
まず読め→【PHP マニュアル】http://www.php.net/manual/ja/
PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り

◆前スレ
【PHP】下らねぇ質問はここに書き込みやがれ 49
http://pc11.2ch.net/test/read.cgi/php/1182794620/

◆質問する時の注意
・ 自分のIDを表示させること。(メール欄に何も記述しないこと。空白も入力しちゃダメ)
・ サーバーのOS(Linux、Windows他)、WebサーバーとPHPの種類やバージョン等を明記すること。
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。

◆質問後の注意
・偽者防止に必ずIDを表示させること。(メール欄に何も記述しない)
・2回目以降は最初に質問した際のレス番号を名前欄に入れること。
・解決しなくても回答をもらった場合はお礼を言うこと。
 (荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)

◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。

【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで
0671nobodyさん2007/07/22(日) 05:37:51ID:???
最近、書いた文字を音声に変換してしゃべるソフトを購入したのですが、
女性の声にしてエロい言葉を喋らして大喜びしている俺って異常?
0672nobodyさん2007/07/22(日) 06:44:35ID:???
異常
0673nobodyさん2007/07/22(日) 07:30:52ID:???
あるディレクトリの下にfopenのwでファイルを作る/ファイルに書き込むときって
そのディレクトリのパーミッション777じゃないといかんの?
0674nobodyさん2007/07/22(日) 09:44:13ID:???
>>670
configureの時に決められると思うよどっちでもいけると思う
debianパッケージとかでは別々になってるね

>>673
そのディレクトリへの書き込み権限があれば大丈夫
0675nobodyさん2007/07/22(日) 09:57:54ID:???
>>670
同じのを読むようにもできるけど、
デフォルトではphp.iniをサーチする場所も順序も違うし
confの内容も適宜変えるのが普通なので、
別ファイルにしとく。
06766622007/07/22(日) 10:04:09ID:fPjwTOfp
お願いします
0677nobodyさん2007/07/22(日) 10:11:43ID:???
>>676
exit();

以上。
0678nobodyさん2007/07/22(日) 10:17:00ID:???
>>662
少なくともPHPはなにも実行してない。
なんかのバイト列に見えるから、バイナリファイルにしてfilemagicに食わせちゃどうだい。
0679nobodyさん2007/07/22(日) 10:17:09ID:fPjwTOfp
>>677

下の数字のコードは何を実行してるのでしょうか?
デコードも可能ですか?
0680nobodyさん2007/07/22(日) 10:21:46ID:???
>>678
ありがとうございます。
filemagicとはデコードするソフトなのでしょうか?
検索しましたが、いまいちよくわかりません。
0681nobodyさん2007/07/22(日) 11:25:12ID:UxMDVzWu
>>662
2進法で8桁、1バイトじゃね
0682nobodyさん2007/07/22(日) 13:45:18ID:KLJoHynC
>>679
これだけで何のデータかわかるやつがいれば神
どこからもってきたコードなのか晒せばもしかしたら分かる香具師がいるかもね
0683nobodyさん2007/07/22(日) 15:05:09ID:???
直接呼ばれないようにするための1行目って事か?
アプリはこれの1行目を読み捨てて使ってるんだろう。
何に使ってるかはこれを読み込んでるソース見ないとわがんね。
0684nobodyさん2007/07/22(日) 15:56:57ID:???
>>662
書き逃げか?
0685nobodyさん2007/07/22(日) 15:59:52ID:???
>>680
filemagicとは、バイナリファイルのマジックナンバー
(Linuxのバイナリだと頭にELFがつくとか、JPEGのヘッダとか)
からそのバイナリの種類を推測するもの。

そのバイト列のようなものを適当にパックして、fileコマンドの入力にしてやれば
なんのデータかあるいは実行ファイルかわかるかもしれん、ということ。
ていうか、バイナリの知識なさそうだから難しそうだね。

たぶん最も速いのはそのファイルの配布元に聞くか、
そのデータを処理するコードがあればそれを読む事だろう。
0686nobodyさん2007/07/22(日) 16:09:48ID:???
config.dat.phpでググルと出てくるみたいだね。
http://www.infos-du-net.com/forum/168994-21-php-binaire
で、ここと、おんなじ流れになってるのにワラッタ。
0687nobodyさん2007/07/22(日) 16:25:20ID:???
で、元スクリプトも発見(俺も暇だな)
ttp://www.stadtaus.com/en/php_scripts/gallery_script/
要するに有料スクリプトなんで、そこのキーをバイナリ処理してるところみたいだね。
0688nobodyさん2007/07/22(日) 16:36:01ID:q/xgz08B
クラス内にないメソッドを一括で処理するのに
public function __call($method,$args)
っていうのあるじゃないですか?

クラス内じゃない、スクリプトにじか書きしたfunctionで同じような事実現できないでしょうか?

つまり、まったく定義されてない関数hogeを読んだときを
Fatal error: Call to undefined function hoge() in 〜
と出さずに処理を続けたいのですが、可能ですか?

クラス定義の外に
function __call($method,$args)
ってやってみたけどだめでした。(まあ、そりゃダメだろうけど・・・)

呼び出す側でfunction_existsを使えば出来そうですが
呼び出す側がまったく手をつけられないので、呼ばれたときに処理できたらなあ、とおもいまして。

おねがいします。
0689nobodyさん2007/07/22(日) 16:43:59ID:???
名前を決めずに変数使う方法ないですか?
get_defined_vars()を使って、
現在のスコープの変数をゲットしたいのですが
その前の処理で、いらぬ変数を使ってしまうんです。
06906892007/07/22(日) 16:51:34ID:???
すみませんマ板と勘違いしました。
06916892007/07/22(日) 16:54:11ID:???
>>690
番号間違えてますよ
0692nobodyさん2007/07/22(日) 16:56:44ID:9tP3mK//
win + php + mysql4or5 で開発してる方に聞きたいです。
phpの文字コードとmysqlの文字コードを何に設定していますか?

今、phpをutf8、mysqlもutf8で作業してるんですが、mysqlに保存してる日本語データを
phpに表示すると???と化けてしまいます。
http://kawama.jp/archives/2006/03/phpskipcharacte.html
↑のページを参考に
[mysqld]
skip-character-set-client-handshake
として作業しても直らないんですが、どうしたらいいでしょう?
また、phpとmysqlの文字コードって統一する必要はないんでしょうか?
0693nobodyさん2007/07/22(日) 17:01:55ID:T1/ov9QC

ロリポップのPHPでファイル開いたり、書き込みしようと思ったら
こんなメッセージがでます。
どうすりゃいいんでしょ?

Warning: fgets(): supplied argument is not a valid stream resource in /home/sites/lolipop.jp/users/lolipop.j〜

0694nobodyさん2007/07/22(日) 17:05:03ID:T1/ov9QC
すいません
1時間くらい困ってたんだけど自己解決しました。
ファイルのパーミッション777にしたらokでした。

ぐぐったらどっかにパーミッション777ではダメで700にしなさい
と書いてあったのでそうしてたのに・・
0695nobodyさん2007/07/22(日) 17:17:01ID:???
>>689
$newvar = ランダムな文字列生成;
にして、${$newvar}すれば?
チェックはarray_key_exsitsつかって$newvarとget_defined_varsを比べればいい。
0696nobodyさん2007/07/22(日) 17:21:41ID:???
$zettai_chigau_namae[]とかいうのを一つつくっておいて、配列で全部処理するとか。
0697nobodyさん2007/07/22(日) 17:42:57ID:???
$chinpo_manko_zukozukoならまず被らないからおk
06986892007/07/22(日) 18:36:11ID:???
もっとわかりやすくソースを添付してください
0699nobodyさん2007/07/22(日) 18:38:55ID:???
>>698
生意気なこと言ってると、チンポ挿入するぞ!!!
0700nobodyさん2007/07/22(日) 18:38:58ID:???
IDを出せ。話はそれからだ
07016892007/07/22(日) 18:49:30ID:???
っんだと!このちんかす野郎!
0702nobodyさん2007/07/22(日) 19:16:00ID:B3eI7QnN
キハ65(キハ58)に乗ってこようと思いますが、エンジン直下の座席といえば、どの座席番号あたりになるのでしょうか?
(エンジン直下の座席だと迫力あると聞いたので。)
0703nobodyさん2007/07/22(日) 19:22:45ID:???
一番ベストなhtmlエスケープってどんなんですか?
0704nobodyさん2007/07/22(日) 19:28:27ID:???
一番ベストなhtmlエスケープとは、全て画像でHPを作ること。
0705nobodyさん2007/07/22(日) 19:32:17ID:???
その発想は無かったわ
0706nobodyさん2007/07/22(日) 19:58:06ID:???
画像も書き換えられることを勉強しましょう。安全ではありません
0707nobodyさん2007/07/22(日) 19:58:40ID:ynhTk9Bz
すみません、教えてください。
ファイル名は8文字を超えてもだいじょうぶでしょうか?
0708nobodyさん2007/07/22(日) 20:03:46ID:???
0709nobodyさん2007/07/22(日) 20:05:14ID:???
MS-DOSktkr
0710nobodyさん2007/07/22(日) 20:09:26ID:???
DOCTYPE宣言ってタグですか?
宣言だからタグじゃない?
0711nobodyさん2007/07/22(日) 20:15:48ID:???
もうやめな。ネタ仕込みが浅すぎる
0712nobodyさん2007/07/22(日) 20:18:36ID:???
DQNTYPE宣言してるやつがいるな
0713nobodyさん2007/07/22(日) 20:53:10ID:???
こんなスレを天皇陛下がご覧になったら、さぞお嘆きあそばすぞ。
俺たちは、天皇陛下の赤子であることを忘れるなよ。
0714nobodyさん2007/07/22(日) 21:01:34ID:???
まじで一番ベストなhtmlエスケープって何なんですか?
色んな種類が多すぎて分からないんですよ
ネタじゃないです
0715nobodyさん2007/07/22(日) 21:03:53ID:???
まずきさまは危険なものを知ることからだ。
話はそれからだ
0716nobodyさん2007/07/22(日) 21:11:10ID:ynhTk9Bz
掲示板スクリプトにテーブルタグ使うのってありですか?
なんか汚いような機がするんですが・・・
0717nobodyさん2007/07/22(日) 21:14:05ID:???
>>714
htmlspecialchars($str, ENT_QUOTES, 'UTF-8');
第3引数は使ってる文字コードに合わせる、無しでもいいが
あとこれをベタ書きするんじゃなくて第2,3引数を
一括で変えられるようにしておいて
ラップしたメソッドか関数を用意して使うといい
0718nobodyさん2007/07/22(日) 21:18:57ID:???
>>715
一応知っていますよ
知らない人はhtmlエスケープすら知らないはずです
ただ種類が多すぎるのです
>>717
ありがとうございました
0719nobodyさん2007/07/22(日) 21:45:58ID:???
オブジェクト指向でCSSを組み立てたいんですが
そういうモジュールみたいのありますか?
0720nobodyさん2007/07/22(日) 21:48:50ID:???
オブジェクト指向のCSSなんてあるの?
0721nobodyさん2007/07/22(日) 22:00:23ID:???
そんなのないですよ。
組み立て時のみオブジェクト指向にして

$object->setWidth(100);
$object->setHeight(100);
$cssCode = $object->getCode();

みたいなことしたいんです
0722nobodyさん2007/07/22(日) 22:07:19ID:???
変わったことしようと思うんだね。
使い道なさそうなものはたぶんないよ。
0723nobodyさん2007/07/22(日) 22:07:21ID:???
>>721
W3Cに違反しているから、文法的に解釈できるブラウザなんてないでしょ。
ネタ?
0724nobodyさん2007/07/22(日) 22:15:41ID:???
CSSを吐き出すんだべ
0725nobodyさん2007/07/22(日) 22:18:26ID:???
>>721
PEAR HTML_CSS
http://pear.php.net/package/HTML_CSS
ただおまえの求めてるAPIの感じではないかもしれないが
0726nobodyさん2007/07/22(日) 22:30:01ID:???
>>724
そうです
>>725
WOW! ありがとうございます
0727nobodyさん2007/07/22(日) 22:59:30ID:e5knIosI
PHP厨の底力みせてくれや
http://www.jienq.com/vote/htm/1185110565.html
0728nobodyさん2007/07/22(日) 23:10:21ID:???
>>727
宣伝厨は帰れ
0729nobodyさん2007/07/22(日) 23:21:25ID:???
>>726
で実際どういう事に使おうと思ってんの?
考えられるっていや初心者でもそこそこ簡単にcssを設定できるブログサービスくらいか・・・
ただわざわざ探してどんなんだか分かんないライブラリ使う意味ないし
どうしてもオブジェクト指向でやりたいっていっても
プロパティ設定して吐き出す程度の機能だったら
調べながら使うより自分で書いた方が早そうだ
0730nobodyさん2007/07/22(日) 23:24:20ID:???
>>727
そこら中に宣伝してるんだろうが1時間たっても誰も投票してなくてワロタ
0731nobodyさん2007/07/22(日) 23:26:46ID:???
配色が7年前ぐらいのやつに投稿しようとは思わないわ
0732nobodyさん2007/07/23(月) 00:01:42ID:???
投票したのだれだよw
0733nobodyさん2007/07/23(月) 00:29:37ID:???
>>727
投票しといたぞ
ちんぽ語に
0734nobodyさん2007/07/23(月) 01:45:37ID:???
流れをとぎって悪いんだが、import_request_variables って
何に使うの? これ使うとregister_globals=Off は無意味に
なるとかないの?
0735nobodyさん2007/07/23(月) 01:56:39ID:???
>>731
配色7年前バロスww
0736nobodyさん2007/07/23(月) 02:04:19ID:mtYZQPso
>>734

>>1
0737nobodyさん2007/07/23(月) 02:32:31ID:Q/UfUVNm
文字列の加工処理しているのですが、「〜」と「〜」の違いって何でしょうか?
同じ字形なのですが、str_系の関数もmb_系の関数も一致しないのですが・・
07387342007/07/23(月) 03:16:15ID:???
>>736

いや、マニュアル読んでも使い道が分からないんだよ。
register_globals = Off のときにGET値やPOST値をグローバル
にする意味が。
0739nobodyさん2007/07/23(月) 03:21:34ID:Q/UfUVNm
>>738
グローバル変数は、ユーザーが意図しない変数を入れてきて、
プログラムの誤作動、セキュリティーの脆弱性を高めることに繋がるので、
基本的にOFFにしておくという意味。
0740nobodyさん2007/07/23(月) 03:27:35ID:???
質問するときは言葉遣いにきをつけような
0741nobodyさん2007/07/23(月) 05:15:02ID:???
回答するときもな
0742nobodyさん2007/07/23(月) 05:49:07ID:FkQfGydc
おい、なんでこのスレの連中がインターンスレ見てるのよ
はやく答えろ
0743nobodyさん2007/07/23(月) 09:59:03ID:x2hGpWhd
プロパティーのリストを渡したら
クラスのsetterやgetterを自動生成してくれるようなライブラリ知りませんか?
0744nobodyさん2007/07/23(月) 10:15:03ID:m6GTZoUq
改行なしに入力されてしまった
textareaのテキストを一定間隔で\nしたいのですが
mb_chunk_split的な関数はないですよね?

あああああああ\nいいいいいいいいい\n
0745nobodyさん2007/07/23(月) 10:16:42ID:m6GTZoUq
つwordwrap()

本当にありがとうございました
0746nobodyさん2007/07/23(月) 11:35:32ID:g+EySz3/
上の方の応用で

20文字ごとに\nを入れるとして
日本語は1文字カウント、英字は2文字で1字カウントで挿入するとして
スマートなループはあるでしょうか?

0747nobodyさん2007/07/23(月) 11:57:31ID:???
まず貴様が文字コードsjisなのかeucなのかutf8なのかにもよる。
それを書いてからに白。
話はそれからだ
0748nobodyさん2007/07/23(月) 13:33:46ID:LAzhk+Ka
PHPでセッションを使うときにURLにセッションIDを付加しています。
(携帯サイトで使用している為)

会員ページでは全てのページに会員の名前を表示したいのですが、
ログインのときにIDとパスワードから名前を取得してセッションに格納するべきか、
全ページでDBにアクセスして名前を取得するか迷っています。

皆さんはどちらの方法でしていますか。
またほかに何か方法はありますでしょうか。

アドバイス頂けたらと思います。
宜しくお願い致します。
0749nobodyさん2007/07/23(月) 13:35:33ID:???
>>746
英字3文字日本語1文字のような文字列はどうするよ?
「テストabcあ」とか
0750nobodyさん2007/07/23(月) 13:36:54ID:???
まぁPHPの板だからここで聞くのは変かもしれないが

amachangってどう思うよお前等?
俺はぶっちゃけ嫌いなんだよね…
CSS Niteの1件といいね
07517462007/07/23(月) 13:39:21ID:g+EySz3/
とりあえずこんな風にしてみました

//半角幅折り返し
function mb_chunksplit($value,$br = 20) {
global $action;
if($action == "post") {
$loop = mb_strlen($value,DEF_HTTP_ENC); //マルチバイト文字数
for($i=0; $i < $loop; $i++) {
$wk = mb_substr($value,$i,1,DEF_HTTP_ENC); //一文字ずつ取得
//指定バイト幅で改行
if($line_count >= $br) {
$line .= "\n";
$line_count = 0;
}
$line_count += mb_strwidth($wk);
$line .= $wk;
}
}else{
$line = $value;
}
return $line;
}
0752nobodyさん2007/07/23(月) 14:14:00ID:???
じゃあそうすれば
0753nobodyさん2007/07/23(月) 15:28:23ID:???
perlでの文法で下のような事をphpでやりたいんだけどえらい人教えてください
$count = 1;
$addr = "000.000.000.000"
↑のデータをファイルとクライアントから取得したと仮定

↓やりたいのはここから
chomp($count);
$count ++;
$hoge[0] = "$count"."\t"."gmt";
push (@hoge,$addr);
open (OUT,">data.txt");
 foreach (@hoge) {
  print OUT "$_\n";
 }
close OUT;

作りたいのは簡単なアクセスカウンターです
ファイルから読み込みデータを配列に格納することはできたのですが、
カウントアップから複数行の書き出しのところで躓いてます。
0754nobodyさん2007/07/23(月) 15:33:24ID:???
>>753
とりあえず>>1

今日から夏休みなんだよなぁ・・・
厨が増えそうで怖い・・ってか流れからしてもう増えてるな
07557532007/07/23(月) 16:24:58ID:???
ごめん、首つってくるわ。
perlスレにいくからごめんな
0756nobodyさん2007/07/23(月) 18:10:40ID:???
>>755
とりあえず>>1

今日から夏休みなんだよなぁ・・・
厨が増えそうで怖い・・ってか流れからしてもう増えてるな
07576922007/07/23(月) 18:13:09ID:6p0coLtT
すみません、誰か>>692の質問に答えてもらえませんか
>win + php + mysql4or5 で開発してる方に聞きたいです。
>phpの文字コードとmysqlの文字コードを何に設定していますか?

>また、phpとmysqlの文字コードって統一する必要はないんでしょうか?
07587532007/07/23(月) 18:34:20ID:???
うぜーー門前払いにされたんだけどよ
ここでやっぱり聞きます。
おしえてください。よろしくたのんます。
0759nobodyさん2007/07/23(月) 19:09:19ID:???
>>758
とりあえず>>1

今日から夏休みなんだよなぁ・・・
厨が増えそうで怖い・・ってか流れからしてもう増えてるな
0760nobodyさん2007/07/23(月) 19:14:50ID:6p0coLtT
>>759
>厨が増えそうで怖い

お前も似たようなもんだろが
0761nobodyさん2007/07/23(月) 19:29:18ID:???
>>753
chompはtrimかrtrim
PHPの関数は基本的に値渡しなのでtrim($count)だけではだめ
$count = trim($count);
のように戻り値を受け取らないといけない
pushはarray_pushがあるけどそもそも配列使う必要ないよ
$count = trim($count);
$fp = fopen("data.txt", "w");
fwrite($fp, $count . "\t". "gmt" . "\n" . $addr . "\n");
fclose($fp);
0762nobodyさん2007/07/23(月) 19:47:12ID:???
>>757
俺の場合はlinux - php5 - mysql5だけど
utf8が通らないなんてあり得ないので、必ずどこかで設定ミスしてわけわからん事になっているはず。

一通りまとめられている解説サイトでも見ながら(自分にあったものを検索汁 :あとはスレの >>1 のリンクとか)
「一つずつ」 順を追って確認しながら作業してみ。

確認箇所
・php.ini
・my.cnf
・DB
・ソース内のFORMのPOST部分のソース
・ソース内のinsert部分

そもそも
mysql> SHOW VARIABLES LIKE 'character\_set\_%';
でちゃんとutf8になっているか?
0763nobodyさん2007/07/23(月) 20:02:19ID:???
>>759
自分のこと言ってるんだねw
07647572007/07/23(月) 21:23:42ID:6p0coLtT
>>762
ありがとうございます いろんなサイトをもう3日見てまわってます
文字コードの設定は 
mysqlは
+--------------------------+-------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
+--------------------------+-------+
PHPは
mbstring.http_output UTF-8 UTF-8
mbstring.internal_encoding UTF-8 UTF-8
となっています。

また、mysqlにcmdからinsert文で日本語のデータを入れて、
それをPHPで表示するとやっぱり化けています。
つまり、少なくともPHP→mysqlの登録部分でのエラーではないみたいですが…
なにが悪いんだろう
0765nobodyさん2007/07/23(月) 21:51:49ID:???
>>764
cmd周りは、詳しくないが、
windowsの、コマンドプロンプトって、デフォルトが SJISだから、
それで日本語つっこむと、SJISの日本語がそのまま入ってしまうんじゃ? ([client]default-character-SET=utf8 の場合)

cmd上で、
chcp 65001 ってすると UTF-8になるけど、日本語がこの状態で正しくつっこめるかどうかはしらん

とりあえず、
hoge.php と適当なファイルをUTF-8作って、 埋め込みで

$a = "日本語";
//$aのinsert文実行
//select文実行
echo [selectしたデータ]
みたいな感じの処理を書いてみてブラウザで表示してみれば?(ブラウザのエンコード自動判定も、右クリックでUTF-8に変更する)
0766nobodyさん2007/07/23(月) 22:09:21ID:???
参考にならないかもしれないけど、俺のとこの環境だと
mysql_query('set character set utf8');
で全て解決する。
07677572007/07/23(月) 22:56:30ID:6p0coLtT
>>765-766
ありがとうございます
試しに登録側のPHPを以下にしたらうまくいきました
<?php
extract($_POST);
$db=mysql_connect('localhost','root','pw');
mysql_select_db('peartest');
mysql_query("SET CHARACTER SET utf8");//この行を追加
if($name != ""){
$sql = "insert into dbtest values(0,'$name')";
mysql_query($sql);
}
?>

自分は、mysql_query("SET CHARACTER SET utf8");は読み取り側にすべき機能なのかと
思っていたんですが、送り側にもするものなんですね(>>766さんもそうなんですか?)
これは、「これから送るデータはutf8で保存しろ」という命令と考えていいんでしょうか?
そうすると結局全てのPHPスクリプトに書き込まなきゃいけなくなりそうですが、、

その「全部にイチイチ書く」のを避けるために my.iniにskip-character-set-client-handshakeを
指定するといろんなサイトに書いてあったのに、そのやり方じゃうまくいきませんでした。。
なんでだろ、もういいかなぁ…
0768nobodyさん2007/07/24(火) 00:01:05ID:???
そもそもインサートしようとしているデータが本当にUTF-8なのか疑問だ
0769nobodyさん2007/07/24(火) 00:02:08ID:N6M16q3q
OSはWinsows
Apache 2.2.4、MySQL 5.0.41、PHP 5.2.2を使用しています。

以下のものを、掲示板のトップページにfunction dispTitleList($pid)
という関数を使って、ツリー表示をしたいと思っています。
改善点を教えていただけませんでしょうか。お願いいたします。
07707692007/07/24(火) 00:03:10ID:N6M16q3q
<?php
// DBへ接続
$con = mysql_connect('localhost','root','')
or die('Cannot connect<br>');
mysql_select_db('cdcol') or die('Cannot select<br>');

// titelとidの一覧を取得
$query = "select titel,id from cds";
$result = mysql_query($query);
if (!$result) {
$mes = 'Error : ' . mysql_error() . "<brn";
$mes .= 'Whole query : ' . $query;
die($mes);
}

// titelを一覧表示しつつ、それをidを渡すリンクタグで囲む
echo "<ul>\n";
while ($data = mysql_fetch_assoc($result)) {
// リンクタグを出力
echo "<li><a href='cdcol_desc.php?cdid=".$data['id']."'>";
// titelを表示
echo $data['titel'];
// リンクタグを閉じる
echo "</a>\n";
}
echo "</ul>\n";

mysql_close($con);
?>
0771nobodyさん2007/07/24(火) 00:10:39ID:VTvHCDnM
PHPのパターンマッチで、perlの「$`」、「$'」に相当するものを探して
います。

preg_match($pattern, $string)でパターンマッチした後で、$string中で
「パターンに一致した前の部分」「パターンに一致した後の部分」を取り出す
一番簡単な方法は何になるでしょうか?

■ このスレッドは過去ログ倉庫に格納されています