だから...私は非常に単純な次のコードを持っています:
<?php echo $_GET["base_grant_url"] ?>
現在、これはテスト用です。私は問題を抱えています...次のURLをテストしたとき:
http://localhost/?base_grant_url=htt%3A%2F%2Fn00.test.com
http://localhost/?base_grant_url=http%3A%2F%2Fn00
パラメータは正しく出力されます。最初の「p」が欠落しており、「.」がないことに注意してください。秒のパラメーターの文字。次の 2 つの URL が渡される場合:
http://localhost/?base_grant_url=http%3A%2F%2Fn00.test.com
http://localhost/?base_grant_url=http%3A%2F%2Fn00.
これらのアドレスは両方ともまったく何も出力しません...これはより大きなシナリオの小さな部分であるため、問題をこれに絞り込むのにかなりの時間がかかりましたが、これは私が現在修正しようとしているものです. パラメータが間違っているのに、HTTP と "." があるのにパラメータを取得できないのはなぜですか。それらの文字... $_GET 関数は失敗しますか? 私が見逃している一般的な規則や、この問題に対する簡単な修正はありますか?
編集:したがって、ローカルテストサーバーでテストした後、正常に動作します。ホスティングプロバイダーに連絡して、問題を見つけようとします.
print_rの出力については...ここにコードと出力があります:
コード:
echo "Base Grant URL = ";
echo $_GET["base_grant_url"];
echo " -=- GET = ";
print_r($_GET);
テスト 1 (パラメーターに "." がない場合、http がパラメーターに含まれていない場合にも機能します):
URL: http://testserver.com/?base_grant_url=https%3A%2F%2Fexamplecom%2Fsplash%2Flogin%2F%3Fmauth%3DABCDEFG123456
OUTPUT: Base Grant URL = https://examplecom/splash/login/?mauth=ABCDEFG123456 -=- GET = Array ( [base_grant_url] => https://examplecom/splash/login/?mauth=ABCDEFG123456 )
テスト 2 (適切な URL を使用):
URL: http://testserver.com/?base_grant_url=https%3A%2F%2Fexample.com%2Fsplash%2Flogin%2F%3Fmauth%3DABCDEFG123456
OUTPUT: Base Grant URL = -=- GET = Array ( )