(現在 過去ログ10 を表示中)

HOME HELP 新着記事 トピック表示 検索 過去ログ

[ 最新記事及び返信フォームをトピックトップへ ]

■9609 / inTopicNo.1)  EasyRINGの登録項目追加
  
□投稿者/ ゆず -(2004/07/29(Thu) 21:49:37)
    はじめまして。WebRingJapanにはない機能にひかれて、りゅういちさん作のEasyRINGをダウンロードさせていただきました。ありがとうございます。
    現在、ローカルで試験的に動かしている状態なのですが、独自に登録項目を増やしたいと思っています。
    具体的には、年齢・性別の2つです。

    当方、perlの知識は持っておりませんが、ering.cgiの49行目以降、
    #[登録ページの表示]のHTML出力部分のフォーム欄を、


    <form action="$cgi_f" method="$met"><input type=hidden name="mode" value="reg">$nf
    <table>
    <tr><td bgcolor="$ttb">* 登録サイトURL</td><td>
    / <input type=text name=url size=45 value="http://"></td></tr>$if
    <tr><td bgcolor="$ttb">* サイト名<br><small>(全角$max_t文字以内)</small></td><td>
    / <input type=text name=d_may size=20 maxlength="$max_l"></td></tr>
    <tr><td bgcolor="$ttb">* サイト管理者</td><td>
    / <input type=text name=name size=16></td></tr>
    <tr><td bgcolor="$ttb">* 管理人メールアドレス</td><td>
    / <input type=text name=email size=25></td></tr>
    <tr><td bgcolor="$ttb">* パスワード<br><small>(半角英数字)</small></td><td>
    / <input type=text name=passw size=8 maxlength=8>
    <small>(半角英数8字以内)</small></td></tr>
    <tr><td bgcolor="$ttb">サイト説明文<br><small>(全角$max_2字以内/タグ不可)</small></td><td valign=top>
    / <textarea name=comment rows=3 cols=50 wrap=soft maxlength=$max_c></textarea></td></tr>
    <tr><td bgcolor="$ttb">年齢</td><td>
    / <input type=text name=age size=10></td></tr>
    <tr><td bgcolor="$ttb">性別</td><td>
    / <input type=text name=sex size=10></td></tr>


    このように作ってみました。それをリストに反映させたいのです。
    #変数は仮に、年齢=$age、性別=$sexとしました。
    #説明入力欄を、ぷっちCGIを参考に大きくしてみました。
    #欲を言えば、セレクトフォームで選択できる形式が望ましいです。

    以上、何卒アドバイス等ご指南いただけると幸いです。よろしくお願い致します。
引用返信 [メール受信/OFF] 削除キー/
■9615 / inTopicNo.2)  Re[1]: EasyRINGの登録項目追加
□投稿者/ りゅういち -(2004/07/31(Sat) 23:01:09)
http://www.cj-c.com/
    No9609に返信(ゆずさんの記事)
    > 現在、ローカルで試験的に動かしている状態なのですが、独自に登録項目を増やしたいと思っています。
    > 具体的には、年齢・性別の2つです。
    > > 当方、perlの知識は持っておりませんが、ering.cgiの49行目以降、
    > <tr><td bgcolor="$ttb">年齢</td><td>
    > / <input type=text name=age size=10></td></tr>
    > <tr><td bgcolor="$ttb">性別</td><td>
    > / <input type=text name=sex size=10></td></tr>
    > 〜
    > > このように作ってみました。それをリストに反映させたいのです。

    簡単の方法としてはering.cgiの490行目にある
    if($temp){$namber="$namber"."x";}
    の上あたりに、$comment="$comment / 年齢:$FORM{'age'} / 性別:$FORM{'sex'}";
    とやると、コメントの後ろに追加されます。

    > #欲を言えば、セレクトフォームで選択できる形式が望ましいです。

    それは <select> タグで記述すればよいよいと思います。
