質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Laravel

LaravelとはTaylor Otwellによって開発された、オープンソースなPHPフレームワークです。Laravelはシンプルで表現的なシンタックスを持ち合わせており、ウェブアプリケーション開発の手助けをしてくれます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Laravel 5

Laravel 5は、PHPフレームワークLaravelの最新バージョンで、2014年11月に発表予定です。ディレクトリ構造がが現行版より大幅に変更されるほか、メソッドインジェクションやFormRequestの利用が可能になります。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

Q&A

解決済

3回答

1121閲覧

laravel C直下に存在するフォルダの中身からpdfファイルを読み込みhtmlで表示

cofee

総合スコア44

Laravel

LaravelとはTaylor Otwellによって開発された、オープンソースなPHPフレームワークです。Laravelはシンプルで表現的なシンタックスを持ち合わせており、ウェブアプリケーション開発の手助けをしてくれます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Laravel 5

Laravel 5は、PHPフレームワークLaravelの最新バージョンで、2014年11月に発表予定です。ディレクトリ構造がが現行版より大幅に変更されるほか、メソッドインジェクションやFormRequestの利用が可能になります。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

0グッド

0クリップ

投稿2018/03/20 06:10

編集2018/03/20 09:12

いつもお世話になっております。
C直下に保存しているファイルの内容が合っているか確認する処理を作成しています。
そこでタイトルのようなことを行いたいのですが、上手くできません。

php

1$name = $request->input('name'); 2 $filepath = "C:/$name"; 3 $file=basename("$filepath/1.pdf");

実現したいことは、
リンクとして用意してクリックでpdfが展開される
ようなことがしたいです。

実際にhtmlでリンクをクリックしても展開されず、
chromeの開発ツールで見てみると
Not allowed to load local resource: (パス名)
とエラーが出てたのですが、パス名の箇所をクリックするとpdfが展開できました。

上手く表示するにはどうしたらいいのでしょうか?
よろしくお願いします。

html

1<a href="file:///C:/佐藤/{{$file}}" target="_blank"></a>

以下のリンクのpdfを開くのような形で行いたいです。
同じようにやっているのですがクリックしても何も反応がありませんでした。
リンク内容

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

y_waiwai

2018/03/20 07:20

Viewとはなにをするモノですか?PDF閲覧ソフトのたぐい?
cofee

2018/03/20 07:21

普通のhtmlになります。
y_waiwai

2018/03/20 07:22

えーっと、ようするに、PDFをHTMLに展開したいって話ですか?
cofee

2018/03/20 07:27

html上にpdfをサムネイル化して小さく表示する or リンクとして用意してクリックでpdf展開 がしたいです。
y_waiwai

2018/03/20 07:28

それだと話が全く違ってきますねー
y_waiwai

2018/03/20 07:34

その、こうなってほしいというのを質問文に追記のかたちで追加しておいてください。今のままではそれがわかりませんねー
cofee

2018/03/20 07:49

質問編集しました。よろしくお願いします。
guest

回答3

0

質問履歴からおそらくlaravelで開発されているかと思いますが、laravelを普通に使っているのであればドキュメントルートをlaravelのディレクトリ、もしくはpublicに設定しているはずです。
つまり非公開のディレクトリにpdfを置いているので表示されないというのが現在の状況ではないでしょうか?

対処方法はいくつかあって、
・pdfを public以下に配置する
・apacheの設定でaliasを使ってpdfが置いてある場所を参照させる
・phpでpdfファイルを読み込んでから出力をする

などです。上2つの場合はlaravelの都合上URLを.htaccessで書き換えているはずなのでpdfにアクセスされた場合を対象外にしてください。ちなみにaタグのhrefに指定するだけだとクリックしたときの挙動はアクセス者の環境依存です。必ずブラウザ内で閲覧させたいのであればPDF.jsなどを検討して下さい。

投稿2018/03/21 04:32

nullbot

総合スコア910

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2018/03/21 05:07

この佐藤さんはダウンロードしたPDFの整合性をWEBアプリで確認したいようだ
nullbot

2018/03/21 05:20

うーむ。エスパー力が足りませんでしたか・・・。
退会済みユーザー

退会済みユーザー

2018/03/21 05:32

まあ エスパァ力だけじゃなく 注視力もないね (タイトルに laravel、タグに laravel)
nullbot

2018/03/21 05:57

か、花粉症で目が・・・(汗
guest

0

そのリンク内容のどれの話?

いずれにしろ、そこに書いてあるんだから、それ見て記述すればいけるんじゃ。

投稿2018/03/20 08:57

y_waiwai

総合スコア87774

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

cofee

2018/03/20 09:01

「PDFを」開くと書いてある箇所なのですが、同じようにやってもできませんでした。 また、詳しく記載されていなかったのでここで質問させて頂きました。
y_waiwai

2018/03/20 09:07

できないとはどういうふうになったの? その出来ないのを説明してもらわないとこっちも説明できないぞ #なんかはなしがころころかわってるし
cofee

2018/03/20 09:13

追記しました。 よろしければお願い致します。
y_waiwai

2018/03/20 09:16

見た目は行けてるんだったら、 > <a href="file/test.pdf#page=1 target="_blank""> この記述のファイル名だけあなたのものに変えればいけるんでは。
cofee

2018/03/20 09:22

自分のファイル名に変更して試した結果できなかったので質問させていただいたのです。。。
y_waiwai

2018/03/20 09:26

ならそーゆーふーにきかないと答えれないってはなしで。 あなたがなんか間違ってる気がするが、それがなにかはわからない。
退会済みユーザー

退会済みユーザー

2018/03/20 11:22

ちなみにリモートにあるfileディレクトリのサンプルとファイルプロトコルを誤認してる質問者がいる気がしてならないのだよ、ワトスンくん
guest

0

ベストアンサー

/をエスケープをする必要があるのではないでしょうか。
最終的なパスが正しいかエラー直前でデバッグしてみるとよいと思います。
"C://$name";
"$filepath//1.pdf"

投稿2018/03/20 07:03

Kaninippa

総合スコア56

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

cofee

2018/03/20 07:12

回答ありがとうございます。ファイルは取得できたのですが、新たな疑問が出てきたのでよろしければお願いします。
Kaninippa

2018/03/20 07:21

詳しくはないのですが属性が正しくないように見えます。 <object data="file:///C:/佐藤/{{$file}}" type="application/pdf" ></object>
cofee

2018/03/20 07:49

すみません。そちらの方法でもダメでした。。。
Kaninippa

2018/03/20 08:00

即席でやってみましたが下記のようにしてPDF埋め込みができました。 <object data="file:C:\TradeBalance.pdf" type="application/pdf" ></object>
cofee

2018/03/20 08:05

ありがとうございます。 同じように試したのですが自分の環境ではだめでした。
Kaninippa

2018/03/20 08:13

ページを右クリック→ソースを表示 でみえるソースが下記のようになればPDFが表示されると思います。 <object data="file:C:/佐藤/ファイル名" type="application/pdf" ></object> C直下に佐藤という名前のフォルダがあり、その中にPDFが置いてある前提です。
cofee

2018/03/20 08:16

file:C:\佐藤\1.pdf" となっていて\マークのままになっていました。
退会済みユーザー

退会済みユーザー

2018/03/20 08:42

クロームのセキュリティレベルを下げないとブラウザ上じゃ表示できないんじゃ?
cofee

2018/03/20 08:54

そうなんですか。。 セキュリティレベルを下げるのはまずいですね。。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問