★三 【 スクリプト改造工房 PART 8 】 ★三at PHP
★三 【 スクリプト改造工房 PART 8 】 ★三 - 暇つぶし2ch565:nobodyさん
05/01/19 05:16:19
>>561
惜しい。
Perlは数値か文字列かで比較演算子が異なる。
< の代わりに gt を使えば丁度だな。

566:561
05/01/19 10:15:04 sYVj0TcQ
>>564 >>565
フォロー&返答ありがとうございます。

ばっちり出来ました。
文字列は数字じゃないから数字の演算式記号は使えないって事で覚えててOKでしょうか?

アドバイスありがとうございました!

567:730
05/01/23 11:37:56
他スレから誘導されて来ました。

会員制掲示板のPerlCGIスクリプトです。普通の掲示板(KENTさんの書籍のスクリプトを参考に、過去ログ
作成機能と検索機能を削除した)に、IP制限とパス制を組み合わせ改造しました。
✓で特定のIP(@allow)だったら認証画面(&admin)を出し、パスが合ったら掲示板を表示させる(&bbs)。
IPおよびパスが合わなければエラーを返す、・・・つもりでした。しかし下記のスクリプトでは認証画面は
表示しますが、パスを入力しても認証画面、パスミスでも認証画面になるという状態で、
どうにも煮詰まってしまいました。どこがおかしいのかご教授下さい。これでもIP制限は動作しています。

スクリプトはここにアップしました。該当部分だけ。
URLリンク(up.isp.2ch.net)


568:730
05/01/23 12:14:51
ついでにお聞きします。

【スクリプト名】
Web拍手(公式HPから配布版DL。2004年10月。)

【CGIソース】
kaiseki.cgiだけ。
URLリンク(up.isp.2ch.net)

【改造した内容】
●過去15日分のデータを保存し表示するのを、31日分にする。(crap.cgiとkaiseki.cgi)
●アクセス解析機能を追加し、拍手した人のホスト名をaccess.datに保存する。(crap.cgi)
●このスクリプトへアクセスしたときの画面にはaccess.datへのリンクを張る。
●DLしたままのスクリプトでは、解析グラフのタグがぐちゃぐちゃだったので
 そこも変更。時間ごとのグラフも縦表示から横表示に変更し、31日表示を
 しやすくした。
●グラフの画像も横表示に対応させた。
[現在困っていること]
上記改造を加えたあと先週までは問題なく動作していたのですが、今日アクセス
してみたらスクリプトエラーが発生していました。拍手機能は動作しています。
kaiseki.cgiは、上記改造後何も手を加えていないので普通は起こりえないエラーです。
ただ原因として、ローカルに保存していたこのスクリプト(アプロダに挙げたもの)が
間違っていて、サーバーで動作していたのはサーバー側で直接書きなおしたからでミラーリング
していなかった。それをFTPソフトの誤動作で全ファイルを送信したために、動かないローカルの
スクリプトで更新されてしまった・・・というのが考えられます。
#FTPソフトのログにはこのファイルを送信したという記録はないのですが、一昨日以前のログが
#消えているのでわからない。

そこでUPしたこのスクリプトを眺めてみたのですが、どこがおかしいのかわかりません。
pcheck.cgi(Perlスクリプト文法チェッカ)ではsyntax errorの発生はありませんでした。
なにか間違っているところがありましたら教えてください。


569:nobodyさん
05/01/23 13:17:49
>>567-568
アップ先が表示できません


570:567
05/01/23 16:52:48
ありゃ。失礼しました。申し訳ないです(大汗)
UPしなおしました。
>>567
URLリンク(yellow.ribbon.to)
>>568
URLリンク(yellow.ribbon.to)

571:555
05/01/23 22:33:51 a5mA126v
再びすみません

【.  CGI名  .】 WwwSearch Ver3.15 - 検索フォーム
【配布先URL】 URLリンク(www.tohoho-web.com)
【ヘルプ内容】 検索結果を、「次へ」ボタンを押して、次の件をひょうじさせたいです

5件ごとや10件ごとの表示は最初だけは表示できるようになりました
「次へ」ボタンを押して、次の件をひょうじさせたいのですが
うまくいきません
この文を最後に追加しました

print "<form method=\"POST\" action=\"$script?page=$page&word=$word\">\n";
print "<input type=\"submit\" value=\"次へ\">";
print "</form>";

「次へ」ボタンを押しても検索結果が出てきません
何かたりないのでしょうか
かなり悩みましたが答えが見つかりません
ヒント、アドバイスお願いします

572:nobodyさん
05/01/23 22:37:48
書き忘れました

>571の文の前に

$page=$FORM{'page'};
$word=$FORM{'word'};

を実行しています

$scriptには自身のCGIファイルの名前が入ってます

573:nobodyさん
05/01/24 00:23:35
>>572
掲示板スクリプトを拾って読んでみたら応用できるんじゃない?

574:nobodyさん
05/01/24 00:33:32
>>572
かなり勘で答えるけど、
<form method=\"POST\" action=\"$script?page=$page&word=$word\">
これをこんな風にしたらだめ?
<form method=\"POST\" action=\"$script¥">
<input type=\"hidden\" name=\"page\" value=\"$page\">
<input type=\"hidden\" name=\"word\" value=\"$word\">

それと、$pageが、ボタンを押したら変化する(=数字が増えたり減ったり)
ようになってますか?
(FORMのほうの数字が固定だったら、最初のページしか動かない。)

575:572
05/01/24 01:12:24
>573
掲示板スクリプト眺めてるんですが
一向にらちがあかないのです;;

>574
ありがとうございます
試してみましたが、結果はやっぱり同じでした
「次へ」を表示するとこまではいいんですが
押しても、検索フォームだけ出て結果は出ないのです

ソースも晒したほうがいいでしょうか?

576:572
05/01/24 01:16:02
>574
うっかりしてました
この文の直前に

$nextpage = $FORM{'page'} + 1;

をしています

print "<input type=\"hidden\" name=\"page\" value=\"$nextpage\">\n";

にしても結果変わらずです

577:nobodyさん
05/01/24 01:33:30
そんな送信する側の記述を書かれたってわかるわけない。
page=$pageとword=$wordという値を受け取ってどういう処理をさせてる?

578:572
05/01/24 09:52:41
>577
sub readform {
 if ($ENV{'REQUEST_METHOD'} eq "POST") {
  read(STDIN, $query_string, $ENV{'CONTENT_LENGTH'});
 } else {
  $query_string = $ENV{'QUERY_STRING'};
 }
 @a = split(/&/, $query_string);
 foreach $x (@a) {
  ($name, $value) = split(/=/, $x);
  $value =~ tr/+/ /;
  $value =~ s/%([0-9a-fA-F][0-9a-fA-F])/pack("C", hex($1))/eg;
  $FORM{$name} = $value;
}
}

の後

$page = $in{'page'};
$word = $in{'word'};

を実行してます
(続く)

579:572
05/01/24 10:03:39
(続き)
 if ($word =~ /[\x80-\xff]/) {
  # 日本語が含まれているフラグ
  $jflag = 1;# 日本語が含まれている
  # 一度EUCに変換する
  &jcode'convert(*word, "euc");
  # 全角空白を半角空白に置換する(EUCの空白は#A1A1)
  $word =~ s/([\x80-\xff][\x80-\xff]|[\x00-\x7f])/($1 eq "\xa1\xa1") ? " " : $1/eg;
  # SJISモードであればSJISに変換する
  if ($kcode_file eq "sjis") {
   &jcode'convert(*word, "sjis");
  }
 }