引用返信 [メール受信/OFF] 削除キー/
■9628 / inTopicNo.3)  Re[2]: EasyRINGの登録項目追加
□投稿者/ ゆず -(2004/08/02(Mon) 01:21:13)
    No9615に返信(りゅういちさんの記事)
    > > 簡単の方法としてはering.cgiの490行目にある
    > if($temp){$namber="$namber"."x";}
    > の上あたりに、$comment="$comment / 年齢:$FORM{'age'} / 性別:$FORM{'sex'}";
    > とやると、コメントの後ろに追加されます。

    早速のアドバイスありがとうございます。
    この方法でうまく登録することができました。

    ですが、この方法ですと、内容の変更画面で修正できないことに気付きました。
    まとめてコメントとしてログに保存されるので、やはりコメントそのものを手動で書き替えるしかないでしょうか。


    また、少々横にそれますが、コメント記入欄をtextareaにして複数行記入するようにしたところ、登録はうまくいくのですが、変更すると改行部分がどんどんずれていってしまいました。
    #コメントの2行目が、次のNo.に入るといったように、です

    元の1行タイプにすると大丈夫ですので、ちょっと残念ですがtextareaタイプは見送ることにしました。


    > >>#欲を言えば、セレクトフォームで選択できる形式が望ましいです。
    > > それは <select> タグで記述すればよいよいと思います。

    こちらは<select>でうまく表示することができました。
    ありがとうございました。
引用返信 [メール受信/OFF] 削除キー/
■9632 / inTopicNo.4)  Re[3]: EasyRINGの登録項目追加
□投稿者/ りゅういち -(2004/08/03(Tue) 14:42:14)
http://www.cj-c.com/
    No9628に返信(ゆずさんの記事)
    > この方法でうまく登録することができました。
    > > ですが、この方法ですと、内容の変更画面で修正できないことに気付きました。
    > まとめてコメントとしてログに保存されるので、やはりコメントそのものを手動で書き替えるしかないでしょうか。

    ログ項目を増やすこともできるのですが、
    その場合、多くの部分を書き直さなければならず、結構面倒なんです。
    今回の場合は
    ($comment,$age,$sex)=split(/\//,$comennt);
    などとして、編集部分で分けることはできるかもしれませんが、
    もう少し勉強なさってから挑戦したほうがいいかもしれません。

    > > > また、少々横にそれますが、コメント記入欄をtextareaにして複数行記入するようにしたところ、登録はうまくいくのですが、変更すると改行部分がどんどんずれていってしまいました。

    これは <textarea> に入力した改行情報がそのまま記録されているためです。
    $comment=$FORM{"comment"}; のような記述を探して(デコード部分にあると思います)
    そのあとに、$comment=~ s/\r\n|\n|\r/<br>/g; と入れてみてください。
引用返信 [メール受信/OFF] 削除キー/
■9639 / inTopicNo.5)  Re[4]: EasyRINGの登録項目追加
□投稿者/ ゆず -(2004/08/04(Wed) 00:21:51)
    こんばんは。レスありがとうございます。

    No9632に返信(りゅういちさんの記事)
    >>まとめてコメントとしてログに保存されるので、やはりコメントそのものを手動で書き替えるしかないでしょうか。
    > > ログ項目を増やすこともできるのですが、
    > その場合、多くの部分を書き直さなければならず、結構面倒なんです。
    > 今回の場合は
    > ($comment,$age,$sex)=split(/\//,$comennt);
    > などとして、編集部分で分けることはできるかもしれませんが、
    > もう少し勉強なさってから挑戦したほうがいいかもしれません。
    そうですね、私の現状のレベルでは手が出せそうにないです(^^;
    頑張って勉強して、今後自分なりに使い勝手の良いスクリプトに改造したいです。
    前回アドバイスしていただいた方法でも、実運用には差し支えありませんので、感謝致します。


    > $comment=$FORM{"comment"}; のような記述を探して(デコード部分にあると思います)
    > そのあとに、$comment=~ s/\r\n|\n|\r/<br>/g; と入れてみてください。
    早速追記してみました。
    すると、ズレは解消されたようなのですが、変更モードのコメント記入欄が真っ白で、何も記述されていない状態で表示されます。
    そのまま変更ボタンを押すと、コメントなしの状態で一覧に載ってしまいます。

    718行目を<textarea rows=3 cols=50 wrap=soft maxlength=$max_c name=cc value="$co"></textarea>
    としているのですが、どこかに問題があるのでしょうか。

    尚、登録モードで<textarea>に入力し、変更モードで一行表示とすると、変更時のコメント欄にコメントが表示されますが、改行部分が<br>と表示され、その文字列がそのままコメントに載るという状態になってしまいました。

    #トピずれ気味で申し訳ありません
引用返信 [メール受信/OFF] 削除キー/
■9641 / inTopicNo.6)  Re[5]: EasyRINGの登録項目追加
□投稿者/ りゅういち -(2004/08/04(Wed) 00:58:21)
http://www.cj-c.com/
    No9639に返信(ゆずさんの記事)
    > すると、ズレは解消されたようなのですが、変更モードのコメント記入欄が真っ白で、何も記述されていない状態で表示されます。
    > そのまま変更ボタンを押すと、コメントなしの状態で一覧に載ってしまいます。
    > > 718行目を<textarea rows=3 cols=50 wrap=soft maxlength=$max_c name=cc value="$co"></textarea>
    > としているのですが、どこかに問題があるのでしょうか。

    <textarea>の場合は
    <textarea ...>ここにvalue情報を入れるので $co をここに入れる</textarea>

    > > 尚、登録モードで<textarea>に入力し、変更モードで一行表示とすると、変更時のコメント欄にコメントが表示されますが、改行部分が<br>と表示され、その文字列がそのままコメントに載るという状態になってしまいました。

    これは、逆の手続きをしなければなりません。
    $co=~ s/<br>/\n/g;
    を、表示する前の部分に適宜挿入してください。
引用返信 [メール受信/OFF] 削除キー/
■9643 / inTopicNo.7)  EasyRING変更モードのコメント記入欄
□投稿者/ ゆず -(2004/08/04(Wed) 20:39:47)
    いつもお世話になっております。

    No9641に返信(りゅういちさんの記事)
    > > <textarea>の場合は
    > <textarea ...>ここにvalue情報を入れるので $co をここに入れる</textarea>
    教えて頂いた通りに直しましたところ、変更モードのtextareaにコメントが表示されました。
    ありがとうございます。

    > >>> 尚、登録モードで<textarea>に入力し、変更モードで一行表示とすると、変更時のコメント欄にコメントが表示されますが、改行部分が<br>と表示され、その文字列がそのままコメントに載るという状態になってしまいました。
    > > これは、逆の手続きをしなければなりません。
    > $co=~ s/<br>/\n/g;
    > を、表示する前の部分に適宜挿入してください。
    こちらも改行コードを解除することができました。ありがとうございました。

    それで、折角ですので変更モードでも<textarea>を用い、修正させようとしたのですが、そうするとやはり改行部分のデータがずれていってしまいました。
    今まで教えていただいたことを参考に、今度はForm{'cc'}の改行を有効にさせるのかと思ったのですが、どの部分に記述したらよろしいでしょうか。
    見当違いでしたら申し訳ありません。
