2009-06-10 9 views
6

Делаю facebook приложению IFrameFacebook, IFrame приложение, фб: запрос-форма, действие атрибут проблема

Я делаю форму запроса со своими собственными данными формы. Что делать, чтобы обрабатывать данные?

Если я ставлю действие = "http://apps.facebook.com/[appName]/abc.php", т.е.

<fb:serverfbml> 
    <script type="text/fbml"> 
     <fb:fbml> 
      <fb:request-form action="http://apps.facebook.com/[appName]/abc.php" method="post" type="abc" content="abc"> 
       <textarea name="pm" fb_protected="true" ></textarea> 
       <fb:multi-friend-selector showborder="false" max="35" actiontext="test" email_invite="true" bypass="cancel" /> 
      </fb:request-form> 
     </fb:fbml> 
    </script> 
</fb:serverfbml> 

Тогда результат смешно ... страница facebook внутри faceram app iframe!

, но если я ставлю действие = "HTTP: // [мой собственный домен/facebook подключения URL] /abc.php", т.е.

<fb:serverfbml> 
    <script type="text/fbml"> 
     <fb:fbml> 
      <fb:request-form action="http://[my own domain/facebook connect url]/abc.php" method="post" type="abc" content="abc"> 
       <textarea name="pm" fb_protected="true" ></textarea> 
       <fb:multi-friend-selector showborder="false" max="35" actiontext="test" email_invite="true" bypass="cancel" /> 
      </fb:request-form> 
     </fb:fbml> 
    </script> 
</fb:serverfbml> 

Затем на странице результатов будут оказаны без шаблона facebook (т.е. означает потерять все верхние баннеры facebook и нижнюю панель facebook, такие как чаты facebook и т. д.)

Кто-нибудь знает, что случилось?

Большое спасибо за чтение

ответ

1

То, как я справилась с этим было иметь мою страницу формы процессора не выделяет выхода за исключением того, «< фба: перенаправлять>», который указал назад к основному приложению.

+0

ТНХ! Я также обнаружил, что использование [facebook connect url] сделает невозможным получение параметров формы ... у вас есть опыт? – Unreality

+0

Извините, я не работал с подключением к Facebook. –

1

Как вы использовали этот < fb: redirect>?

хорошо я нашел его попробовать добавить цель = "_ сверху"

http://apps.facebook.com/myapp»LABEL = 'Join Now' /> " действие =" HTTP: // приложений. facebook.com/myapp» цель =„_ вершина“ пригласить =„истинный“>

5

ключ к цели =„_ вершина“является то, что вы должны поместить его как форму запроса и мульти-друг- селектор для того, чтобы он работал на подачу и отмену, соответственно.

Форма запроса требует target = "_ top", чтобы форма будет загружаться в верхнем фрейме при отправке, но функция отмены управляется с помощью многопользовательского селектора, а не формы запроса. Ergo, вам нужно target = "_ top" в мульти-селекторе, так что действие отмены будет загружаться в верхнем фрейме.

Теперь, я просто хочу, Facebook позволил бы «NONE» действия для отмены, что бы просто скрыть рамку ...

+0

спасибо за это !!target = "_ top" работает с удовольствием – daidai

3

NEW Ответ: Facebook начал постепенный отказ от FBML и сильно поощряет разработчиков, чтобы перейти к Запросы 2.0. Использование нового FB.ui ({method: 'apprequest', ...}); в SDK JavaScript это более простой способ сделать это. Он также поддерживает страницы вне Facebook http://af-design.com/blog/2011/02/17/using-facebook-requests-to-promote-a-website/

OLD Ответ: Я обнаружил, что обработка FBML в качестве атрибута для fb: serverfbml работала. < фб: serverfbml FBML = "{HTML Сбежал FBML Здесь}"> </фб: serverfbml> я писал о моих выводах здесь: http://af-design.com/blog/2010/11/23/fbserverfbml-on-canvas-iframe/

+0

большое вам спасибо! – stoefln