2012-11-16 65 views
2

我想創建一個簡單的Facebook頁面選項卡,從我的數據庫中檢索當前信息。我很快就瞭解到,跨站點腳本編寫不起作用,因爲在實際網站上的工作演示效果很好,但在heroku上沒有產生任何結果。Facebook頁面標籤中的數據庫信息? XML和cURL

這裏是我現在在heroku中所擁有的。如何在返回結果之前對頁面進行卷曲處理?

<?php 
$curl = curl_init(); 
curl_setopt ($curl, CURLOPT_URL, 'http://www.url.com/output.html'); 

$result = curl_exec ($curl); 
curl_close ($curl); 

print $result; 
?> 

下面是創建的XML格式的位於我的web服務器的頁面:

<?php 
require_once('connectDB.php'); 
$xslt_file = "xmlstyle.xsl"; 

mysql_select_db($database_DB, $db); 

$query = sprintf("SELECT * from db"); 
$result = mysql_query($query, $db) or die(mysql_error()); 

header("Content-type: text/xml"); 
$XML = "<?xml version=\"1.0\"?>\n"; 
if ($xslt_file) $XML .= "<?xml-stylesheet href=\"$xslt_file\" type=\"text/xsl\" ?>"; 

// root node 
$XML .= "<result>\n"; 
// rows 
while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {  
    $XML .= "\t<row>\n"; 
    $i = 0; 
    // cells 
    foreach ($row as $cell) { 
    // Escaping illegal characters - not tested actually ;) 
    $cell = str_replace("&", "&amp;", $cell); 
    $cell = str_replace("<", "&lt;", $cell); 
    $cell = str_replace(">", "&gt;", $cell); 
    $cell = str_replace("\"", "&quot;", $cell); 
    $col_name = mysql_field_name($result,$i); 
    // creates the "<tag>contents</tag>" representing the column 
    $XML .= "\t\t<" . $col_name . ">" . $cell . "</" . $col_name . ">\n"; 
    $i++; 
    } 
    $XML .= "\t</row>\n"; 
} 
$XML .= "</result>\n"; 
// output the whole XML string 
echo $XML; 
?> 

我敢肯定,我在這整個事情複雜化,但它已經有點過癮嘗試使其工作。如果有更簡單的方法來獲得相同的結果,我就會全神貫注。提前致謝。

+0

人有一個想法? –

回答

0

使用RETURNTRANSFER選項:

//Set curl to return the page instead of sending it to the browser 
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); 

參考