• ベストアンサー

HPの小説で

HPで小説をのせているのですが、主人公の名前などを 読んでくださる人が自由に自分の名前に変えたりできる ようにしたいと思っています。 ですが、どんな仕組みでみなさんしておられるのかわか りません(汗 どうかご存知の方おられましたら教えてください

質問者が選んだベストアンサー

  • ベストアンサー
回答No.3

#1です。 とりあえず作ってみました。 もしCGIで実装する際にご使用ください。 "read.cgi"------------------------- #!/usr/local/bin/perl -T print "Content-type: text/html\n"; print "\n"; my %IN; my $filename; my $dat_folder = './files/';#.datファイルの格納場所 #read.cgi?file=filename&key=value #と読み出します、filenameに.datは必要ありません。置き換え文字はいくつでも設定可能です。 my $str = $ENV{'QUERY_STRING'}; #&で切る my @temp = split(/&/, $str); foreach my $temp (@temp) { #=で切る my($key,$value)=split(/=/,$temp); #デコードします $value =~ tr/+/ /; $value =~ s/%([0-9a-fA-F][0-9a-fA-F])/pack("C", hex($1))/eg; $key =~ tr/+/ /; if ($key eq 'file'){$filename = $value;next;} $IN{'%'.$key.'%'} = $value; } #汚染CHECK $filename =~ /(\w+)/; $filename = $1; unless (-e $dat_folder.$filename.'.dat'){ #ファイルが存在しない場合 print <<"EOM"; <HTML> <HEAD> <TITLE>error</TITLE> </HEAD> <BODY> 無効なファイル名を設定しました。<br> $filename.dat<br> は存在しません<br> </BODY> </HTML> EOM exit 0; } open (FH,'<',$dat_folder.$filename.'.dat'); while(<FH>){ foreach $temp (keys %IN){ s/([^%])$temp|^$temp/$1$IN{$temp}/g; } s/%%/%/g; print;} close(FH); ----------------------------------- 使用する際は、read.cgiと同じフォルダにfilesというフォルダをつくり、html文書の拡張子を.datにして保存します。 read.cgi files |-file1.dat |-file2.dat 読み出す際はread.cgi?file=filename&key1=value1&key2=value2 のようにURLを入れます。 filenameは上記のfile1、file2に相当するファイル名 文章中に%key1%や%key2%を書き込むとvalue1、value2としてHTML文書が作成されます。 %%と書くと%として出力されます。 valueに日本語など2byte文字を設定するときは%nn(nは0-9a-f)にエンコードする必要がありますが、HTMLタグの<Form>を使い送信すれば自動的に%nnにエンコードしてくれます。日本語コード(Shift-Jis,Jis,EUCなど)を設定しないと文字化けの可能性もあります。

その他の回答 (4)

  • riari
  • ベストアンサー率27% (8/29)
回答No.5

あ、さっきのつけたしなんですが、 タグをコピーして、ちょっと変えたりしながら使ってくださいね。 環境によっては使えない人もいるかもしれませんが、 CGIを使えない人はjavascriptが便利です!

tunamayo
質問者

お礼

こんなタグまで打ってくださってありがとうございます!申し訳ないです!! お知らせするのが大変遅くなってしまいまして...わたしの利用させていただいているサーバはCGIが使えないのです(汗)javascriptをつかうことに致しました。わざわざ本当にありがとうございました! お心遣い感謝します!

tunamayo
質問者

補足

お2人へのお礼をまとめさせていただきました。

  • riari
  • ベストアンサー率27% (8/29)
回答No.4

タグだとこんな感じだと・・・ javascriptを使用かな? ------------------------------------------- 二つの名前の場合(苗字と名前とか) <head>~</head>に <script type="text/javascript"> <!-- chip = prompt("名前を教えて下さい。",""); if(chip == null || chip == ""){ chip = "名前未入力時に呼ぶ名前";} chip1 = prompt("名前2を教えて下さい。",""); if(chip1 == null || chip1 == ""){ chip1 = "名前2を未入力時に呼ぶ名前する";} --> </script> 名前1を表示させたい所に (<body>~</body>で) <script type="text/javascript"> <!-- document.write(chip); --> </script> 名前2を表示させたい所に (<body>~</body>で) <script type="text/javascript"> <!-- document.write(chip1); // --> </script> ------------------------------------------- 一つだけの名前を使用のとき (<head>~</head>で) <script type="text/javascript"> <!-- chip = prompt("お名前を記入してください",""); if(chip == null || chip == ""){ chip = "名前未入力時に呼ぶ名前"} --> </script> 名前を呼ばせたい場所に <script type="text/javascript"> <!-- document.write(chip); --> </script> こんな風にいれるだけでいいんじゃないでしょうか?

  • lc_akdk
  • ベストアンサー率13% (3/22)
回答No.2

所謂ドリーム小説でしょうか? でしたらDream Makerを使っている方が多いように思います。 http://www.babu.jp/~raika/Dream/ こちらでしたらレンタルですので、CGIが使えなくても使えると思います。

参考URL:
http://www.babu.jp/~raika/Dream/
tunamayo
質問者

お礼

ドリーム小説といったらなにか漫画のキャラでつくる小説のことでしょうか(今調べたのでよくわからなくて;)オリジナル小説なのですが、このサイト様のいいですね!とても勉強になりました。教えてくださってありがとうございました!!

回答No.1

動的に、HTMLを作成する何らかのプログラムを使用することになると思います。 たとえばCGIの一つであるPerlをつかうとしたら 文章本文が、text1.datだとして、この中で主人公の名前を%name%と書いておくとします。 あとは、Perlにファイルがtext1ということと名前を送って、書き換えてもらえばいいのです。 tunamayo様の環境でCGIが使えるようなら、私がCGIを作成することも可能ですが、それなりの手間が掛かりますゆえに、使えるようなら補足をください。

関連するQ&A

  • 小説の書けるHP

    携帯小説って今流行ってますよね。 パソコンで同じように自作の小説を書けるような場はありますか? 自分でも調べて見ましたが、しっくりいくものがなくて。 ゆっくりしか更新できないけど書いてみたいのですが、自分のHP立ち上げた方が自由がきくのでしょうか? よい場を知ってる方がいましたら教えてください。

  • ホームページ作成で「小説」にドリーム版を使用したい。

    よろしくお願いします。 ホームページを作成中です。「自作小説」の主人公の名前を読む人が自由に変えられるドリーム版を作りたいのです。 そこでいろいろネットで検索したら「ドリームメーカー」さんのHPに行き着きました。非常に判りやすく助かりましたが、私の小説画面のTopに、 {ドリーム版 主人公の名前を変えたいときはここを押してください。}というリンクをつくり、そこを読者が押すと {名前は何にしますか?}と表示され、そこに名前をいれると、新しいページで小説が開くように設定したいのです。 もちろん、なにも押さなければ、名前はそのまま表示されます。 どう設定すればよろしいでしょうか?よろしくお願いします。

  • 夢小説について

    夢小説について、教えてください どういった仕組みで名前が変換できるのですか? また、自分が入力した名前が他の人に知られることはありますか?

  • 携帯HPでの小説フリー配布

    初めまして。 私は携帯のHPで小説を書いているのですが、この度フリー配布を企画しようと思っています。 そこで質問なのですが携帯HPでの小説フリー配布にはどのような方法があるのでしょうか? フリーなので自由にお持ち帰り、HP転載をして頂きたいのです。 なのでメールでの配布はあまり適していません。 空メールも考えたのですが、私の小説はたいてい4000字以上の内容になってしまうので容量的に難しいと思います。 PCでのコピペが一番楽ですがお持ちでない方は不可能になってしまいます。 私には以上の方法しか思いつきませんでした。 ほかに方法をご存知の方、いらっしゃいましたら回答をお願い致します。

  • こんな小説、ありませんか?

    中々これだ!という物語が見つかりません。そこで質問なのですが ・年齢が若めで冷静な男の主人公 ・世界観がビルまみれな都会 ・読んでいて不快にならない(汚い表現など) ・主人公にクローズアップした物語 これより下の項目に当てはまっていると凄く良いです。 ・近未来で感情の薄れた人間達 ・その世界でも主人公だけが感情を普通に持っている特殊な存在 ・「不自由のない世界だけど、信じられるのは自分と、そして君だけ」 という物語(”君”というのは登場人物でもいいのですが読者に対す るメッセージだと更に良いです) ・貧困などでは無いけれど、こんな世界じゃ精神的にとてもやっていけ ないよという物語(虐待、いじめなどは微妙です)現代人が感じてる  感情を描いてると良いです ・そんな世界に気づきながらも生きていく主人公 どんな小説が読みたいか、なんとなく伝わったでしょうか? 露骨にではなく現代批判をテーマにしている小説が良いです。 主人公があまり人に頼らない性格だと良いです。(悪い性格ではなく) 下の項目に一つでも当てはまった小説をご存知の方、是非紹介をお願いします。 よろしくお願いします。

  • 夢小説が読めるサイトはありますか?

    主人公(夢主)の名前が自由に変更できる夢小説サイトはありますか? 私が知っている名前の変更が自由にできるサイトは占いツクールとドリーム小説です。 他にもありますか?

  • 夢小説HPを作りたい!!!

    いつもお世話になっています、今回は夢小説を公開するHPを作成する方法を質問させて頂きたいのです。 私はブログをやっているのですが、夢小説専用のHPを作って下さいと・・・読者様からのご要望があったのです。 ブログはアメーバブログで・・・タグ等の知識が無くても記事が書けるという簡単さと、無料という所に惹かれたのです。 私はPCに対する知識がほとんどありません。 HTMLなどもかじった程度です;; アメーバブログのように、タグ等の難しい操作をしなくても夢小説が載せられるHP作成サイトはありませんでしょうか?? 重ね重ねの質問、申し訳ありませんが・・・。 名前変換機能が元々付いているHP作成サイトというものがあれば、教えて頂きたいです。 本当に、私の貧弱な頭でも分かる様な物でお願いします(>_<) 知識が乏しいので、何かアドバイス等もして頂けると嬉しいです。 皆様、回答よろしくお願い致します。

  • HPに自作の小説を載せるには?

    gooで無料HPを作っているのですが、 HPに自分で書いた小説を載せて見てもらうには どうしたらいいんでしょうか??

  • ドリーム小説?

    この前友達が、自分の名前を入力すると、その名前が主人公で話が進んでいく『ドリーム小説』??(不確か)と言うものをやっていました。自分でサイトを探してみましたが、一つも出てきませんでした…。みなさんのオススメサイトがあれば紹介していただきたいです。お願いします。

  • HP作成募集【個人HPの作成】可愛い系【イラスト小説のオリサイト】

    玲です 自身のHPを作ろう!! となったわけですが よくわかんないんですよね仕組みが・・・ そんなのは自分で調べろとか だったらやらなくてよくね?とか 文句はあると思いますがそれなら素通りしてください それでも見てくれるやさしい方は続きをどうぞ^^ イラスト、音楽、小説などなど・・ 多彩なHPにしたいです。 サーバーはPC版はあとでお知らせします 携帯版はペップスです かなり大雑把な内容でわけわからないと思いますが、 少しでもいいかなと思った方は返答してください よろしくお願いします