【 スクリプト改造依頼スレ 】(丸投げ)
■ このスレッドは過去ログ倉庫に格納されています
00011
04/02/15 16:59ID:???#================================
# スレッドの説明
#================================
「スクリプトを改造したいけど、言語の知識ゼロなんでつ」という人がいましたら
ここで依頼してください。ひょっとしたら改造してくれる人がいるかもしれません。
質問するときは以下の点に注意して書いて下さい
(1) 作者に改造依頼したが答えてくれない場合このスレを利用する。
(2) スクリプトの内容と置いてある場所を明記する (txtファイルでUPすればなお良い)
(3) どんな風に改造して欲しいのか? (完成イメージHTMLを用意すればなお良し)
(4) 出来るだけ詳しく具体的に書くこと。(依頼は小出しにしない事)
(5) 御礼や動作報告は必須。
なお、多少なりとも自分でいじれる人は改造スレをご利用ください。(ここは改造丸投げスレです)
※答えてくれないからといって逆ギレする厨はお断り
0002nobodyさん
04/02/15 17:03ID:???0003(´Д`)
04/02/15 17:05ID:OIhQopPt0004nobodyさん
04/02/15 17:06ID:???0006nobodyさん
04/02/15 22:27ID:Q71IJ057こちらで読んで勉強中です。
けれども私が今、作りたいのは、「連載小説CGI」なので、トップには最新の投稿分だけが表示されて、過去へ移動すると、
最も古いもの(第1話)が一番上にある状態で、上から下へ順に新しくなる(2話、3話・・)と表示されるようにしたいんです。
私が落としたのは、この上のCGIとはちょっと違いますが、同じKENTさんのCGIで、トップだけ1話表示されて、次のページへ
移動すると、最新話も含めて全話表示される、という形の改造はとりあえず分からないながらも成功しました。
でもどういじっても、上が新しく、下に行くほど古くなってしまいます。どうしたらよいのでしょうか?
# 記事を展開
if ($page == 2) {
$next = $pagelog-1; ←ここをマイナスにしました。
$last = $max;
} else {
$next = 0;
$last = $pagelog;
}
$i=0;
open(IN,"$logfile") || &error("Open Error: $logfile");
while ($data = <IN>) {
$i++;
if ($i < $next) { next; }
if ($i > $last) { last; }
print WR &log_view($data, $page);
}
close(IN);
if (!$whatsnew) { print WR "<table align=left><tr>\n"; }
0007nobodyさん
04/02/15 22:39ID:9Z1otZrZupppuでIPアドレス若しくはリモートホストを表示させたいです。
どうすればよいのですか?
00086です
04/02/15 23:21ID:Q71IJ057一番下の行から読み込むようにしたらいいわけですよね。
あるいは、ログ番号($num)を認識して、それの若い順に書く、とか…。
書いてあることは、なんとなく分かってきて、
やればいいことも分かっては来たんですが、
方法がさっぱり分からない…。くやしい…。
0010nobodyさん
04/02/16 00:23ID:???おながいします
0012nobodyさん
04/02/16 00:58ID:???0013nobodyさん
04/02/16 04:41ID:???> IPアドレス若しくはリモートホストを表示させたいです。
いつどのような場面で表示したいのか不明。
詳しく書け。(完成イメージHTMLを用意すればなお良し)
> (6) 金額と支払条件を必ず明記してください。
って書いて煽っている香具師もいるが、金を払う気が無ければ堂々と「無料でおながいしまつ」と書けばいい。
0017nobodyさん
04/02/16 13:51ID:???0018nobodyさん
04/02/16 19:09ID:???勉強するつもりのようなのでヒントだけ。
while ($data = <IN>)は
<IN>に書かれている内容を*上から*1行ずつ$dataに格納、INの末尾までループを繰り返す。
ログ全体を1度に読み込まないので軽快に動くけど、その分融通が利かない。
特に逆順に表示なんてのは致命的に向かない。
重くなるのを覚悟でいったん配列に読み込んで、逆順に並べ替えて処理、が無難。
ちなみに、ログに書き込む時点で新しいものを上に書き込むようにするとwhileでも可能。
スクリプト読んでないけど、こっちの改造は割としんどいかも。
個人的には更新時にHTMLファイルを生成するようなCGIにする事を薦める。
閲覧回数>>>更新回数ならば、CGIでページを表示させるのはいたずらにサーバに負担をかけるだけ。
0020nobodyさん
04/02/16 22:40ID:???どのスクリプトかわからんし。
0021新入り
04/02/16 23:47ID:???このスクリプトなんだけど、「投稿日時と編集/削除」を
記事のタイトルや名前などのすぐ後ろに表示させたいです。
イメージはこんな感じ
http://www.kent-web.com/bbs/yybbs/yybbs.cgi
更にこのKENTさんのは本分の後ろに微妙に空列ができてるけど、
これをなくしたいです。ぎちぎちみたいなかんじにしたいです。
よろしくおねがいします。
0022nobodyさん
04/02/17 00:47ID:???インデントめちゃくちゃで汚すぎ…。
まずtool.cgiの735,738,742行目に名前を表示してる部分があるので
756行目の<small>〜</small>を各行の後ろのほうの</td>の前にコピペ。
終わったら755,756行目をまるまる消しておく。
これで返信フォームは完了。
同じようにyybbs.cgiの554,556,561,563,569,571行目に
名前を表示しているしている部分があるので同じように。
終わったら597〜605行目を消す。
これでindexからも希望通りになると思われ。
丸投げスレなのにこんな回答のしかたでいいのかな…。
0023nobodyさん
04/02/17 01:02ID:???<blockquote>$com</blockquote>となっているのを
<p>$com</p>とでもすれば良いと思われ。
0024新入り
04/02/17 01:34ID:???ありがとうございますぅーー!!
見事にうまくいきましたああああああ(´Д⊂
ぎちぎちにしたら、本文が返信スペースを突き抜けて親記事のスペースから
表示されるようになりました。これだけ直ればいいのですが・・
0025nobodyさん
04/02/17 01:40ID:???0026新入り
04/02/17 01:45ID:???無しだと突き抜けちゃう。。
0027nobodyさん
04/02/17 04:15ID:???yybbs.cgiの587行目あたりに
if ($mm2[$nn2] < $num2-1)という行があるので、その上に
if ($reno) { print "<td width=32><br></td>\n"; }
を挿入すれば良いと思われ…。
もともとは1もインデントされているので、そうしたいなら
print "<td width=32><br></td>\n";
にすれば良いと思われ…。
つーかtool.cgiはまだ読めるのに、yybbs.cgiは明らかに
素人がいじりまくった跡があって萎え。
これ以上改造したいなら別のcgiにすることを奨める…。
0028新入り
04/02/17 10:10ID:???丁寧に教えてもらってありがとうございますううううう(´Д⊂
完璧です。本当にすごい!
>つーかtool.cgiはまだ
そおなんですかーー
ド素人の私にはわかりませんがさすが
最後にもうひとつだけ・・・・
「この記事に返信」ボタンを記事の一番下ではなく、
KENTさんのもののように親記事の名前などのすぐ横におきたいです。
0030nobodyさん
04/02/17 15:41ID:???小出しにされると手間が何倍もかかるんだよ。
0031新入り
04/02/17 15:52ID:???あぁ・・・すいませんでした!!
後から色々聞いてごめんなさい。
でもここまで来ただけでもかなりの進歩なので本当に助かりました。
後はなんとかがんばって見ます。
ホントにありがとうございましたーーーーーあああああ!!!!!!!!あああ!!
ヽ(`Д´)ノしたああああああ!!
0032nobodyさん
04/02/17 17:04ID:oyVaAnBw0033nobodyさん
04/02/17 17:47ID:???みたいなの?>32
■ このスレッドは過去ログ倉庫に格納されています