引用機能とスーパーPREの兼ね合いテスト RSSフィード
 

リスト表示 | ツリー表示
ツリー全部最新の50件

1nobodynobody   引用機能とスーパーPREの兼ね合いテスト

返信の引用部にスーパーPREが含まれる場合の挙動をテストします。

このお題はb:kamiokaさんによるものです。ブックマークのコメント欄から引用しますと:

[G]掲示板の引用について。あれ、引用の引用とか、スーパーPREとか中に含んでも大丈夫だっけ。試してないけど』

はてなブックマーク 422603番

とのこと。ご提案、ありがとうございます。

返信2005/07/07 21:28:42

2nobodynobody  

スレッド削除ボタン部分のHTMLソースをスーパーPREで書いてみる。

<div class="day">
	<h2><span class="title">スレッドの削除</span></h2>
	<div class="body">
		<form action="/bbs" method="post">
		<input value="delete" name="mode" type="hidden">
		<input value="n" name="tid" type="hidden">
			<!-- ↑value部分、わざと値を n にしてある。この thread の id は6 となる。-->
		<input type="submit" value="スレッドの削除" onClick="javascript:return confirm('このスレッドを削除します。よろしいですか?')">
	  </form>
		</form>
	</div>
</div>

こんな感じ。で、当ポストに対して「返信」をすると、上のソース部分が入力部分に(はてな記法の>> <<でくくったかたちで)「引用」されたかたちとなる。で、そのまま「この内容を書き込む」とすると、スーパーPRE部分のHTMLソースが解釈され、レス部分の中にボタンが表示されてしまう模様。(ただし、JavaScript部分 -- つまり上の例でいうとonClick()の挙動を記述した部分 -- はさすがに削除されるみたい)。

ものはためし。やってみます。

返信2005/07/07 21:38:39

3nobodynobody   2  Re:

スレッド削除ボタン部分のHTMLソースをスーパーPREで書いてみる。

スレッドの削除

こんな感じ。で、当ポストに対して「返信」をすると、上のソース部分が入力部分に(はてな記法の>> <<でくくったかたちで)「引用」されたかたちとなる。で、そのまま「この内容を書き込む」とすると、スーパーPRE部分のHTMLソースが解釈され、レス部分の中にボタンが表示されてしまう模様。(ただし、JavaScript部分 -- つまり上の例でいうとonClick()の挙動を記述した部分 -- はさすがに削除されるみたい)。

ものはためし。やってみます。

返信2005/07/07 21:38:59

4nobodynobody   ↑について

>>3は、2の「返信」部分をクリックし、投稿欄に何の手もくわえずそのまま投稿してみたものです。ボタンが表示されてしまっています。ただし、JavaScript部分は消去済みとなっています。(同様に HTML の comment 部分も中身が消されています)。ではでは。

返信2005/07/07 21:43:17

5nobodynobody   実体参照を使って書いた場合のテスト

世話人ユーザの画面にはスレッドの削除ボタンがあります。まずこの部分のソースをスーパーPREで記載してみます。(こんどはHTMLソースの部分を実体参照を用いて書いています。HTMLコメント部は略しました)。

返信2005/07/07 21:49:36

6nobodynobody   5  Re:実体参照を使って書いた場合のテスト

世話人ユーザの画面にはスレッドの削除ボタンがあります。まずこの部分のソースをスーパーPREで記載してみます。(こんどはHTMLソースの部分を実体参照を用いて書いています。HTMLコメント部は略しました)。

スレッドの削除

<||

さてどうなるか。

返信2005/07/07 21:50:50

7nobodynobody   他のテスト

CSRF関連。

<form action="http://i.hatena.ne.jp/idealist" method="POST">
	<input type="hidden" name="mode" value="enter">
	<input type="hidden" name="did" value="10">
	<input type="hidden" name="content" value="CSRF対策">

	<input type="hidden" name="quantity" value="10">
	<input type="button" onclick="javascript:history.back()" value="戻る">
	<input type="submit" value="この内容で登録する">
</form>

はたして上のようなソースを書いてボタンを表示させた場合、それを押すだけで「はてなアイデア」 (のはてなアイデアカテゴリ)に「CSRF対策」というアイデアが投稿されるものかどうか。(上の例ではアイデアポイントとしては10あいぽんを指定してある)

返信2005/07/09 13:09:08

8nobodynobody   7  Re:他のテスト

CSRF関連。

少しだけソースを修正してある。「戻る」ボタンはダミーで、「この内容で登録する」ボタンにはJavaScriptで確認用ダイアログを表示するようなコードを追加した。さて、はてなアイデアを使える状態の利用者さんが「はてな」にログインした状態で、上の「この内容を登録」を押した場合、「はてなアイデア」 (のはてなアイデアカテゴリ)に「CSRF対策」というアイデアが投稿されるものかどうか。(アイデアポイントの指定値は10あいぽん)。

参考のため、ソースを書いておくけれど、鵜呑みにせず、正確なところ実際のソースで確認されたい。

<form action="/idealist" method="POST">
	<input type="hidden" name="mode" value="enter">
	<input type="hidden" name="did" value="10">
	<input type="hidden" name="content" value="CSRF対策">

	<input type="hidden" name="quantity" value="10">
	<input type="button" onclick="javascript:return confirm('戻るボタンの実装は省きました。ご了承ください。')" value="戻る">
	<input type="submit" value="この内容で登録する" onClick="javascript:return confirm('アイデアを投稿します。よろしいですか?')">
</form>

ではでは。

返信2005/07/09 13:18:41

9nobodynobody   8  Re:Re:他のテスト

追記。↑のボタンふたつ。JavaScript部分は"はてなBBS"によって削られてました。

返信2005/07/09 13:20:23

10kamiokakamioka   9  Re:Re:Re:他のテスト

追記。↑のボタンふたつ。JavaScript部分は"はてなBBS"によって削られてました。

ありがとうございます!

返信2005/07/09 15:18:58