2017-11-12 11 views
0

この問題を解決するには問題があります。私はページがiframeにある場合、いくつかのPHPコードをHTMLにエコーしようとしています。以下はJavascriptの中にエコーPHPコード

<?php $pic='https://cdn.pixabay.com/photo/2015/06/19/17/58/sample-815141_960_720.jpg'; ?> 

<div id="frameid"></div> 
<script type="text/javascript">  
    function inIframe() { 
     try { 
      return window.self !== window.top; 
     } catch (e) { 
      return true; 
     } 
    } 
    if (inIframe()) { 
     var node = document.getElementById('frameid'); 
     node.innerHTML('<?php echo '<img width="100%" src="'.$pic.'"></img>'; ?>'); 
    } 
</script> 
+0

どのようなエラーが生じますか? –

+0

javasciptタグのテキストとしてのみ、htmlへの出力なし – Calvin

+0

コード全体を送信しますか? –

答えて

-1

は、いくつかの引用符の問題があったようだ...私は(私はエコーしようとする実際のコードははるかに長いです)エコーしようとPHPコードの短い例です。あなたは以下のコード試すことができます:あなたは、あなたが(WP https://developer.wordpress.org/reference/functions/_wp_specialchars/から取られた)この機能(シングル・ダブル)引用符をエスケープするを考慮することができる単一引用符とのトラブルを抱えている

<div id="frameid"></div> 
<script type="text/javascript">  
    function inIframe() { 
     try { 
      return window.self !== window.top; 
     } catch (e) { 
      return true; 
     } 
    } 
    if (inIframe()) { 
     var node = document.getElementById('frameid'); 
     node.innerHTML(<?php echo "...something involving html and php variables...."; ?>); 
    } 
</script> 
-2

node.innerHTML('<?php echo esc_attr('<img width="100%" src="'.$pic.'"></img>'); ?>');

あなたが定義できる場所

function esc_attr($text) { 
    return _wp_specialchars($safe_text, ENT_QUOTES); 
} 
+0

あなたのコードを使用して、#frameidはまだ空ですが、javascriptはnode.innerHTML( ' – Calvin

-1

これを試すことができますか? var pic =; innerHTML( ""); 私はPHPからjsを分けることがより明確であり、recomandedと思う

関連する問題