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

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

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2005/09/03(土) 11:53:32ID:7OO4C5e5
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/
【PHP】くだらねぇ質問はここに書き込みやがれpart4
http://pc8.2ch.net/test/read.cgi/php/1110697712/
【PHP】くだらねぇ質問はここに書き込みやがれpart5
http://pc8.2ch.net/test/read.cgi/php/1114787573/
【PHP】くだらねぇ質問はここに書き込みやがれpart6
http://pc8.2ch.net/test/read.cgi/php/1117945031/
【PHP】くだらねぇ質問はここに書き込みやがれpart7
http://pc8.2ch.net/test/read.cgi/php/1121100429/
【PHP】くだらねぇ質問はここに書き込みやがれpart8
http://pc8.2ch.net/test/read.cgi/php/1123431535/
0548nobodyさん2005/09/13(火) 22:19:41ID:???
>>547
PHPインストール後のhttpd.confの設定をミスってるかApacheを再起動していない。
0549軟式PHP2005/09/13(火) 22:19:52ID:???
>>547
そのページは見てないけど、ダウンロードになるなら
phpのMIMEタイプが設定されていない可能性があるな。
LoadModuleもやってないかも。httpd.confをもう一回見直してみたほうがいいと思う。
0550nobodyさん2005/09/13(火) 22:36:20ID:???
>>548
>>549
ありがとうございます。

Apache再起動してみましたが、直りませんでした。
httpd.confもページをみて見直してみましたが、やはり直りませんでした。

どうすれば良いでしょうか??
0551nobodyさん2005/09/13(火) 22:45:17ID:???
整備された鯖を借りる
0552nobodyさん2005/09/13(火) 23:03:06ID:/gXbJCT5
phpをwindowsでビルドしたいのですが、
PHPマニュアルにある方法以外にもっと詳しい情報を
知りませんか?
もし、ありましたら、教えてください。
05535482005/09/13(火) 23:03:34ID:???
>>550
変だね。そのページを見てみたけど別にウソは書いてないし。
Apacheのインストール後の「あなたの予想に反して...」の画面が表示されているのは
確認済みなんだよね?
オマイさんが追加したLoadModule行とAddTypeの行の内容を ***そのまま、何の細工もせず*** に
晒してもらえない?
(そのページからコピペするんではなく、オマイさんのhttpd.confからコピペするんだよ)
0554nobodyさん2005/09/13(火) 23:12:55ID:???
>>553
はい、「あなたの予想に〜」の画面は出ます。

追加したのは
LoadModule php4_module c:/php/sapi/php4apache2.dll
と
AddType application/x-httpd-php .php
です。
0555nobodyさん2005/09/13(火) 23:17:52ID:???
>>550
貴方の「見直し」が間違ってる可能性が高いかな。
インストール先(インストールの構成)を変えていたり、
ダウンロードしてインストールしたApacheやPHPが説明のものと異なる
そういった場合は記述されている内容を理解した上で適用しないとならない。
その辺が出来てないんじゃないの?

これは動かないという原因ではないが、件のコンテンツの記述で間違っているところがある。
(間違っている人は他にも多くいるが)
>703行 AddDefaultCharset none    ←こう書き変える
これではnoneというcharsetを指定することになる。無効にするのだからOffが正しい。
http://httpd.apache.org/docs/2.1/ja/mod/core.html#adddefaultcharset
0556nobodyさん2005/09/13(火) 23:23:36ID:???
dllを移していないとか…
0557nobodyさん2005/09/13(火) 23:25:06ID:???
>>555
あ、確かにApacheを説明のものと違うバージョンのものを使っていました。。。
説明の物と同じやつでやってみます。