引用返信 [メール受信/OFF] 削除キー/
■9647 / inTopicNo.8)  Re[7]: EasyRING変更モードのコメント記入欄
□投稿者/ りゅういち -(2004/08/06(Fri) 12:25:09)
http://www.cj-c.com/
    No9643に返信(ゆずさんの記事)
    > > それで、折角ですので変更モードでも<textarea>を用い、修正させようとしたのですが、そうするとやはり改行部分のデータがずれていってしまいました。
    > 今まで教えていただいたことを参考に、今度はForm{'cc'}の改行を有効にさせるのかと思ったのですが、どの部分に記述したらよろしいでしょうか。

    ゆずさんのお考えの通り $FORM{'cc'} の改行をどうにかすればOKです。
    よって、登録内容置換の部分に
    $FORM{'cc'}=~ s/\r\n|\n|\r/<br>/g;
    を挿入すればOKだと思います。
引用返信 [メール受信/OFF] 削除キー/
■9650 / inTopicNo.9)  Re[8]: EasyRING変更モードのコメント記入欄
□投稿者/ ゆず -(2004/08/07(Sat) 01:03:37)
    いつもお世話になっております。

    No9647に返信(りゅういちさんの記事)
    > よって、登録内容置換の部分に
    > $FORM{'cc'}=~ s/\r\n|\n|\r/<br>/g;
    > を挿入すればOKだと思います。

    793行目の上に挿入してみたところ、修正変更してもズレることがなくなりました。
    これでコメント欄を<textarea>で使うことが出来るようになり、当初希望していた形で動かすことができるようになりました!

    りゅういちさんには、根気良く丁寧なアドバイスでお付き合いいただき、大変感謝しております。
    これから実運用に向けて、細かい部分を触っていく予定ですが、大切に使って行きます。
    本当にありがとうございました m(_ _)m
解決済み!
引用返信 [メール受信/OFF] 削除キー/



トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

Pass/

HOME HELP 新着記事 トピック表示 検索 過去ログ

- Child Tree -