2012-06-12 74 views
0

我使用下面的iframe代碼的JSON彈出一個表單上我的網站用戶註冊。雖然當我添加自定義字段後,一定數量的那些,我得到一個錯誤,說:Facebook的註冊插件給錯誤

錯誤的請求 您的瀏覽器發送請求,此服務器無法理解。 的請求報頭字段的大小超過服務器的限制。 Referer的 /N

我試圖聯繫我的託管幫助下,他們說,有一個與Facebook的代碼的問題,但我想這就是問題是不是因爲高達一定數量的複選框的代碼工作正常,但一旦超出這一點,我會得到上述錯誤。這是代碼:

  <iframe src='http://www.facebook.com/plugins/registration.php? 
            client_id=325340244194060& 
             redirect_uri=http://www.pingcampus.com/facebook_registration_plugin/fbwe/trial.php& 
            fields=[ 
      { 
       "name": "name" 
      }, 
      { 
       "name": "email" 
      }, 
      { 
       "name": "gender" 
      }, 
      { 
       "name": "birthday" 
      }, 

      { 
          "name": "Arts", 
          "description": "Arts", 
          "type": "checkbox", 
          "value": "Arts" 
         }, 
         { 
          "name": "Act", 
          "description": "Act", 
          "type": "checkbox", 
          "value": "Act" 
         }, 
         { 
          "name": "Cooking", 
          "description": "Cooking", 
          "type": "checkbox", 
          "value": "Cooking" 
         }, 
         { 
          "name": "Dance", 
          "description": "Dance", 
          "type": "checkbox", 
          "value": "Dance" 
         }, 
         { 
          "name": "Designing", 
          "description": "Designing", 
          "type": "checkbox", 
          "value": "Designing" 
         }, 
         { 
          "name": "Fashion", 
          "description": "Fashion Designing", 
          "type": "checkbox", 
          "value": "Fashion Designing" 
         }, 
         { 
          "name": "Interior", 
          "description": "Interior Designing", 
          "type": "checkbox", 
          "value": "Interior Designing" 
         }, 
         { 
          "name": "Modeling", 
          "description": "Modeling", 
          "type": "checkbox", 
          "value": "Modeling" 
         }, 
         { 
          "name": "Photography", 
          "description": "Photography", 
          "type": "checkbox", 
          "value": "Photography" 
         }, 
         { 
          "name": "Poetry", 
          "description": "Poetry/Writing", 
          "type": "checkbox", 
          "value": "Poetry/Writing" 
         }, 
         { 
          "name": "Programming", 
          "description": "Programming", 
          "type": "checkbox", 
          "value": "Programming" 
         }, 
         { 
          "name": "Reading", 
          "description": "Reading", 
          "type": "checkbox", 
          "value": "Reading" 
         }, 
         { 
          "name": "Sketching", 
          "description": "Sketching/Drawing", 
          "type": "checkbox", 
          "value": "Sketching/Drawing" 
         }, 
         { 
          "name": "Singing", 
          "description": "Singing", 
          "type": "checkbox", 
          "value": "Singing" 
         }, 
         { 
          "name": "Sports", 
          "description": "Sports", 
          "type": "checkbox", 
          "value": "Sports" 
         }, 
         { 
          "name": "Stunting", 
          "description": "Stunting", 
          "type": "checkbox", 
          "value": "Stunting" 
         }, 
         { 
          "name": "Videography", 
          "description": "Videography", 
          "type": "checkbox", 
          "value": "Videography" 
         }, 
         { 
          "name": "Other", 
          "description": "Other", 
          "type": "checkbox", 
          "value": "Other" 
         }, 
         { 
          "name": "captcha" 
         } 


      ]' 
            scrolling="auto" 
            frameborder="no" 
            style="border:none" 
            allowTransparency="true" 
            width="500" 
            height="800" 

        > 
          </iframe> 

有誰能猜到我哪裏出錯了嗎?我正在使用示例代碼Here通過php處理表單。如有需要請向我的代碼將提供的PHP代碼,以及,但其幾乎一樣上面的鏈接

回答

0

A「取」請求往往有一個限制的例子。所以當你返回到你的服務器時,得到的請求超過了這個限制。 (限制由Apache配置設置)。與Facebook無關,該限制由您的託管服務提供商設定,因此您是正確的問他們。

選項:

  1. 向託管服務提供商增加限制(不太可能)
  2. Store中的數據在會話變量,或在連接到一個唯一的ID數據庫表。返回時,從會話中獲取數據,或使用唯一標識作爲發送給Facebook的參數,並使用該唯一標識作爲回報來建立完整的數據。此方法還具有其他優點(顯示較少的數據,允許較少的操作最終用戶)
+0

因此,如果我直接連接到數據庫在同一頁面上接收這些變量並將變量存儲在某個表中,將會解決問題嗎? 這是你想說什麼? @Robbie – user1446599

+0

實際上,我說你需要縮短您的返回URL。對數據庫中的細節進行排序並連接到該數據庫是一種方法。你需要存儲的變量,它具有唯一ID相關聯(主鍵,屁股使其難以通過使用UNIQUEID猜測,而不是一個簡單的數字)。然後使用該獨特的功能來連接到Facebook後檢索值。 (或使用會話) – Robbie