アップロードしたファイルをクリックした時の動作について

「まったく何も分からない・・・」そんなユーザーさんの為のフォーラムです。どんなご質問でもお気軽にどうぞ。
返信
tomato
記事: 4
登録日時: 2009年8月31日(月) 16:01

アップロードしたファイルをクリックした時の動作について

投稿記事 by tomato » 2009年8月31日(月) 17:47

初めまして。

ファイルをアップロードし、アップした物にリンクを張ってクリックすると保存ダイアログが出てしまうのですが、これをそのままブラウザ上で開く事はファイルに直リン(?)する以外に方法はあるのでしょうか?
例えばPDFファイルを開こうと思ってもブラウザ上で開くのではなく、保存ダイアログが出てしまい一旦保存してからでないとPDFファイルを見ることはできませんが、これをそのままブラウザ上で表示する、といったことはできるのでしょうか?

とりあえずはentryIDとfileIDを取得してアップしたファイルのパスをそのままリンクしてブラウザ上で表示するようにしているのですが、CMSDにその様な機能があればそちらを使いたいと思い質問しました。
もしリファレンスマニュアルに記載されていることでしたら申し訳ないです。

よろしくお願いします。

mojira
パワーユーザー
記事: 34
登録日時: 2007年8月08日(水) 11:41

投稿記事 by mojira » 2009年9月06日(日) 14:32

2005年のフォーラムに同じような質問がありましたが、検索できなかったので、内容を転載させて
頂きます。

通常は以下のような記述でデザイン定義をしますが。

コード: 全て選択

<a href="{file1/@src}"><xsl:value-of select="file1/@org" /></a>

コード: 全て選択

<a href="cmsdesigner/data/entry/myentry1/{file1/@src}"><xsl:value-of select="file1/@org" /></a>
このようにすることで、CMSDが管理しているファイルデータに直接リンクが
貼られる為、PDFでもHTMLでも通常通り開くことができるようになります。
 ただ、この方法は今後CMSDの仕様変更で動作しなくなる恐れもあり、
推奨致しません。

との事です。

ではでは

tomato
記事: 4
登録日時: 2009年8月31日(月) 16:01

投稿記事 by tomato » 2009年9月07日(月) 15:29

お返事ありがとうございます。

やはりファイルに直接リンクするしかないのですね。

本来は私が検索をしっかりすべきところなのに・・・
わざわざ過去レスまで探していただきありがとうございました。

一応、私が書いたコードも載せておきます。
ど素人で汚いコードですが・・・。

コード: 全て選択

<a>
	<xsl:attribute name="href">
		<xsl:value-of select="concat($url, @id, '.', file1/@fileid, '.', $extension)" />
	</xsl:attribute>
	<xsl:attribute name="target">
		_blank
	</xsl:attribute>
	<img src="../{img3}&w=570&h=210" alt="{img3/@alt}" border="0" class="xxx" />
</a>
と、mojiraさんのソースコードとを見比べいて気づいたのですが、@srcという属性(?)がxmlファイルに保存されていたのですね・・・。
わざわざentryIDとfieldIDと拡張子を別個に取得する必要はなかったのですね;

とても勉強になりました。ありがとうございました。

返信