質問編集履歴
7
エラー表示追記
title
CHANGED
File without changes
|
body
CHANGED
@@ -31,6 +31,11 @@
|
|
31
31
|
|
32
32
|
$_SERVER['HTTP_HOST']と$program[ 'url' ]に一致するURLがあれば、urlとリンクテキストを出力、一致しなければ target="_blank"が記載されたものが出力としたい。
|
33
33
|
上記の修正後コードでは、エラーはでていませんが、すべてにtarget="_blank"が付与されてしまいます。
|
34
|
+
→エラーでておりました。
|
35
|
+
```
|
36
|
+
<?php elseif (preg_match($_SERVER['HTTP_HOST'],$day_program[ 'url' ])) : ?>
|
37
|
+
```
|
38
|
+
がエラーになっています。
|
34
39
|
|
35
40
|
###補足情報(言語/FW/ツール等のバージョンなど)
|
36
41
|
|
6
コードで囲む
title
CHANGED
File without changes
|
body
CHANGED
@@ -17,6 +17,7 @@
|
|
17
17
|
```
|
18
18
|
|
19
19
|
修正後
|
20
|
+
```
|
20
21
|
<?php if ( $program[ 'url' ] == '') : ?>
|
21
22
|
<div>リンクテキスト</div>
|
22
23
|
<?php elseif (preg_match($_SERVER['HTTP_HOST'],$program[ 'url' ])) : ?>
|
@@ -24,6 +25,7 @@
|
|
24
25
|
<?php else :?>
|
25
26
|
<div><a href="<?=$program[ 'url' ]?>" target="_blank">リンクテキスト</a></div>
|
26
27
|
<?php endif; ?>
|
28
|
+
```
|
27
29
|
|
28
30
|
###試したこと
|
29
31
|
|
5
コードとやりたいことを修正
title
CHANGED
File without changes
|
body
CHANGED
@@ -16,11 +16,19 @@
|
|
16
16
|
<?php endif; ?>
|
17
17
|
```
|
18
18
|
|
19
|
+
修正後
|
20
|
+
<?php if ( $program[ 'url' ] == '') : ?>
|
21
|
+
<div>リンクテキスト</div>
|
22
|
+
<?php elseif (preg_match($_SERVER['HTTP_HOST'],$program[ 'url' ])) : ?>
|
23
|
+
<div><a href="<?=$program[ 'url' ]?>">リンクテキスト</a></div>
|
24
|
+
<?php else :?>
|
25
|
+
<div><a href="<?=$program[ 'url' ]?>" target="_blank">リンクテキスト</a></div>
|
26
|
+
<?php endif; ?>
|
27
|
+
|
19
28
|
###試したこと
|
20
29
|
|
21
|
-
$_SERVER['HTTP_HOST']
|
30
|
+
$_SERVER['HTTP_HOST']と$program[ 'url' ]に一致するURLがあれば、urlとリンクテキストを出力、一致しなければ target="_blank"が記載されたものが出力としたい。
|
22
|
-
上記コードで
|
31
|
+
上記の修正後コードでは、エラーはでていませんが、すべてにtarget="_blank"が付与されてしまいます。
|
23
|
-
間違いがあると思うのですが、発見できません。
|
24
32
|
|
25
33
|
###補足情報(言語/FW/ツール等のバージョンなど)
|
26
34
|
|
4
分岐部分を修正
title
CHANGED
File without changes
|
body
CHANGED
@@ -9,7 +9,7 @@
|
|
9
9
|
```php
|
10
10
|
<?php if ( $program[ 'url' ] == '') : ?>
|
11
11
|
<div>リンクテキスト</div>
|
12
|
-
<?php
|
12
|
+
<?php elseif (strstr($_SERVER['HTTP_HOST'],'○○○○○○○○.com/')) : ?>
|
13
13
|
<div><a href="<?=$program[ 'url' ]?>">リンクテキスト</a></div>
|
14
14
|
<?php else :?>
|
15
15
|
<div><a href="<?=$program[ 'url' ]?>" target="_blank">リンクテキスト</a></div>
|
3
phpで処理するコードに修正
title
CHANGED
File without changes
|
body
CHANGED
@@ -1,48 +1,27 @@
|
|
1
1
|
###前提・実現したいこと
|
2
2
|
|
3
3
|
|
4
|
-
|
4
|
+
$_SERVER['HTTP_HOST']で現在のドメイン名を取得して、指定したドメイン名と同じ場合で分岐させたい。
|
5
5
|
|
6
|
-
jsに処理を記載して、php内に呼び出したいです。
|
7
6
|
|
8
|
-
|
9
|
-
|
10
7
|
###該当のソースコード
|
11
8
|
|
12
|
-
.js
|
13
|
-
|
14
|
-
```javascript
|
15
|
-
function TargetBlank() {
|
16
|
-
$(window).bind("load", function(){
|
17
|
-
var hostname = window.location.hostname ;
|
18
|
-
if(document.URL.match(/hostname/)) {
|
19
|
-
}
|
20
|
-
else{
|
21
|
-
document.write('target="_blank"')
|
22
|
-
});
|
23
|
-
}
|
24
|
-
```
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
.php
|
30
|
-
|
31
9
|
```php
|
32
10
|
<?php if ( $program[ 'url' ] == '') : ?>
|
11
|
+
<div>リンクテキスト</div>
|
12
|
+
<?php else if ($_SERVER['HTTP_HOST']=='https://指定したドメイン名/') : ?>
|
13
|
+
<div><a href="<?=$program[ 'url' ]?>">リンクテキスト</a></div>
|
33
|
-
<?php else :
|
14
|
+
<?php else :?>
|
34
|
-
<div><a href="<?=$program[ 'url' ]?>"
|
15
|
+
<div><a href="<?=$program[ 'url' ]?>" target="_blank">リンクテキスト</a></div>
|
35
16
|
<?php endif; ?>
|
36
17
|
```
|
37
18
|
|
38
19
|
###試したこと
|
39
20
|
|
21
|
+
$_SERVER['HTTP_HOST']で現在のドメイン名を取得して、指定したドメイン名と同じ場合で分岐させたい。
|
40
|
-
上記コード
|
22
|
+
上記コードで$_SERVER['HTTP_HOST']を記載しているところがエラーが出ています。
|
23
|
+
間違いがあると思うのですが、発見できません。
|
41
24
|
|
42
|
-
|
43
|
-
|
44
|
-
$program[ 'url' ]と現在のドメインが一部一致しているならtarget="_blank"を付与しない処理を行いたい。
|
45
|
-
|
46
25
|
###補足情報(言語/FW/ツール等のバージョンなど)
|
47
26
|
|
48
27
|
javascript、php
|
2
コード整理
title
CHANGED
File without changes
|
body
CHANGED
@@ -13,23 +13,13 @@
|
|
13
13
|
|
14
14
|
```javascript
|
15
15
|
function TargetBlank() {
|
16
|
-
|
17
16
|
$(window).bind("load", function(){
|
18
|
-
|
19
|
-
|
17
|
+
var hostname = window.location.hostname ;
|
20
|
-
|
21
|
-
|
18
|
+
if(document.URL.match(/hostname/)) {
|
22
|
-
|
23
|
-
|
19
|
+
}
|
24
|
-
|
25
|
-
|
20
|
+
else{
|
26
|
-
|
27
|
-
|
21
|
+
document.write('target="_blank"')
|
28
|
-
|
29
|
-
|
30
|
-
|
31
22
|
});
|
32
|
-
|
33
23
|
}
|
34
24
|
```
|
35
25
|
|
@@ -40,16 +30,9 @@
|
|
40
30
|
|
41
31
|
```php
|
42
32
|
<?php if ( $program[ 'url' ] == '') : ?>
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
33
|
+
<?php else : ?>
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
34
|
+
<div><a href="<?=$program[ 'url' ]?>" <?php $TargetBlank ?>></a></div>
|
51
|
-
|
52
|
-
|
35
|
+
<?php endif; ?>
|
53
36
|
```
|
54
37
|
|
55
38
|
###試したこと
|
1
失礼しました。コードブロックで囲いました。
title
CHANGED
File without changes
|
body
CHANGED
@@ -11,6 +11,7 @@
|
|
11
11
|
|
12
12
|
.js
|
13
13
|
|
14
|
+
```javascript
|
14
15
|
function TargetBlank() {
|
15
16
|
|
16
17
|
$(window).bind("load", function(){
|
@@ -25,18 +26,19 @@
|
|
25
26
|
|
26
27
|
document.write('target="_blank"')
|
27
28
|
|
28
|
-
|
29
|
+
|
29
30
|
|
30
31
|
});
|
31
32
|
|
32
33
|
}
|
34
|
+
```
|
33
35
|
|
34
36
|
|
35
37
|
|
36
38
|
|
37
|
-
|
38
39
|
.php
|
39
40
|
|
41
|
+
```php
|
40
42
|
<?php if ( $program[ 'url' ] == '') : ?>
|
41
43
|
|
42
44
|
|
@@ -48,6 +50,7 @@
|
|
48
50
|
<div><a href="<?=$program[ 'url' ]?>" <?php $TargetBlank ?>></a></div>
|
49
51
|
|
50
52
|
<?php endif; ?>
|
53
|
+
```
|
51
54
|
|
52
55
|
###試したこと
|
53
56
|
|