0

次のような URL があります。

zigzagstudio/#!/page_wedding2

# の後の URL の一部を取得する必要があります。実際、私は page_wedding2 にアクセスして、データベースの ID と比較して広告の数を取得する必要があります。これはphpを使用して可能ですか?誰かがコードの例を持っていますか? JavaScriptを使用して解決策も検索しましたが、JavaScriptを使用してphpに送信する方法がわかりません。

4

4 に答える 4

2
$url = "zigzagstudio/#!/page_wedding2";
$pattern = "([\#\!\/]+(.*))";

preg_match($pattern, $url, $string);
$name = $string[1];
echo $name; // prints 'page_wedding2'
于 2012-07-18T10:03:05.370 に答える
1
$url = 'zigzagstudio/#!/page_wedding2';
echo parse_url($url, PHP_URL_FRAGMENT);

parse_url () ドキュメントを参照してください。

于 2012-07-18T10:01:39.207 に答える
1

これを JavaScript で読み取ってから、PHP に渡す必要があります。

次のように Javascript で読み取ります。

var query = location.href.split('#');
var anchorPart = query[0];

そこから関連情報を取得して解析したらanchorPart、それを PHP に渡します。Web アプリケーションによっては、これを行う方法が異なる場合があります。

page_wedding2.php にAJAX リクエストを送信し、クエリ文字列で解析された情報を渡すことができます。返された HTML 文字列を独自の Web ページで使用します。

編集: 明確にするために、ブラウザは URL のアンカー部分をサーバー側に渡しません

于 2012-07-18T10:04:37.547 に答える
0

爆発は PHP で、分割は Javascriptで使用できます。

PHP:

$str = 'zigzagstudio/#!/page_wedding2';
$array = explode('#', $str);
echo array_pop($array);

Javascript:

var str = 'zigzagstudio/#!/page_wedding2';
var str_array = str.split('#');
alert(str_array.pop());
于 2012-07-18T10:01:58.207 に答える