2

URLをphpページに渡す必要があります。URL には、特殊文字やエンコードされた変数が含まれる場合と含まれない場合があります。たとえば、ajax リクエストを考えてみましょう。

var url = 'http://siteaddr.com/abc%20cdf%202012%20movies%20software/';
$.get('check_link.php',{url:url},function(){
    //some function
});

$_GET['url']PHP ページの変数のエコー結果はhttp://siteaddr.com/abc cdf 2012 movies software/ 、%20 がスペースに変換されます。URLをそのまま受け取る必要があります。URLのエンコードとデコードを試みました。しかし、必要な結果が得られませんでした。

4

1 に答える 1

0
  1. キーとして使用される名前で変数を定義することは想定されていません。
  2. URL を送信する前に再度エンコードすると、PHP は二重にエンコードされた URL をデコードします。

    var link = 'http://siteaddr.com/abc%20cdf%202012%20movies%20software/';
    $.get('check_link.php',{url: encodeURIComponent(link)}, function(){
        //some function
    });
    // Double encoded URL: Note that % has become %25
    // http%3A%2F%2Fsiteaddr.com%2Fabc%2520cdf%25202012%2520movies%2520software%2F
    

http://jsfiddle.net/zNqac/

于 2012-12-16T17:08:38.440 に答える