Ваш код даже близко не подходит для получения этих двух значений. Я не уверен, что с этим делать, потому что это так далеко.
Если ваш PHP-код работает после установки нового местоположения, тогда вам нужно, чтобы значения more
и starting
были до хэша (#
) так как часть хеша не отправляется на сервер.
Если вы хотите получить значения more
и starting
в JavaScript, то это может быть любое место, но вам нужно знать, на какой стадии вы находитесь, чтобы получить его правильно.
Примеры * * 1016
URL: http://www.domainname.com/m2.php?more=apple&starting=1
Строка запроса: more=apple&starting=1
Хеш: нет
<?php
echo $_GET['more']; // apple
echo $_GET['starting']; // 1
URL: http://www.domainname.com/m1.php?#m2.php?more=apple&starting=1
Строка запроса: нет
Хеш: m2.php?more=apple&starting=1
<?php
echo count($_GET) // 0
Javascript:
var hash = location.hash; // m2.php?more=apple&starting=1
var hashparts = hash.split("?");
var urlhashpart = hashparts[0]; // m2.php
var querystringhashpart = hashparts[1]; // more=apple&starting=1
var params = querystringhashpart.split("&");
for (var i in params) {
var param = params[i].split("=");
document.write(param[0] + ": " + param[1]); // outputs 'more: apple', 'starting: 1'
}