簡體   English   中英

PHP $ _GET未從Web瀏覽器填充URL查詢參數

[英]PHP $_GET is not populating with URL query parameters, from web browser

我遇到一個奇怪的問題,即使正在傳遞參數, $_REQUEST $_GET (和$_REQUEST )變量也為空。

我的PHP代碼:

echo $_SERVER['REQUEST_URI'];
echo print_r($_REQUEST);
echo print_r($_GET);

輸出:

/service/getAllOrders?sortBy=date_created&sortDir=desc
Array()
Array()

我正在使用nginx並將所有請求轉發到index.php。 我的配置如下:

server {
    listen       80;
    server_name  decaro.localhost;
    root       /Users/rweiss/Sites/decaro/LocalOrderWebsite;

   #access_log  /usr/local/etc/nginx/logs/default.access.log  main;

    location / {
        add_header Cache-Control "no-cache, no-store";
        include   /usr/local/etc/nginx/conf.d/php-fpm;
        try_files $uri $uri/ /index.php$args;
    }

    location /assets/ {
        allow all;
    }

    location = /info {
        allow   127.0.0.1;
        deny    all;
        rewrite (.*) /.info.php;
    }

    error_page  404     /404.html;
    error_page  403     /403.html;
}

為什么?

解決方案是只在nginx中傳遞$ query_string變量:

try_files $uri $uri/ /index.php?$query_string;

感謝您所有的幫助。

瑞安

嘗試打印:

 echo $_SERVER['QUERY_STRING'];

另外,這是插入到Super Global $ _GET中的GET數據,我認為您應該使用此鏈接調用腳本:

www.yourdomain.com/service/getAllOrders.php?sortBy=date_created&sortDir=desc 

注意.php。

在檢查$ _GET之前,請先查看查詢字符串中的內容,然后嘗試使用打印

 echo print_r($_GET,1);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM