2016-09-19 17 views
-2

私はこのコードを作成し、数日間修正しようとしています。私は$ link変数が設定されているものにリダイレクトしようとしています。それはただ空白のページを私に与えるだけです。答えは?JSはリダイレクトされません

<?php 
$l = $_GET['l']; 
$db = new mysqli('localhost', 'root', 'password', 'link'); 
$sql = "SELECT * FROM links WHERE new_url='$l'"; 
$result = $db->query($sql); 
if($result->num_rows > 0) { 
    $row = $result->fetch_assoc(); 
    $link = $row['website']; 
    $string = $row['new_url']; 
    echo '<script type="text/javascript">', 
     'window.location = $link;', 
     '</script>'; 
} else { 
    @include('./error.php'); 
} 
?> 
+2

。レンダリングされたコードを代わりに表示してください。 – Teemu

+0

空白のページです。 – Nach

+1

PHPでリダイレクトするときにJavascriptを使用する理由は何ですか? – Archer

答えて

1

デバッグのいずれかの種類を行ってしたい場合は、あなたが作成しているページのソースを表示、あるいはあなたのブラウワーのデバッグコンソールをチェックするように、あなたはあなたの構文エラーについて言われると思います。あなたはこれを生成しています:

window.location = http://google.com; 

これは有効なJavascriptのようですか?

never EVERこの正確な理由から、PHPのテキストをJavascriptコードブロックに直接ダンプします。 PHPはURLを出力しているだけかもしれませんが、JSコードブロックに入るので、生成するJSコードは有効なコードでなければなりません。 json_encode()を常にを使用します。

生成
$link = json_encode($row['new_url']); 
echo "window.location = $link;" 

window.location = 'http://google.com'; 

注意をクライアント側で実行されていない混乱'引用符...

+0

私はあなたが言ったことをやったが、それはまだ動作しません。 – Nach

関連する問題