# Weiterleitung in einem Facebook App



## gresi-media (15. Nov 2011)

Hallo Forengemeinde, 

ich habe folgendes vorgefertigte Skript, das eine Weiterleitung auslösen soll.
Das Skript besteht aus Zwei Teile:

Header.php

```
<script type="text/javascript">

function do_submit(formname, posturl, rewriteid) {

    document.getElementById('intro').setStyle('display','block');

    div_id = document.getElementById(rewriteid);
    form = document.getElementById(formname);
    ajax = new Ajax();
    ajax.responseType = Ajax.FBML;
    ajax.requireLogin = true;

    ajax.ondone = function(data) {
        document.getElementById('intro').setStyle('display','none');
        div_id.setInnerFBML(data);
    }

    formdata = form.serialize();
    ajax.post(posturl, formdata);

}

</script>
```

Index.php

```
include 'header.php';
...
...
...
...
echo '<form id="myForm" method="POST" class="quizForm">';
		echo '<table width=100% cellpadding=4 cellspacing=2 border=0 class="quizTable">';

		$res = query("SELECT * FROM `questions` ORDER BY RAND() LIMIT 0, $questionToShow");
		while( $row = mysql_fetch_array($res) ) {

			$radioname = "ques";
			$radioname .= $counter;
      
			echo '<tr><td valign=top>';
			echo '<P class=questionP>'.$counter.'. '. $row[question] .'</P>';
			echo '<P class=optionP><input name="'.$radioname.'" type="radio" value="1" checked> a. '. $row[answer1] .'</P>';
			echo '<P class=optionP><input name="'.$radioname.'" type="radio" value="2" > b. '. $row[answer2] .'</P>';
			echo '<br>';
			echo '</td></tr>';

			$counter++;
		}
		echo '<tr>';
		echo '<td>'; 
			 echo '<p><input type=button onclick="do_submit(\'myForm\', \''.$appCanvasUrl.'post_index.php\', \'actionDiv\'); return false;" value="Check Result" class="submitButton" /></p>';
```

Leider funktioniert dieses, in dieser Form nicht. 
Erbitte Hilfe - Danke


----------



## Evil-Devil (15. Nov 2011)

FB Apps...yea...darüber kann man Bücher schreiben und man wird noch immer nicht schlauer sein.

1) FB Doku lesen!
2) Schreibst du eine IFrame oder Canvas App?
3) Ist die App in FB eingebunden oder extern oder gar beides?
4) Schon in den Dokus der beiden Libs (JS und PHP) geschaut?


----------



## gresi-media (16. Nov 2011)

Guten Morgen Evil-Devil ,
vielen herzlichen Dank für deine Antwort.

1) FB Doku lesen! 
So weit es mir ersichtlich ist, wird die Funktion „Ajax.FBML“ am 01.Januar 2012 durch Facebook eingestellt. Somit sollte sie nicht mehr nutzbar sein...

Deswegen suche ich andere Lösungswege... 

2) Schreibst du eine IFrame oder Canvas App? 
Das App ist in FB als IFrame eingebunden.

3) Ist die App in FB eingebunden oder extern oder gar beides? 
Die App ist in FB eingebunden u. extern nicht aufrufbar. 

4) Schon in den Dokus der beiden Libs (JS und PHP) geschaut?   
Seit Zwei Wochen bewegt mich dieses Thema....


----------



## Evil-Devil (16. Nov 2011)

Ah ok, das hilft doch schon ein wenig. Bei einer IFrame Seite habe ich bisher ausschließlich auf das PHP SDK zurückgegriffen. Es wird zwar denke ich möglich sein auch dort das JS SDK zu verwenden, aber dazu kann ich nichts sagen.

Unabhängig von deinem Code oben, funktioniert eine Weiterleitung die per JS angesteuert wird ausschließlich über

```
top.location.href='meine neue Zieladresse';
```

Ob du FBML per Ajax Request in eine iFrame App einbinden kannst weiß ich jetzt nicht, aber nach Möglichkeit würde ich auf FBML so weit wie es nur geht verzichten.

Oben versuchst du die Antworten von deinem Quiz zu übertragen oder? Mach das in einem ganz normalen Post Request. Das ist sinnvoller auf FB.


----------

