2011-06-13 48 views
2

可能重複發送:
maximum length of HTTP GET request?多少個字符可以使用get在PHP

多少個字符可以用得到的PHP URL發送。

的意思是在PHP

我嘗試發送類似下面的DAT發送使用GET方法,數據的侷限性。但在下一頁我沒有獲得所有的數據。

xmlhttp2.open( 「GET」,」 http://localhost/My_Project/LeaveLength_Ajax.php?_Get_FromDate= 「+ FromDate_G +」 & _Get_ToDate = 「+ ToDate_G +」 & PLAvailabe_JS = 「+ PLAvailabe_JS +」 & CLAvailabe_JS = 「+ CLAvailabe_JS +」 & LWPAvailabe_JS = 「+ LWPAvailabe_JS +」 & MLAvailabe_JS =「+ MLAvailabe_JS +」& COMPAvailabe_JS =「+ COMPAvailabe_JS +」& FromHomeAvailabe_JS =「+ FromHomeAvailabe_JS +」& LeaveType_JS =「+ LeaveType_JS,true);

請幫我分揀這個問題。

+0

這是什麼總數?你是否嘗試將它設置爲一個字符串,顯示('alert')它,並確保URL是有效的?等等。如果一切正常,那麼最大尺寸可能會有限制。 – Matthew 2011-06-13 03:07:56

回答

2

瀏覽器,服務器和/或PHP理論上可能會限制大小。例如,請參閱:http://support.microsoft.com/kb/208427

RFC 2068(可能是過時的):

注:服務器應謹慎看待根據URI長度大於255個字節,因爲一些舊的客戶或代理實現可能不正確地支持這些長度。

您應該切換到使用POST請求並將它們作爲後置字段發送,而不是查詢參數。

0

我聽說256是請求uri的最大長度。如果你想留在跨服務器和跨瀏覽器。

0

基本上,這取決於您的瀏覽器。據我所知,你使用JavaScript來提出請求,因此這不是PHP的問題。

假設您的問題與Javascript相關,它完全依賴於您的瀏覽器瞭解它支持多長的請求URI。一些瀏覽器有256個字節,一些有4kb,一些有32kb的長度。

但是,您的URI似乎並不長,因此我認爲您的確切請求URI存在問題,導致請求其餘的URI。這可能是一個#角色,一個未轉義的unicode角色或其他東西。

您能否找到並告訴我們瀏覽器請求的確切URI(使用Firefox上的Firebug或Chrome上的內置工具)以及您從PHP獲得的URL。 (可以使用var_dump($_GET);打印

相關問題