いろいろと教えていただきありがとうございましたm(_ _)m
0558nobodyさん2005/09/13(火) 23:29:46ID:???
修正しているhttpd.confファイルが実はhttpd.default.confというオチに期待している。
0559nobodyさん2005/09/13(火) 23:43:41ID:???
>>555
もうひとつだけ質問させてください。
この場合はApacheだけインストールしなおせば、phpはインストールし直さなくて
良いんですよね??
0560nobodyさん2005/09/13(火) 23:48:49ID:???
>>550
あとPHPのインストール先とインストールしたパッケージの確認。
コマンドプロンプトで「c:\php\cli\php.exe -v」(小文字のまま)
とした場合の出てくるバージョンとか教えて。
出てこなかったら
・インストール先がその解説通りでない
・インストールしたパッケージがその解説通りのものではない

>>558
メモ帳で修正したのでhttpd.conf.txtになっている。
(修正&上書きだとそんなことはないか)
0561nobodyさん2005/09/13(火) 23:55:31ID:???
100行あるデータの先頭から10行だけ表示さる場合には、
下のソースをどのようにすれば良いのでしょうか?
どうかお教えください。よろしくお願いいたします。

while(list($index,$data)=each($data_all)){
if($data[0]) {
print "$index[0]:$data[0]";
}
if($data[2]) {
print "$index[2]:$data[2]";
}
if($data[9]) {
print "$index[9]:$data[9]";
}
print "<br>";
}
0562nobodyさん2005/09/13(火) 23:55:48ID:???
>>559
いや、それはPHPの話なので
>はい、「あなたの予想に〜」の画面は出ます。
らしいから、Apacheのインストールは関係ないよ。
説明どおりのバージョンでなくても貴方がインストールした
バージョンに合わせて適切に設定すれば良いだけの話しだし、
新しいバージョンの方が良いでしょ
(ドキュメントはどうしたって陳腐化してしまうものだ)

で、PHPのインストールだけどそこの解説にもあるように
「インストーラはありません」(今は公式のWindowsインストーラ版もあるが)
だから、再インストール云々にはならないよ。
Apacheやphpのデフォルト設定ファイルを変に変更して元に戻したいが
バックアップを取ってなかったとかのパターンは、再インストールして
設定ファイル取り戻す必要はあるかもしれんが。

0563nobodyさん2005/09/13(火) 23:59:58ID:???
>>561
「100行あるデータ」ってのは$data_allに入ってるのかい。
それとも$data[x]とかに入ってるのかい?
どっちにせよ if($data[0])とかの判定は怪しいけど。
0564nobodyさん2005/09/14(水) 00:04:32ID:???
>>563
100行のデータは$data_allに入っています。
怪しいソースですが全行の表示はできています。
if($data[0])は必要無いですね。。。
0565nobodyさん2005/09/14(水) 00:12:24ID:???
>>560
指定されたパスが見つかりません。と出ます。

>>562
でも、どうやれば私がインストールしているバージョンに合った設定になるか分からなくて、、、
ほんと初心者ですいません。
0566nobodyさん2005/09/14(水) 00:42:48ID:???
>>565
>指定されたパスが見つかりません。と出ます。
・phpのインストールがおかしい(解説通りでない)
・変更しているApache設定ファイル(httpd.conf)がおかしい。Apache起動時にエラーが出ていない。
の両方。

前者はhttp://www.php.net/get/php-4.3.11-Win32.zip/from/a/mirror
をダウンロードして、解説どおり解凍したフォルダをリネームして
c:\phpのディレクトリになるように設置。
後者は、コマンドプロンプトで「notepad "c:\Program Files\Apache Group\Apache2\conf\httpd.conf"」
と打って、自分がそれまで変更してた内容がちゃんと記述されてるか確認。
0567nobodyさん2005/09/14(水) 01:01:29ID:???
>>561
>while(list($index,$data)=each($data_all)){

これを

foreach(range(1,10)){
list($index,$data)=each($data_all);

にするとか
0568nobodyさん2005/09/14(水) 03:16:11ID:???
foreach ( array_slice($data_all, 0, 10) as $index => $data) {}

とか。あんま発想のレベルは変わらんな
どうでもいいけど、配列の要素を行と云うのは少し違和感が
0569nobodyさん2005/09/14(水) 04:16:19ID:???
>>567
>>568
レスありがとうございます。
教えていただいたものを改良して
for($i=0; $i<5; $i++) {
に置き換えて、無事動作いたしました。
本当にありがとうございました。
0570nobodyさん2005/09/14(水) 06:01:45ID:???
>>569
> for($i=0; $i<5; $i++) {
本当にそこは5なのか?いいのか…

やっぱ「行」と言った場合、コンピュータシステム的な表現では
どう解釈されるのか、一度色々調べて理解してホスィ。
0571nobodyさん2005/09/14(水) 06:27:53ID:???
Division by Zeroが出ないようにするには、
どのような制御文を書けばよいのでしょう?
0572nobodyさん2005/09/14(水) 06:37:46ID:???
>>571
0で割り算しない条件式
0573nobodyさん2005/09/14(水) 07:16:27ID:???
>>554
Apache1.3にはAddModuleも必要だ
0574nobodyさん2005/09/14(水) 09:48:16ID:m0wxPPXH
他で答えてもらえないようなので。

phplibはphp5で使えますか?
0575nobodyさん2005/09/14(水) 10:29:40ID:???
使ってみましたか?
0576nobodyさん2005/09/14(水) 11:08:44ID:???
>>574
今時phplibとかはやんねえんだよ
0577nobodyさん2005/09/14(水) 11:39:45ID:???
PHPってロシア語だとПХП?
0578nobodyさん2005/09/14(水) 11:49:13ID:???
(ПxП)つ[PHP]
0579nobodyさん2005/09/14(水) 11:52:01ID:???
PHPにワイルドカードのようなものはあるのでしょうか?
実は、DBに登録されているもののうち、リンクがあったら、その部分だけ削除したいのです。
$p_string = str_replace ("<a href=\"*\">", "", $p_string);
みたいな事をしたいのですが。
よろしくお願いします。
0580nobodyさん2005/09/14(水) 11:52:24ID:???
>>566
httpd.confに文を追加する時に


#LoadModule vhost_alias_module modules/mod_vhost_alias.so
#LoadModule ssl_module modules/mod_ssl.so
#
# ExtendedStatus controls whether Apache will generate "full" status

最初こうなっているのですが、

#LoadModule vhost_alias_module modules/mod_vhost_alias.so
#LoadModule ssl_module modules/mod_ssl.so
LoadModule php4_module c:/php/sapi/php4apache2.dll
#
# ExtendedStatus controls whether Apache will generate "full" status

このように付け足すのですか?
それとも

#LoadModule vhost_alias_module modules/mod_vhost_alias.so
#LoadModule ssl_module modules/mod_ssl.so
#LoadModule php4_module c:/php/sapi/php4apache2.dll 
# ExtendedStatus controls whether Apache will generate "full" status

このように付け足すのでしょうか??
0581nobodyさん2005/09/14(水) 11:54:56ID:???
>>579
ereg_replace
preg_replace
好きなの使え。正規表現も覚えろ、な。
05825792005/09/14(水) 11:58:23ID:???
>>581
やはり正規表現でひとつひとつ可能性(英字、数字、時には2バイト文字)をつぶすしかないのですね。
一括で全て対象にできれば便利だと思いましたので。
ありがとうございました。
0583nobodyさん2005/09/14(水) 12:03:24ID:???
>>578
0584nobodyさん2005/09/14(水) 12:09:30ID:???
>>579
リンクだけというのならアレだが、
HTMLタグ除去なら、strip_tagsという関数もあるぞ。
0585nobodyさん2005/09/14(水) 12:16:51ID:???
>>575
使い始めたところです。php5での参考資料が見つからなくて。

>>576
他に似たようなことをするライブラリがあるということですか?
教えていただけませんか?
05865792005/09/14(水) 12:18:48ID:???
>>584
strip_tagsなんていう関数があるんですね。
教えていただきありがとうございます。
ただ、今回はリンクだけなので、正規表現を使わせていただきたいと思います。
0587nobodyさん2005/09/14(水) 12:38:09ID:???
>>580
#から始まる行はコメント文として無視されますので
有効にしたい行は先頭の#を削除
無効にしたい行は先頭に#を挿入
0588nobodyさん2005/09/14(水) 12:46:34ID:???
>>585
PHP3ならわかるけどPHP4ならPEAR使うだろ。
データベースならPHP5の場合はPDOにしろ。
0589nobodyさん2005/09/14(水) 13:51:06ID:???
>>586
そんな必要ないだろ。シェルのワイルドカードもそうだが
0590nobodyさん2005/09/14(水) 14:01:12ID:???
そういう問題じゃなくて、そもそもワイルドカードでアンカータグをマッチさせるとか不可能だから
0591nobodyさん2005/09/14(水) 14:03:51ID:???
>>588
phplibのセッション管理に興味があったんですが、PDOだとできませんよね?
で、ADOdbってのを見つけたんですが、これってどうですか?
0592nobodyさん2005/09/14(水) 14:21:11ID:???
>>591
PHP4からセッション関数が標準装備されたのでphplib使う必要なくなりました。
05935792005/09/14(水) 14:53:49ID:???
$p_string = ereg_replace ("<a href=\"http://.+\">", "", $p_string);
とすることで、期待通りの動作をしてくれました。
どうやら私の努力不足だったようです。
ご迷惑をおかけしました。
0594nobodyさん2005/09/14(水) 14:56:50ID:???
<INPUT TYPE="hidden" NAME="_template_confirm" VALUE="./form.php">
上のプログラムを使って画像の貼り付けのプログラムを作成したのですが
画像が下のリンク先のようにおかしくなってしまいました。
(貼付前)・・・http://land.issaigassai.com/cgi/upload/source3/No_0101.jpg (12,874 バイト)
(貼付後)・・・http://land.issaigassai.com/cgi/upload/source3/No_0102.jpg (20,874 バイト)
このように貼り付けた画像がおかしく表示されるのはどういう原因で発生するものなのでしょうか。

なお、貼り付けた環境は以下の通りです。
OS:Red Hat Linux release 8.0 (Psyche)
  httpd-2.0.40-11.9
PHP:4.3.2
0595nobodyさん2005/09/14(水) 15:00:38ID:???
>>592
phplibやADOdbでは、セッションに保存される情報がDBに格納できるみたいで、それを使ってみようをしているところです。
http://phplens.com/lens/adodb/docs-session.htm
標準だとサーバ上のファイルに保存されるんですよね?
05965942005/09/14(水) 15:03:15ID:???
入力したプログラムを入れ忘れていました。
以下が使用したプログラムです。
〜〜index.html〜〜
<HTML><BODY bgcolor="#FFFFFF">
<DIV align="center">
<FORM enctype="multipart/form-data" name="pl_info" action="./form.php" method="post">
<INPUT TYPE="hidden" NAME="_template_confirm" VALUE="./form.php">
<table>
<tr><td>画像選択</td>
<td><input type="file" id="upfile" name="upfile"></td>
</tr></table>
<TABLE width="500">
<TR><TD width="250" bgcolor="#FFFFFF" align="CENTER">
<INPUT type="submit" name="SUBMITBUTTON" value="確認画面へ" onClick="NEXT()">
<INPUT type="hidden" name="page" value=""></TD>
</TR></TABLE></FORM>
</DIV></BODY></HTML>

〜〜form.php〜〜
http://land.issaigassai.com/cgi/upload/source3/No_0105.txt
0597nobodyさん2005/09/14(水) 15:11:20ID:???
>>594

>>406は試してみなかったのかな
0598nobodyさん2005/09/14(水) 15:22:14ID:???
>>594
こいつ、まだやってたのかよ。。。
0599nobodyさん2005/09/14(水) 15:24:23ID:???
(´-`).。oO(くだ質だから仕方ない・・・)
0600nobodyさん2005/09/14(水) 15:26:35ID:???
くだらない質問はOKだろうけどくだらない椰子はNGと思われ
0601nobodyさん2005/09/14(水) 15:27:15ID:xwUqvGFV
すいません。phpBBのトップindex.phpだけに自分で画像リンクを追加したいんですが
includeいじったりしてますがいまいちよくわかりません...

簡単な方法ってあるんでしょうか。よろしくお願いいたします...
0602nobodyさん2005/09/14(水) 15:34:58ID:???
>>406の意味がさっぱり分かりません・・・

どう使えばいいのかも・・・
0603nobodyさん2005/09/14(水) 15:46:02ID:???
>>602
中学生以上ならわかると思ったんだが

れっどはっと8.0のhttpdのひょうじゅんのせっていでは
<Files *.php>
SetOutputFilter PHP
SetInputFilter PHP
LimitRequestBody 524288
</Files>
となっています。
これはれっどはっとのしっぱいではないでしょうか
わたしはうえのぎょうを
AddType application/x-httpd-php .php
にかきかえました
そしてちゃんとうごくようになりました。
0604nobodyさん2005/09/14(水) 15:46:48ID:???
>>593
それで期待通りの動作!?
絶対ヘンだろ・・・絶対ヘン・・・
絶対そんなの期待する香具師いないって
0605nobodyさん2005/09/14(水) 16:14:26ID:???
>>603
うえのぎょうってどこにあるんですか?

httpd.confを探しても<Files *.php> は見つからないんですけど・・・
もしかして違う場所を見ているとか・・・
0606nobodyさん2005/09/14(水) 16:44:15ID:???
>>605
/etc/httpd/conf.d/php.conf
0607nobodyさん2005/09/14(水) 16:53:12ID:???
ここ見てお勉強。
>>530に書いてある
while (!feof($fp)){
の「!」って何の意味?ヒント教えてください。
0608nobodyさん2005/09/14(水) 16:57:58ID:???
>>607
論理演算子 否定
0609nobodyさん2005/09/14(水) 16:58:24ID:???
>>607
素直に本読みなよ
0610nobodyさん2005/09/14(水) 17:03:11ID:???
>>607
feof($fp) は、ファイルポインタが終端に来た時にTRUEを返す。
(ファイルポインタはfgetsを使う事で終端に向けて進む)
なので、終端に来た時に feof($fp)はTRUE、!feof($fp)はFALSEになり、whileループが終了する。
0611nobodyさん2005/09/14(水) 17:13:48ID:???
>>608-610
なるほどね、tureとfalseで頭がごっちゃになりそうだ。
ありがとう。いつか答えられるようになるまで頑張る。
0612nobodyさん2005/09/14(水) 17:54:12ID:???
>>606
場所は分かりました。
でも
LoadModule php4_module modules/libphp4.so
を
AddType application/x-httpd-php .php
に変えても状況は変わりません・・・
うえのぎょうと言われましてもどの部分を変更すればよいのかさっぱり分かりません・・・
0613nobodyさん2005/09/14(水) 18:12:52ID:???
550です。
今度はApacheを再起動したらエラーが出てしまったのですが何故でしょうか??
0614nobodyさん2005/09/14(水) 18:15:58ID:???
だんだん釣りに見えてくるな・・・
>>612の変更は論外

該当箇所がないんなら、httpd.confの最後に
AddType application/x-httpd-php .php
入れてやってみれば?
0615nobodyさん2005/09/14(水) 18:42:59ID:???
>>612
.htaccessすら触ったことないの?
あと、今までの書き込み内容からしてPHPとHTMLの区別すら分かってねーだろ?
HTMLの基礎から勉強してきな
0616nobodyさん2005/09/14(水) 19:14:43ID:wrvJu8AD
なんだこりゃ。。

Fatal error: Call to undefined function: php_error() in /usr/share/pear/DB/DataObject.php on line 405

ぐぐってもでてこん。php_error
なんかincludeするとかいう問題か??
0617nobodyさん2005/09/14(水) 19:18:09ID:m0wxPPXH
小文字だけのセッション変数ってページが遷移すると破棄されるんですか?
大文字が混ざっていると遷移しても破棄されないんです。
06186172005/09/14(水) 19:31:19ID:???
少し違いました。
大文字だけじゃないと残りません。
0619nobodyさん2005/09/14(水) 19:31:39ID:???
>>614-615
解決しない・・・と思ったらconfファイルは変更した後で再起動をかけないと
変更が反映されないということを知りませんでした・・・

一旦サーバーを再起動させてもう一度確かめてみます。
0620nobodyさん2005/09/14(水) 19:43:10ID:???
はじめまして、5cのダメ文字をうまく変換してくれるライブラリを配布してるところとかしりませんか?
06216172005/09/14(水) 19:56:30ID:???
いじってたら、IEではどう書いても保存されなくなりました。
Firefoxやネスケではちゃんと保存されています。
セッション変数ってブラウザによって挙動が違うんですか?
0622nobodyさん2005/09/14(水) 19:59:51ID:???
echoで出力したhtmlを置換したいんですが、
既に出力した文を扱うにはどうすればいいですか。
0623nobodyさん2005/09/14(水) 20:01:35ID:???
>>622
JavaScript
0624nobodyさん2005/09/14(水) 20:05:45ID:???
>>622
ob_start()
0625nobodyさん2005/09/14(水) 20:10:30ID:???
>>622
ctrl+R
0626nobodyさん2005/09/14(水) 22:20:54ID:???
>>543,544
ありがとうございます。
0627nobodyさん2005/09/14(水) 22:36:01ID:???
1000件ほどのデータが入った「hoge.csv」から
データを抜き出し、下のソースでその結果を表示しているのですが、
1ページの表示を100件くらいにして、「次のページ」という機能を付けたいのです。
どのようにすれば良いのか、教えていただけないでしょうか。よろしくお願いいたします。
<?php
$fp = fopen("hoge.csv",'r');
flock($fp, LOCK_EX);
while(!feof($fp)){
$data_line = explode(",",chop(fgets($fp, 1024)));
$data_all[] = $data_line;
}
$datatop=$data_all[0];
array_shift($data_all);
flock($fp, LOCK_UN);
fclose($fp);
foreach($datatop as $title){
print "$title";
}
print "<br>";
while(list($index,$data)=each($data_all)){
print "$data[0]";
print "$data[1]";
print "$data[2]";
print "$data[3]";
print "$data[4]";
print "$data[5]";
print "$data[6]<br>";
}
?>
0628nobodyさん2005/09/14(水) 22:44:54ID:???
function aaa($aaa) {
return (preg_replace ("$bbb" , "$ccc", $aaa);
}

これにもう一つpreg_replaceを追加する場合は
もう一つfunctionを作るの?
0629nobodyさん2005/09/14(水) 22:54:06ID:???
>>627
while(!feof($fp)){
$data_line = explode(",",chop(fgets($fp, 1024)));
$data_all[] = $data_line;
}
この部分を以下の方針で見直す。
1.開始行を$_GETか何かで受け取ることを決めておく
2.開始行まで空読み
3.開始行に達したら100行程度読み出して$data_all[]に入れておく
4.ついでにこの先のデータがあるかチェックしておくと吉
0630nobodyさん2005/09/14(水) 23:05:45ID:???
>>628
勘で答えてみるけど
function aaa($aaa) {
$aaa = preg_replace("$eee", "$fff", $aaa);
return preg_replace ("$bbb" , "$ccc", $aaa);
}
とでも書けばいいんでないの?
0631nobodyさん2005/09/14(水) 23:14:49ID:???
>620
EUCに城
06326272005/09/14(水) 23:23:08ID:???
>>629
レスありがとうございます。
私にはその方法はかなり敷居が高いです。
つーかわかりません...orz
while(list($index,$data)=each($data_all)){
$indexはまったくの未使用です。
これを使って上手く処理できれば良いのですが…
(print_rで見ると、0から綺麗に連番で並んでいます)
0633nobodyさん2005/09/14(水) 23:59:54ID:???
>>632
$indexを使いたいということなら
最初の方で
$page = 2; //表示開始ページ
$start = $page*100;
とでも設定しておいて、

while(list($index,$data)=each($data_all)){
if ($index >= $start && $index < $start+100){
print"$data[0]";
・・・(略)
}
}

みたいにしても動くとは思うけど。
きついコーディングだな('A`)

せめてこうか
for ($i=$start; $i<$start+100; $i++){
$data = $data_all[$i];
print "data[0]";
・・・(略)
}
06346272005/09/15(木) 00:10:54ID:???
>>633
ありがとうございます。
やはり100件だけの表示は早いですね。
これに「次のページ」リンクと
全体のページ数表示&リンクができればいいのですが.....
0635nobodyさん2005/09/15(木) 00:17:56ID:???
>>630
出来ました!そう考えればいいんですね。
0636nobodyさん2005/09/15(木) 00:28:43ID:???
>>634
断片的に書いてみる。

次のページへのリンクの作り方は
$next = $page +1;
$self = $_SERVER["PHP_SELF"];
print "<a href=\"$self?page=$next\">次</a>";

それを受け取る時は
$page = $_GET["page"];

全体のページ数を計算するなら
$pages = ceil(count($data_all) / 100);

最後のページの処理は要注意かな。
0637nobodyさん2005/09/15(木) 00:33:22ID:???
>>593
...</a>だけ残す意味わからん
最長マッチだからタグが2つ以上入ってた場合に破綻するし
0638nobodyさん2005/09/15(木) 00:44:34ID:???
>>595
セッション管理に興味があるならHTTP_SessionやAuthを参考に書いて見るといいかも
http://jp2.php.net/manual/ja/function.session-set-save-handler.php
06396272005/09/15(木) 00:52:48ID:???
>>636
ありがとうございます。
よく見る「次」のリンクができています。

が、最終ページになってもリンクが....(汗)
どこかで打ち止めの呪文を書かないといけないようです。
最後のページの処理とはこのことですか?
06406272005/09/15(木) 01:15:18ID:???
>>639続きです

打ち止めの呪文は、全体のページ数にイコールかそれ以下の時にというif文でできました。
同じく、$page-1で「前のページ」リンクもできました。

残るは、1/2/3/4/.....というような、全ページへのリンクのみとなりました。
0641nobodyさん2005/09/15(木) 02:52:47ID:???
Perlのuse strictに相当する機能があれば教えてください
06426272005/09/15(木) 03:18:06ID:???
>>640の続き

最後のページの処理のもうひとつの意味。
100行で括ったまま作業をさせているので、最終ページで3行のみ
表示となった場合に、97行のカスが書き込まれてしまいます。
(<table>で表示させてる場合は、そりゃぁひどいのなんのって..)
そこで、全データ数-(表示ページ×100)の式を書き、
100よりも少ない場合の処理と、100の場合の処理に分岐させ
無事、綺麗に表示することができました。
ヒントをくださった皆様。ありがとうございました。
0643nobodyさん2005/09/15(木) 03:35:27ID:???
>>642
もう解決しちゃったようだけど、一応こんなのもあるってことで。
pear::HTML_Pager
ttp://pear.php.net/manual/ja/package.html.pager.php
0644nobodyさん2005/09/15(木) 03:44:32ID:???
>>641
strict refs,subsに該当するのは無いかな。
strict varsならerror_reporting(やphp.iniの設定)でE_NOTICEを扱うようにすれば、
初期化されていない変数宣言として通知される。
0645nobodyさん2005/09/15(木) 04:07:03ID:???
エディタの機能を使ってコーディング時にチェックするという手も
0646nobodyさん2005/09/15(木) 11:19:39ID:yS4KEn1H
>>628
>>630

function aaa($aaa) {
  return preg_replace (array("$bbb", "$eee") , array("$ccc", "$fff"), $aaa);
}

こういう方法もあるでよ。
06476272005/09/15(木) 13:20:55ID:???
>>643
レスありがとうございます。
とても便利そうなのですが、よくわからないです。
■ このスレッドは過去ログ倉庫に格納されています