sub search1の中から抜粋
 if (defined($FORM{'WORD'})) {
  # メタ文字を無効化する
  if (!$jflag) {
   $word =~ s/([\+\*\.\?\^\$\[\-\]\|\(\)\\])/\\$1/g;
  }
  # 検索語を分割する
  @words = split(/ +/, $word);
  # 検索する
  print "<dl>\n";
  @dirs = split(/ +/, $target_dir);
  foreach $dir (@dirs) {
   &search1($dir);
  }


580:572
05/01/24 10:07:38
$pageは>576にも書いたのですが$nextpageにしてますので
今は使ってません
最初の一回目は5件表示されるのに
「次へ」を押すと検索フォームだけ出て、結果が出ないのがはがゆくてなりません
これで参考になりますでしょうか?

581:nobodyさん
05/01/24 10:18:02 f8wXJteD
>>580
Perlってデバッガ無いの?
PHPだとZend入れてればIEの右くりメニューからデバッガ起動するよ。

582:572
05/01/24 10:28:28
一番重要なトコ忘れてました
sub search2の中から抜粋
 $bigin = $FORM{'page'} * $hyouji;
 $end = $bigin + $hyouji;
 if($end > @filelist) {
  $end = @filelist;
 }
中略
if ($bigin <= $a) {
 if ($a < $end) {
  $h_k++;
  print "<dt>■ <a href=\"$target\" target=\"out\">";
  $title =~ s/<[^>]*(>|$)//g;
  $title =~ s/[\r\n]+//g;
  &jcode'convert(*title, $kcode_cgi);
  if ($title eq "") {
   $title = $target;
  }
  print "$title</a>\n";
  if ($print_filename) {
   print "( <a href=\"$target\" target=out>";
   $target =~ s/$tdir\/?//;
   print "$target</a> )\n";
  }
  print "<dd>";
  $imin = $i - $how_many_lines;
  if ($imin < 0) { $imin = 0; }
  $imax = $i + $how_many_lines;
  if ($imax > $#lines) { $imax = $#lines; }


583:nobodyさん
05/01/24 10:29:17 CX5KANJQ
  for ($j = $imin; $j <= $imax; $j++) {
   $line = $lines[$j];
   &jcode'convert(*line, "euc");
   line =~ s/<[^>]*(>|$)//g;
   $tmp = $word;
   &jcode'convert(*tmp, "euc");
   if ($jflag) {
    $tmp =~ s/([\+\*\.\?\^\$\[\-\]\|\(\)\\])/\\$1/g;
   }
   foreach $w (@words) {
    $w2 = $w;
    &jcode'convert(*w2, "euc");
    $line =~ s/($w2)/<b>$1<\/b>/ig;
   }
   &jcode'convert(*line, $kcode_cgi, "euc");
   print "$line ";
   if ($end >= @filelist) {
    exit;
   }
  }
  if ($h_k == $hyouji) {
  $nextpage = $FORM{'page'} + 1;
  print "<form method=\"POST\" action=\"$script\">\n";
  print "<input type=\"hidden\" name=\"page\" value=\"$nextpage\">\n";
  print "<input type=\"hidden\" name=\"word\" value=\"$word\">\n";
  print "<input type=\"submit\" value=\"次へ\">";
  print "</form>";
  }

 }
}


584:nobodyさん
05/01/24 12:14:55
部分だけじゃなくてどっかに全部うpしろや。

585:nobodyさん
05/01/24 12:35:13
>>567
✓ # アクセスチェック
if ($mode eq ''){ &admin; }
if ($FORM{'pass'} ne "$pass") {&error("パスワードが違います");}
if ($mode eq 'regist'){ ®ist; }
&bbs;
exit;
sub check { # アクセス制限
$host = gethostbyaddr(pack("C4", split(/\./, $ENV{'REMOTE_ADDR'})), 2) || $ENV{'REMOTE_ADDR'};
 foreach $i (@allow) {
  if ($host =~ /$i/) { return; }
 }
 &error("アクセスが許可されていません");
 exit;
}
sub admin { #認証
 &header;
print << "_ID";
<form action="$script" method="POST">
<input type=hidden mode=bbs size="8">
<input type=text name=pass size="8">
<input type=submit value="認証">
</form>
_ID
 &footer;
 exit;
}

全体がわからんけどこんなところか。
ただしこれだけじゃなくて全体にも手を入れないと動かんよ。


586:572
05/01/24 18:07:17
>584
うpしました
URLリンク(www.uploda.org)
受信パスは「cgi」です
よろしくお願いします

587:567
05/01/24 22:09:17
>>568解決しました。jcode.plのパスが違ってました。
わかってみれば、にんともかんとも(滅)
お騒がせしました。

>>566についてはまだです。
パス認証だけどうしてもうまくいきません(TT)

588:nobodyさん
05/01/25 04:15:56
URLリンク(www.net-easy.com)
のパスワード認証&自動発行スクリプト
URLリンク(cat.zero.ad.jp)

まず、115行のメールアドレス入力欄
<INPUT name="mail_add" size="30"><BR>
 を
<INPUT name="mail_add_a" size="30"><BR>
<select name="mail_add_b">
<option value="\@docomo.ne.jp">\@docomo.ne.jp</option>
<option value="\@ezweb.ne.jp">\@ezweb.ne.jp</option>
<option value="\@c3.ezweb.ne.jp">\@c3.ezweb.ne.jp</option>
</select>
のように2段階入力にして、
("mail_add_a"はメアドの@までのアカウント、
"mail_add_b"は@以降のドメイン名として代入)

147行 $mail_add = $in{'mail_add'}; の部分で
上記フォームから受け渡される"mail_add_a"と"mail_add_b"を連結して
変数 $mail_add に代入されるようにしたいのですが、
$in{'mail_add'}; の部分をどのように書き換えれば2つの文字列を連結させられるでしょうか?


589:588
05/01/25 04:31:03
付け足し
147行はメアドの書式をチェックする部分です。

590:nobodyさん
05/01/25 11:35:50
>>588
$mail_add = $in{'mail_add_a'} . $in{'mail_add_b'};

591:nobodyさん
05/01/25 21:21:27
>>590
解決しました。
vrytnx

592:572
05/01/27 21:43:23
忘れてました

# このスクリプトの名前
$script = "kensaku2.cgi";

(78~79行目辺り)の部分をスクリプトの名前に変えてください
よろしくお願いします

593:572=586
05/01/28 22:52:33 wG0bpuZu
うpしなおしました
URLリンク(www.uploda.org)

デバッグしてみると
「次へ」ボタンが押された時、検索語が受け渡されていないようです
どこをいじればいいかわからなくなってきました
アドバイスお願いします

594:nobodyさん
05/01/29 16:02:16 BgaXde9b
【.  CGI名  .】 Design BBS 1.80 【配布先URL】 URLリンク(prism-web.com)
【ヘルプ内容】 
このCGIについている、特定のIPからのアクセスを拒否するアクセス制限を、逆に特定のIPからのアクセスだけOKにするアクセス制限に変更したい。どうすればよいか。
DLしたままのファイルで、sub axs_checkのflagを逆にしてみたらスクリプトエラーになってしまい、他にどうすればよいかわからなくなった。
ーーここからスクリプト
@deny = (
"hogehoge.com",
);

&decode;  #フォームデコード
&axs_check; #アクセス制限
#(中略):フォームの設定が数行
&html;   #BBS本体表示

# アクセス制限
sub axs_check {
 &get_host;

 if ($deny[0]) {
  local($flag)=0;#ここを1にして・・・その下の$flag=1を0にするとスクリプトエラー。
  foreach (@deny) {
  #↓これは、@denyにないIPならループ抜けの意味ですよね?違う?(・・、
   if ($_ eq '') { last; }
   $_ =~ s/\*/\.\*/g;
   if ($host =~ /$_/) { $flag=1; last; }
  }
  if ($flag) { &error("許可されていないアクセスです!") }
 }
}


595:594
05/01/29 16:03:22
# ホスト名取得
sub get_host {
 $host = $ENV{'REMOTE_HOST'};
 $addr = $ENV{'REMOTE_ADDR'};

 # ホスト名取得に gethostbyaddr関数を使用する場合は$gethostbyaddr = 1;にします。
 $gethostbyaddr = 1;

 if ($gethostbyaddr) {
  if ($host eq "" || $host eq "$addr") {
   $host = gethostbyaddr(pack("C4", split(/\./, $addr)), 2);
  }
 }
 if ($host eq "") { $host = $addr; }
}

596:nobodyさん
05/01/29 16:57:47
>594-595
俺もperlをちょこっといじって遊んでるくらいの人間なんで、あんま自信ないけど・・・

 if ($deny[0]) {
  local($flag)=0;
  foreach (@deny) {
  #↓これは、@denyから取り出した内容($_)が空('')だったらループ抜け、だと思
   if ($_ eq '') { last; }
   $_ =~ s/\*/\.\*/g;
   if ($host =~ /$_/) { $flag=1; last; }
   #↑アクセスした人のホスト($host)に@denyから取り出した内容($_)が
   #↑含まれていたら$flagの値を1にしてループを抜ける
   #↑つまり「$flag==1なら拒否」
   # これを「$flag==1なら許可」に変えたい → 言い換えると「$flag=!1なら拒否」
  }
  if ($flag=!1) { &error("許可されていないアクセスです!") }
  #↑ということでここをこう変更すればいけるんでは?
 }

ただ「特定のIPからの制限」なら、$hostじゃなくて$addrにするべきなんじゃ?って気がするけど



597:594
05/01/29 21:54:11
>>596
if ($flag=!1) { &error("許可されていないアクセスです!") }
これだと500エラーになってしまいましたです。

if ($flag ne "1") にしてみましたが、こっちも500エラー。
if ($flag = "0")も500エラーでした。
>>594だったらちゃんと動作するんですけど・・・(><)

598:594
05/01/29 22:21:41
フラグを使わない方法を考えてみましたが・・・
sub axs_check {
 # ホスト名を取得
 &get_host;
 if ($deny[0]) {
  foreach (@deny) {
   if ($_ eq '') { &error("許可されていないアクセスです"); last;}
   $_ =~ s/\*/\.\*/g;
   if ($host eq~ /$_/) { last;}
   #こうしたら、@denyのIPでのアクセスがエラーになる。
   #$host ne にするとスクリプトエラーに。
  }
 }
}
お手上げです(TT)

599:594
05/01/30 01:16:06
たぶんできました。
sub axs_check {
 # ホスト名を取得
 &get_host;
 if ($deny[0]) {
  local($flag)=0;
  foreach (@deny) {
   $_ =~ s/\*/\.\*/g;
   if ($host =~ /$_/) { $flag=1; last; }
  }
  if (!$flag) { &error("許可されていないアクセスです!") ; exit;}
 }
}
これで何とか動作しました。
>>596さん、いろいろヒントありがとうでした。
>>595
>if ($_ eq '') { last; }
これ、@denyが空の設定がありうる、ということを失念しておりました(^-^;
#だってデフォルトからして空ではなかったので、なんて言い訳してみるテスト(ぉぉ

600:nobodyさん
05/01/30 05:18:46
つか、500エラーに対処できないのかね?
多分こいつは共有サーバでテストしながら改造している希ガス

601:594
05/01/30 11:57:38
なんかエラった(汗)

>>600
文法チェックの結果エラーがなく、
InternalServerErrorになる理由がわからないというだけの話です。
IPの判断に関してはローカルではテストできないので
確かに共有鯖にしましたけど、
ローカルでテストする方法あります?

602:nobodyさん
05/01/30 12:02:58
>>601
500エラーについて
CGI設置について質問 【Part2】
スレリンク(php板:2番)


603:nobodyさん
05/01/30 17:01:23
>>601
&get_host; をコメントアウトして代わりに
$host = 'ダミーのアドレス';を書けばいいだろ

604:nobodyさん
05/01/31 23:38:23
質問にあったスレが見当たらないのでお邪魔します
CGI配布場所  URLリンク(sugachan.dip.jp)
サンプル  URLリンク(sugachan.dip.jp)
特定IP・串からのアクセス・DLを弾きたいのですが
特定IPの場合
$set{'deny_host'} = ' ';に何を入れればいいのでしょうか?
そして上にIPを入れた場合は直リンからのDLも防げるのでしょうか
検索してみたのですがわけがわからず途方にくれています

605:nobodyさん
05/01/31 23:52:38
>>604
ここは改造スレなのでスレ違い。

CGI設置について質問 【Part2】
スレリンク(php板)

606:nobodyさん
05/02/03 10:49:14
丸投げスレッドから来ました。
期限が近いのでどうぞよろしくお願いします
【.  CGI名  .】 検索専用データベース Ver2.04
【配布先URL】 URLリンク(cgiroom.nu)
【. 置き場所 .】 URLリンク(hpcgi2.nifty.com)
【 依頼期限 】 出来れば1週間ほどで。
【. 依頼内容 】検索結果に画像を表示、新着情報等がわかるように。
の2点をしたいのですが、よくわかりません。
理想としては
URLリンク(rikunabi-next.yahoo.co.jp)
のような感じにしたいです。
どうぞよろしくお願いします。

607:nobodyさん
05/02/03 15:09:30
>>606
>丸投げスレッドから来ました。
>期限が近いのでどうぞよろしくお願いします

(゚Д゚)ハァ? スレ違いは帰れ

608:nobodyさん
05/02/04 00:30:42
>605
改造だと思っていたのですが、違っていたのですね
お礼が遅れてすいませんでした
ありがとうございます

609:606
05/02/04 10:07:39 x2xOcYLj
すみません、書き方がおかしかったです。
丸投ではなく、出来るだけ自分でどうにかしたいので
改造の方に来ました。という意味です。
>607様わかってもらえたでしょうか?

610:nobodyさん
05/02/04 11:25:07
>>609
要するにマルチって事だろ?
期限って何よ?

611:nobodyさん
05/02/04 13:47:30
>>610
期限は前スレッドで記入するところがあったので
そのまま流用してみました。
期限を決め、大体そのくらいで出来ればいいな。
という希望的観測も含まれています。
前スレッドに移動しますと言う旨を書いてるので
マルチではないかと思いますがどうでしょうか?
分かりにくくてすみません。


612:nobodyさん
05/02/05 09:23:59
omae no taido ga kiniiran

613:nobodyさん
05/02/05 18:32:34
態度が悪く申し訳ありません。
悪かった点がありましたら、謝りますので
どうにかしていただけないでしょうか?


614:nobodyさん
05/02/06 05:14:40
やっぱ人に依存しっぱなしのヤツってどっか抜けてるんだな。


漏れもperlの文法とかはさっぱりだけど、
最低限自分のしたいようにするためにhtmlの出力部分をいじったり
どの変数がどういう処理に回されてるかを必死ににらめっこして自分なりに判断して、
その上で具体的にどの部分をどうしたいかを明記するもんだと思うんだけどね。

質問があまりにも抽象的だったり漠然としすぎているから
正直誰も答えようがないし、答える気もしないんじゃないかな。

2chでは社交辞令的な事には誰も関心なくて、
用件をはっきり伝えて手短に済ませるってなスタイルが定着してると思うしね。

615:nobodyさん
05/02/07 02:06:50
「俺パソコンとかよくわかんねーからさぁ」って、開き直ってる人が多いッす。
大抵は少し経てばそういう気分は抜けて「そろそろ俺も中級者って感じィ♪」と思うんだけど、新しい分野に取り組むと
またお手上げ状態…みたいな。
身近にそういう人が何人かいるのでよくわかるッす。
まあ、なんでもかんでもそうですけど、わからなくてもとりあえずチャレンジすることって大切ッす。
いや勿論、責任の取れる範囲でのハナシッす。

>>14みたいな文は誘導のテンプレにしたいッす。

616:nobodyさん
05/02/07 12:32:17
社交辞令っつーかさ「ひとまず謝ってみた」って姿勢がな。
あと「ドーユーアンダスタン?」な返答って「アンタ馬鹿?」って言ってんのに等しいぞ。
教えを請う態度じゃないよね。やる気の問題。

丸投げスレじゃなくてさ、改造スレなんだから。
まずおまぃさんのスキルが不明、prog理解度が不明。
何をやってみてどうダメだったのかのかが不明。

ソース丸ごと表示して「○○行目に以下を追加して~」
「□□を△△に書き直して~」とか言って欲しいのか?
それは丸投げっていうんだぞ。

お前宿題って先生に答え聞いてノートに丸写しする事だと思ってなぃ?


617:nobodyさん
05/02/07 12:35:44
どっちにしろここでも丸投げでももう相手にされないから諦めるだろ

618:nobodyさん
05/02/07 18:10:45
どこがどう解らないかを提示できないってのは、
理解しようという意識が薄い顕れだからね。
1つ問題が解決できても、また同じような事で質問してくる確変パターンに繋がるのが
オチだし

619:nobodyさん
05/02/07 18:52:22
omae no taido ga kiniiran

620:nobodyさん
05/02/10 20:59:03
BBQ あらしお断りシステム
URLリンク(bbq.uso800.net)
URLリンク(bbq.uso800.net)
を掲示板に組み込みたいのですが、ソースをそのままコピペしてもできません。
どこを変えればいいか教えて頂けないでしょうか?

621:nobodyさん
05/02/11 01:05:32
>>620
エスパーキボンヌですか?

622:nobodyさん
05/02/11 03:01:13
既存のcgiに下のような環境変数のアクセスをはじく機能をつけたいのですが
どんな風に追加したらいいのでしょう?

'HTTP_VIA',
'HTTP_X_FORWARDED_FOR',
'VIA',
'HTTP_FORWARDED',
'FORWARDED',
'HTTP_X_BLUECOAT_VIA',
'HTTP_PROXY____',
'HTTP_PROXY___________',
'HTTP_PROXY_CONNECTION',
'HTTP_X_HOST',
'HTTP_X_REFERER',
'HTTP_X_SERVER_HOSTNAME',
'PROXY_HOST',
'PROXY_PORT',
'PROXY_REQUEST',
'HTTP_CLIENT_IP',
'HTTP_PRAGMA'

623:nobodyさん
05/02/11 04:27:14
「既存のcgi」って言われても、千差万別。何につけたいんだ?

624:622
05/02/11 11:59:46
bbsのcgiです。
例えばkentのとか。
URLリンク(www.kent-web.com)


625:nobodyさん
05/02/11 14:26:33 5gSqwCgm
はじめまして。自分の手ではどうしても改造しきれなかったのでここで質問させていただきます。
配布元:URLリンク(dream.lib.net)
スクリプト名:Power Search
登録式のサーチエンジンです。
マークサイトというものを複数登録する事ができるのですが、仕様では8個までしか登録できません。
これを22個登録できるように改造したいのですがうまくいきません。
ps_user.cgiの313~324行目あたりの
☆マーク<br>
EOD
for (0 .. 7){
next if $marks[$_][1] eq "";
if ($data =~ /^\d*$_\d*</){
$buffer2.="<input type=\"checkbox\" name=\"sitemark\" value=$_ checked>$marks[$_][0]<br>\n";
}else{
$buffer2.="<input type=\"checkbox\" name=\"sitemark\" value=$_>$marks[$_][0]<br>\n";
}
}
$buffer2.="<br>";
$buffer3 = <<EOD;
を改造し、22個のマークが表示されるようにはなったのですが
チェックしていないチェックボックスにチェックが入ってしまうという不具合が起こりました。
よろしければ問題点を教えてください。


626:nobodyさん
05/02/11 17:27:38
W3C形式の日時を YYYY年 MM月 DD日 hh時 mm分 に変換したいです。

参考
Perlメモ/W3C形式の日時の解析
URLリンク(digit.que.ne.jp)

2005-02-10T14:54:18+09:00 を変換する場合、どう書けばいいのでしょうか?

627:nobodyさん
05/02/11 19:56:25
>>626
マッチや split

628:nobodyさん
05/02/12 05:57:07
>626
マルチすんな、ヴォケ。

スレリンク(php板:331番)

629:nobodyさん
05/02/12 14:58:20
cgiにこういうのを入れて、リストにあるIPを弾いています。
これを逆にリストにあるIPだけ許可できるように改造できないでしょうか?
お願いします。

&hostcheck;
sub hostcheck{
local($host_file,$remote_host,$line);
local(@lines);
$host_file = './host.dat';
$host=$ENV{'REMOTE_HOST'};
open(DB,"$host_file") || die "Cannot Open Log File $host_file: $!";
@lines = <DB>;
close(DB);
foreach $line (@lines) {
next if(length($line)<4);
chop $line;
if( $host=~/$line/ ){print "Status: 204\n\n";exit;}
}
}#hostcheck END

630:nobodyさん
05/02/12 15:56:04
>629
if( $host=~/$line/ ){print "Status: 204\n\n";exit;}
この{ }の中を許可したIP用の対応に書き換える↑

631:nobodyさん
05/02/12 16:22:03
>>629
$ENV{'REMOTE_HOST'};でホスト名を返さないサーバが多数。
ドツボにはまる予感がするぞ。

632:625
05/02/12 18:19:25
丸投げスレへ行きます。ありがとうございました

633:629
05/02/14 19:08:26
&hostcheck;
sub hostcheck{
local($host_file,$remote_host,$line);
local(@lines);
$host_file = './host.dat';
$jump = "./abc.html";
$host=$ENV{'REMOTE_HOST'};
open(DB,"$host_file") || die "Cannot Open Log File $host_file: $!";
@lines = <DB>;
close(DB);
foreach $line (@lines) {
next if(length($line)<4);
chop $line;
if( $host=~/$line/ ){print "Location: $jump\n\n";exit;}}
}#hostcheck END

こういう感じで特定のファイルにアクセスさせればいいのでしょうか・・

634:nobodyさん
05/02/14 23:47:48
■ 自分で改造する時にアドバイスが欲しい場合には
★三 【 スクリプト改造工房 PART 8 】 ★三
スレリンク(php板:79番)(テンプレ)

635:nobodyさん
05/02/15 12:28:07
はじめまして、少し質問させてください。
URLリンク(www.hot-dining.com) 
で配布されています 「256palette」というカラーパレットのCGI(PHP)を、
URLリンク(useyan.pupu.jp)に組み込みたいのですが、
上手く動かず分からなくなったので伺ってみました。

上記「Twin」チャットの動作サンプルがコチラで、
URLリンク(useyan.pupu.jp) 

コチラの「じぶんいろ」という文字にリンクを貼り、となりのテキストボックスで動作するように
256paletteを組み込みたいのですが、twin.cgiのheadタグ内に設置手順①を貼り付け、

446行目を
<form action="$script" method="get" target="_self">

<form name="mae" action="$script" method="get" target="_self">

469・470行目を
<input type="text" name="irom" size=10 value="$cirom" class="text">
<font $fontm><b>じぶんいろ</b></font></font>

<input type="text" name="iroa" size=10 value="$cirom" class="text">
<font $fontm><b>【<a href="javascript:wopen('256palette/palette.php?form=mae&name=iroa')">じぶんいろ</a.>】</b></font></font>

としましたが、スクリプトのエラーとウィンドウの下に出て動きません。
このCGI自体は説明どおりの階層に設置して動作を確認しております。
iromをiroaと変えたのは入室後も同じ名前のテキストボックスもあったからで、
この追加機能を入室後もつかえるようにしたいのですが。

宜しければお教えください、お願いします。M(_)m

636:nobodyさん
05/02/15 17:26:48
256paletteは捨てて他のを探したほうがいいと思う

637:zoooe
05/02/18 07:05:00
スレリンク(php板)l50 から来ました。
【  CGI名  】カラーBBS Ver.2.02
【配布先URL】URLリンク(www.cgi-down.com)
【設置サーバ】lolopop
【 質問内容 】“投稿者:[ あああ ]  投稿日:[ 2005年02月12日(土) 13時18分26秒 ]”
の部分を、例えば“wrote by: あああ 02/17/2005(thu) 13:18:26 ”
と英語に変えたいのですが、何度やっても500エラーになってしまします。
投稿者→wrote by だけでもエラーです。
どなたか解決法をご存知でしたらご指導いただけないでしょうか?

# 曜日を日本語化
@week = ('日','月','火','水','木','金','土');
$wday = $week[$wday];
local($date) = "$year年$mon月$mday日($wday) $hour時$min分$sec秒";
return ($date);
の部分を変えてもダメなのでしょうか?それともjcode.plの方をいじるんですか?

638:zoooe
05/02/18 07:06:08
続き
# 記事の表示
print "<hr size=0 color=$hr_color><BR><CENTER>\n";
for ($i = $end_page;$i<$end_list;$i++) {
local($main,$re) = split(/★/,$DATE[$i]);
chop($re);
local($number,$date,$name,$title,$mail,$hpurl,$com,$tc,$kc) = split(/☆/,$main);
$name =~ s/\0/☆/g;
$title =~ s/\0/☆/g;
$com =~ s/\0/☆/g;
print "<FORM ACTION=\"$cgifile\" METHOD=\"post\">\n";
print "<TABLE WIDTH=$kizi_wid BORDER=0 bgcolor=$main_tccolor cellpadding=0 cellspacing=0><TR><TD>\n";
print "<TABLE WIDTH=100% BORDER=0>\n";
print "<TR><TD BGCOLOR=$title_bgcolor WIDTH=95%>\n";
print "<FONT COLOR=$tc[$tc] SIZE=4><B>$title</B></FONT> [$number]</TD>\n";
print "<TD BGCOLOR=$title_bgcolor WIDTH=5%><INPUT TYPE=\"submit\" VALUE=\"RES\"></TD></TR>\n";
print "<TR><TD WIDTH=100%>投稿者:[ <B>$name</B> ]\n";
if ($mail ne '') { print "<A HREF=\"mailto:$mail\"><IMG SRC=\"$mail_gif\" WIDTH=40 HEIGHT=15 ALT=\"$name\" BORDER=0></A>\n"; }
if ($hpurl ne '') { print "<A HREF=\"$hpurl\"><IMG SRC=\"$home_gif\" WIDTH=40 HEIGHT=15 ALT=\"ホームページ\" BORDER=0></A>\n"; }
print " 投稿日:[ $date ]</TD></TR>\n";
print "<INPUT TYPE=\"hidden\" NAME=\"ac\" VALUE=\"return\">\n";
print "<INPUT TYPE=\"hidden\" NAME=\"res\" VALUE=\"$number\">\n";
print "<INPUT TYPE=\"hidden\" NAME=\"title\" VALUE=\"$title\">\n";
print "<TR><TD><BLOCKQUOTE>\n";
print "<P><FONT COLOR=$kc[$kc]>$com</FONT></P>\n";
print "</BLOCKQUOTE></TD></TR>\n\n";
ここを英語に変えたらエラーになります。よろしくお願い致します。

639:nobodyさん
05/02/18 09:03:36
そこ変えただけでエラーになるのは有り得ない気がする。
perl -c のチェックは通る?
それか、修正してセーブしたときに日本語文字コードがEUCからSJISに変わってるとかありそう。


640:nobodyさん
05/02/19 02:37:51 JY0g4Gmr
すいません、教えて下さい。
メールフォームで特定アドレスの受信拒否を行えるスクリプトを見つけたのですが、スクリプトを編集して禁止アドレスを登録しなければいけない為、随時更新する手間が大きく、
できれば別ファイルでそれの管理ができないものか、と悩んでおります。

元スクリプトは、KentWebさんのPostMail v2.41の改造バージョン、PostMail RDです。
URLリンク(planet.cside5.com)

@errmail = ('nomail@xxx.com','xxx@nomail.com');
 (入力エラーとするメールアドレスです。シングルクォーテーションで囲みながらいくつでも指定することができます)

この部分なのですが、別ファイル(csvやtxt等)で管理する方法ありませんでしょうか?
タブや<>区切りでは、編集しにくいのでできればcsvがいいのですが・・・

641:zoooe
05/02/19 03:43:57
>>639 さん
大変ありがとうございました。
『そこ変えただけでエラーになるのは有り得ない気がする。』
と言うのを参考に、普通にメモ帳で編集してUPしたら、できました。
お礼が遅くなってしまってごめんなさい。

642:nobodyさん
05/02/21 14:41:10 xjZaU2mS
【.  CGI名  .】 shiory diary Ver2.0
【配布先URL】 URLリンク(www.area-s.com)
【. 置き場所 .】 URLリンク(www.area-s.com)
【 依頼期限 】 今週中
【. 依頼内容 】
デフォルトの表示幅が400pxになっているのですが、これを344pxの画像枠に縮めたいです。
tableで400となった箇所を344に変えてみましたが、どうしても日記の記事がはみ出てしまいます。
どうかよろしくお願いします。

643:nobodyさん
05/02/21 15:20:55
>>642
別に記事はみ出なかったけど?
使ってるブラウザが悪いんじゃないの?

644:nobodyさん
05/02/21 15:22:29
CGIの改造じゃなくてHTML(CSS?)の問題ってことで
板違いだな

645:642
05/02/21 17:09:59
何度か再アップロードしたらちゃんと表示されました
なんだったんだ・・・

スレ汚しすみませんでした

646:nobodyさん
05/02/24 10:56:33 QVcBOm5y
はじめまして。宜しくお願いします。
自分で色々といじってたのですが、どうしても解決できないのでここで質問させてください。
(板違いでしたら指摘してください。)

【.  CGI名  .】 SiteHistory ver1.01+3.00
【配布先URL】 URLリンク(www.lira.co.jp)
【改造中データ】 URLリンク(cgi.2chan.net)
【 依頼期限 】 2/25 (急ぎですみません)
【依頼内容】  
項目を幾つか増やしてみました。
なぜか画像($image)を登録すると開催日($eventday)のデータがロストしてしまいます。
「sub edit1」「sub edit2」あたりを間違ってしまっていると思うのですが、原因を特定できません。
何か記述し忘れているのでしょうか?
お願いします。

647:646
05/02/25 14:21:12 tjf4sPQL
>>646です。

あぷろだに載せていたデータがなくなってしまったので、再度アップしました。
URLリンク(up.isp.2ch.net)

宜しくお願いします。

648:nobodyさん
05/02/25 15:41:05 QBQJZtMZ
KENTのe-PAD掲示板に荒らし対策としてなりすまし禁止ののトリップ機能か
携帯情報取得のBBQ機能追加って無理ですか?
それか管理人のみのアイコン表示とか・・・


649:nobodyさん
05/03/01 21:42:51 mUN1SLsJ
SPGM というアルバム用スクリプトなんですが、トップページ
URLリンク(spgm.sourceforge.net)
から各アルバムへ入って

サムネイルをクリックして表示された時に↓
URLリンク(spgm.sourceforge.net)
上のサムネイル一覧は消して、大きい画像だけを表示したいんです。
そんな改造をしてほしいです。

ソースはここにあります。よろしくお願いします。
URLリンク(earth.prohosting.com)

650:nobodyさん
05/03/01 22:04:31
>649
【 スクリプト改造依頼スレ 】(丸投げ) part3
スレリンク(php板)l50

651:nobodyさん
05/03/01 22:07:45
>>650
すみません、移動します。

652:nobodyさん
05/03/08 18:36:41
【.  CGI名  .】 Joyful Note + YY-BOARD + alpha ver.1.0 Beta
【配布先URL】 URLリンク(webmin.bbzone.net)
【依頼内容】
このCGIを動かす鯖がwin2000の自宅鯖なのでsymlink関数が使えません
管理モードで設定を変更しようとするとadmin.cgiの979行目でエラーが起きます

979行目
while (!symlink(".", $lockfile)) {

同様に画像を投稿しようとするとjoiful.cgiの1485行目がエラーを起こします

1485行目
while (!symlink(".", $lockfile)) {


できればmkdir関数でファイルロックをしたいのですが
自分なりにやってみましたがうまくできません
日本語が少し変だと思いますが許してください
よろしくお願いします

653:nobodyさん
05/03/08 22:11:41
>>652
NetBSDに汁!

654:チョップ5/5
05/03/08 22:40:57
>>652
使い方は他で聞いてね~☆

655:nobodyさん
05/03/10 13:47:16
>>652 ロックはinit.cgiで変えられるよ。あとロック用のフォルダを作っておかないといけないかも。

656:nobodyさん
05/03/11 12:34:38
【.  CGI名  .】 Simple Olive Diary2 var2.0
【配布先URL】 URLリンク(www.olive-design.com)
【 依頼期限 】 3/14
【依頼内容】
現状では新しく書き込んだデータが一番上に来ます。
これを逆(先に書き込んだものが上に来る)としたいです。
イメージとしては、イベント開催情報のようなものでしょうか?
イベントが決まったら書き込みしますが、それはあとの方なので
先に書き込んだ今からあるものをトップに表示したいって感じですね。

ログを書き込むときに一番下に書き込むって事は出来るのでしょうか?
その場合、どうしたら良いですか?
もしくは別の方法をとったほうが良いのでしょうか?
お願いします。

657:nobodyさん
05/03/11 13:38:37
>>656
unshift (@log,"$newdata");

push (@log,"$newdata");
にすれば逆になる。
ただ2重投稿のチェックも変更が必要

658:656
05/03/11 19:02:16
>>657
すばやい返答ありがとうございます。

>2重投稿のチェックも変更が必要
と言うのは、以下の部分ですよね。

$top = $log[0];
($top_no,$jpg,$Wid,$Hei,$t_subject,$t_iday,$t_itime,$t_iplace,$top_comment,$top_time)= split(/<>/,$top);
if ($top_comment eq $comment ){ &error('エラー','二重投稿禁止')}
------------
$top = $log[0];ってのがログの一番上(0行目)を見るって事でOKですか?で、コメントが一緒じゃないかを
チェックするんですよね。
では、最終行をチェックってどうしたら?数値じゃ無理ですよね。

どうしたら良いんですか?お願いします。


659:nobodyさん
05/03/12 07:11:46 u7n1go0F
【.  CGI名  .】updir.php[ver1.83]
【 配布先URL 】URLリンク(updir.net) → URLリンク(updir.net)
【 ソース  】URLリンク(tool-ya.ddo.jp)
【 依頼期限 】 3/19まで
【 依頼内容 】
フォームで画像を投稿する際に2つ程項目(出身地/好きな動物)を増やし表示させたいです。

【自分で試した事】
(1)583行目辺りに追加予定項目を追加(<input type=text name=inaka>と<input type=text name=animal>)
(2)2255行目辺りの「if($comi == 0){$html_text = "$comnum${tname2}${tcom} ${ttime}<br>";」に項目追加
→if($comi == 0){$html_text = "$comnum${tname2}${tcom}$inaka<br>$animal ${ttime}<br>";

この状態だとログに組み入れられない為、書き込むたびに全ての変数が変わってしまいます。
管理画面での操作等は必要としませんので、
追加項目に書き込み→一覧画面で表示の実現の助言をどうかお願い致します。

助けてください。切にお願いしますm(_ _)m

660:659
05/03/13 08:36:11
ウワァーン。どなたか助けてください。

661:nobodyさん
05/03/13 09:53:52
改造で金取るために無料で配布してるもんを勝手に改造したらまずいだろーよ

662:659
05/03/13 12:41:43
>>661
その辺の事が一切かかれていなかったので依頼しちゃいましたorz

それと>>659については自力でできちゃますた。
ご迷惑おかけしました。

663:nobodyさん
05/03/17 01:22:38
【.  CGI名  .】 Joyful2ch-Me(MobileEdition)
【配布先URL】 URLリンク(www.supra.cx)
【. 置き場所 .】 URLリンク(www.supra.cx)
【. 依頼内容 】 
当スクリプトはJoyful2chの携帯メール投稿可能版なのですが、
そのメールを処理するpost.cgiが付属していないので、
自分で何とかしたいんですが、ヒントくれませんか?

664:nobodyさん
05/03/17 04:50:35
【.CGI名.】TOWN  ver.1.40
【配布先URL】URLリンク(brassiere.jp)
【依頼期限】3月末日
【ヘルプ内容】CGIゲームの買い物で、クレジットを使用する時に
       普通口座にお金がなければ買えないようにしたい。

command.plの1008行くらい
####購入処理
sub buy_syouhin {
#ver.1.30ここから
if ($kaenai_seigen == 1){#ver.1.40
if ($k_id eq "$in{'ori_ie_id'}" || $house_type eq "$in{'ori_ie_id'}" && $in{'ori_ie_id'} ne ""){&error("自分や配偶者のお店では商品を買うことができません。");}
}
($katta_syouhin,$katta_taikyuu,$katta_nedan) = split(/,&,/,$in{'syo_hinmoku'});
if ($in{'siharaihouhou'} eq "現金"){
if ($katta_nedan > $money){&error("お金が足りません");}
}

ここ迄の中に
if ($in{'siharaihouhou'} eq "クレジット"){
if ($katta_nedan > $bank){&error("普通口座にお金が足りません");}

これを組み込めばいいのだとわかっているのですが、
初心者なので上手くいきません。どうか宜しくお願いします。

665:nobodyさん
05/03/17 07:33:00
>664
マルチ

666:644
05/03/17 07:58:46
いえ、向こうには窓を間違えて書き込んでしまったのです(汗)

667:nobodyさん
05/03/17 22:37:47 lZ4EUQO4
あげんな!!

668:nobodyさん
05/03/21 18:42:25
THE ROOM(URLリンク(dream.lib.net))さんの、Rankling Linkを
を使って、携帯用のランキングサイトを公開しているのですが、
投票(voteform)ページを、携帯端末からのアクセスの時のみ表示して、
その他PC等からのアクセス時には非表示
(そのままランキングページを表示)
になるようにしたいのですが、何か良い方法は無いでしょうか。。。
HOST名取得で表示選別、等が出来ればベストなんですけど。。。
自分なりに色々試してみたのですが、ranklink.cgiの100行目あたり

if ($a1){
&fileunlock;
&changehtml("voteform","id","ssd");
}
}

このあたりの、"voteform"の部分を"index"等に変えると、投票ページ
として読み出すページが変えれるところまでは分かったのですが。。。

お詳しい方、アドバイス下さい。よろしくお願いします。

669:nobodyさん
05/04/10 00:50:50
9tst4さんのX-counter:URLリンク(paxs.hp.infoseek.co.jp)
1回のアクセスで2つカウントするようにしたいんだけどどれを弄ったらいいかわからない
別途設置しているアクセス解析のトップページのカウント数と、設置してるカウンタのカウント数が2倍くらいずれてるから
これて実際のページ表示回数に追いつかせたいんですが・・・

よろしくお願いします

670:nobodyさん
05/04/10 03:33:21
>>669
カウンタのログファイルを書き換えればいいといってみるテスツ

671:nobodyさん
05/04/16 02:03:53
>669
135行目から146行目までがカウントアップ処理だと思われるので、ここで2ずつ増やすように書き換えればいいと思う。
俺もデータファイルを直接編集するのを薦めるけどな。

672:nobodyさん
05/04/16 02:24:09
>668
そこか、あるいはサブルーチンchangehtml(rl_prf.cgi L.358-)だろうね。
携帯端末を判別するルーチンをそこに組み込めばいい。
適当にやるならそのCGI内にもあるようにHTTP_USER_AGENTで振り分け。
厳密にやりたいなら携帯電話各社の使用するホスト名やIPアドレス範囲を調べる。

ところで、標準でPCからの投票を拒否する機能がついているようだけど、それでは駄目なの?

673:nobodyさん
05/04/16 03:26:34
誘導されてきました。

URLリンク(www.kent-web.com)
のフォームの確認画面で
パスワードを表示されないようにしたい(現在は表示される)んですけど、

改造できませんか?

フォーム画面では表示されないのですが、確認画面では表示されてしまいます。
それを隠す方法はありますでしょうか?

よろしくお願いします。

674:nobodyさん
05/04/17 12:45:44
>673
もし、パスワード入力部のhtmlが
<input type=password name="text2">
なら、

252行目
if ($key eq "need" || $key eq "cc" || $key eq "match" || $key eq "subject" || ($in{'match'} && $key eq $match2)) {

if ($key eq "need" || $key eq "cc" || $key eq "match" || $key eq "subject" || $key eq "text2" || ($in{'match'} && $key eq $match2)) {
とでもすればいいのかな。
HTMLソースを見ると分かっちゃうけど、画面に表示はされない…という状態になる、はず。

675:nobodyさん
05/04/17 23:16:56 YWLnSC6R
>>674
どうも、ありがとうございます。
上のようにしたところ、プレビュー画面でも消えませんでした。

プレビュー画面を外させてもらいました。

しかしながら、エラー画面(入力もれ)が出るときに、
パスワードを入力して他の項目をエラーにすると、
エラー画面でパスワードがそのまま表示されてしまうみたいです。

もし、表示されない方法がありましたら、よろしくお願いします。

676:nobodyさん
05/04/17 23:25:37 YWLnSC6R
できました!

あなたは天才だ。同じような項目を3ヶ所全部変えてみたらできました。
エラー画面も修正されました。
どうもありがとうございます。


677:nobodyさん
05/04/18 19:49:09 QI6M91tZ
【. CGI .】 URLリンク(ookuwagata2005.hp.infoseek.co.jp)
【配布先URL】 URLリンク(specters.net)
【 依頼内容 】 トリップ機能を付けたいんですが、初心者でわかりません。
        ご教授のほど、宜しくお願い致します。

678:nobodyさん
05/04/19 00:55:09
【.CGI名.】簡易データベースII
【配布先URL】URLリンク(www.rescue.ne.jp)
【依頼期限】4月末日
【ヘルプ内容】
 1. 検索結果の件数を表示したい。
 2. 検索結果を「名前」でソートをかけたい。

よろしくお願いいたします。




679:nobodyさん
05/04/21 16:42:21 Xy2T8jBX
フォームメーラー
URLリンク(www.ahref.org)

で、>>674 のようにパスワードを確認画面で隠す方法はありますでしょうか?

ソースは>>674 と全然違っていて苦戦しています。
よろしくお願いします。


680:nobodyさん
05/04/29 18:38:44
【.  CGI名  .】もっと書き込み隊 Ver0.94
【配布先URL】URLリンク(tackysroom.com)        
【. 置き場所 .】URLリンク(aoblue.s101.xrea.com)
【 依頼期限 】4月30日まででお願いします     
【. 依頼内容 】2ch系の掲示板でよくある、スレッドリストを作って、
そこから各記事へ飛ぶようにしたいのですが、改造に失敗するので、
ヒントをお教えしていただけないでしょうか?

681: ◆GrsqjXpGxE
05/04/30 16:52:26
【CGI名】智猫フォームメールCGI
【配布元】URLリンク(tomo-net.org)
【CGIソース】URLリンク(majix.dip.jp) (txtファイルに自動変換されます)

[依頼内容]
・添付ファイル機能をお願いします(添付ファイルサイズ上限を指定できる事・添付ファイル個数は最大5個まで)

【改造したら・・・】
こちらの、アップローダにアップお願いします(自動でテキストファイルに変換されます)
URLリンク(majix.dip.jp)


よろしくです、お願いします。

682:nobodyさん
05/04/30 18:24:28
>>681
マルチ乙。

683:nobodyさん
05/04/30 23:23:20
こんにちは。
【CGI名】KENT WEBさんのYY-BOARD
【配布元】URLリンク(www.kent-web.com)
【依頼内容】禁止ワード(投稿者名、投稿内容の部分)の設定と、
管理モードから管理人が記事の修正を可能にしたいのです。

どうかよろしくお願いします。

684:nobodyさん
05/05/01 03:54:49
>>683
さようなら

685:nobodyさん
05/05/01 15:42:15
>>683
ここは自分で改造するためのヒントをもらうスレだよ。
丸投げは丸投げスレへどうぞ。

>>684
簡潔すぎて>>683もどうしていいのかわからなくなっちゃうYO

686:nobodyさん
05/05/07 08:09:26
【.  CGI名  .】Banner Search 1.12
【配布先URL】URLリンク(www.webpower.jp)
【ヘルプ内容】
同一URLの、複数カテゴリへの登録を可能にしたい。
デフォでは、同一URLの複数個登録は出来ない仕様にしてある、と明記してあります。
登録時のカテゴリ選択をプルダウンからチェックボックスに変更してみましたが
navi.cgi478行目あたりから
登録サイトのチェック項目があります
foreach (@Record) {
if (!$i) { $i++; next; }
%Field = stdio'ReadData(split "\t");
if ($Field{'Code'} == $Form{'Code'} && $Form{'mode'} ne 'regist') {
$find = 1;
last;
} elsif ($Field{'Url'} eq $Form{'Url'} && $Form{'mode'} eq 'regist') {
$find = 1;
last;
}
$i ++;
%Field = ();
}

if ($find && $Form{'mode'} eq 'regist') {
Errors('フォーム入力ミス','入力されたURLは既に登録されています。');
} elsif (!$find && $Form{'mode'} ne 'regist') {
Errors('フォーム入力ミス','入力されたURLは登録されていません。');

ここが肝だと思うんですが、どう書き換えたら上手くいくのか
自信がありません。御伝授お願いします。

687:nobodyさん
05/05/09 23:07:48
>>686
元のスクリプトを全く見ずに答えるので間違っていたらすまん。

if ($find && $Form{'mode'} eq 'regist') {
Errors('フォーム入力ミス','入力されたURLは既に登録されています。');
} elsif (!$find && $Form{'mode'} ne 'regist') {
Errors('フォーム入力ミス','入力されたURLは登録されていません。');
}

この部分、上のif文で重複チェックしてみるみたいだから、ここを
if (!$find && $Form{'mode'} ne 'regist') {
Errors('フォーム入力ミス','入力されたURLは登録されていません。');
}
に書き換えれば同一URLがいくらでも登録できるようになるはず。

ただし同一カテゴリにも同じURLを何度でも登録できるようになってしまうと思われるので、
しっかり処理するならば同一カテゴリ内で重複がないかチェックしなきゃだめ。

ソースをしっかり見る時間がないのでこれ以上は自分で頑張って下さいな。

688:nobodyさん
05/05/11 03:24:51
>687さん
if以下の削除で試していたところです。
重複可、不可とするのよりも、
カテゴリ内の重複不可、とする方が
逆に難しいかもしれませんね。もう少しいじってみます。
ありがとうございました。


689:nobodyさん
05/05/18 09:43:52
一度丸投げで依頼したものですが
自分なりにやってみたのでこっちに来ました。

【CGI名】HoneyBoard
配布先など依頼テンプレは↓アプロダに一緒に書いてあります。
URLリンク(s3p.net)
【依頼内容】
 ふきだし型BBS+アイコン+画像投稿・・のできるBBS。
 イメージとしてはHoneyBoardに
 同KENT-WEB内のJoyfulNoteの画像アップ機能を
 プラスしたような感じです。


690:まるなげどんの人
05/05/19 11:44:31 wVMVs5Vc
>>689
perlも全くわからず、HTML知識と勘でやっただけですがこんな感じ?
URLリンク(s3p.net)
表示の設定とか変えたらなんかおかしくなるけど取り敢えず動くくらいです。
参考になれば幸いです。

691:689
05/05/20 01:12:48
>>690
両方にお返事くださってどうもありがとうございます!
さっそく今調整中です。

ただ、記事の横幅がとても大きいので
アイコン込みで600か500pxほどにしたいのですが・・
print $OUT "<!-- 記事外テーブル --><TABLE cellSpacing=0 cellPadding=0 width=\"100%\" border=0><TR>\n";#改造2
・・↑の100%を500に変えても、
border=1にして確認してもイマイチ500ぽくないんです。
もしやいじるのはここではないのでしょうか?



692:まるなげどんの人
05/05/20 16:26:21 VbM05pau
>>691 
joyful.cgiを「700」で検索したらテーブル幅の設定のところになると思いますので
をこを変更してみてください。

693:nobodyさん
05/05/20 17:47:42 rt8UrqYq
URLリンク(21)<)?-105-89-33.adachi.?e.jpうへへ。

694:689
05/05/21 10:48:45
>>692
向こうで質問続けさせてもらいました。
よろしくお願いします。


695:nobodyさん
05/05/21 13:30:56 Qzr9ON+U
質問です。web patioのアクセス制限機能を拡張して自動登録機能をつけたいのです。
仮登録をおこなわせて、メールに送られた承認用URLをクリックすると本登録ができるようになるという一般的な承認方法にしたいのですが
そんなもの作ったことがないのでわかりません。仮登録から本登録への処理が入ってるCGIはありませんでしょうか?
処理をぱくる・・・というか参考にしたいのです。ホントはKENTさんのMagMag Board v2の処理をまるまる参考にしようと思ったのですが
書庫付録のようで、買おうと思っても在庫があるところが見つからない上に時間がないのでこちらに書かせてもらいました。
よろしくお願いします。

696:nobodyさん
05/05/21 17:15:51
三国志NETにその機能あったな。

697:nobodyさん
05/05/30 20:27:12 AlkdVV9S
うむ

698:nobodyさん
05/05/31 02:20:00 VGaCh60h
こんなCGI探してますスレから来ました。
----
【種別】一言掲示板 ゲストブック
【条件】URLリンク(hp.bird.to)
こういう一行タイプで、住所、HP、メールが表示できて、
ソースを見ると、管理人以外にも書き込み者のIPが見られるもの。

【言語】perl , php
【備考】サイトの信頼性を高めたいので、足跡を残してくれる人のIPが見れた方がいいかなと思いました。
----

>IPアドレスを保存すればいんだよ。
>そんでもって読み込む時にソースに加えりゃいいんだよ。

と言われたのですが、何のことかよくわかりませんでした。

メモ帳でcgi開いてコピペするくらいならできるかもしれません。
アドバイスをお願いします。m(_ _)m

699:nobodyさん
05/05/31 03:16:23
ここはスキル0の来るスレではありません
丸投げスレに行ってください

700:nobodyさん
05/06/05 21:27:05 4YiV/lXp
画像掲示板- Joyful Note - php resize -を使ってます。
↓のgdバージョンです。
URLリンク(script.s16.xrea.com)

投稿の際の必須項目を変更したいのです。
とりあえず、自力で名前とコメントの必須をなくすことはできました。
添付ファイルを必須にしたいのですが、どこにどのような記述が必要でしょうか?
(つまり添付ファイルがないと、エラー報告がでるようにする)

よろしくお願いいたします<(_ _)>

701:nobodyさん
05/06/05 22:39:27
>>700
それが出来たなら
消した部分の下あたりに
if ($upfile == "") { error("添付ファイルが有りません"); }

でいいと思う
まぁ実験してないから何とも言えんが(´・ω・`)

702:700
05/06/06 00:15:13
>>701
できました~!!!
マジ完璧っす。ありがとうございます<(_ _)>

今までCGI・PHPはHTML表示部分はそれなりにイジってたのですが、
スクリプト部分はサパーリでした。

もっともっと自分好みなのが作れそうな感じがしてきますた。
PHPはそんなに難しくないような気もしますので、ちょっくら勉強いたします。

703:700
05/06/06 02:47:26 NHKXaD0z
そんなに難しくないような気がしますと言ったはいいが、
やはり難しい・・・orz

も一つやりたいことがあるので、再度ご教授お願いしまする<(_ _)>
先ほどと同じ画像掲示板なのですが、画像ファイル名が、
1、2、3・・・10・・・といった連番なのですが、これを桁数を揃えて、
000123.jpgのようにしたいのです。>>172さんが行なったようなやつです。
(試行錯誤しても分からなかったorz・・・1からちゃんと学ばないとダメですよね)

よろしくおねがいいたします。

704:700
05/06/07 09:10:10 1/UWqdkb
またちょいと問題が・・・
>>701さんに教えて頂いた方法で、添付ファイルを必須にはできたのですが、
返信時まで必須になってしまいました。
返信時には必須にしたくないので、>>703の桁数の件も含めて
またご教授頂ければと思います。
(丸投げいったほうがいいのかなぁ・・・)

705:nobodyさん
05/06/08 06:39:06
NICOLE氏のWWW Forum 3.7c に age sage 機能を追加したくて
色々参考になりそうなものを探しています。

で、前スレを 2ch ブラウザで辿ろうと思ったらなんか見つからない……
どなたか過去のスレッドの URL を保存されてる方いませんか?

706:nobodyさん
05/06/08 14:55:12
>>705

>>1

707:nobodyさん
05/06/14 15:15:26 RSJ0zxh1
2chの指定したスレに定期的に自動に書き込みしてくれるスクリプトって作れますか?




708:nobodyさん
05/06/14 15:20:20
>>707
cronで書き込みスクリプトを動かせばできる

709:705
05/06/16 02:19:01
>706
いや >1 に書いてある URL が間違ってるのか
過去ログたどれないんですよ

なのでさらに昔の URL 知ってる人いないかなと

710:nobodyさん
05/07/01 03:26:56
>>700
桁数を6桁にして、足りない分は0で補う場合
$ファイル名 = str_pad($ファイル名, 0, 6, STR_PAD_LEFT);


711:nobodyさん
05/07/01 14:31:49
丸投げスレより舞い戻って?着ました
内容は以下の通り
【.  CGI名  .】 Web Cart System PRO ver.5
【 依頼期限 】 毎日見てます
【配布先URL】 URLリンク(webcartsystem.com)
【ヘルプ内容】 登録した商品が真っ先に上に来るように設置したい(新着商品を上に出したいだけです)のですが
        商品登録Noを変えても動かず、結局、CGIが吐き出すdb.txtを
        全部入れ替えてやっと反映される状態です


CGIのTXTは全部ココに収納されています
URLリンク(ww4.enjoy.ne.jp)


で、write.txtに格納されている
open WRITE,"<db/$open_file" || die "Could not open the file";
@templine = <WRITE>;
foreach (@templine) {
if (/(.*):=:(.*):=:(.*):=:(.*):=:(.*):=:(.*):=:(.*):=:(.*):=:(.*):=:(.*)/) {
$page_num = $1;
}
}
close WRITE;


以上の項目ですが、ここにdb.txtへ吐き出す構文が居るのですが
コイツをソートする構文を入れてみたのですが(write.txt(149): @templine = sort @templine;)
上手く作動せず、途中で+1と記述されている部分を-1にしても吐き出しされません

ここまでは解ったのですが…的外れかも、しれません。
アドバイスをお願いします

712:nobodyさん
05/07/03 18:16:25
>if (/(.*):=:(.*):=:(.*):=:(.*):=:(.*):=:(.*):=:(.*):=:(.*):=:(.*):=:(.*)/) {
キモス

713:nobodyさん
05/07/04 01:01:53
この構文が、商品名、品番、種類、値段、等々に分けてあるんです
db.txtにはそういう風な記述で分類されています
多分、ここはいじらなくてもいいと思います
ただ、確かにキモチ悪いのですが……

714:nobodyさん
05/07/04 02:50:34
>>712
ケツの穴並びすぎ

715:nobodyさん
05/07/04 23:53:33
文句だけ言う奴は大抵技術も無いので(゚ε゚)キニシナイ!!

716:nobodyさん
05/07/06 00:25:36
>715さん
そうだったんですか…
ぱっと見、確かに気持ち悪いと思ってたのですが、私も(^^;

ちなみにその構文は実際にカート搭載されると
4:=:D2:=:詳解HTML&JavaScript辞典:=:2400:=:秀和システム:=:8.jpg:=::=::=:30:=:HTML3.2とNetscapeNavigator4.0、lnternetExplorer4.0の最新・拡張タグ、オプションを解説。詳細な解説と豊富なイメージ:=:D1:=:
となります(公式サイト情報抜粋より)
分類:=:商品No:=:以下解説・価格等々です
この商品NoをエクセルでソートしてからUPすると逆になります
Noを少なくして(たとえば5000代だったら4999)UPしても反映されません
私も現在試行錯誤しているのですが、500エラーばかり喰らってます

他に見られている方も今後ともよろしくお願い致しますm(_ _)m



717:nobodyさん
05/07/06 23:32:23
修正前
if (/(.*):=:(.*):=:(.*):=:(.*):=:(.*):=:(.*):=:(.*):=:(.*):=:(.*):=:(.*)/) {

修正後
if (/モル━━(゚∀(  *  )━━!!!モル━━(゚∀(  *  )━━!!!/) {

718:nobodyさん
05/07/08 00:55:54
正規表現つかわんでもええやん

719:807@丸投げスレ
05/07/19 00:32:55 VFC/oNKm
一度はあきらめて丸投げスレに依頼出したが、回答を待ちつつ自分でも改造?しています。
しかし、サッパリわかりません(;;)
スクリプトはPrism-WebのDesignBBS1.71(URLリンク(www.pris.jp)

この掲示板は、投稿者による記事削除がパスワード認証で可能。
これを以下のように変更したい。
1.投稿者による削除ではなく、投稿者による編集に変更したい。
2.掲示板末尾で記事No&パスワード記入を行う形(YYボードと同じ)から、
  記事横のリンクから編集を行えるようにしたい。

2.に関しては、フォームボタンを使えば簡単だろうが、
デザインの関係があるのでリンクでやりたい。
そこで掲示板表示テンプレに、フォームなら
~<input type=hidden name=mode value="userdel">~とするところを、
<a href="bbs.cgi?mode=userdel&$no">~と書いた。
しかしこのリンクをクリックしても、サブルーチンuserdelへ飛ばない。
アドレスバーに表示されるURLが「~bbs.cgi?mode=userdel&記事no」になるだけ。
どうしたら飛ぶようになるだろうか。
#userdelはユーザーによる削除のサブルーチンを指す。
#これを投稿者編集に変えてやるつもりだから。
#$noは記事noが入る。

userdelサブルーチンは次へ。


720:807@丸投げスレ
05/07/19 00:34:13
#選んだ記事を一旦削除して編集投稿フォーム表示、※
#投稿するときにパスワードがあえばログをそのデータで書き換えて終了。
#パスワードが合わなければ、一旦削除した記事をログに追加して終了。
#・・・という処理を考えた。この処理が問題であれば突っ込んでください。
#苦し紛れに考えた処理なのでサーバー負荷とかわかりません。
#なお、今作っているルーチンは※だけ、しかも途中。
#========================
# 記事削除
#========================
sub userdel {
 # ロック処理
 if ($lockkey == 1) { &lock1; }
 elsif ($lockkey == 2) { &lock2; }
 open(IN,"$logfile") || &error("$logfileが開けません。");
 @lines = <IN>;
 close(IN);
 $top = shift(@lines);

<つづく>

721:807@丸投げスレ
05/07/19 00:34:55
############################
ここから
###########################
 $flag=0;
 foreach (@lines) {
  ($no,$reno,$date,$name,$mail,$subject,$icon,$icon2,$message,$color,$url,$host,$pw) = split(/<>/, $_);
  if ($flag == 0 && $eno eq "$no") {
   $PW = $pw;
   if ($reno eq "") { $flag=2; }
   else { $flag=1; }
  }
  elsif ($flag == 2 && $FORM{'no'} eq "$reno") { next; }
  else { push(@new,$_); }
 }
 if ($FORM{'pwd'} eq '') { &error("パスワードが入力されていません。","lock");}
 if ($flag == 0) { &error("該当記事が見当たりません。","lock"); }
 if ($PW eq '') { &error("パスワードが設定されていません。","lock"); }
#####################
ここまで、どうすればよいかわからないのでデフォルトのまま。
#####################
<つづく>

722:807@丸投げスレ
05/07/19 00:35:41
  # 更新
  unshift(@new,$top);
  open(OUT,">$logfile") || &error("$logfileが開けません。","lock");
  print OUT @new;
  close(OUT);
  # ロック解除
  if (-e $lockfile) { unlink($lockfile); }
#投稿フォーム表示
 &header;
 $get = $_[0];
 # クッキー情報を取得
 &get_cookie;
 # 書きこみ部デザインシートを読みこむ
 &read_file("$input_sheet2");
 &read_file("$foot_sheet");
 print "</body></html>\n";
 exit;
}
以上

723:711
05/07/19 01:20:43
どうやら、色々調べたのですが。write.cgiから直接DBに対して
ソートを仕掛けるのが無理そうなので
write.cgiに
open DATA,"<db/$open_file" || die "Could not open the file";
@templine = <DATA>;
@templine = sort @templine;
close DATA;
$line=@templine;

という構文を入れたら、whiteは理想通り更新順に並び替えできましたが
問題のディスプレイ部分に反映されません…
以下、本体のCGIより抜粋

if ($disp eq "on") {

&top("$page_title");
open DB, "<db/db$page_id.txt" || die "Could not open the file";
{
($page,$goods_id,$name,$price,$com,$picture,$picture2,$picture3,$limit,$comment) = split (/:=:/, $_);
多分、ここも
@templine = <DB>;
foreach (@templine)
あたりに、同じ構文を入れたら…80エラーが出ます
何か、解決策はありませんでしょうか…writeは完了しました
お騒がせしてすみませんでした。

724:nobodyさん
05/07/19 09:30:42
【.  CGI名  .】Power Search 1.11
【配布先URL】URLリンク(dream.lib.net)
【ヘルプ内容】
「鎧」をキーワード検索した時、なぜか「額」を含むデータがヒットしてしまいます。
文字コードの処理に何かあるのかな? と、素人考えで思ったりするのですが、
こちらでヒントを頂ければ幸いです。

725:807@丸投げスレ
05/07/19 11:21:19
度々すいません。
もう一回粘って書き直しましたが、思い切りエラってます。
500エラーではなく、スクリプトで設定しているエラーが。
改造したファイルを添付の上、状況を「◆CGI製作・改造依頼 Joyful Note◆ (避難用) 」
へ記述しました。
URLリンク(s3p.net)
DesightBBSのスレです。

なんか・・・どこかわかりかけたようなわけがわからないような・・・。

726:nobodyさん
05/07/19 21:33:38
「改造工房スレ住人の皆様へお願いします」

 スクリプトを改造してください。とお願いしません。

 その代わり、電子私書箱の仕組み、チョッとだけ
 教えてください。

 特に、自分宛のメッセから、相手の私書箱へ送信する
 仕組みがわかりません。
 「お相手に送信」ボタンを押すと、相手の私書箱に
 受信先の名前とか、メッセがわかる。

 ?ID=12345;PW=POIUEWS のような感じでURI?が作成
 されて、「お相手に送信」ボタンに埋め込んである。
 この?以降の設定とか、ググってもわかりません。

 スーパーエロい人、教えてください。
 よろしくお願いします。


727:nobodyさん
05/07/23 11:09:37
>>726
意味がわからん上にスレ違いもいいとこなんだが。

> ?ID=12345;PW=POIUEWS

これはないだろう。
?ID=12345&PW=POIUEWS
ならわかるが。
変数をGETで受け取ってるだけだ。
それにしても、パスワードをGETで受け取るのはどうかと思うが。


728:711
05/07/27 14:25:21
【配布先URL】 URLリンク(webcartsystem.com) (再配布・代行設置・有料のカスタマイズ・コピーライト非表示・レンタル目的等々何でも可。
CGIのTXTは全部ココに収納されています
URLリンク(ww4.enjoy.ne.jp)
以前ののヘルプ内容は自己解決しました。

……で、まだ今回。同じCGIで依頼があるのですが。cart_pro.cgiのカートの内容を表示する部分

#
# 商品ディスプレイ
#
sub disptop {

以下、稼動する部分を表示させるフォームボタンをCGIの中に「カートの中身」と作りたいのですが、上手く稼動しません。
このCGI自体に致命的な欠陥があり、サンプルでは動くSET.htmlが実稼動させると商品数の為か稼動しないのです
なので、今はダミーファイルを作って、そちらでカテゴリが動くようにしているのですが…

ダミーファイルにそのサンプルで品物を入れたら出てくるHTMLタグは
<FORM METHOD=POST ACTION="cart_pro.cgi">
<INPUT TYPE="SUBMIT"NAME="cart"VALUE="お支払い">
<INPUT TYPE="SUBMIT"NAME="cart"VALUE="内容確認">
<INPUT TYPE="SUBMIT"NAME="cart"VALUE="カートを空にする">
<INPUT TYPE="hidden"NAME="id" VALUE="利用者のIPアドレス">
<INPUT TYPE="hidden"NAME="page_id" VALUE="1">
</FORM>
ですが、これをダミーファイルに入れてもやはり稼動しません。IPアドレスの取得とその反映がダミーHTMLにはされないので…
なので、なんとかして、CGIの商品表示の中に内容確認ボタンを作りたいのですが
解る方ご教授お願いします

729:nobodyさん
05/07/27 21:12:37
>>727
>> ?ID=12345;PW=POIUEWS
>
>これはないだろう。
>?ID=12345&PW=POIUEWS
>ならわかるが。

冗談で言ってるのか?

URLリンク(www.w3.org)

でも嫁

730:nobodyさん
05/08/17 12:18:42
最近CGIやってないから忘れたけど、
「;」でも確かいけたような記憶が・・・

731:nobodyさん
05/08/20 22:32:26
URLリンク(www.w-frontier.com)を使っているのですが、
記事作成フォームを記事削除フォームの上に移動できないでしょうか。
これを URLリンク(hoge.myfws.com)

こう   URLリンク(hoge.myfws.com)

URLリンク(hoge.myfws.com)
一応何もいじってない状態のものです。

732:nobodyさん
05/08/21 11:38:55
>>731
該当する
print <<EOF;
~省略~
EOF
を移動させるだけじゃない?

733:nobodyさん
05/08/22 15:14:06
>732
そうしたのにできなかった……
と思ったらprintのとこだけ移してなかったorz
ありがとう。

734:nobodyさん
05/08/26 09:43:20 3vgShx+F
【.  CGI名  .】フォームメール
【配布先URL】URLリンク(www.kent-web.com)
【ヘルプ内容】
入力チェック時、例えば「あほ」と入っていると送信できないようにしたいのですが、うまくいきません。
「あほ」のみ送信できず、「あほやろう」なら送信可能という風にしたいのですが…
231行目あたりに
if ($in{'ngword'} = "あほ") {
&error("これは送信できません");
}
としたり、=の代わりにeq、正規表現なども試しましたが思うように動きません。
(「あほやろう」でも送信できないエラーになったりする)
indexなどを使わなければいけないのでしょうか?

また、コマンドタグで制御しているためか、
送信確認画面で送信したいメッセージの他にも、上のngwordというのが一緒に表示されてしまいます。
496行目からの入力チェックをいじればいいような気がしますが、
ngwordだけ表示させない方法がわかりませんでした。
よろしくお願いします。

735:nobodyさん
05/08/27 01:36:51
>>734
前後の処理がわからないのでなんともだけど、文字の比較ならeq
$in{'ngword'} eq 'あほ';
$in{'ngword'}に改行とか余計な文字が入ってないか確認してみて。

736:nobodyさん
05/08/31 09:52:33
URLリンク(oranger.happy.nu)
NovelListMaker(PHP版)

こちらのものを携帯から書き込めるようにしてもらえませんか?
クッキーを使ってるので携帯から管理画面へ入れません。

737:736
05/08/31 09:56:57
そもそもクッキー関係ないのでしょうか。。

738:nobodyさん
05/08/31 10:49:33
クッキー切って試そうとしないのか・・

739:736
05/08/31 11:39:00 kRQLgiYG
あ・・いやそういう意味ではなく」て・・・クッキーだけの問題なのでしょうか?

740:nobodyさん
05/08/31 11:41:33
クッキーを切って書き込めるかどうかをまず検証汁

741:736
05/08/31 14:55:39 kRQLgiYG
クッキーを切ると書き込めません。
クッキーを切らなければ書き込めます
で、携帯はクッキー対応してないみたいなので書き込めません。

クッキーの項目はソースの最後の方にあります。

742:nobodyさん
05/08/31 20:48:51 yjcCkZ/K
【.  CGI名  .】箱庭諸島2 for PHP
【 依頼期限 】 2005.9.7
【配布先URL】 URLリンク(scrlab.g-7.ne.jp)
【ヘルプ内容】 Perl版の箱庭のように、開発コマンドを入力するときに、
        ポップアップ画面が表示され、それによって入力できる
        ようにしてもらいたくお願いします。


743:nobodyさん
05/09/09 10:38:07 1AT345a5
【.  CGI名  】 WEBショーケース  [ LightCase ]
【配布先URL】 URLリンク(www.hot-dining.com)
【. 置き場所 .】 URLリンク(www.hot-dining.com)
【 依頼期限 .】 出来れば今月中(9月30日)
【. 依頼内容 】 
常に左メニュー(PHPで呼び出し)を表示させる為に、テーブルを表示させてたい。
配布サイトがカスタマイズを休止しているのでアドバイスを、または改造をお願いします。
下記ZIPフォルダ内の「include」などをいじってみたんですがエラーでダメでしたorz

【依頼内容ZIP】
URLリンク(vista.x0.com)
パスワード 「webprog」

【内容】
db        配布PHP
db_txt      .配布されているPHPを全てtxtに変えた物
お願いします .イメージHTML
イメージ    .イメージ画像bmp

一応メアド kuwazawa@hotmail.co.jp

難しいかも知れないですがよろしくお願い致します。

744:743
05/09/09 10:42:35
追記、一番わかりやすい説明は
URLリンク(www.hot-dining.com)
お店の紹介ページ(微検索サイト)を作りたいんです・・・

改めてお願いします。



745:nobodyさん
05/09/09 11:53:09
>>743
include.phpの2ヶ所を書き換えればいけそう。
html_header2()とhtml_footer()の2つの関数で本体をサンドイッチしてるみたいだから
その2つに書かれてるHTMLを見て適切に挿入すべし。

746:743
05/09/09 12:32:01
>>745

function html_header2(){
echo "</head>"."\n";
echo "<body>"."\n";
echo "<table>"."\n";
echo "<tr>"."\n";
echo "<td width="200">"."\n";
echo "<?php include_once(\"2.txt\"); ?>"."\n";
echo "</td>"."\n";
echo "<td>"."\n";
}

こんな感じで書いてみたけど500でましたorz
PHPは初挑戦だからイマイチです・・・

747:nobodyさん
05/09/09 12:44:30
>>746
function html_header2(){
echo "</head>"."\n";
echo "<body>"."\n";
echo "<table>"."\n";
echo "<tr>"."\n";
echo "<td width=\"200\">"."\n";
readfile("2.txt");
echo "</td>"."\n";
echo "<td>"."\n";
}
これでどかね。

748:nobodyさん
05/09/10 04:12:45
>>747
変数展開しない部分はシングルクォーとの萌芽。

749:nobodyさん
05/09/13 12:48:59 Jd1taUMo
【.  CGI名  .】 p++BBS
【配布先URL】 URLリンク(php.s3.to)
【 依頼期限 】 今週中
【. 依頼内容 】 書き込んだ内容に関して、訂正・変更を出来るようにしたい。
パスワードは書き込む際に入力したもの。入力されていない場合は管理者にのみ
変更可能。

書き方としては問題ないでしょうか?宜しくお願いいたします。

750:nobodyさん
05/09/13 13:53:49
>>749
丸投げなら丸投げスレの方で

751:nobodyさん
05/09/15 13:21:29
>>750
はい、有難うございます。そちらにいってみます。
レス遅くてすみません。

752:nobodyさん
05/09/20 16:24:53
【.  CGI名  .】 yomi-search
【  .言語   】 Perl
【配布先URL】 URLリンク(yomi.pekori.to)
【 依頼期限 .】 ~06年
【. 依頼内容 】 検索CGI部分のみを取り出して改造してます。
           改造したい部分は、外部検索エンジンで検索できるように、
          yomi-searchを使っている検索エンジンで検索できるようにしたいんです。

検索処理ファイルmeta_ys.cgiの
%keyword = (
'yahoo', "p=$K_plus",

%option = (
'yahoo', "n=$FORM{'hyouji'}&w=$Myahoo",
を弄っているのですが、うまくいきません。

どこを弄れば、うまくいくのでしょうか。
教えて頂けると幸いです。

753:nobodyさん
05/09/20 16:32:59 coVOFe8l
>>752
>>yomi-searchを使っている検索エンジンで検索できるようにしたいんです。
検索エンジンって他のサイトのサーチエンジン指してるのか?

754:nobodyさん
05/09/20 16:47:41
ざっと眺めた感じだと
@engine
'yomi'

%engine
'yomi','他人のyomiのアドレス',

%engine_top
'yomi','他人のホームページアドレス',

%engine_name
'yomi','yomi',

%keyword
'yomi',"search=$K_plus",

%option
'yomi','',

かな?

755:nobodyさん
05/09/20 18:49:10 9NSnOV9d
【.  CGI名  .】 PHPのクッキー保存のサンプル
【配布先URL】 URLリンク(masago.kir.jp)
【. ソース  .】 URLリンク(masago.kir.jp)
【. 依頼内容 】 
これを自分のサーバーで設置して実行してみたけど、
送信してもクッキーが保存されません。
サーバ-はさくらです。PHP Version 4.3.10

PHPのバージョンが違うからだとは思うんですが、
どこを直せばいいのか教えて下さい。よろしくお願いします。

756:nobodyさん
05/09/20 18:58:38
Operaだけど配布先のものは正しく動く。
ブラウザの設定とか、別のブラウザでも全てダメなのか、そこらへん確認してみては。

757:755
05/09/20 19:16:10 9NSnOV9d
>>756
配布先のものは正しく動きます。自分のサーバーに試してみたものが動かないんです。

>>755 分かる方、お願いします。

758:nobodyさん
05/09/20 21:12:43
>>753
はい。申し訳ありませんでした。

>>754
アドバイスありがとうございます。

参考元に設定し、検索すると
URLリンク(yomi.pekori.to)となるのですが、
表示されるのはサーチエンジントップが普通に表示されてしまいます。

またアドバイスを頂けると幸いです。

759:nobodyさん
05/09/20 23:18:28
>>758
鯖やCGIの設定で外部から呼び出せない設定になっていたなら、何やっても無理だと思うけど。

760:nobodyさん
05/09/20 23:26:41
>>759
yomi-searchにそんな設定は無いはず。
サーバーの方も外部呼出し禁止じゃないとおも。

だからといって俺はアドバイスやるほどスキルねぇー。

761:nobodyさん
05/09/21 01:33:26
>>753>>754>>759>>760
アドバイスありがとうございました。
アドバイスを元に弄って弄って弄ってみました。

%keyword = (
'yomi', "engine=pre&method=and&open_type=0",

%option = (
'yomi', "mode=search&page=1&sort=mark&word=$K_plus",

これが正しいかは私には分からなかったのですが、検索は成功しました。

762:nobodyさん
05/09/21 12:44:40 uZHDREIO
>>761
もろ間違ってる
いつかお前のサーバー壊れる
サーチエンジン側のサーバーも壊れる
ルーチン回りまくってとんでもないことになる

763:nobodyさん
05/09/21 12:58:57
>>762

764:nobodyさん
05/09/21 13:47:28
>>762>>763
指摘ありがとうございます。
もう少し改造良してみます。

765:nobodyさん
05/09/21 13:56:59
>>764
改良も何も、>>762が糞レスなだけだが。
ローカルでテストして、タスクなどでperlexeが暴走してなければ問題ない。
気になるならベンチでもとってみてもいいし、$count++;を適当において、最後に数値を表示、とんでもない数になっていなければ問題ない。

766:nobodyさん
05/09/21 14:09:48
>>765
ご指摘ありがとうございます。
アパッチでサーバーを開いてたので、
それを利用してテストした結果が>>761でした。
>>765さんの指摘を参考に改めてテストし、
数値を確認したら異常は得に無さそうでした。

何度もありがとうございました。

767:nobodyさん
05/09/25 18:47:38
【CGI名】 CMCBoard
【言語】 Perl
【配布先URL】 URLリンク(cgi-lounge.eek.jp)
【依頼内容】 
1時間に決まった回数しかDL出来なくしたいのですが、どうしたらいいですか?
お願いします。

768:nobodyさん
05/09/25 19:16:21
>>767
ここは自分で改造をするスレ。
まずは自分で改造してどうダメだったのか書く

自分で全く改造できないのなら
【 スクリプト改造依頼スレ 】(丸投げ) part3
スレリンク(php板)l50

769:767
05/09/26 02:38:38
【CGI名】 CMCBoard
【言語】 Perl
【配布先URL】 URLリンク(cgi-lounge.eek.jp)
弄ったスクリプト URLリンク(zyougi.hp.infoseek.co.jp)
【依頼内容】 
↑のとは違った事でイロイロと改良したら アクセスすると時々変な風に表示されるようになってしまいました。
携帯でのみ変な風になります。
変な風になったら更新を押すと直ります。
普通に使えます。
XREAに設置してます。
どこがオカシイのか分からないので、教えてください。

770:nobodyさん
05/09/27 00:37:50
>>769
} elsif ($user_agent[0] eq 'DoCoMo') { $useragent = 2; # 252行目付近:
↑ここは残したままなのに
} elsif ($useragent == 2) { # 1514行目、他
↑こっちを消したせいかな。
どの携帯で見てどう変になったのか分からないからあんまり自信ない。
UAを携帯のものに偽装できるブラウザでアクセスしてソース見るといいことありそう。

改造元からのことなんで関係ないけど、タグが大文字小文字ばらばらだったり、未対応UA用htmlにBODYタグが無かったり(;´Д`)

771:769
05/09/27 14:54:43
返事アリガトウ。

252行目付近を

@user_agent = split(/\//,$ENV{'HTTP_USER_AGENT'});
if ($user_agent[0] eq 'ASTEL') {
# ドットi 用の処理
&mitaiou;
} elsif ($user_agent[0] eq 'UP.Browser') {
# EZweb 旧端末用の処理
&mitaiou;
} elsif ($user_agent[0] =~ /^KDDI/) {
# EZweb WAP2.0 対応端末用の処理
$useragent = 1;
&keitai;
} elsif ($user_agent[0] eq 'PDXGW') {
# H" 用の処理
&mitaiou;
} elsif ($user_agent[0] eq 'L-mode') {
# L-mode 用の処理
&mitaiou;
} else {
&html;
}

にしたんですが、直りませんでした。
au専用にしたいんですよ、どうしたらいいでしょう?
他に何か駄目な点など気づいたら指摘してください。
携帯気分ではcgiを見れなかったのでソースが見れませんでした。

772:769
05/09/27 16:10:47
ちなみに、auのW31SAで見たらなりました。


773:nobodyさん
05/09/27 17:09:28
他のブラウザで試せよ。

774:769
05/09/27 22:25:26 0
携帯エミュレーターでソースを見たんですが、サッパリでした。
どこをどう弄ったらいいのか全然分からないので
丸投げの方に依頼したほうが良いでしょうか?

775:nobodyさん
05/09/27 22:42:13
何をどう変えたくて、どこをいじったか書かないと。

776:769
05/09/28 00:50:57
もうわけわっかんないので、丸投げに依頼しました。
返事くださった方ありがとうございました。

777:nobodyさん
05/09/28 01:12:52
>>775
URLリンク(hp.vector.co.jp)
どこをいじったかはこういうの使って見るといいよ

778:nobodyさん
05/09/28 13:11:30
(1) そのスクリプトの内容と置いてある場所を明記する (txtファイルでUPすればなお良い)
URLリンク(yomi.php.goodlinks.jp)
Yomi-Search PHP Ver 4.19.5
URLリンク(yomi.php.goodlinks.jp)

(2) どんな風に改造して欲しいのか? (完成イメージHTMLを用意すればなお良し)
template/category.html内の$log_data[comment]でタグ(「<」や「>」など)を使えるようにしたいです。
データベース内には「<」とか「>」は、「&lt;」といった形式で保存されています。
データベース内の「&lt;」などをcategory.htmlで表示するときにタグとして認識させるにはどのように改造したらよいでしょう。

779:769
05/09/30 23:21:47
自分でまた改造をしていたんですが、また躓いたので助けていただけませんか?
ずうずうしいかもしれませんが、よろしくお願いします。

【CGI名】 CMCBoard
【言語】 Perl
【配布先URL】 URLリンク(cgi-lounge.eek.jp)
【弄ったスクリプト】 URLリンク(zyougi.hp.infoseek.co.jp)
【依頼内容】 
携帯で一覧表示で次へを押したら次の10件が表示されず、トップに戻ってしまいます。
SDKでソース見たんですけど分かりませんでした。

DoCoMoはiモードHTMLシミュレータで確認したので正しく表示されているか微妙です。
DoCoMoだとワード検索が変な感じで
検索するとファイルが表示されるのに、一覧表示ではファイルが1つも表示されず次の10件が表示され次の10件を押すとトップに戻ってしまいます。

次の10件を押したらちゃんと次に飛ぶようにしたいです。
DoCoMoの方でもauと同じように表示させたいです。

設置している鯖は114090です。
確認に使用した端末はW31SAとSDK6.2KとiモードHTMLシミュレータです。

他に何か気づいた点があれば指摘お願いします。

780:769
05/10/07 21:33:04
やはり丸投げのほうに依頼しました。
何度もごめんなさい。

781:nobodyさん
05/10/11 05:25:37
llll!                g、
llll!                .lllllll;;、
llll!                .lllllllllllll。
llll!                .lllllllllllllllllg,,
llll!                .lllllllllllllllllllll]g,,
llll!                .lllllllllllllllllllllllllllllg、
llll!                .lllllllllllllllllllllllllllllllll[g_
llll!                .lllllllll゚゚lllllllllllllllllllllllllllll;;
llll!                .lllllllll  .\llllllllllllllllllllll,,
llll!                .lllllllll     .\llllllllllllllll、
llll!                .lllllllll      ^)llllllllllll]l.
llll!                .lllllllll       〈llllllllllll[
llll!                .lllllllll        ]llllllllllll
llll!      ,,,,gggggggggg。._ llllllll!       〈llllllllll゜
llll!   ,,gllllllllllllllllllllllllllllllllllllllllllllllllll[       llllllll]l゚
llll!  _gllllllllllllllllllllllllllllllllllllllllllllllllllllllll[      ..lllllllll゚゜
llll! ,,llllllllllllllllllllllllllllllllllllllllllllllllllllllllllllll[     ./]l゚゚
llll!」llllllll゚    ^^^llllllllllllllllllllllllllllllll][     f゚"゜
llll.lllllllllll,,     ^llllllllllllllllllllllllllllllll゜
llll!]llllllllllllg,,,,,,__,,,,gllllllllllllllllllllllllllllllll゜
llll!.ヽllll,,llllllllllllllllllllllllllllllllllllllllllllllll"
llll! 〔llllllllllllllllllllllllllllllllllllllllllll])「゛
llll! _llllllllllllllllllll[lllllllll゚l゚l゚^^^^


782:nobodyさん
05/10/21 20:15:15
sine

783:nobodyさん
05/10/22 21:11:45 /ZEbzEfT
URLリンク(www.kent-web.com)
こちらの携帯向けショッピングカートをいじりたいのですが
配布元がソースはフリーなのですが
カスタマイズが有償なのでお知恵を拝借したく参上しました
どうか宜しくお願いいたします


784:nobodyさん
05/10/22 21:23:04
このスレは自分で改造をしているけど煮詰まった時にアドバイスを求めるスレ。
改造丸投げは
【 スクリプト改造依頼スレ 】(丸投げ) part4
スレリンク(php板)l50

ただし、カスタマイズが有償なら有償で行なうのがスジ。
それをネラに無償でやってもらうなんて虫のいい話は誰もやらないと思われ。

つか、>>1を見ないヤシはカエレと

785:nobodyさん
05/10/22 21:47:48 /ZEbzEfT
ゴメンねママ初めてここに書くからゴメンね

786:nobodyさん
05/10/22 21:49:21 /ZEbzEfT
商品一個置く方法考えてたんですが
わからなくて…
お目汚し失礼いたしました
お許し下さいませ

787:nobodyさん
05/10/22 22:15:44 /ZEbzEfT
風呂入って考え改めて
一から勉強することにしました

ただひとつお願いがあります
ここは見ておけと言うサイトとか
これは読んでおけと言う書籍がございましたら
ご教授下さい
後生ですのでお願いいたします

788:nobodyさん
05/10/22 22:19:08 /ZEbzEfT
本も初心者スレにありましたね
本当にごめんなさい
ホントにお目汚しでした

789:nobodyさん
05/10/22 22:51:51
お陰様で何とかなりそうです
ご注進有難うございました

790:nobodyさん
05/10/23 01:28:05
へりくだりすぎ和んだ

791:nobodyさん
05/10/23 02:37:10
343 名前:nobodyさん[sage] 投稿日:2005/10/22(土) 15:29:51 ID:???
URLリンク(saya.kiy.jp)

このサイトで配布されてたCC Naviってのを設置したいのですけど
誰かアーカイブをうpしてもらえませんか。
www.archive.org/
にもDLカウンタを使用していたようでないんです。。。

792:nobodyさん
05/10/23 06:51:47
>>791
【CGI】こんなCGI探してますver.18
スレリンク(hp板)


793:nobodyさん
05/10/23 19:00:21
【.  CGI名  】 Icon chat
【配布先URL】 URLリンク(dream.lib.net)
【. 置き場所 .】 URLリンク(dream.lib.net)
【 依頼期限 .】 できれば明日まで
【. 依頼内容 】時間の右あたりにIPを表示させたい。
一応IPを表示にする設定はあるものの、ソースを開かないとわからないものなのです。
ソースを開かなくてもIPが利用者からも確認できるようにしたいのです。

794:nobodyさん
05/10/23 19:45:07
>>793
ichat.cgi 973行目の後ろの方
($y1[4]) の後ろあたりに $y1[6] を追加。

・・・てか改造って言えるほどのものじゃないなw

795:nobodyさん
05/10/23 19:53:30
>>792
THX

796:nobodyさん
05/10/24 22:35:54 v9AJE0O8
すいませんどなたか助けて下さい
ダイス機能のついてるCGIとして
KENTWEBさんのPONNY CHATを再配布されてるサイトさんから
DLさせてもらって、ちょっとチャットを作りたいのですが

↓スクリプトをいただいてきたところ
URLリンク(www.big.or.jp)

↓自分で作りかけのチャット
URLリンク(firemind.maxs.jp)

↓dicechat.cgiの中身(メモ帳にコピーしたもの)
URLリンク(firemind.maxs.jp)

よくメールアドレス欄を改造してPBCとかだとキャラクターのプロフィールを入れたり
普通のチャットだと今日の気分とかを入力したりするようにしたいのです
似たようなスクリプトを配布しているところがあったので応用できないかと
思ったのですが、そこは逆に他の多機能が色々ついてて逆に外し方がわからなかったので断念しました
(機能はダイス機能のみ、ほしかったので)
そこから応用できるかと思い文を読みエディタで検索してコピー書き込みしてみましたが、やはりエラーが出てしまいました
もしよろしければアドバイスをお願いします
そうでなければチャット改造について良いアドバイスのスレッド、サイト
もしくは書籍を教えて下さい
素人の書き込みな上に注文が多くて本当に申し訳ないですが
ちょっと切実に困っております、お助け下さい

797:nobodyさん
05/10/25 02:56:48
>>796
ごめん、最終的にどの機能が欲しいのかが全然わからない。
箇条書きにしてくれる?

798:796
05/10/25 03:28:16
>>797
あ、ありがとうございます、反応して貰えただけで本当に感謝です

【欲しいもの】
・ダイス機能(これはもうついている)
・プロフィール欄を名前の後に追加する
(チャット部屋に入った時に名前の傍、もしくは名前にポイントすると情報が反映されるようにしたい)

それを良くメールアドレス欄を弄って作成する方が多いようなのですが、
やってみたら英字以外はエラーになってしまったり、
CGIそのものが動かなくなってしまったりしたので
なんとか日本語で反映されるようにしたいのですが
書き方がとんとわからずで…すいませんです

799:nobodyさん
05/10/25 10:44:27
>798
英字だけだったものについて日本語も扱うようにするなら、
URLリンク(www.din.or.jp)
URLリンク(www.lr.pi.titech.ac.jp)
ここら辺りを読んでみるべし。

800:798
05/10/25 14:32:32 iWn7i9Is
>>799
ありがとうございました!
色々このページの文章をコピーしてはっつけてみましたら
日本語でもエラーがでないようになることがわかりました
まだこの文の意味事態は良くわかってないので
時間のあるときにでも改めて勉強してみます
(飲み込み悪いもので…)


しかしあれから色々とやってみてるんですが
まだ名前とプロフィールがリンクできなかったり
ダイス機能が使えなくなったり
何故か退室後にそのプロフィールが出てきたりするような
おかしなことになってしまってます(汗)

↓現在の状態
URLリンク(firemind.maxs.jp)

↓現在のdicechat.cgiの中身(メモ帳コピー)
URLリンク(firemind.maxs.jp)

もうちょっと教えてもらったページを読んでがんばってみます
3日の文化祭までに間に合えばいいんですが(汗)

801:798
05/10/25 23:14:49 7fCiNnFI
なんかやっぱり専門的な事まで勉強しないと駄目みたいですね…
今まで色々なパターンのチャットCGIをDLして
メモ帳で開いて使いたい部分だけをソースコピーしてたのですが
ActivePerlをDLしてきて講座も読んだのですけれど、
とても文化祭の3日までにはPerl理解したところで応用まではできそうにもないです
今回はメールを改造したプロフィール欄を諦めます、ダイスチャットだけならこの
配布されている内容で十分なので…
せっかくアドバイスを下さった799さん、すいませんでした(大平伏)
でもこれを機会にちゃんと勉強してみようと思います
ありがとうございました

802:nobodyさん
05/10/28 13:44:55 17r42/SQ
自分でやっていたのですが、わからないので質問させて頂きます。

URLリンク(serennz.cool.ne.jp)

にある、Serene Bach ver 2.03Rですが、これをブログとしてではなく
ホームページの総合的な管理に用いようとしています。
つまり、ブログのように見た目は見えなくても実際はブログのように管理できると
いう感じです。

いろいろ、改造して見た目がブログにならないようにできたのですが、
最終的に、ブログ特有のカテゴリの後ろにつく記事の数( )が消せないのです。

詳しくいうと、

アップデート通知 (44)
安定版 (8)
開発版 (13)
β版 (22)
Serene Bach (3)



アップデート通知
安定版
開発版
β版
Serene Bach

ご指導頂けると幸いです。


次ページ
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch