2017-07-14 1 views
-1

別のドメインにある他のウェブサイトにアクセスすることはできません。iframe to other web side

echo "<b>Enter your page:</b> <br> 
<form action='iframe.php' method='get'> 
     <input type='text' name='www' size='50' value='https://'> 
     <input type='submit' value='Go to!'> 
</form> 
<br>"; 

echo "<iframe width='80%' height='80%' src=" ; 

if(!isset($_GET['www'])){ 
     echo "www.google.com>"; 
} 
else{ 
     echo "".$_GET['www'].">"; 
} 

あなたはそれを修正する方法を知っていますか?

+0

あなたの質問は不明です。ところで、iframe内をナビゲートしようとしているようですが、これはJavaScriptを使用して行う必要があります – natanelg97

答えて

0

iframe(私の意見では非常に醜いです)を使用することはお勧めしませんが、次のコード(JavaScript、HTML & PHP)をテストしたところ、うまくいくようです。元のコードでは、httpまたはhttpsの接頭辞なしでGoogleに歓迎されましたが、(別のウェブサイトのために)テストしたところ、動作するように見えました。

とにかく、あなたは私の方法をしようとする場合があります:

PHP

<?php 
    if(isset($_GET['www'])) { 
     $url = $_GET['www']; 
    } else { 
     $url = 'https://www.google.com/'; 
    } 
?> 

HTML

<strong>Enter URL:</strong> 
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="get"> 
    <input type="text" name="www" size="50" placeholder="https or http" /> 
    <button type="submit">Go</button> 
</form> 
<iframe style="width: 80%; height: 80%;" id="iframe"></iframe> 

JavaScriptの

var url = '<?php echo $url; ?>'; 
var frame = document.getElementById('iframe'); 

iframe.src = url; 

これらのすべてを1つのページ(体の閉鎖の直前にscriptタグ内にあるJS)にまとめて、他のウェブサイト(google.comではない)にアクセスしてみてください。それはあなたのために働くはずです。

- XSSや他の脆弱性からの入力を常に検証し、墨塗りします。