回答編集履歴

1

追記

2020/03/08 06:05

投稿

kyoya0819
kyoya0819

スコア10429

test CHANGED
@@ -1 +1,91 @@
1
1
  色々方法は考えられますが、確実なのはAjaxでPHPにデータを渡してリンク先のファイルの判別をすることではないでしょうか?
2
+
3
+
4
+
5
+ ### 書いてみたけど実際には使わないでください。
6
+
7
+
8
+
9
+ あくまでも、こんな感じの処理かな。というふうに書いてます。
10
+
11
+ ```HTML
12
+
13
+
14
+
15
+ <!DOCTYPE html>
16
+
17
+ <meta charset=UTF-8>
18
+
19
+ <input type=text id=url name=url>
20
+
21
+ <button id=ajax>検証</button>
22
+
23
+ <div id=result></div>
24
+
25
+ <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
26
+
27
+ <script>
28
+
29
+ $(function(){
30
+
31
+ $('#ajax').on('click',function(){
32
+
33
+ $.ajax({
34
+
35
+ url:'', //PHPのファイル名を入れてください
36
+
37
+ type:'POST',
38
+
39
+ data:{
40
+
41
+ 'url':$('#url').val(),
42
+
43
+ }
44
+
45
+ }).done( (data) => {
46
+
47
+ $('#result').html(data);
48
+
49
+ console.log(data);
50
+
51
+ }).fail( (data) => {
52
+
53
+ alert('ERROR!');
54
+
55
+ });
56
+
57
+ });
58
+
59
+ });
60
+
61
+ </script>
62
+
63
+
64
+
65
+ ```
66
+
67
+ ```PHP
68
+
69
+
70
+
71
+ <?php
72
+
73
+ if($_POST['url']){
74
+
75
+ $response = get_headers($_POST['url'], 1);
76
+
77
+ if(strpos($response["Content-Type"],'image') !== false){
78
+
79
+ echo '<img src=',$_POST['url'],'>';
80
+
81
+ }else{
82
+
83
+ echo '<a href=',$_POST['url'],'>サイト</a>';;
84
+
85
+ }
86
+
87
+ }
88
+
89
+
90
+
91
+ ```